From f51c9ed2abe5c68211bb3736be5f70b1fe2c9ec0 Mon Sep 17 00:00:00 2001 From: M.Gergo Date: Fri, 8 Mar 2019 21:20:34 +0100 Subject: további rendrakás --- .../www/include/alert/hu_HU/module-naplo.php | 70 ++ .../www/include/menu/parent/hu_HU/module-naplo.php | 76 ++ .../include/menu/private/hu_HU/module-naplo.php | 616 ++++++++++ .../www/include/menu/public/hu_HU/module-naplo.php | 13 + .../www/include/modules/naplo/admin/azonositok.php | 14 + .../www/include/modules/naplo/admin/checksql.php | 98 ++ .../include/modules/naplo/admin/intezmenyek.php | 117 ++ .../include/modules/naplo/admin/szemeszterek.php | 48 + .../modules/naplo/admin/szuloiAzonositok.php | 14 + .../www/include/modules/naplo/admin/tanevek.php | 390 ++++++ .../www/include/modules/naplo/admin/tankorok.php | 133 ++ .../www/include/modules/naplo/base/base.php | 298 +++++ .../www/include/modules/naplo/base/log.php | 40 + .../www/include/modules/naplo/base/rights.php | 469 +++++++ .../www/include/modules/naplo/base/tool.php | 590 +++++++++ .../www/include/modules/naplo/base/update.php | 86 ++ .../www/include/modules/naplo/base/zcheck.php | 100 ++ .../modules/naplo/bejegyzesek/bejegyzesTipus.php | 87 ++ .../modules/naplo/bejegyzesek/bejegyzesek.php | 74 ++ .../www/include/modules/naplo/diakValaszto.php | 10 + .../modules/naplo/ertekeles/kerdoivBetoltes.php | 81 ++ .../include/modules/naplo/ertekeles/osszesites.php | 57 + .../include/modules/naplo/export/bizonyitvany.php | 88 ++ .../include/modules/naplo/export/diakExport.php | 144 +++ .../modules/naplo/export/kirBizonyitvanyExport.php | 24 + .../www/include/modules/naplo/export/kreta.php | 23 + .../www/include/modules/naplo/export/sulix.php | 129 ++ .../modules/naplo/export/tanarOsztalyOraszam.php | 13 + .../modules/naplo/export/tantargyFelosztas.php | 72 ++ .../include/modules/naplo/haladasi/elmaradas.php | 27 + .../include/modules/naplo/haladasi/elszamolas.php | 44 + .../include/modules/naplo/haladasi/haladasi.php | 155 +++ .../modules/naplo/haladasi/helyettesites.php | 945 ++++++++++++++ .../modules/naplo/haladasi/oralatogatas.php | 30 + .../include/modules/naplo/haladasi/osszevonas.php | 38 + .../include/modules/naplo/haladasi/pluszora.php | 55 + .../include/modules/naplo/haladasi/specialis.php | 167 +++ .../www/include/modules/naplo/haladasi/stat.php | 103 ++ .../modules/naplo/haladasi/teremModositas.php | 30 + .../www/include/modules/naplo/hianyzas/diak.php | 119 ++ .../www/include/modules/naplo/hianyzas/oktstat.php | 155 +++ .../www/include/modules/naplo/hianyzas/ora.php | 8 + .../www/include/modules/naplo/hianyzas/osztaly.php | 232 ++++ .../include/modules/naplo/hibabejelento/admin.php | 28 + .../modules/naplo/hibabejelento/hibabejelento.php | 27 + .../include/modules/naplo/intezmeny/diakExport.php | 137 +++ .../modules/naplo/intezmeny/diakFelmentes.php | 6 + .../modules/naplo/intezmeny/diakStatusz.php | 12 + .../include/modules/naplo/intezmeny/diakSzulo.php | 98 ++ .../naplo/intezmeny/diakTankorJelentkezes.php | 97 ++ .../www/include/modules/naplo/intezmeny/kepzes.php | 64 + .../modules/naplo/intezmeny/kepzesOraterv.php | 92 ++ .../modules/naplo/intezmeny/munkakozosseg.php | 288 +++++ .../include/modules/naplo/intezmeny/osztaly.php | 474 ++++++++ .../www/include/modules/naplo/intezmeny/tanar.php | 54 + .../www/include/modules/naplo/intezmeny/tankor.php | 202 +++ .../modules/naplo/intezmeny/tankorSzemeszter.php | 200 +++ .../modules/naplo/intezmeny/tankorTanar.php | 292 +++++ .../naplo/intezmeny/tankorTanarHozzarendeles.php | 224 ++++ .../www/include/modules/naplo/intezmeny/terem.php | 25 + .../modules/naplo/intezmeny/tovabbkepzes.php | 159 +++ .../www/include/modules/naplo/intezmeny/valtas.php | 9 + .../include/modules/naplo/koszi/esemenyAdmin.php | 86 ++ .../www/include/modules/naplo/koszi/koszi.php | 40 + .../www/include/modules/naplo/koszi/kosziAdmin.php | 82 ++ .../www/include/modules/naplo/naplo.php | 12 + .../modules/naplo/nyomtatas/beiskolazasiTerv.php | 64 + .../naplo/nyomtatas/bizonyitvanyNyomtatas.php | 164 +++ .../modules/naplo/nyomtatas/diakAdatlap.php | 22 + .../naplo/nyomtatas/diakTankorJelentkezes.php | 336 +++++ .../include/modules/naplo/nyomtatas/ertesito.php | 101 ++ .../modules/naplo/nyomtatas/haladasinaplo.php | 139 +++ .../naplo/nyomtatas/helyettesitesinaplo.php | 148 +++ .../include/modules/naplo/nyomtatas/nyomtatas.php | 89 ++ .../modules/naplo/nyomtatas/osztalyozonaplo.php | 24 + .../naplo/nyomtatas/sniEvVegiJegyzokonyv.php | 48 + .../modules/naplo/nyomtatas/sniHaviJegyzokonyv.php | 41 + .../modules/naplo/nyomtatas/szovegesErtekeles.php | 131 ++ .../naplo/nyomtatas/tankorNaplohozRendeles.php | 48 + .../www/include/modules/naplo/nyomtatas/tex.php | 1285 ++++++++++++++++++++ .../include/modules/naplo/nyomtatas/torzslap.php | 199 +++ .../naplo/nyomtatas/tovabbkepzesHatarozat.php | 60 + .../include/modules/naplo/nyomtatas/zaradekok.php | 63 + .../include/modules/naplo/orarend/ascExport.php | 437 +++++++ .../naplo/orarend/convert-Microsoft Excel XML.php | 147 +++ .../modules/naplo/orarend/convert-RoPaSoft.php | 80 ++ .../convert-aSc Timetables Ctrl-Shift-E.php | 112 ++ ...s XML (tank\303\266r n\303\251lk\303\274l).php" | 188 +++ .../orarend/convert-aSc Timetables XML update.php | 241 ++++ .../naplo/orarend/convert-aSc Timetables XML.php | 217 ++++ .../include/modules/naplo/orarend/convert-csv.php | 79 ++ .../modules/naplo/orarend/convert-default.php | 33 + .../orarend/convert-eKr\303\251ta import.php" | 128 ++ .../modules/naplo/orarend/orarendBetolto.php | 82 ++ .../modules/naplo/orarend/orarendEllenorzes.php | 70 ++ .../modules/naplo/orarend/orarendModosito.php | 309 +++++ .../modules/naplo/orarend/orarendTankor.php | 33 + .../naplo/orarend/orarendTeremModositas.php | 3 + .../include/modules/naplo/orarend/tanarOrarend.php | 222 ++++ .../modules/naplo/osztalyozo/bizonyitvany.php | 134 ++ .../www/include/modules/naplo/osztalyozo/diak.php | 106 ++ .../include/modules/naplo/osztalyozo/dolgozat.php | 116 ++ .../www/include/modules/naplo/osztalyozo/stat.php | 247 ++++ .../modules/naplo/osztalyozo/szempontRendszer.php | 56 + .../modules/naplo/osztalyozo/szovegesErtekeles.php | 67 + .../include/modules/naplo/osztalyozo/tankor.php | 205 ++++ .../modules/naplo/osztalyozo/targySorrend.php | 55 + .../include/modules/naplo/osztalyozo/vizsga.php | 138 +++ .../www/include/modules/naplo/share/bejegyzes.php | 65 + .../modules/naplo/share/bejegyzesModifier.php | 40 + .../www/include/modules/naplo/share/bontas.php | 72 ++ .../www/include/modules/naplo/share/diak.php | 647 ++++++++++ .../include/modules/naplo/share/diakModifier.php | 344 ++++++ .../www/include/modules/naplo/share/dolgozat.php | 154 +++ .../www/include/modules/naplo/share/ertekeles.php | 60 + .../www/include/modules/naplo/share/esemeny.php | 216 ++++ .../www/include/modules/naplo/share/file.php | 662 ++++++++++ .../include/modules/naplo/share/helyettesites.php | 42 + .../modules/naplo/share/helyettesitesModifier.php | 117 ++ .../www/include/modules/naplo/share/hetes.php | 48 + .../www/include/modules/naplo/share/hianyzas.php | 541 ++++++++ .../modules/naplo/share/hianyzasModifier.php | 363 ++++++ .../www/include/modules/naplo/share/hirnok.php | 357 ++++++ .../include/modules/naplo/share/intezmenyek.php | 134 ++ .../www/include/modules/naplo/share/jegy.php | 73 ++ .../include/modules/naplo/share/jegyModifier.php | 68 ++ .../www/include/modules/naplo/share/jegyzet.php | 216 ++++ .../www/include/modules/naplo/share/kepesites.php | 103 ++ .../www/include/modules/naplo/share/kepzes.php | 173 +++ .../www/include/modules/naplo/share/kerdoiv.php | 127 ++ .../www/include/modules/naplo/share/kerelem.php | 136 +++ .../www/include/modules/naplo/share/kereso.php | 56 + .../www/include/modules/naplo/share/koszi.php | 141 +++ .../include/modules/naplo/share/munkakozosseg.php | 84 ++ .../www/include/modules/naplo/share/mysql.php | 184 +++ .../www/include/modules/naplo/share/nap.php | 332 +++++ .../www/include/modules/naplo/share/ora.php | 625 ++++++++++ .../include/modules/naplo/share/oraModifier.php | 148 +++ .../www/include/modules/naplo/share/orarend.php | 422 +++++++ .../www/include/modules/naplo/share/osztaly.php | 735 +++++++++++ .../modules/naplo/share/osztalyModifier.php | 313 +++++ .../include/modules/naplo/share/osztalyzatok.php | 342 ++++++ .../www/include/modules/naplo/share/rpc.php | 29 + .../www/include/modules/naplo/share/sni.php | 54 + .../www/include/modules/naplo/share/szemeszter.php | 176 +++ .../modules/naplo/share/szovegesErtekeles.php | 206 ++++ .../www/include/modules/naplo/share/szulo.php | 76 ++ .../www/include/modules/naplo/share/tanar.php | 194 +++ .../include/modules/naplo/share/tanarModifier.php | 14 + .../www/include/modules/naplo/share/tankor.php | 1180 ++++++++++++++++++ .../include/modules/naplo/share/tankorBlokk.php | 83 ++ .../modules/naplo/share/tankorDiakModifier.php | 518 ++++++++ .../include/modules/naplo/share/tankorModifier.php | 498 ++++++++ .../www/include/modules/naplo/share/tanmenet.php | 208 ++++ .../www/include/modules/naplo/share/targy.php | 432 +++++++ .../www/include/modules/naplo/share/terem.php | 151 +++ .../www/include/modules/naplo/share/verseny.php | 20 + .../www/include/modules/naplo/share/vizsga.php | 41 + .../www/include/modules/naplo/share/zaradek.php | 543 +++++++++ .../modules/naplo/share/zaroJegyModifier.php | 156 +++ .../www/include/modules/naplo/sni/diakAllapot.php | 91 ++ .../include/modules/naplo/sni/fejlesztesiTerv.php | 45 + .../modules/naplo/sni/tantargyiFeljegyzesek.php | 26 + .../include/modules/naplo/stat/lemorzsolodas.php | 223 ++++ .../modules/naplo/stat/tantargyFelosztas.php | 236 ++++ .../include/modules/naplo/tanev/checkStatus.php | 33 + .../www/include/modules/naplo/tanev/fogadoOra.php | 142 +++ .../www/include/modules/naplo/tanev/munkaterv.php | 152 +++ .../include/modules/naplo/tanev/tankorBlokk.php | 277 +++++ .../include/modules/naplo/tanev/tankorCsoport.php | 164 +++ .../include/modules/naplo/tanev/targyBontas.php | 240 ++++ .../include/modules/naplo/tanev/targyOraszam.php | 28 + .../modules/naplo/tanev/vegzosOrarendLezaras.php | 33 + .../www/include/modules/naplo/uzeno/uzeno.php | 236 ++++ .../lang/hu_HU/module-naplo/admin/azonositok.php | 11 + .../lang/hu_HU/module-naplo/admin/csoportok.php | 10 + .../lang/hu_HU/module-naplo/admin/fillhaladasi.php | 6 + .../lang/hu_HU/module-naplo/admin/intezmenyek.php | 28 + .../lang/hu_HU/module-naplo/admin/rpcPrivilege.php | 12 + .../lang/hu_HU/module-naplo/admin/szemeszterek.php | 13 + .../hu_HU/module-naplo/admin/szuloiAzonositok.php | 19 + .../www/lang/hu_HU/module-naplo/admin/tanevek.php | 26 + .../www/lang/hu_HU/module-naplo/admin/tankorok.php | 5 + .../www/lang/hu_HU/module-naplo/base.php | 65 + .../module-naplo/bejegyzesek/bejegyzesTipus.php | 11 + .../hu_HU/module-naplo/bejegyzesek/bejegyzesek.php | 15 + .../lang/hu_HU/module-naplo/bejegyzesek/info.php | 6 + .../hu_HU/module-naplo/bejegyzesek/ujBejegyzes.php | 18 + .../www/lang/hu_HU/module-naplo/diakValaszto.php | 5 + .../hu_HU/module-naplo/ertekeles/ertekeles.php | 6 + .../module-naplo/ertekeles/kerdoivBetoltes.php | 28 + .../hu_HU/module-naplo/ertekeles/osszesites.php | 5 + .../hu_HU/module-naplo/esemeny/esemenyDiak.php | 21 + .../hu_HU/module-naplo/esemeny/jelentkezes.php | 17 + .../lang/hu_HU/module-naplo/esemeny/ujEsemeny.php | 25 + .../hu_HU/module-naplo/export/bizonyitvany.php | 10 + .../lang/hu_HU/module-naplo/export/diakExport.php | 76 ++ .../module-naplo/export/kirBizonyitvanyExport.php | 5 + .../www/lang/hu_HU/module-naplo/export/kreta.php | 8 + .../www/lang/hu_HU/module-naplo/export/sulix.php | 7 + .../module-naplo/export/tanarOsztalyOraszam.php | 8 + .../module-naplo/export/tantargyFelosztas.php | 12 + .../lang/hu_HU/module-naplo/haladasi/elmaradas.php | 7 + .../hu_HU/module-naplo/haladasi/elszamolas.php | 19 + .../lang/hu_HU/module-naplo/haladasi/haladasi.php | 38 + .../hu_HU/module-naplo/haladasi/helyettesites.php | 22 + .../www/lang/hu_HU/module-naplo/haladasi/hetes.php | 5 + .../lang/hu_HU/module-naplo/haladasi/minuszora.php | 6 + .../www/lang/hu_HU/module-naplo/haladasi/ora.php | 13 + .../hu_HU/module-naplo/haladasi/oralatogatas.php | 10 + .../hu_HU/module-naplo/haladasi/osszevonas.php | 19 + .../lang/hu_HU/module-naplo/haladasi/pluszora.php | 23 + .../lang/hu_HU/module-naplo/haladasi/specialis.php | 39 + .../www/lang/hu_HU/module-naplo/haladasi/stat.php | 23 + .../hu_HU/module-naplo/haladasi/teremModositas.php | 14 + .../www/lang/hu_HU/module-naplo/hianyzas/diak.php | 13 + .../module-naplo/hianyzas/diakIgazolatlan.php | 10 + .../lang/hu_HU/module-naplo/hianyzas/diakLista.php | 8 + .../www/lang/hu_HU/module-naplo/hianyzas/info.php | 9 + .../www/lang/hu_HU/module-naplo/hianyzas/nap.php | 13 + .../lang/hu_HU/module-naplo/hianyzas/oktstat.php | 5 + .../www/lang/hu_HU/module-naplo/hianyzas/ora.php | 27 + .../lang/hu_HU/module-naplo/hianyzas/osztaly.php | 47 + .../hu_HU/module-naplo/hianyzas/osztalyNap.php | 14 + .../hu_HU/module-naplo/hibabejelento/admin.php | 12 + .../module-naplo/hibabejelento/hibabejelento.php | 8 + .../www/lang/hu_HU/module-naplo/hirnok/hirnok.php | 6 + .../module-naplo/hirnok/hirnokFeliratkozas.php | 6 + .../www/lang/hu_HU/module-naplo/intezmeny/diak.php | 137 +++ .../hu_HU/module-naplo/intezmeny/diakExport.php | 14 + .../hu_HU/module-naplo/intezmeny/diakFelmentes.php | 60 + .../hu_HU/module-naplo/intezmeny/diakStatusz.php | 20 + .../hu_HU/module-naplo/intezmeny/diakSzulo.php | 53 + .../hu_HU/module-naplo/intezmeny/diakTankor.php | 11 + .../intezmeny/diakTankorJelentkezes.php | 29 + .../hu_HU/module-naplo/intezmeny/felmentes.php | 15 + .../hu_HU/module-naplo/intezmeny/kepesitesek.php | 6 + .../lang/hu_HU/module-naplo/intezmeny/kepzes.php | 22 + .../hu_HU/module-naplo/intezmeny/kepzesOraterv.php | 20 + .../hu_HU/module-naplo/intezmeny/kepzesTankor.php | 38 + .../hu_HU/module-naplo/intezmeny/munkakozosseg.php | 36 + .../lang/hu_HU/module-naplo/intezmeny/osztaly.php | 40 + .../lang/hu_HU/module-naplo/intezmeny/tanar.php | 53 + .../lang/hu_HU/module-naplo/intezmeny/tankor.php | 58 + .../hu_HU/module-naplo/intezmeny/tankorDiak.php | 22 + .../hu_HU/module-naplo/intezmeny/tankorLetszam.php | 10 + .../module-naplo/intezmeny/tankorSzemeszter.php | 6 + .../hu_HU/module-naplo/intezmeny/tankorTanar.php | 12 + .../intezmeny/tankorTanarHozzarendeles.php | 5 + .../lang/hu_HU/module-naplo/intezmeny/terem.php | 14 + .../hu_HU/module-naplo/intezmeny/tovabbkepzes.php | 34 + .../lang/hu_HU/module-naplo/intezmeny/valtas.php | 5 + .../lang/hu_HU/module-naplo/intezmeny/zaradek.php | 9 + .../lang/hu_HU/module-naplo/koszi/esemenyAdmin.php | 23 + .../www/lang/hu_HU/module-naplo/koszi/koszi.php | 13 + .../lang/hu_HU/module-naplo/koszi/kosziAdmin.php | 17 + .../www/lang/hu_HU/module-naplo/naplo.php | 8 + .../nyomtatas/diakTankorJelentkezes.php | 8 + .../lang/hu_HU/module-naplo/nyomtatas/ertesito.php | 5 + .../module-naplo/nyomtatas/helyettesitesinaplo.php | 6 + .../module-naplo/nyomtatas/osztalyozonaplo.php | 6 + .../nyomtatas/sniEvVegiJegyzokonyv.php | 4 + .../module-naplo/nyomtatas/sniHaviJegyzokonyv.php | 4 + .../nyomtatas/tankorNaplohozRendeles.php | 20 + .../hu_HU/module-naplo/nyomtatas/zaradekok.php | 5 + .../lang/hu_HU/module-naplo/orarend/ascExport.php | 22 + .../hu_HU/module-naplo/orarend/helyettesites.php | 6 + .../lang/hu_HU/module-naplo/orarend/orarend.php | 10 + .../hu_HU/module-naplo/orarend/orarendBetolto.php | 9 + .../module-naplo/orarend/orarendEllenorzes.php | 11 + .../hu_HU/module-naplo/orarend/orarendModosito.php | 19 + .../hu_HU/module-naplo/orarend/orarendTankor.php | 5 + .../module-naplo/orarend/orarendTeremModositas.php | 10 + .../hu_HU/module-naplo/orarend/szabadTerem.php | 5 + .../hu_HU/module-naplo/orarend/tanarOrarend.php | 5 + .../www/lang/hu_HU/module-naplo/orarend/termez.php | 6 + .../module-naplo/osztalyozo/bizelomenetel.php | 16 + .../hu_HU/module-naplo/osztalyozo/bizonyitvany.php | 42 + .../lang/hu_HU/module-naplo/osztalyozo/diak.php | 18 + .../hu_HU/module-naplo/osztalyozo/dolgozat.php | 34 + .../lang/hu_HU/module-naplo/osztalyozo/jegy.php | 22 + .../lang/hu_HU/module-naplo/osztalyozo/stat.php | 65 + .../module-naplo/osztalyozo/szempontRendszer.php | 13 + .../module-naplo/osztalyozo/szovegesErtekeles.php | 8 + .../lang/hu_HU/module-naplo/osztalyozo/tankor.php | 34 + .../hu_HU/module-naplo/osztalyozo/targySorrend.php | 8 + .../lang/hu_HU/module-naplo/osztalyozo/vizsga.php | 19 + .../module-naplo/osztalyozo/vizsgaJelentkezes.php | 5 + .../www/lang/hu_HU/module-naplo/share/diak.php | 5 + .../lang/hu_HU/module-naplo/share/ertekeles.php | 33 + .../www/lang/hu_HU/module-naplo/share/file.php | 67 + .../www/lang/hu_HU/module-naplo/share/hianyzas.php | 16 + .../lang/hu_HU/module-naplo/share/osztalyzatok.php | 61 + .../www/lang/hu_HU/module-naplo/share/tanar.php | 10 + .../lang/hu_HU/module-naplo/sni/diakAllapot.php | 84 ++ .../hu_HU/module-naplo/sni/fejlesztesiTerv.php | 21 + .../module-naplo/sni/tantargyiFeljegyzesek.php | 9 + .../www/lang/hu_HU/module-naplo/stat/letszam.php | 6 + .../www/lang/hu_HU/module-naplo/szulinap.php | 5 + .../lang/hu_HU/module-naplo/tanev/checkStatus.php | 11 + .../lang/hu_HU/module-naplo/tanev/diakTanarai.php | 7 + .../lang/hu_HU/module-naplo/tanev/fogadoOra.php | 19 + .../hu_HU/module-naplo/tanev/helyettesites.php | 5 + .../lang/hu_HU/module-naplo/tanev/munkaterv.php | 59 + .../lang/hu_HU/module-naplo/tanev/tankorBlokk.php | 13 + .../hu_HU/module-naplo/tanev/tankorCsoport.php | 13 + .../lang/hu_HU/module-naplo/tanev/targyBontas.php | 8 + .../module-naplo/tanev/vegzosOrarendLezaras.php | 5 + .../module-naplo/tanev/vegzosTankorLezaras.php | 4 + .../hu_HU/module-naplo/tanmenet/tanmenetInfo.php | 15 + .../module-naplo/tanmenet/tanmenetJovahagyas.php | 6 + .../hu_HU/module-naplo/tanmenet/tanmenetLeadas.php | 12 + .../module-naplo/tanmenet/tanmenetModositas.php | 17 + .../hu_HU/module-naplo/tanmenet/tanmenetTankor.php | 18 + .../hu_HU/module-naplo/tanmenet/ujTanmenet.php | 10 + .../www/lang/hu_HU/module-naplo/uzeno/postas.php | 45 + .../www/lang/hu_HU/module-naplo/uzeno/uzeno.php | 42 + .../www/policy/parent/naplo/diakValaszto-pre.php | 34 + .../www/policy/parent/naplo/diakValaszto.php | 8 + .../mayor-naplo/www/policy/parent/naplo/hirnok | 1 + .../www/policy/parent/naplo/naplo-pre.php | 5 + .../mayor-naplo/www/policy/parent/naplo/naplo.php | 0 .../www/policy/private/naplo/admin/admin-pre.php | 5 + .../www/policy/private/naplo/admin/admin.php | 0 .../policy/private/naplo/admin/azonositok-pre.php | 133 ++ .../www/policy/private/naplo/admin/azonositok.php | 9 + .../policy/private/naplo/admin/checksql-pre.php | 22 + .../www/policy/private/naplo/admin/checksql.php | 15 + .../policy/private/naplo/admin/csoportok-pre.php | 68 ++ .../www/policy/private/naplo/admin/csoportok.php | 14 + .../private/naplo/admin/fillhaladasi-pre.php | 30 + .../policy/private/naplo/admin/fillhaladasi.php | 6 + .../www/policy/private/naplo/admin/import-pre.php | 49 + .../www/policy/private/naplo/admin/import.php | 19 + .../www/policy/private/naplo/admin/install-pre.php | 47 + .../www/policy/private/naplo/admin/install.php | 31 + .../policy/private/naplo/admin/intezmenyek-pre.php | 79 ++ .../www/policy/private/naplo/admin/intezmenyek.php | 13 + .../naplo/admin/kretaHianyzasImport-pre.php | 105 ++ .../private/naplo/admin/kretaHianyzasImport.php | 9 + .../private/naplo/admin/rpcPrivilege-pre.php | 45 + .../policy/private/naplo/admin/rpcPrivilege.php | 10 + .../private/naplo/admin/szemeszterek-pre.php | 80 ++ .../policy/private/naplo/admin/szemeszterek.php | 13 + .../private/naplo/admin/szuloiAzonositok-pre.php | 171 +++ .../private/naplo/admin/szuloiAzonositok.php | 9 + .../www/policy/private/naplo/admin/tanevek-pre.php | 151 +++ .../www/policy/private/naplo/admin/tanevek.php | 13 + .../policy/private/naplo/admin/tankorok-pre.php | 39 + .../www/policy/private/naplo/admin/tankorok.php | 16 + .../naplo/bejegyzesek/bejegyzesTipus-pre.php | 59 + .../private/naplo/bejegyzesek/bejegyzesTipus.php | 9 + .../private/naplo/bejegyzesek/bejegyzesek-pre.php | 73 ++ .../private/naplo/bejegyzesek/bejegyzesek.php | 15 + .../policy/private/naplo/bejegyzesek/info-pre.php | 10 + .../www/policy/private/naplo/bejegyzesek/info.php | 5 + .../private/naplo/bejegyzesek/ujBejegyzes-pre.php | 60 + .../private/naplo/bejegyzesek/ujBejegyzes.php | 12 + .../www/policy/private/naplo/error-pre.php | 0 .../mayor-naplo/www/policy/private/naplo/error.php | 6 + .../private/naplo/ertekeles/ertekeles-pre.php | 205 ++++ .../policy/private/naplo/ertekeles/ertekeles.php | 9 + .../policy/private/naplo/ertekeles/export-pre.php | 33 + .../www/policy/private/naplo/ertekeles/export.php | 27 + .../naplo/ertekeles/kerdoivBetoltes-pre.php | 149 +++ .../private/naplo/ertekeles/kerdoivBetoltes.php | 10 + .../private/naplo/ertekeles/osszesites-pre.php | 97 ++ .../policy/private/naplo/ertekeles/osszesites.php | 5 + .../policy/private/naplo/esemeny/esemeny-pre.php | 7 + .../www/policy/private/naplo/esemeny/esemeny.php | 0 .../private/naplo/esemeny/esemenyDiak-pre.php | 83 ++ .../policy/private/naplo/esemeny/esemenyDiak.php | 8 + .../private/naplo/esemeny/jelentkezes-pre.php | 45 + .../policy/private/naplo/esemeny/jelentkezes.php | 8 + .../policy/private/naplo/esemeny/ujEsemeny-pre.php | 91 ++ .../www/policy/private/naplo/esemeny/ujEsemeny.php | 10 + .../private/naplo/export/bizonyitvany-pre.php | 114 ++ .../policy/private/naplo/export/bizonyitvany.php | 9 + .../policy/private/naplo/export/diakExport-pre.php | 68 ++ .../www/policy/private/naplo/export/diakExport.php | 12 + .../naplo/export/kirBizonyitvanyExport-pre.php | 132 ++ .../private/naplo/export/kirBizonyitvanyExport.php | 0 .../www/policy/private/naplo/export/kreta-pre.php | 176 +++ .../www/policy/private/naplo/export/kreta.php | 11 + .../www/policy/private/naplo/export/sulix-pre.php | 26 + .../www/policy/private/naplo/export/sulix.php | 9 + .../naplo/export/tanarOsztalyOraszam-pre.php | 106 ++ .../private/naplo/export/tanarOsztalyOraszam.php | 10 + .../private/naplo/export/tantargyFelosztas-pre.php | 63 + .../private/naplo/export/tantargyFelosztas.php | 9 + .../private/naplo/haladasi/elmaradas-pre.php | 17 + .../policy/private/naplo/haladasi/elmaradas.php | 12 + .../private/naplo/haladasi/elszamolas-pre.php | 59 + .../policy/private/naplo/haladasi/elszamolas.php | 9 + .../policy/private/naplo/haladasi/haladasi-pre.php | 387 ++++++ .../www/policy/private/naplo/haladasi/haladasi.php | 15 + .../private/naplo/haladasi/helyettesites-pre.php | 195 +++ .../private/naplo/haladasi/helyettesites.php | 46 + .../policy/private/naplo/haladasi/hetes-pre.php | 260 ++++ .../www/policy/private/naplo/haladasi/hetes.php | 9 + .../private/naplo/haladasi/minuszora-pre.php | 75 ++ .../policy/private/naplo/haladasi/minuszora.php | 9 + .../www/policy/private/naplo/haladasi/ora-pre.php | 33 + .../www/policy/private/naplo/haladasi/ora.php | 9 + .../private/naplo/haladasi/oralatogatas-pre.php | 102 ++ .../policy/private/naplo/haladasi/oralatogatas.php | 9 + .../private/naplo/haladasi/osszevonas-pre.php | 109 ++ .../policy/private/naplo/haladasi/osszevonas.php | 13 + .../policy/private/naplo/haladasi/pluszora-pre.php | 177 +++ .../www/policy/private/naplo/haladasi/pluszora.php | 15 + .../private/naplo/haladasi/specialis-pre.php | 95 ++ .../policy/private/naplo/haladasi/specialis.php | 17 + .../www/policy/private/naplo/haladasi/stat-pre.php | 58 + .../www/policy/private/naplo/haladasi/stat.php | 9 + .../policy/private/naplo/haladasi/tankor-pre.php | 29 + .../www/policy/private/naplo/haladasi/tankor.php | 10 + .../private/naplo/haladasi/teremModositas-pre.php | 102 ++ .../private/naplo/haladasi/teremModositas.php | 9 + .../www/policy/private/naplo/hianyzas/diak-pre.php | 213 ++++ .../www/policy/private/naplo/hianyzas/diak.php | 10 + .../private/naplo/hianyzas/diakIgazolatlan-pre.php | 26 + .../private/naplo/hianyzas/diakIgazolatlan.php | 9 + .../private/naplo/hianyzas/diakLista-pre.php | 101 ++ .../policy/private/naplo/hianyzas/diakLista.php | 10 + .../policy/private/naplo/hianyzas/hianyzas-pre.php | 7 + .../www/policy/private/naplo/hianyzas/hianyzas.php | 0 .../www/policy/private/naplo/hianyzas/info-pre.php | 32 + .../www/policy/private/naplo/hianyzas/info.php | 5 + .../www/policy/private/naplo/hianyzas/nap-pre.php | 162 +++ .../www/policy/private/naplo/hianyzas/nap.php | 14 + .../policy/private/naplo/hianyzas/oktstat-pre.php | 33 + .../www/policy/private/naplo/hianyzas/oktstat.php | 12 + .../www/policy/private/naplo/hianyzas/ora-pre.php | 166 +++ .../www/policy/private/naplo/hianyzas/ora.php | 10 + .../policy/private/naplo/hianyzas/osztaly-pre.php | 124 ++ .../www/policy/private/naplo/hianyzas/osztaly.php | 13 + .../private/naplo/hianyzas/osztalyNap-pre.php | 53 + .../policy/private/naplo/hianyzas/osztalyNap.php | 10 + .../private/naplo/hibabejelento/admin-pre.php | 80 ++ .../policy/private/naplo/hibabejelento/admin.php | 16 + .../naplo/hibabejelento/hibabejelento-pre.php | 24 + .../private/naplo/hibabejelento/hibabejelento.php | 10 + .../policy/private/naplo/hirnok/cronFutar-pre.php | 32 + .../www/policy/private/naplo/hirnok/cronFutar.php | 43 + .../www/policy/private/naplo/hirnok/hirnok-pre.php | 53 + .../www/policy/private/naplo/hirnok/hirnok.php | 6 + .../naplo/hirnok/hirnokFeliratkozas-pre.php | 47 + .../private/naplo/hirnok/hirnokFeliratkozas.php | 7 + .../policy/private/naplo/intezmeny/diak-pre.php | 261 ++++ .../www/policy/private/naplo/intezmeny/diak.php | 30 + .../private/naplo/intezmeny/diakExport-pre.php | 56 + .../policy/private/naplo/intezmeny/diakExport.php | 9 + .../private/naplo/intezmeny/diakFelmentes-pre.php | 325 +++++ .../private/naplo/intezmeny/diakFelmentes.php | 13 + .../private/naplo/intezmeny/diakStatusz-pre.php | 117 ++ .../policy/private/naplo/intezmeny/diakStatusz.php | 10 + .../private/naplo/intezmeny/diakSzulo-pre.php | 98 ++ .../policy/private/naplo/intezmeny/diakSzulo.php | 13 + .../private/naplo/intezmeny/diakTankor-pre.php | 116 ++ .../policy/private/naplo/intezmeny/diakTankor.php | 13 + .../naplo/intezmeny/diakTankorJelentkezes-pre.php | 113 ++ .../naplo/intezmeny/diakTankorJelentkezes.php | 10 + .../private/naplo/intezmeny/felmentes-pre.php | 67 + .../policy/private/naplo/intezmeny/felmentes.php | 11 + .../private/naplo/intezmeny/intezmeny-pre.php | 5 + .../policy/private/naplo/intezmeny/intezmeny.php | 0 .../private/naplo/intezmeny/kepesitesek-pre.php | 92 ++ .../policy/private/naplo/intezmeny/kepesitesek.php | 10 + .../policy/private/naplo/intezmeny/kepzes-pre.php | 60 + .../www/policy/private/naplo/intezmeny/kepzes.php | 14 + .../private/naplo/intezmeny/kepzesOraterv-pre.php | 114 ++ .../private/naplo/intezmeny/kepzesOraterv.php | 12 + .../private/naplo/intezmeny/munkakozosseg-pre.php | 110 ++ .../private/naplo/intezmeny/munkakozosseg.php | 27 + .../policy/private/naplo/intezmeny/osztaly-pre.php | 324 +++++ .../www/policy/private/naplo/intezmeny/osztaly.php | 40 + .../policy/private/naplo/intezmeny/szulo-pre.php | 15 + .../www/policy/private/naplo/intezmeny/szulo.php | 24 + .../policy/private/naplo/intezmeny/tanar-pre.php | 108 ++ .../www/policy/private/naplo/intezmeny/tanar.php | 27 + .../policy/private/naplo/intezmeny/tankor-pre.php | 219 ++++ .../www/policy/private/naplo/intezmeny/tankor.php | 20 + .../private/naplo/intezmeny/tankorDiak-pre.php | 162 +++ .../policy/private/naplo/intezmeny/tankorDiak.php | 17 + .../private/naplo/intezmeny/tankorLetszam-pre.php | 101 ++ .../private/naplo/intezmeny/tankorLetszam.php | 8 + .../naplo/intezmeny/tankorSzemeszter-pre.php | 122 ++ .../private/naplo/intezmeny/tankorSzemeszter.php | 9 + .../private/naplo/intezmeny/tankorTanar-pre.php | 114 ++ .../policy/private/naplo/intezmeny/tankorTanar.php | 9 + .../intezmeny/tankorTanarHozzarendeles-pre.php | 64 + .../naplo/intezmeny/tankorTanarHozzarendeles.php | 10 + .../private/naplo/intezmeny/tantargyFelosztas.php | 9 + .../policy/private/naplo/intezmeny/terem-pre.php | 45 + .../www/policy/private/naplo/intezmeny/terem.php | 13 + .../private/naplo/intezmeny/tovabbkepzes-pre.php | 112 ++ .../private/naplo/intezmeny/tovabbkepzes.php | 12 + .../policy/private/naplo/intezmeny/valtas-pre.php | 58 + .../www/policy/private/naplo/intezmeny/valtas.php | 7 + .../policy/private/naplo/intezmeny/verseny-pre.php | 54 + .../www/policy/private/naplo/intezmeny/verseny.php | 10 + .../policy/private/naplo/intezmeny/zaradek-pre.php | 76 ++ .../www/policy/private/naplo/intezmeny/zaradek.php | 11 + .../private/naplo/koszi/esemenyAdmin-pre.php | 83 ++ .../policy/private/naplo/koszi/esemenyAdmin.php | 21 + .../www/policy/private/naplo/koszi/koszi-pre.php | 49 + .../www/policy/private/naplo/koszi/koszi.php | 8 + .../policy/private/naplo/koszi/kosziAdmin-pre.php | 93 ++ .../www/policy/private/naplo/koszi/kosziAdmin.php | 10 + .../www/policy/private/naplo/naplo-pre.php | 22 + .../mayor-naplo/www/policy/private/naplo/naplo.php | 15 + .../naplo/nyomtatas/beiskolazasiTerv-pre.php | 37 + .../private/naplo/nyomtatas/beiskolazasiTerv.php | 6 + .../naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php | 88 ++ .../naplo/nyomtatas/bizonyitvanyNyomtatas.php | 0 .../private/naplo/nyomtatas/diakAdatlap-pre.php | 135 ++ .../policy/private/naplo/nyomtatas/diakAdatlap.php | 8 + .../naplo/nyomtatas/diakTankorJelentkezes-pre.php | 71 ++ .../naplo/nyomtatas/diakTankorJelentkezes.php | 12 + .../private/naplo/nyomtatas/ertesito-pre.php | 101 ++ .../policy/private/naplo/nyomtatas/ertesito.php | 0 .../private/naplo/nyomtatas/haladasinaplo-pre.php | 212 ++++ .../private/naplo/nyomtatas/haladasinaplo.php | 6 + .../naplo/nyomtatas/helyettesitesinaplo-pre.php | 39 + .../naplo/nyomtatas/helyettesitesinaplo.php | 9 + .../private/naplo/nyomtatas/nyomtatas-pre.php | 6 + .../policy/private/naplo/nyomtatas/nyomtatas.php | 0 .../naplo/nyomtatas/osztalyozonaplo-pre.php | 161 +++ .../private/naplo/nyomtatas/osztalyozonaplo.php | 9 + .../naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php | 105 ++ .../naplo/nyomtatas/sniEvVegiJegyzokonyv.php | 1 + .../naplo/nyomtatas/sniHaviJegyzokonyv-pre.php | 93 ++ .../private/naplo/nyomtatas/sniHaviJegyzokonyv.php | 1 + .../naplo/nyomtatas/szovegesErtekeles-pre.php | 78 ++ .../private/naplo/nyomtatas/szovegesErtekeles.php | 5 + .../naplo/nyomtatas/tankorNaplohozRendeles-pre.php | 58 + .../naplo/nyomtatas/tankorNaplohozRendeles.php | 15 + .../private/naplo/nyomtatas/torzslap-pre.php | 165 +++ .../policy/private/naplo/nyomtatas/torzslap.php | 5 + .../naplo/nyomtatas/tovabbkepzesHatarozat-pre.php | 40 + .../naplo/nyomtatas/tovabbkepzesHatarozat.php | 6 + .../private/naplo/nyomtatas/zaradekok-pre.php | 49 + .../policy/private/naplo/nyomtatas/zaradekok.php | 0 .../policy/private/naplo/orarend/ascExport-pre.php | 110 ++ .../www/policy/private/naplo/orarend/ascExport.php | 11 + .../private/naplo/orarend/helyettesites-pre.php | 80 ++ .../policy/private/naplo/orarend/helyettesites.php | 9 + .../policy/private/naplo/orarend/orarend-pre.php | 312 +++++ .../www/policy/private/naplo/orarend/orarend.php | 8 + .../private/naplo/orarend/orarendBetolto-pre.php | 80 ++ .../private/naplo/orarend/orarendBetolto.php | 14 + .../naplo/orarend/orarendEllenorzes-pre.php | 56 + .../private/naplo/orarend/orarendEllenorzes.php | 9 + .../private/naplo/orarend/orarendModosito-pre.php | 287 +++++ .../private/naplo/orarend/orarendModosito.php | 14 + .../private/naplo/orarend/orarendTankor-pre.php | 56 + .../policy/private/naplo/orarend/orarendTankor.php | 8 + .../naplo/orarend/orarendTeremModositas-pre.php | 86 ++ .../naplo/orarend/orarendTeremModositas.php | 9 + .../private/naplo/orarend/orarendUtkozes-pre.php | 77 ++ .../private/naplo/orarend/orarendUtkozes.php | 47 + .../private/naplo/orarend/szabadTerem-pre.php | 35 + .../policy/private/naplo/orarend/szabadTerem.php | 9 + .../private/naplo/orarend/tanarOrarend-pre.php | 49 + .../policy/private/naplo/orarend/tanarOrarend.php | 9 + .../policy/private/naplo/orarend/termez-pre.php | 173 +++ .../www/policy/private/naplo/orarend/termez.php | 6 + .../private/naplo/osztalyozo/bizelomenetel-pre.php | 7 + .../private/naplo/osztalyozo/bizelomenetel.php | 3 + .../private/naplo/osztalyozo/bizonyitvany-pre.php | 166 +++ .../private/naplo/osztalyozo/bizonyitvany.php | 16 + .../policy/private/naplo/osztalyozo/diak-pre.php | 100 ++ .../www/policy/private/naplo/osztalyozo/diak.php | 12 + .../private/naplo/osztalyozo/dolgozat-pre.php | 168 +++ .../policy/private/naplo/osztalyozo/dolgozat.php | 16 + .../policy/private/naplo/osztalyozo/jegy-pre.php | 120 ++ .../www/policy/private/naplo/osztalyozo/jegy.php | 12 + .../private/naplo/osztalyozo/osztalyozo-pre.php | 6 + .../policy/private/naplo/osztalyozo/osztalyozo.php | 0 .../policy/private/naplo/osztalyozo/stat-pre.php | 319 +++++ .../www/policy/private/naplo/osztalyozo/stat.php | 15 + .../naplo/osztalyozo/szempontRendszer-pre.php | 51 + .../private/naplo/osztalyozo/szempontRendszer.php | 16 + .../naplo/osztalyozo/szovegesErtekeles-pre.php | 258 ++++ .../private/naplo/osztalyozo/szovegesErtekeles.php | 15 + .../policy/private/naplo/osztalyozo/tankor-pre.php | 332 +++++ .../www/policy/private/naplo/osztalyozo/tankor.php | 17 + .../private/naplo/osztalyozo/targySorrend-pre.php | 47 + .../private/naplo/osztalyozo/targySorrend.php | 8 + .../policy/private/naplo/osztalyozo/vizsga-pre.php | 95 ++ .../www/policy/private/naplo/osztalyozo/vizsga.php | 11 + .../naplo/osztalyozo/vizsgaJelentkezes-pre.php | 37 + .../private/naplo/osztalyozo/vizsgaJelentkezes.php | 9 + .../private/naplo/osztalyozo/zaroJegyCheck-pre.php | 82 ++ .../private/naplo/osztalyozo/zaroJegyCheck.php | 4 + .../policy/private/naplo/sni/diakAllapot-pre.php | 127 ++ .../www/policy/private/naplo/sni/diakAllapot.php | 8 + .../private/naplo/sni/fejlesztesiTerv-pre.php | 110 ++ .../policy/private/naplo/sni/fejlesztesiTerv.php | 9 + .../www/policy/private/naplo/sni/sni-pre.php | 5 + .../www/policy/private/naplo/sni/sni.php | 0 .../naplo/sni/tantargyiFeljegyzesek-pre.php | 113 ++ .../private/naplo/sni/tantargyiFeljegyzesek.php | 10 + .../private/naplo/stat/lemorzsolodas-pre.php | 38 + .../policy/private/naplo/stat/lemorzsolodas.php | 8 + .../www/policy/private/naplo/stat/letszam-pre.php | 88 ++ .../www/policy/private/naplo/stat/letszam.php | 8 + .../private/naplo/stat/tantargyFelosztas-pre.php | 127 ++ .../private/naplo/stat/tantargyFelosztas.php | 10 + .../www/policy/private/naplo/szulinap-pre.php | 15 + .../www/policy/private/naplo/szulinap.php | 44 + .../policy/private/naplo/tanev/checkStatus-pre.php | 7 + .../www/policy/private/naplo/tanev/checkStatus.php | 6 + .../policy/private/naplo/tanev/diakTanarai-pre.php | 54 + .../www/policy/private/naplo/tanev/diakTanarai.php | 11 + .../policy/private/naplo/tanev/fogadoOra-pre.php | 142 +++ .../www/policy/private/naplo/tanev/fogadoOra.php | 26 + .../policy/private/naplo/tanev/munkaterv-pre.php | 102 ++ .../www/policy/private/naplo/tanev/munkaterv.php | 26 + .../www/policy/private/naplo/tanev/tanev-pre.php | 5 + .../www/policy/private/naplo/tanev/tanev.php | 0 .../policy/private/naplo/tanev/tankorBlokk-pre.php | 114 ++ .../www/policy/private/naplo/tanev/tankorBlokk.php | 14 + .../private/naplo/tanev/tankorCsoport-pre.php | 132 ++ .../policy/private/naplo/tanev/tankorCsoport.php | 11 + .../policy/private/naplo/tanev/targyBontas-pre.php | 175 +++ .../www/policy/private/naplo/tanev/targyBontas.php | 19 + .../private/naplo/tanev/targyOraszam-pre.php | 10 + .../policy/private/naplo/tanev/targyOraszam.php | 7 + .../naplo/tanev/vegzosOrarendLezaras-pre.php | 72 ++ .../private/naplo/tanev/vegzosOrarendLezaras.php | 9 + .../naplo/tanev/vegzosTankorLezaras-pre.php | 77 ++ .../private/naplo/tanev/vegzosTankorLezaras.php | 9 + .../policy/private/naplo/tanmenet/tanmenet-pre.php | 5 + .../www/policy/private/naplo/tanmenet/tanmenet.php | 0 .../private/naplo/tanmenet/tanmenetInfo-pre.php | 35 + .../policy/private/naplo/tanmenet/tanmenetInfo.php | 15 + .../naplo/tanmenet/tanmenetJovahagyas-pre.php | 88 ++ .../private/naplo/tanmenet/tanmenetJovahagyas.php | 9 + .../private/naplo/tanmenet/tanmenetLeadas-pre.php | 51 + .../private/naplo/tanmenet/tanmenetLeadas.php | 9 + .../naplo/tanmenet/tanmenetModositas-pre.php | 83 ++ .../private/naplo/tanmenet/tanmenetModositas.php | 9 + .../private/naplo/tanmenet/tanmenetTankor-pre.php | 95 ++ .../private/naplo/tanmenet/tanmenetTankor.php | 11 + .../private/naplo/tanmenet/ujTanmenet-pre.php | 72 ++ .../policy/private/naplo/tanmenet/ujTanmenet.php | 8 + .../www/policy/private/naplo/tools/ajax.php | 7 + .../www/policy/private/naplo/tools/ajaxExample.php | 29 + .../private/naplo/tools/dolgozatAdat-pre.php | 38 + .../policy/private/naplo/tools/getDiakAdat-pre.php | 61 + .../policy/private/naplo/tools/getJegyAdat-pre.php | 36 + .../policy/private/naplo/tools/getOraAdat-pre.php | 94 ++ .../private/naplo/tools/getOsztalyAdat-pre.php | 39 + .../private/naplo/tools/getSzuloAdat-pre.php | 27 + .../private/naplo/tools/getTanarAdat-pre.php | 56 + .../private/naplo/tools/getTankorAdat-pre.php | 38 + .../private/naplo/tools/getZaroJegyAdat-pre.php | 41 + .../private/naplo/tools/intezmenyNev-pre.php | 10 + .../policy/private/naplo/tools/intezmenyNev.php | 8 + .../policy/private/naplo/tools/jegyzetAdat-pre.php | 165 +++ .../www/policy/private/naplo/tools/kereso-pre.php | 25 + .../www/policy/private/naplo/tools/napAdat-pre.php | 23 + .../www/policy/private/naplo/tools/oid.php | 1 + .../www/policy/private/naplo/tools/oraAdat-pre.php | 2 + .../www/policy/private/naplo/tools/tankor-pre.php | 39 + .../policy/private/naplo/tools/tankorLista-pre.php | 66 + .../policy/private/naplo/tools/tankorMod-pre.php | 40 + .../policy/private/naplo/tools/ujTankor-pre.php | 114 ++ .../www/policy/private/naplo/uzeno/postas-pre.php | 89 ++ .../www/policy/private/naplo/uzeno/postas.php | 5 + .../www/policy/private/naplo/uzeno/uzeno-pre.php | 187 +++ .../www/policy/private/naplo/uzeno/uzeno.php | 12 + .../www/policy/public/naplo/rpc/rpc-pre.php | 48 + .../www/policy/public/naplo/rpc/rpc.php | 7 + .../www/policy/public/rpc/naplo/rpc-pre.php | 70 ++ .../www/skin/ajax/module-naplo/css/naplo.css | 4 + .../skin/ajax/module-naplo/css/orarend/orarend.css | 68 ++ .../ajax/module-naplo/html/admin/tanevek.phtml | 9 + .../www/skin/ajax/module-naplo/html/base.phtml | 6 + .../ajax/module-naplo/html/bejegyzesek/info.phtml | 11 + .../ajax/module-naplo/html/haladasi/haladasi.phtml | 162 +++ .../ajax/module-naplo/html/hianyzas/info.phtml | 18 + .../module-naplo/html/hibabejelento/admin.phtml | 120 ++ .../ajax/module-naplo/html/orarend/orarend.phtml | 148 +++ .../classic/module-naplo/css/admin/azonositok.css | 10 + .../classic/module-naplo/css/admin/csoportok.css | 9 + .../skin/classic/module-naplo/css/admin/import.css | 8 + .../classic/module-naplo/css/admin/intezmenyek.css | 26 + .../module-naplo/css/admin/rpcPrivilege.css | 12 + .../module-naplo/css/admin/szemeszterek.css | 6 + .../module-naplo/css/admin/szuloiAzonositok.css | 12 + .../classic/module-naplo/css/admin/tanevek.css | 17 + .../classic/module-naplo/css/admin/tankorok.css | 8 + .../css/bejegyzesek/bejegyzesTipus.css | 19 + .../module-naplo/css/bejegyzesek/bejegyzesek.css | 34 + .../module-naplo/css/bejegyzesek/ujBejegyzes.css | 10 + .../skin/classic/module-naplo/css/diakValaszto.css | 4 + .../module-naplo/css/ertekeles/ertekeles.css | 41 + .../module-naplo/css/ertekeles/kerdoivBetoltes.css | 11 + .../module-naplo/css/esemeny/esemenyDiak.css | 34 + .../module-naplo/css/esemeny/jelentkezes.css | 27 + .../classic/module-naplo/css/esemeny/ujEsemeny.css | 43 + .../module-naplo/css/export/bizonyitvany.css | 19 + .../classic/module-naplo/css/export/diakExport.css | 19 + .../skin/classic/module-naplo/css/export/kreta.css | 23 + .../skin/classic/module-naplo/css/export/sulix.css | 9 + .../module-naplo/css/export/tantargyFelosztas.css | 20 + .../module-naplo/css/haladasi/elmaradas.css | 12 + .../module-naplo/css/haladasi/elszamolas.css | 32 + .../classic/module-naplo/css/haladasi/haladasi.css | 305 +++++ .../module-naplo/css/haladasi/helyettesites.css | 162 +++ .../classic/module-naplo/css/haladasi/hetes.css | 8 + .../module-naplo/css/haladasi/minuszora.css | 28 + .../module-naplo/css/haladasi/oralatogatas.css | 12 + .../module-naplo/css/haladasi/osszevonas.css | 27 + .../classic/module-naplo/css/haladasi/pluszora.css | 30 + .../module-naplo/css/haladasi/specialis.css | 36 + .../classic/module-naplo/css/haladasi/stat.css | 12 + .../module-naplo/css/haladasi/teremModositas.css | 17 + .../classic/module-naplo/css/hianyzas/diak.css | 131 ++ .../module-naplo/css/hianyzas/diakIgazolatlan.css | 12 + .../module-naplo/css/hianyzas/diakLista.css | 50 + .../classic/module-naplo/css/hianyzas/info.css | 19 + .../skin/classic/module-naplo/css/hianyzas/nap.css | 131 ++ .../classic/module-naplo/css/hianyzas/oktstat.css | 22 + .../skin/classic/module-naplo/css/hianyzas/ora.css | 130 ++ .../classic/module-naplo/css/hianyzas/osztaly.css | 179 +++ .../module-naplo/css/hianyzas/osztalyNap.css | 43 + .../module-naplo/css/hibabejelento/admin.css | 89 ++ .../css/hibabejelento/hibabejelento.css | 18 + .../classic/module-naplo/css/hirnok/cronFutar.css | 9 + .../classic/module-naplo/css/hirnok/hirnok.css | 108 ++ .../classic/module-naplo/css/intezmeny/diak.css | 167 +++ .../module-naplo/css/intezmeny/diakExport.css | 46 + .../module-naplo/css/intezmeny/diakFelmentes.css | 33 + .../module-naplo/css/intezmeny/diakStatusz.css | 14 + .../module-naplo/css/intezmeny/diakSzulo.css | 49 + .../module-naplo/css/intezmeny/diakTankor.css | 70 ++ .../css/intezmeny/diakTankorJelentkezes.css | 126 ++ .../module-naplo/css/intezmeny/felmentes.css | 36 + .../module-naplo/css/intezmeny/kepesitesek.css | 14 + .../classic/module-naplo/css/intezmeny/kepzes.css | 25 + .../module-naplo/css/intezmeny/kepzesOraterv.css | 100 ++ .../module-naplo/css/intezmeny/kepzesTankor.css | 13 + .../module-naplo/css/intezmeny/munkakozosseg.css | 47 + .../classic/module-naplo/css/intezmeny/osztaly.css | 60 + .../classic/module-naplo/css/intezmeny/tanar.css | 60 + .../classic/module-naplo/css/intezmeny/tankor.css | 83 ++ .../module-naplo/css/intezmeny/tankorDiak.css | 128 ++ .../module-naplo/css/intezmeny/tankorLetszam.css | 7 + .../css/intezmeny/tankorSzemeszter.css | 24 + .../module-naplo/css/intezmeny/tankorTanar.css | 39 + .../css/intezmeny/tankorTanarHozzarendeles.css | 94 ++ .../classic/module-naplo/css/intezmeny/terem.css | 15 + .../module-naplo/css/intezmeny/tovabbkepzes.css | 89 ++ .../classic/module-naplo/css/intezmeny/valtas.css | 2 + .../classic/module-naplo/css/intezmeny/zaradek.css | 16 + .../module-naplo/css/koszi/esemenyAdmin.css | 39 + .../skin/classic/module-naplo/css/koszi/koszi.css | 39 + .../classic/module-naplo/css/koszi/kosziAdmin.css | 47 + .../www/skin/classic/module-naplo/css/naplo.css | 319 +++++ .../css/nyomtatas/diakTankorJelentkezes.css | 4 + .../css/nyomtatas/helyettesitesinaplo.css | 7 + .../module-naplo/css/nyomtatas/osztalyozonaplo.css | 2 + .../css/nyomtatas/tankorNaplohozRendeles.css | 9 + .../classic/module-naplo/css/orarend/ascExport.css | 18 + .../module-naplo/css/orarend/helyettesites.css | 44 + .../classic/module-naplo/css/orarend/orarend.css | 297 +++++ .../module-naplo/css/orarend/orarendBetolto.css | 6 + .../module-naplo/css/orarend/orarendEllenorzes.css | 3 + .../module-naplo/css/orarend/orarendModosito.css | 157 +++ .../module-naplo/css/orarend/orarendTankor.css | 29 + .../css/orarend/orarendTeremModositas.css | 8 + .../module-naplo/css/orarend/szabadTerem.css | 118 ++ .../module-naplo/css/orarend/tanarOrarend.css | 2 + .../classic/module-naplo/css/orarend/termez.css | 13 + .../module-naplo/css/osztalyozo/bizelomenetel.css | 71 ++ .../module-naplo/css/osztalyozo/bizonyitvany.css | 70 ++ .../classic/module-naplo/css/osztalyozo/diak.css | 58 + .../module-naplo/css/osztalyozo/dolgozat.css | 172 +++ .../classic/module-naplo/css/osztalyozo/jegy.css | 39 + .../classic/module-naplo/css/osztalyozo/stat.css | 339 ++++++ .../css/osztalyozo/szempontRendszer.css | 10 + .../css/osztalyozo/szovegesErtekeles.css | 10 + .../classic/module-naplo/css/osztalyozo/tankor.css | 152 +++ .../module-naplo/css/osztalyozo/targySorrend.css | 10 + .../classic/module-naplo/css/osztalyozo/vizsga.css | 30 + .../css/osztalyozo/vizsgaJelentkezes.css | 2 + .../module-naplo/css/osztalyozo/zaroJegyCheck.css | 0 .../classic/module-naplo/css/sni/diakAllapot.css | 27 + .../module-naplo/css/sni/fejlesztesiTerv.css | 21 + .../module-naplo/css/sni/tantargyiFeljegyzesek.css | 15 + .../module-naplo/css/stat/lemorzsolodas.css | 3 + .../skin/classic/module-naplo/css/stat/letszam.css | 11 + .../module-naplo/css/stat/tantargyFelosztas.css | 36 + .../classic/module-naplo/css/tanev/diakTanarai.css | 9 + .../classic/module-naplo/css/tanev/fogadoOra.css | 46 + .../classic/module-naplo/css/tanev/munkaterv.css | 149 +++ .../classic/module-naplo/css/tanev/tankorBlokk.css | 11 + .../module-naplo/css/tanev/tankorCsoport.css | 16 + .../classic/module-naplo/css/tanev/targyBontas.css | 121 ++ .../module-naplo/css/tanev/targyOraszam.css | 7 + .../css/tanev/vegzosOrarendLezaras.css | 5 + .../module-naplo/css/tanev/vegzosTankorLezaras.css | 5 + .../module-naplo/css/tanmenet/tanmenetInfo.css | 11 + .../css/tanmenet/tanmenetJovahagyas.css | 23 + .../module-naplo/css/tanmenet/tanmenetLeadas.css | 11 + .../css/tanmenet/tanmenetModositas.css | 54 + .../module-naplo/css/tanmenet/tanmenetTankor.css | 76 ++ .../module-naplo/css/tanmenet/ujTanmenet.css | 19 + .../skin/classic/module-naplo/css/uzeno/uzeno.css | 139 +++ .../module-naplo/html/admin/azonositok.phtml | 95 ++ .../module-naplo/html/admin/csoportok.phtml | 87 ++ .../module-naplo/html/admin/fillhaladasi.phtml | 12 + .../classic/module-naplo/html/admin/import.phtml | 5 + .../module-naplo/html/admin/intezmenyek.phtml | 142 +++ .../module-naplo/html/admin/rpcPrivilege.phtml | 72 ++ .../module-naplo/html/admin/szemeszterek.phtml | 61 + .../module-naplo/html/admin/szuloiAzonositok.phtml | 113 ++ .../classic/module-naplo/html/admin/tanevek.phtml | 165 +++ .../classic/module-naplo/html/admin/tankorok.phtml | 5 + .../www/skin/classic/module-naplo/html/base.phtml | 1273 +++++++++++++++++++ .../html/bejegyzesek/bejegyzesTipus.phtml | 52 + .../html/bejegyzesek/bejegyzesek.phtml | 97 ++ .../module-naplo/html/bejegyzesek/info.phtml | 9 + .../html/bejegyzesek/ujBejegyzes.phtml | 47 + .../classic/module-naplo/html/diakValaszto.phtml | 22 + .../module-naplo/html/ertekeles/ertekeles.phtml | 77 ++ .../html/ertekeles/kerdoivBetoltes.phtml | 90 ++ .../module-naplo/html/esemeny/esemenyDiak.phtml | 102 ++ .../module-naplo/html/esemeny/jelentkezes.phtml | 87 ++ .../module-naplo/html/esemeny/ujEsemeny.phtml | 171 +++ .../module-naplo/html/export/bizonyitvany.phtml | 47 + .../module-naplo/html/export/diakExport.phtml | 153 +++ .../classic/module-naplo/html/export/kreta.phtml | 138 +++ .../classic/module-naplo/html/export/sulix.phtml | 43 + .../html/export/tanarOsztalyOraszam.phtml | 46 + .../html/export/tantargyFelosztas.phtml | 41 + .../module-naplo/html/haladasi/elmaradas.phtml | 63 + .../module-naplo/html/haladasi/elszamolas.phtml | 284 +++++ .../module-naplo/html/haladasi/haladasi.phtml | 676 ++++++++++ .../module-naplo/html/haladasi/helyettesites.phtml | 698 +++++++++++ .../classic/module-naplo/html/haladasi/hetes.phtml | 37 + .../module-naplo/html/haladasi/minuszora.phtml | 55 + .../classic/module-naplo/html/haladasi/ora.phtml | 51 + .../module-naplo/html/haladasi/oralatogatas.phtml | 56 + .../module-naplo/html/haladasi/osszevonas.phtml | 51 + .../module-naplo/html/haladasi/pluszora.phtml | 95 ++ .../module-naplo/html/haladasi/specialis.phtml | 181 +++ .../classic/module-naplo/html/haladasi/stat.phtml | 84 ++ .../module-naplo/html/haladasi/tankor.phtml | 54 + .../html/haladasi/teremModositas.phtml | 49 + .../classic/module-naplo/html/hianyzas/diak.phtml | 228 ++++ .../html/hianyzas/diakIgazolatlan.phtml | 42 + .../module-naplo/html/hianyzas/diakLista.phtml | 50 + .../classic/module-naplo/html/hianyzas/info.phtml | 96 ++ .../classic/module-naplo/html/hianyzas/nap.phtml | 253 ++++ .../module-naplo/html/hianyzas/oktstat.phtml | 133 ++ .../classic/module-naplo/html/hianyzas/ora.phtml | 280 +++++ .../module-naplo/html/hianyzas/osztaly.phtml | 667 ++++++++++ .../module-naplo/html/hianyzas/osztalyNap.phtml | 112 ++ .../module-naplo/html/hibabejelento/admin.phtml | 150 +++ .../html/hibabejelento/hibabejelento.phtml | 32 + .../module-naplo/html/hirnok/cronFutar.phtml | 265 ++++ .../classic/module-naplo/html/hirnok/hirnok.phtml | 320 +++++ .../html/hirnok/hirnokFeliratkozas.phtml | 68 ++ .../classic/module-naplo/html/intezmeny/diak.phtml | 1038 ++++++++++++++++ .../module-naplo/html/intezmeny/diakExport.phtml | 93 ++ .../html/intezmeny/diakFelmentes.phtml | 225 ++++ .../module-naplo/html/intezmeny/diakStatusz.phtml | 97 ++ .../module-naplo/html/intezmeny/diakSzulo.phtml | 300 +++++ .../module-naplo/html/intezmeny/diakTankor.phtml | 84 ++ .../html/intezmeny/diakTankorJelentkezes.phtml | 167 +++ .../module-naplo/html/intezmeny/felmentes.phtml | 261 ++++ .../module-naplo/html/intezmeny/kepesitesek.phtml | 121 ++ .../module-naplo/html/intezmeny/kepzes.phtml | 143 +++ .../html/intezmeny/kepzesOraterv.phtml | 271 +++++ .../html/intezmeny/munkakozosseg.phtml | 316 +++++ .../module-naplo/html/intezmeny/osztaly.phtml | 427 +++++++ .../module-naplo/html/intezmeny/tanar.phtml | 419 +++++++ .../module-naplo/html/intezmeny/tankor.phtml | 376 ++++++ .../module-naplo/html/intezmeny/tankorDiak.phtml | 310 +++++ .../html/intezmeny/tankorLetszam.phtml | 83 ++ .../html/intezmeny/tankorSzemeszter.phtml | 101 ++ .../module-naplo/html/intezmeny/tankorTanar.phtml | 103 ++ .../html/intezmeny/tankorTanarHozzarendeles.phtml | 147 +++ .../module-naplo/html/intezmeny/terem.phtml | 101 ++ .../module-naplo/html/intezmeny/tovabbkepzes.phtml | 479 ++++++++ .../module-naplo/html/intezmeny/valtas.phtml | 85 ++ .../module-naplo/html/intezmeny/verseny.phtml | 41 + .../module-naplo/html/intezmeny/zaradek.phtml | 78 ++ .../module-naplo/html/koszi/esemenyAdmin.phtml | 246 ++++ .../classic/module-naplo/html/koszi/koszi.phtml | 277 +++++ .../module-naplo/html/koszi/kosziAdmin.phtml | 331 +++++ .../www/skin/classic/module-naplo/html/naplo.phtml | 33 + .../html/nyomtatas/diakTankorJelentkezes.phtml | 31 + .../html/nyomtatas/helyettesitesinaplo.phtml | 17 + .../html/nyomtatas/osztalyozonaplo.phtml | 9 + .../html/nyomtatas/tankorNaplohozRendeles.phtml | 127 ++ .../module-naplo/html/orarend/ascExport.phtml | 142 +++ .../module-naplo/html/orarend/helyettesites.phtml | 90 ++ .../module-naplo/html/orarend/orarend.phtml | 448 +++++++ .../module-naplo/html/orarend/orarendBetolto.phtml | 60 + .../html/orarend/orarendEllenorzes.phtml | 88 ++ .../module-naplo/html/orarend/orarendLoad.phtml | 26 + .../html/orarend/orarendModosito.phtml | 313 +++++ .../module-naplo/html/orarend/orarendTankor.phtml | 88 ++ .../html/orarend/orarendTeremModositas.phtml | 107 ++ .../module-naplo/html/orarend/szabadTerem.phtml | 78 ++ .../module-naplo/html/orarend/tanarOrarend.phtml | 38 + .../classic/module-naplo/html/orarend/termez.phtml | 86 ++ .../html/osztalyozo/bizelomenetel.phtml | 3 + .../html/osztalyozo/bizonyitvany.phtml | 427 +++++++ .../module-naplo/html/osztalyozo/diak.phtml | 235 ++++ .../module-naplo/html/osztalyozo/dolgozat.phtml | 313 +++++ .../module-naplo/html/osztalyozo/jegy.phtml | 164 +++ .../module-naplo/html/osztalyozo/stat.phtml | 691 +++++++++++ .../html/osztalyozo/szempontRendszer.phtml | 75 ++ .../html/osztalyozo/szovegesErtekeles.phtml | 70 ++ .../module-naplo/html/osztalyozo/tankor.phtml | 550 +++++++++ .../html/osztalyozo/targySorrend.phtml | 45 + .../module-naplo/html/osztalyozo/vizsga.phtml | 145 +++ .../html/osztalyozo/vizsgaJelentkezes.phtml | 16 + .../html/osztalyozo/zaroJegyCheck.phtml | 50 + .../classic/module-naplo/html/share/email.phtml | 42 + .../classic/module-naplo/html/share/face.phtml | 71 ++ .../classic/module-naplo/html/share/file.phtml | 92 ++ .../classic/module-naplo/html/share/hianyzas.phtml | 137 +++ .../classic/module-naplo/html/share/jegy.phtml | 92 ++ .../classic/module-naplo/html/share/orarend.phtml | 48 + .../module-naplo/html/sni/diakAllapot.phtml | 165 +++ .../module-naplo/html/sni/fejlesztesiTerv.phtml | 94 ++ .../html/sni/tantargyiFeljegyzesek.phtml | 110 ++ .../module-naplo/html/stat/lemorzsolodas.phtml | 59 + .../classic/module-naplo/html/stat/letszam.phtml | 54 + .../module-naplo/html/stat/tantargyFelosztas.phtml | 414 +++++++ .../module-naplo/html/tanev/checkStatus.phtml | 34 + .../module-naplo/html/tanev/diakTanarai.phtml | 62 + .../module-naplo/html/tanev/fogadoOra.phtml | 317 +++++ .../module-naplo/html/tanev/munkaterv.phtml | 370 ++++++ .../module-naplo/html/tanev/tankorBlokk.phtml | 200 +++ .../module-naplo/html/tanev/tankorCsoport.phtml | 122 ++ .../module-naplo/html/tanev/targyBontas.phtml | 296 +++++ .../module-naplo/html/tanev/targyOraszam.phtml | 25 + .../html/tanev/vegzosOrarendLezaras.phtml | 32 + .../html/tanev/vegzosTankorLezaras.phtml | 36 + .../module-naplo/html/tanmenet/tanmenetInfo.phtml | 67 + .../html/tanmenet/tanmenetJovahagyas.phtml | 61 + .../html/tanmenet/tanmenetLeadas.phtml | 38 + .../html/tanmenet/tanmenetModositas.phtml | 136 +++ .../html/tanmenet/tanmenetTankor.phtml | 65 + .../module-naplo/html/tanmenet/ujTanmenet.phtml | 31 + .../classic/module-naplo/html/uzeno/postas.phtml | 81 ++ .../classic/module-naplo/html/uzeno/uzeno.phtml | 434 +++++++ .../classic/module-naplo/img/anim/garfield.gif | Bin 0 -> 11847 bytes .../skin/classic/module-naplo/img/anim/kutya.gif | Bin 0 -> 9506 bytes .../skin/classic/module-naplo/img/anim/majom.gif | Bin 0 -> 16468 bytes .../skin/classic/module-naplo/img/anim/nyuszi.gif | Bin 0 -> 11799 bytes .../skin/classic/module-naplo/img/anim/pingvin.gif | Bin 0 -> 38954 bytes .../skin/classic/module-naplo/img/anim/smiley.gif | Bin 0 -> 4261 bytes .../classic/module-naplo/img/anim/tux-hard.gif | Bin 0 -> 33427 bytes .../www/skin/classic/module-naplo/img/cr.png | Bin 0 -> 272 bytes .../www/skin/classic/module-naplo/img/fel.gif | Bin 0 -> 294 bytes .../classic/module-naplo/img/flipper/adatok.gif | Bin 0 -> 850 bytes .../classic/module-naplo/img/flipper/nevsor.gif | Bin 0 -> 977 bytes .../module-naplo/img/helyettesites/csere.gif | Bin 0 -> 143 bytes .../classic/module-naplo/img/helyettesites/kez.gif | Bin 0 -> 126 bytes .../module-naplo/img/helyettesites/mozgat.gif | Bin 0 -> 144 bytes .../classic/module-naplo/img/helyettesites/ora.gif | Bin 0 -> 573 bytes .../classic/module-naplo/img/hianyzas/change.png | Bin 0 -> 444 bytes .../classic/module-naplo/img/hianyzas/felkjel.gif | Bin 0 -> 59 bytes .../classic/module-naplo/img/hianyzas/green.gif | Bin 0 -> 308 bytes .../skin/classic/module-naplo/img/hianyzas/h.gif | Bin 0 -> 323 bytes .../skin/classic/module-naplo/img/hianyzas/i.gif | Bin 0 -> 206 bytes .../skin/classic/module-naplo/img/hianyzas/pin.gif | Bin 0 -> 883 bytes .../classic/module-naplo/img/hianyzas/red-pin.gif | Bin 0 -> 202 bytes .../skin/classic/module-naplo/img/hianyzas/red.gif | Bin 0 -> 203 bytes .../skin/classic/module-naplo/img/hianyzas/sum.gif | Bin 0 -> 149 bytes .../classic/module-naplo/img/hianyzas/ter-pin.gif | Bin 0 -> 912 bytes .../module-naplo/img/hianyzas/yellow-pin.gif | Bin 0 -> 998 bytes .../classic/module-naplo/img/hianyzas/yellow.gif | Bin 0 -> 296 bytes .../module-naplo/img/hibabejelento/buggie.gif | Bin 0 -> 718 bytes .../module-naplo/img/hibabejelento/buggie.svg | 51 + .../www/skin/classic/module-naplo/img/io/kreta.svg | 21 + .../www/skin/classic/module-naplo/img/le.gif | Bin 0 -> 296 bytes .../www/skin/classic/module-naplo/img/print.png | Bin 0 -> 423 bytes .../classic/module-naplo/img/tankorok/gold_box.gif | Bin 0 -> 68 bytes .../module-naplo/img/tankorok/gray-pixel.gif | Bin 0 -> 35 bytes .../classic/module-naplo/img/tanmenet/close.png | Bin 0 -> 2189 bytes .../classic/module-naplo/img/tanmenet/updown.png | Bin 0 -> 1551 bytes .../www/skin/classic/module-naplo/img/toggle.png | Bin 0 -> 601 bytes .../skin/classic/module-naplo/img/toolSubmit.gif | Bin 0 -> 127 bytes .../javascript/admin/regisztracio.jquery.min.js | 7 + .../module-naplo/javascript/admin/regisztracio.js | 7 + .../javascript/admin/szemeszterek.jquery.min.js | 43 + .../module-naplo/javascript/ertekeles/ertekeles.js | 56 + .../javascript/esemeny/esemenyDiak.jquery.min.js | 101 ++ .../javascript/esemeny/jelentkezes.jquery.min.js | 7 + .../javascript/esemeny/ujEsemeny.jquery.min.js | 89 ++ .../javascript/export/diakExport.jquery.min.js | 177 +++ .../module-naplo/javascript/export/diakExport.js | 141 +++ .../javascript/haladasi/elszamolas.jquery.min.js | 42 + .../javascript/haladasi/haladasi.jquery.min.js | 63 + .../haladasi/helyettesites.jquery.min.js | 27 + .../javascript/haladasi/pluszora.jquery.min.js | 42 + .../javascript/hianyzas/info.jquery.min.js | 11 + .../javascript/hianyzas/nap.jquery.min.js | 19 + .../module-naplo/javascript/hianyzas/nap.js | 13 + .../javascript/hianyzas/ora.jquery.min.js | 27 + .../module-naplo/javascript/hianyzas/ora.js | 13 + .../javascript/intezmeny/diak.jquery.min.js | 192 +++ .../intezmeny/diakFelmentes.jquery.min.js | 9 + .../javascript/intezmeny/diakStatusz.jquery.min.js | 31 + .../javascript/intezmeny/diakSzulo.jquery.min.js | 18 + .../intezmeny/diakTankorJelentkezes.jquery.min.js | 56 + .../javascript/intezmeny/kepesitesek.jquery.min.js | 64 + .../intezmeny/kepzesOraterv.jquery.min.js | 48 + .../javascript/intezmeny/osztaly.jquery.min.js | 57 + .../javascript/intezmeny/tanar.jquery.min.js | 41 + .../javascript/intezmeny/tankor.jquery.min.js | 8 + .../javascript/intezmeny/tankorDiak.jquery.min.js | 23 + .../tankorTanarHozzarendeles.jquery.min.js | 594 +++++++++ .../intezmeny/tovabbkepzes.jquery.min.js | 210 ++++ .../javascript/intezmeny/zaradek.jquery.min.js | 13 + .../module-naplo/javascript/naplo.jquery.min.js | 1249 +++++++++++++++++++ .../javascript/orarend/orarend.jquery.min.js | 88 ++ .../orarend/orarendModosito.jquery.min.js | 12 + .../javascript/orarend/orarendModosito.js | 80 ++ .../javascript/orarend/szabadTerem.jquery.min.js | 17 + .../javascript/orarend/termez.jquery.min.js | 5 + .../javascript/osztalyozo/diak.jquery.min.js | 93 ++ .../javascript/osztalyozo/dolgozat.jquery.min.js | 62 + .../javascript/osztalyozo/stat.jquery.min.js | 49 + .../javascript/osztalyozo/tankor.jquery.min.js | 132 ++ .../osztalyozo/targySorrend.jquery.min.js | 16 + .../javascript/osztalyozo/vizsga.jquery.min.js | 50 + .../stat/tantargyFelosztas.jquery.min.js | 15 + .../javascript/tanev/targyBontas.jquery.min.js | 823 +++++++++++++ .../tanmenet/tanmenetJovahagyas.jquery.min.js | 18 + .../tanmenet/tanmenetModositas.jquery.min.js | 126 ++ .../tanmenet/tanmenetTankor.jquery.min.js | 93 ++ .../javascript/uzeno/postas.jquery.min.js | 63 + .../module-naplo/javascript/uzeno/postas.js | 54 + .../javascript/uzeno/uzeno.jquery.min.js | 23 + .../classic/module-naplo/javascript/uzeno/uzeno.js | 33 + .../pda/module-naplo/css/haladasi/haladasi.css | 167 +++ .../skin/pda/module-naplo/css/hianyzas/osztaly.css | 135 ++ .../www/skin/pda/module-naplo/css/naplo.css | 59 + .../pda/module-naplo/css/orarend/helyettesites.css | 29 + .../skin/pda/module-naplo/css/orarend/orarend.css | 97 ++ .../skin/pda/module-naplo/css/osztalyozo/jegy.css | 56 + .../www/skin/pda/module-naplo/html/base.phtml | 900 ++++++++++++++ .../pda/module-naplo/html/haladasi/haladasi.phtml | 392 ++++++ .../skin/pda/module-naplo/html/hianyzas/ora.phtml | 215 ++++ .../pda/module-naplo/html/hianyzas/osztaly.phtml | 465 +++++++ .../pda/module-naplo/html/osztalyozo/diak.phtml | 79 ++ .../module-naplo/html/osztalyozo/dolgozat.phtml | 273 +++++ .../pda/module-naplo/html/osztalyozo/jegy.phtml | 135 ++ .../pda/module-naplo/html/osztalyozo/tankor.phtml | 307 +++++ .../www/skin/rpc/module-naplo/html/base.phtml | 6 + .../module-naplo/css/haladasi/haladasi.css | 187 +++ .../vakbarat/module-naplo/css/hianyzas/ora.css | 106 ++ .../www/skin/vakbarat/module-naplo/css/naplo.css | 71 ++ .../vakbarat/module-naplo/css/osztalyozo/diak.css | 24 + .../skin/vakbarat/module-naplo/css/uzeno/uzeno.css | 79 ++ .../module-naplo/html/haladasi/haladasi.phtml | 457 +++++++ .../module-naplo/html/orarend/orarend.phtml | 198 +++ .../www/skin/winter/module-naplo/css/naplo.css | 76 ++ 1069 files changed, 91620 insertions(+) create mode 100644 mayor-orig/mayor-naplo/www/include/alert/hu_HU/module-naplo.php create mode 100644 mayor-orig/mayor-naplo/www/include/menu/parent/hu_HU/module-naplo.php create mode 100644 mayor-orig/mayor-naplo/www/include/menu/private/hu_HU/module-naplo.php create mode 100644 mayor-orig/mayor-naplo/www/include/menu/public/hu_HU/module-naplo.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/admin/azonositok.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/admin/checksql.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/admin/intezmenyek.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/admin/szemeszterek.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/admin/szuloiAzonositok.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/admin/tanevek.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/admin/tankorok.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/base/base.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/base/log.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/base/rights.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/base/tool.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/base/update.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/base/zcheck.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/bejegyzesek/bejegyzesTipus.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/bejegyzesek/bejegyzesek.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/diakValaszto.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/ertekeles/kerdoivBetoltes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/ertekeles/osszesites.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/export/bizonyitvany.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/export/diakExport.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/export/kirBizonyitvanyExport.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/export/kreta.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/export/sulix.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/export/tanarOsztalyOraszam.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/export/tantargyFelosztas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/elmaradas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/elszamolas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/haladasi.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/helyettesites.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/oralatogatas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/osszevonas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/pluszora.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/specialis.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/stat.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/teremModositas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/diak.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/oktstat.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/ora.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/osztaly.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/hibabejelento/admin.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/hibabejelento/hibabejelento.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakExport.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakFelmentes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakStatusz.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakSzulo.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakTankorJelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/kepzes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/kepzesOraterv.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/munkakozosseg.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/osztaly.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tanar.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankor.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorSzemeszter.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorTanar.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorTanarHozzarendeles.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/terem.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tovabbkepzes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/valtas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/esemenyAdmin.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/koszi.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/kosziAdmin.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/naplo.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/beiskolazasiTerv.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/bizonyitvanyNyomtatas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/diakAdatlap.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/diakTankorJelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/ertesito.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/haladasinaplo.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/helyettesitesinaplo.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/nyomtatas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/osztalyozonaplo.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/sniEvVegiJegyzokonyv.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/sniHaviJegyzokonyv.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/szovegesErtekeles.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tankorNaplohozRendeles.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tex.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/torzslap.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tovabbkepzesHatarozat.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/zaradekok.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/ascExport.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-Microsoft Excel XML.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-RoPaSoft.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables Ctrl-Shift-E.php create mode 100644 "mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML (tank\303\266r n\303\251lk\303\274l).php" create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML update.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-csv.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-default.php create mode 100644 "mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-eKr\303\251ta import.php" create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendBetolto.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendEllenorzes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendModosito.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendTankor.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendTeremModositas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/tanarOrarend.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/bizonyitvany.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/diak.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/dolgozat.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/stat.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/szempontRendszer.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/szovegesErtekeles.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/tankor.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/targySorrend.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/vizsga.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/bejegyzes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/bejegyzesModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/bontas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/diak.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/diakModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/dolgozat.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/ertekeles.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/esemeny.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/file.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/helyettesites.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/helyettesitesModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/hetes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/hianyzas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/hianyzasModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/hirnok.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/intezmenyek.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegy.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegyModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegyzet.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/kepesites.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/kepzes.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/kerdoiv.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/kerelem.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/kereso.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/koszi.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/munkakozosseg.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/mysql.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/nap.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/ora.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/oraModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/orarend.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztaly.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztalyModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztalyzatok.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/rpc.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/sni.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/szemeszter.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/szovegesErtekeles.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/szulo.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanar.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanarModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankor.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorBlokk.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorDiakModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanmenet.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/targy.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/terem.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/verseny.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/vizsga.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/zaradek.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/share/zaroJegyModifier.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/sni/diakAllapot.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/sni/fejlesztesiTerv.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/sni/tantargyiFeljegyzesek.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/stat/lemorzsolodas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/stat/tantargyFelosztas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/checkStatus.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/fogadoOra.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/munkaterv.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorBlokk.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorCsoport.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/targyBontas.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/targyOraszam.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/vegzosOrarendLezaras.php create mode 100644 mayor-orig/mayor-naplo/www/include/modules/naplo/uzeno/uzeno.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/azonositok.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/csoportok.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/fillhaladasi.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/intezmenyek.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/rpcPrivilege.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/szemeszterek.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/szuloiAzonositok.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/tanevek.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/tankorok.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/base.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/bejegyzesTipus.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/bejegyzesek.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/info.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/ujBejegyzes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/diakValaszto.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/ertekeles.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/kerdoivBetoltes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/osszesites.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/esemenyDiak.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/jelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/ujEsemeny.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/bizonyitvany.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/diakExport.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/kirBizonyitvanyExport.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/kreta.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/sulix.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/tanarOsztalyOraszam.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/tantargyFelosztas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/elmaradas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/elszamolas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/haladasi.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/helyettesites.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/hetes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/minuszora.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/ora.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/oralatogatas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/osszevonas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/pluszora.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/specialis.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/stat.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/teremModositas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diak.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diakIgazolatlan.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diakLista.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/info.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/nap.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/oktstat.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/ora.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/osztaly.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/osztalyNap.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hibabejelento/admin.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hibabejelento/hibabejelento.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hirnok/hirnok.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hirnok/hirnokFeliratkozas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diak.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakExport.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakFelmentes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakStatusz.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakSzulo.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakTankor.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakTankorJelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/felmentes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepesitesek.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzesOraterv.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzesTankor.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/munkakozosseg.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/osztaly.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tanar.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankor.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorDiak.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorLetszam.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorSzemeszter.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorTanar.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorTanarHozzarendeles.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/terem.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tovabbkepzes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/valtas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/zaradek.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/esemenyAdmin.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/koszi.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/kosziAdmin.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/naplo.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/diakTankorJelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/ertesito.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/helyettesitesinaplo.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/osztalyozonaplo.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/sniEvVegiJegyzokonyv.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/sniHaviJegyzokonyv.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/tankorNaplohozRendeles.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/zaradekok.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/ascExport.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/helyettesites.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarend.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendBetolto.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendEllenorzes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendModosito.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendTankor.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendTeremModositas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/szabadTerem.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/tanarOrarend.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/termez.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/bizelomenetel.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/bizonyitvany.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/diak.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/dolgozat.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/jegy.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/stat.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/szempontRendszer.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/szovegesErtekeles.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/tankor.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/targySorrend.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/vizsga.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/vizsgaJelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/diak.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/ertekeles.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/file.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/hianyzas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/osztalyzatok.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/tanar.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/diakAllapot.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/fejlesztesiTerv.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/tantargyiFeljegyzesek.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/stat/letszam.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/szulinap.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/checkStatus.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/diakTanarai.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/fogadoOra.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/helyettesites.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/munkaterv.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/tankorBlokk.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/tankorCsoport.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/targyBontas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/vegzosOrarendLezaras.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/vegzosTankorLezaras.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetInfo.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetJovahagyas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetLeadas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetModositas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetTankor.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/ujTanmenet.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/uzeno/postas.php create mode 100644 mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/uzeno/uzeno.php create mode 100644 mayor-orig/mayor-naplo/www/policy/parent/naplo/diakValaszto-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/parent/naplo/diakValaszto.php create mode 120000 mayor-orig/mayor-naplo/www/policy/parent/naplo/hirnok create mode 100644 mayor-orig/mayor-naplo/www/policy/parent/naplo/naplo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/parent/naplo/naplo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/admin-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/admin.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/azonositok-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/azonositok.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/checksql-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/checksql.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/csoportok-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/csoportok.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/fillhaladasi-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/fillhaladasi.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/install-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/install.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/intezmenyek-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/intezmenyek.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/kretaHianyzasImport.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/rpcPrivilege-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/rpcPrivilege.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szemeszterek-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szemeszterek.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szuloiAzonositok-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szuloiAzonositok.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tanevek-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tanevek.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tankorok-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tankorok.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesTipus-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesTipus.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesek-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesek.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/info-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/info.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/ujBejegyzes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/ujBejegyzes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/error-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/error.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/ertekeles-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/ertekeles.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/export-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/export.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/kerdoivBetoltes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/kerdoivBetoltes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/osszesites-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/osszesites.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemeny-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemeny.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemenyDiak-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemenyDiak.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/jelentkezes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/jelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/ujEsemeny-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/ujEsemeny.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/bizonyitvany-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/bizonyitvany.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/diakExport-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/diakExport.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/kirBizonyitvanyExport-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/kirBizonyitvanyExport.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/kreta-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/kreta.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/sulix-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/sulix.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/tanarOsztalyOraszam-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/tanarOsztalyOraszam.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/tantargyFelosztas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/export/tantargyFelosztas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elmaradas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elmaradas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elszamolas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elszamolas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/haladasi-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/haladasi.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/helyettesites-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/helyettesites.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hetes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hetes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/minuszora-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/minuszora.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/ora-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/ora.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/oralatogatas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/oralatogatas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/osszevonas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/osszevonas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/pluszora-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/pluszora.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/specialis-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/specialis.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/stat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/stat.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/tankor-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/tankor.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/teremModositas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/teremModositas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diak-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diak.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakIgazolatlan-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakIgazolatlan.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakLista-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakLista.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/hianyzas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/hianyzas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/info-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/info.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/nap-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/nap.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/oktstat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/oktstat.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/ora-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/ora.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztaly-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztaly.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztalyNap-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztalyNap.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/admin-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/admin.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/hibabejelento-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/hibabejelento.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/cronFutar-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/cronFutar.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnok-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnok.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnokFeliratkozas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnokFeliratkozas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diak-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diak.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakExport-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakExport.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakFelmentes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakFelmentes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakStatusz-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakStatusz.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakSzulo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakSzulo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankor-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankor.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankorJelentkezes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankorJelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/felmentes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/felmentes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/intezmeny-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/intezmeny.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepesitesek-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepesitesek.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzesOraterv-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzesOraterv.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/munkakozosseg-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/munkakozosseg.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/osztaly-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/osztaly.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/szulo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/szulo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tanar-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tanar.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorDiak-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorDiak.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorLetszam-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorLetszam.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorSzemeszter-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorSzemeszter.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanar-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanar.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tantargyFelosztas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/terem-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/terem.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tovabbkepzes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tovabbkepzes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/valtas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/valtas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/verseny-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/verseny.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/zaradek-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/zaradek.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/esemenyAdmin-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/esemenyAdmin.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/koszi-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/koszi.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/kosziAdmin-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/kosziAdmin.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/naplo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/naplo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/beiskolazasiTerv-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/beiskolazasiTerv.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakAdatlap-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakAdatlap.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/ertesito-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/ertesito.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/haladasinaplo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/haladasinaplo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/helyettesitesinaplo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/helyettesitesinaplo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/nyomtatas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/nyomtatas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/osztalyozonaplo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/szovegesErtekeles-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/szovegesErtekeles.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/torzslap-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/torzslap.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/zaradekok-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/zaradekok.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/ascExport-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/ascExport.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/helyettesites-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/helyettesites.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarend-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarend.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendBetolto-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendBetolto.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendEllenorzes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendEllenorzes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTankor-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTankor.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTeremModositas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTeremModositas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendUtkozes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendUtkozes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/szabadTerem-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/szabadTerem.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/tanarOrarend-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/tanarOrarend.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/termez-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/termez.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizelomenetel-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizelomenetel.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizonyitvany-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizonyitvany.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/diak-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/diak.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/dolgozat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/dolgozat.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/jegy-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/jegy.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/osztalyozo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/osztalyozo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/stat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/stat.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szempontRendszer-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szempontRendszer.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szovegesErtekeles-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szovegesErtekeles.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/tankor-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/tankor.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/targySorrend-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/targySorrend.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsga-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsga.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/zaroJegyCheck-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/zaroJegyCheck.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/sni/diakAllapot-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/sni/diakAllapot.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/sni/fejlesztesiTerv-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/sni/fejlesztesiTerv.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/sni/sni-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/sni/sni.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/sni/tantargyiFeljegyzesek-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/sni/tantargyiFeljegyzesek.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/stat/lemorzsolodas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/stat/lemorzsolodas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/stat/letszam-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/stat/letszam.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/stat/tantargyFelosztas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/stat/tantargyFelosztas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/szulinap-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/szulinap.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/checkStatus-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/checkStatus.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/diakTanarai-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/diakTanarai.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/fogadoOra-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/fogadoOra.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/munkaterv-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/munkaterv.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tanev-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tanev.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorBlokk-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorBlokk.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyBontas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyBontas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyOraszam-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyOraszam.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosOrarendLezaras-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosOrarendLezaras.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosTankorLezaras-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosTankorLezaras.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenet-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenet.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetInfo-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetInfo.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetJovahagyas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetJovahagyas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetLeadas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetLeadas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetModositas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetModositas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetTankor-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetTankor.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/ujTanmenet-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/ujTanmenet.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ajax.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ajaxExample.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/dolgozatAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getDiakAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getJegyAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getOraAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getOsztalyAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getSzuloAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTanarAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getZaroJegyAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/intezmenyNev-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/intezmenyNev.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/jegyzetAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/kereso-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/napAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/oid.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/oraAdat-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankor-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankorLista-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankorMod-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ujTankor-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/postas-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/postas.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/uzeno-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/uzeno.php create mode 100644 mayor-orig/mayor-naplo/www/policy/public/naplo/rpc/rpc-pre.php create mode 100644 mayor-orig/mayor-naplo/www/policy/public/naplo/rpc/rpc.php create mode 100644 mayor-orig/mayor-naplo/www/policy/public/rpc/naplo/rpc-pre.php create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/css/naplo.css create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/css/orarend/orarend.css create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/admin/tanevek.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/base.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/bejegyzesek/info.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/haladasi/haladasi.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/hianyzas/info.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/hibabejelento/admin.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/orarend/orarend.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/azonositok.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/csoportok.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/import.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/intezmenyek.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/rpcPrivilege.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/szemeszterek.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/szuloiAzonositok.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tanevek.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tankorok.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/bejegyzesTipus.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/bejegyzesek.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/ujBejegyzes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/diakValaszto.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/ertekeles/ertekeles.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/ertekeles/kerdoivBetoltes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/esemenyDiak.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/jelentkezes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/ujEsemeny.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/bizonyitvany.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/diakExport.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/kreta.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/sulix.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/tantargyFelosztas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/elmaradas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/elszamolas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/haladasi.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/helyettesites.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/hetes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/minuszora.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/oralatogatas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/osszevonas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/pluszora.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/specialis.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/stat.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/teremModositas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diak.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diakIgazolatlan.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diakLista.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/info.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/nap.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/oktstat.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/ora.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/osztaly.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/osztalyNap.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hibabejelento/admin.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hibabejelento/hibabejelento.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hirnok/cronFutar.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hirnok/hirnok.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diak.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakExport.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakFelmentes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakStatusz.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakSzulo.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakTankor.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakTankorJelentkezes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/felmentes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepesitesek.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzesOraterv.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzesTankor.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/munkakozosseg.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/osztaly.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tanar.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankor.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorDiak.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorLetszam.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorSzemeszter.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorTanar.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorTanarHozzarendeles.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/terem.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tovabbkepzes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/valtas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/zaradek.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/esemenyAdmin.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/koszi.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/kosziAdmin.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/naplo.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/diakTankorJelentkezes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/helyettesitesinaplo.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/osztalyozonaplo.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/tankorNaplohozRendeles.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/ascExport.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/helyettesites.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarend.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendBetolto.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendEllenorzes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendModosito.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendTankor.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendTeremModositas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/szabadTerem.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/tanarOrarend.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/termez.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/bizelomenetel.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/bizonyitvany.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/diak.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/dolgozat.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/jegy.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/stat.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/szempontRendszer.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/szovegesErtekeles.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/tankor.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/targySorrend.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/vizsga.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/vizsgaJelentkezes.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/zaroJegyCheck.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/diakAllapot.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/fejlesztesiTerv.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/tantargyiFeljegyzesek.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/lemorzsolodas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/letszam.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/tantargyFelosztas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/diakTanarai.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/fogadoOra.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/munkaterv.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/tankorBlokk.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/tankorCsoport.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/targyBontas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/targyOraszam.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/vegzosOrarendLezaras.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/vegzosTankorLezaras.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetInfo.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetJovahagyas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetLeadas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetModositas.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetTankor.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/ujTanmenet.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/uzeno/uzeno.css create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/azonositok.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/csoportok.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/fillhaladasi.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/import.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/intezmenyek.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/rpcPrivilege.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/szemeszterek.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/szuloiAzonositok.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tanevek.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tankorok.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/base.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/bejegyzesTipus.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/bejegyzesek.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/info.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/ujBejegyzes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/diakValaszto.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/ertekeles/ertekeles.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/ertekeles/kerdoivBetoltes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/esemenyDiak.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/jelentkezes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/ujEsemeny.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/bizonyitvany.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/diakExport.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/kreta.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/sulix.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/tanarOsztalyOraszam.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/tantargyFelosztas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/elmaradas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/elszamolas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/haladasi.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/helyettesites.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/hetes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/minuszora.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/ora.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/oralatogatas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/osszevonas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/pluszora.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/specialis.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/stat.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/tankor.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/teremModositas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diak.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diakIgazolatlan.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diakLista.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/info.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/nap.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/oktstat.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/ora.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/osztaly.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/osztalyNap.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hibabejelento/admin.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hibabejelento/hibabejelento.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/cronFutar.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/hirnok.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/hirnokFeliratkozas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diak.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakExport.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakFelmentes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakStatusz.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakSzulo.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakTankor.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakTankorJelentkezes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/felmentes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepesitesek.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepzes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepzesOraterv.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/munkakozosseg.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/osztaly.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tanar.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankor.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorDiak.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorLetszam.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorSzemeszter.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorTanar.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorTanarHozzarendeles.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/terem.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tovabbkepzes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/valtas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/verseny.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/zaradek.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/esemenyAdmin.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/koszi.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/kosziAdmin.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/naplo.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/diakTankorJelentkezes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/helyettesitesinaplo.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/osztalyozonaplo.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/tankorNaplohozRendeles.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/ascExport.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/helyettesites.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarend.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendBetolto.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendEllenorzes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendLoad.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendModosito.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendTankor.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendTeremModositas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/szabadTerem.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/tanarOrarend.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/termez.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/bizelomenetel.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/bizonyitvany.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/diak.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/dolgozat.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/jegy.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/stat.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/szempontRendszer.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/szovegesErtekeles.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/tankor.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/targySorrend.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/vizsga.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/vizsgaJelentkezes.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/zaroJegyCheck.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/email.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/face.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/file.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/hianyzas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/jegy.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/orarend.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/diakAllapot.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/fejlesztesiTerv.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/tantargyiFeljegyzesek.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/lemorzsolodas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/letszam.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/tantargyFelosztas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/checkStatus.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/diakTanarai.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/fogadoOra.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/munkaterv.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorBlokk.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorCsoport.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/targyBontas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/targyOraszam.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/vegzosOrarendLezaras.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/vegzosTankorLezaras.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetInfo.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetJovahagyas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetLeadas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetModositas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetTankor.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/ujTanmenet.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/uzeno/postas.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/uzeno/uzeno.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/garfield.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/kutya.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/majom.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/nyuszi.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/pingvin.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/smiley.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/tux-hard.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/cr.png create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/fel.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/flipper/adatok.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/flipper/nevsor.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/csere.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/kez.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/mozgat.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/ora.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/change.png create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/felkjel.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/green.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/h.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/i.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/pin.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/red-pin.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/red.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/sum.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/ter-pin.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/yellow-pin.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/yellow.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hibabejelento/buggie.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hibabejelento/buggie.svg create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/io/kreta.svg create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/le.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/print.png create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tankorok/gold_box.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tankorok/gray-pixel.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tanmenet/close.png create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tanmenet/updown.png create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/toggle.png create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/toolSubmit.gif create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/regisztracio.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/regisztracio.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/szemeszterek.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/ertekeles/ertekeles.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/esemenyDiak.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/jelentkezes.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/ujEsemeny.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/export/diakExport.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/export/diakExport.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/elszamolas.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/haladasi.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/helyettesites.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/pluszora.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/info.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/nap.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/nap.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/ora.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/ora.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diak.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakFelmentes.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakStatusz.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakSzulo.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakTankorJelentkezes.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/kepesitesek.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/kepzesOraterv.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/osztaly.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tanar.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tankor.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tankorDiak.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tankorTanarHozzarendeles.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tovabbkepzes.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/zaradek.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/naplo.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarend.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/szabadTerem.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/termez.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/diak.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/dolgozat.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/stat.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/tankor.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/targySorrend.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/vizsga.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/stat/tantargyFelosztas.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanev/targyBontas.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetJovahagyas.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetModositas.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetTankor.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/postas.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/postas.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/uzeno.jquery.min.js create mode 100644 mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/uzeno.js create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/haladasi/haladasi.css create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/hianyzas/osztaly.css create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/naplo.css create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/orarend/helyettesites.css create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/orarend/orarend.css create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/osztalyozo/jegy.css create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/base.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/haladasi/haladasi.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/hianyzas/ora.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/hianyzas/osztaly.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/diak.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/dolgozat.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/jegy.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/tankor.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/rpc/module-naplo/html/base.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/haladasi/haladasi.css create mode 100644 mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/hianyzas/ora.css create mode 100644 mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/naplo.css create mode 100644 mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/osztalyozo/diak.css create mode 100644 mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/uzeno/uzeno.css create mode 100644 mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/html/haladasi/haladasi.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/html/orarend/orarend.phtml create mode 100644 mayor-orig/mayor-naplo/www/skin/winter/module-naplo/css/naplo.css (limited to 'mayor-orig/mayor-naplo/www') diff --git a/mayor-orig/mayor-naplo/www/include/alert/hu_HU/module-naplo.php b/mayor-orig/mayor-naplo/www/include/alert/hu_HU/module-naplo.php new file mode 100644 index 00000000..7bfceefc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/alert/hu_HU/module-naplo.php @@ -0,0 +1,70 @@ + diff --git a/mayor-orig/mayor-naplo/www/include/menu/parent/hu_HU/module-naplo.php b/mayor-orig/mayor-naplo/www/include/menu/parent/hu_HU/module-naplo.php new file mode 100644 index 00000000..7ccfde13 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/menu/parent/hu_HU/module-naplo.php @@ -0,0 +1,76 @@ + 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok', 'icon' => 'icon-bullhorn'); + $NAVI[] = array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend&f=orarend', 'icon' => 'icon-th'); + $NAVI[] = array('txt' => 'Jegyek', 'url' => 'index.php?page=naplo&sub=osztalyozo&f=diak', 'icon' => 'icon-pencil'); + + + $MENU['naplo'] = array( + array('txt' => 'Napló'), +// array('txt' => 'Jelentkezés fogadóórára', 'url' => 'index.php?page=naplo&sub=tanev&f=fogadoOra'), + array('txt' => 'Kezdőlap (diák választás)', 'url' => 'index.php?page=naplo&sub=&f=diakValaszto') + ); + + // A menüpontok sorrendjének beállítása - ettől még nem jelenik meg semmi :) + $MENU['modules']['naplo'] = array( + 'haladasi' => array(), + 'osztalyozo' => array(), + 'hianyzas' => array(), + 'bejegyzesek' => array(), + 'tanev' => array(), + 'intezmeny' => array(), + 'admin' => array(), + ); + +if ($page=='naplo') { + + if (__DIAK) { + $MENU['modules']['naplo']['haladasi'] = array(array('txt' => 'Haladási napló', 'url' => 'index.php?page=naplo&sub=haladasi&f=haladasi')); + $MENU['modules']['naplo']['osztalyozo'] = array(array('txt' => 'Osztályozó napló', 'url' => 'index.php?page=naplo&sub=osztalyozo&f=diak')); + $MENU['modules']['naplo']['hianyzas'] = array(array('txt' => 'Hiányzások', 'url' => 'index.php?page=naplo&sub=hianyzas&f=diak')); + $MENU['modules']['naplo']['bejegyzesek'] = array(array('txt' => 'Bejegyzések', 'url' => 'index.php?page=naplo&sub=bejegyzesek&f=bejegyzesek')); + $MENU['modules']['naplo']['ertekeles'] = array(array('txt' => 'Értékelés', 'url' => 'index.php?page=naplo&sub=ertekeles&f=ertekeles')); + $MENU['modules']['naplo']['sub']['osztalyozo'] = array( + 'dolgozat' => array(array('txt' => 'Dolgozatok')), + 'bizonyitvany' => array(array('txt' => 'Bizonyítvány')), + 'stat' => array(array('txt' => 'Zárási statisztika')), + ); + $MENU['modules']['naplo']['sub']['tanev'] = array( + 'munkaterv' => array(array('txt' => 'Éves munkaterv', 'url' => 'index.php?page=naplo&sub=tanev&f=munkaterv')), + 'fogadoOra' => array(array('txt' => 'Fogadóóra', 'url' => 'index.php?page=naplo&sub=tanev&f=fogadoOra')) + ); + $MENU['modules']['naplo']['fogad'] = array(array('txt' => 'Fogadóóra', 'url' => 'index.php?page=naplo&sub=tanev&f=fogadoOra')); + $MENU['modules']['naplo']['munkaterv'] = array(array('txt' => 'Éves munkaterv', 'url' => 'index.php?page=naplo&sub=tanev&f=munkaterv')); + $MENU['modules']['naplo']['orarend'] = array(array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend&f=orarend')); + $MENU['modules']['naplo']['intezmeny'] = array( + array('txt' => 'Diák adatlapja', 'url' => 'index.php?page=naplo&sub=intezmeny&f=diak'), + array('txt' => 'Tanévváltás', 'url' => 'index.php?page=naplo&sub=intezmeny&f=valtas') + ); + $MENU['modules']['naplo']['sub']['haladasi'] = array( + 'stat' => array(array('txt' => 'Haladási statisztika')), + ); + if (__UZENO_INSTALLED===true) + $MENU['modules']['naplo']['uzeno'] = array(array('txt' => 'Üzenő', 'url' => 'index.php?page=naplo&sub=uzeno&f=uzeno')); + $MENU['modules']['naplo']['hirnok'] = array(array('txt' => 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok')); + $MENU['modules']['naplo']['valasztas'] = array(array('txt' => 'Kezdőlap (diák választás)', 'url' => 'index.php?page=naplo&sub=&f=diakValaszto')); + + } + + // Navigáció - alapértelmezés + array_unshift($NAV[1], array('page' => 'naplo', 'sub' => 'orarend')); + array_unshift($NAV[1], array('page' => 'naplo', 'sub' => 'hianyzas')); + array_unshift($NAV[1], array('page' => 'naplo', 'sub' => 'osztalyozo')); + array_unshift($NAV[1], array('page' => 'naplo', 'sub' => 'haladasi')); + + if (is_array($MENU['modules']['naplo']['sub'][$sub])) foreach ($MENU['modules']['naplo']['sub'][$sub] as $_f => $M) { + $NAV[2][] = array('page' => 'naplo', 'sub' => $sub, 'f' => $_f); + } elseif (is_array($MENU['modules']['naplo'])) foreach ($MENU['modules']['naplo'] as $_f => $M) { + if ($_f != 'sub') $NAV[2][] = array('page' => 'naplo', 'sub' => $_f); + } +} + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/menu/private/hu_HU/module-naplo.php b/mayor-orig/mayor-naplo/www/include/menu/private/hu_HU/module-naplo.php new file mode 100644 index 00000000..73e66f5b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/menu/private/hu_HU/module-naplo.php @@ -0,0 +1,616 @@ + 'Napló', 'url' => 'index.php?page=naplo')); + + if (__DIAK === true) { + $NAVI[] = array('txt' => 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok', 'icon' => 'icon-bullhorn'); + $NAVI[] = array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend&f=orarend', 'icon' => 'icon-th'); + $NAVI[] = array('txt' => 'Jegyek', 'url' => 'index.php?page=naplo&sub=osztalyozo&f=diak', 'icon' => 'icon-pencil'); + } elseif (__TANAR === true) { + $NAVI[] = array('txt' => 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok', 'icon' => 'icon-bullhorn'); + $NAVI[] = array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend&f=orarend', 'icon' => 'icon-th'); + $NAVI[] = array('txt' => 'Osztályozó', 'url' => 'index.php?page=naplo&sub=osztalyozo&f=tankor', 'icon' => 'icon-pencil'); + } else { + $NAVI[] = array('txt' => 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok', 'icon' => 'icon-bullhorn'); + $NAVI[] = array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend&f=orarend', 'icon' => 'icon-th'); + } + + + // A menüpontok sorrendjének beállítása - ettől még nem jelenik meg semmi :) + $MENU['modules']['naplo'] = array( + 'haladasi' => array(), + 'osztalyozo' => array(), + 'hianyzas' => array(), + 'bejegyzesek' => array(), + 'orarend' => array(), + 'tanev' => array(), + 'intezmeny' => array(), + 'stat' => array(), + 'ertekeles' => array(), + 'admin' => array(), + ); + + /* Kiegészítő beállítások egy oldalhoz */ + /* Contrib */ + // $MENU['set']['private']['naplo']['tanev']['helyettesites']['refresh'] = 60; + /* -- */ + + if (__DIAK) { + $MENU['modules']['naplo']['haladasi'] = array(array('txt' => 'Haladási napló', 'url' => 'index.php?page=naplo&sub=haladasi')); + $MENU['modules']['naplo']['osztalyozo'] = array(array('txt' => 'Osztályozó napló', 'url' => 'index.php?page=naplo&sub=osztalyozo')); + $MENU['modules']['naplo']['hianyzas'] = array(array('txt' => 'Hiányzások', 'url' => 'index.php?page=naplo&sub=hianyzas')); + $MENU['modules']['naplo']['bejegyzesek'] = array(array('txt' => 'Bejegyzések', 'url' => 'index.php?page=naplo&sub=bejegyzesek')); + $MENU['modules']['naplo']['diakTankorJelentkezes'] = array(array('txt'=> 'Tankörjelentkezés', 'url'=> 'index.php?page=naplo&sub=intezmeny&f=diakTankorJelentkezes')); + $MENU['modules']['naplo']['esemeny'] = array(array('txt' => 'Esemény jelentkezés', 'url' => 'index.php?page=naplo&sub=esemeny')); + $MENU['modules']['naplo']['diakFelmentes'] = array(array('txt' => 'Felmentés', 'url' => 'index.php?page=naplo&sub=intezmeny&f=diakFelmentes')); + $MENU['modules']['naplo']['ertekeles'] = array(array('txt' => 'Értékelés', 'url' => 'index.php?page=naplo&sub=ertekeles')); + $MENU['modules']['naplo']['hibabejelento'] = array(array('txt' => 'Kérelmek', 'url' => 'index.php?page=naplo&sub=hibabejelento&f=admin')); + $MENU['modules']['naplo']['koszi'] = array(array('txt' => 'Köszi', 'url' => 'index.php?page=naplo&sub=koszi')); + $MENU['modules']['naplo']['hirnok'] = array(array('txt' => 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok')); + + $MENU['modules']['naplo']['sub']['hirnok'] = array( + 'hirnok' =>array(array('txt' => 'Hírnök', 'icon'=>'icon-bullhorn')), + 'hirnokFeliratkozas' => array(array('txt' => 'Hírnök beállítás', 'icon'=>'icon-cog')) + ); + $MENU['modules']['naplo']['sub']['osztalyozo'] = array( + 'dolgozat' => array(array('txt' => 'Dolgozatok')), + 'szovegesErtekeles' => array(array('txt' => 'Szöveges értékelés')), + 'bizonyitvany' => array(array('txt' => 'Bizonyítvány')), + 'stat' => array(array('txt' => 'Zárási statisztika, tanulmányi statisztika')), + ); + $MENU['modules']['naplo']['orarend'] = array( + array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend'), + array('txt' => 'Szabad termek', 'url' => 'index.php?page=naplo&sub=orarend&f=szabadTerem'), + ); + $MENU['modules']['naplo']['tanev'] = array( + array('txt' => 'Munkaterv', 'url' => 'index.php?page=naplo&sub=tanev&f=munkaterv') + ); + $MENU['modules']['naplo']['sub']['hibabejelento'] = array( + 'hibabejelento' => array(array('txt' => 'Új kérelem a hangyának')), + ); + $MENU['modules']['naplo']['intezmeny'] = array(array('txt' => 'Tanévváltás', 'url' => 'index.php?page=naplo&sub=intezmeny')); + + $MENU['modules']['naplo']['sub']['haladasi'] = array( + 'hetes' => array(array('txt' => 'Hetesek')), + 'stat' => array(array('txt' => 'Haladási statisztika')), + ); + if(__UZENO_INSTALLED===true) + $MENU['modules']['naplo']['uzeno'] = array(array('txt' => 'Üzenő', 'url' => 'index.php?page=naplo&sub=uzeno&f=uzeno')); + $MENU['modules']['naplo']['sub']['koszi'] = array( + 'koszi'=> array(array('txt' => 'Jelentkezés', 'url' => 'index.php?page=naplo&sub=koszi&f=koszi')), + 'kosziAdmin'=>array(array('txt' => 'Pont jóváhagyás', 'url' => 'index.php?page=naplo&sub=koszi&f=kosziAdmin')), + 'esemenyAdmin'=>array(array('txt' => 'Esemény adminisztráció', 'url' => 'index.php?page=naplo&sub=koszi&f=esemenyAdmin')), + ); + + } elseif (__TANAR) { + $MENU['modules']['naplo']['haladasi'] = array(array('txt' => 'Haladási napló', 'url' => 'index.php?page=naplo&sub=haladasi')); + $MENU['modules']['naplo']['osztalyozo'] = array(array('txt' => 'Osztályozó napló', 'url' => 'index.php?page=naplo&sub=osztalyozo')); + $MENU['modules']['naplo']['hianyzas'] = array(array('txt' => 'Hiányzások', 'url' => 'index.php?page=naplo&sub=hianyzas')); + $MENU['modules']['naplo']['bejegyzesek'] = array(array('txt' => 'Bejegyzések', 'url' => 'index.php?page=naplo&sub=bejegyzesek')); + $MENU['modules']['naplo']['tanmenet'] = array(array('txt' => 'Tanmenetek', 'url' => 'index.php?page=naplo&sub=tanmenet')); + $MENU['modules']['naplo']['intezmeny'][] = array('txt' => 'Intézményi adatok', 'url' => 'index.php?page=naplo&sub=intezmeny'); + $MENU['modules']['naplo']['hibabejelento'] = array(array('txt' => 'Kérelmek', 'url' => 'index.php?page=naplo&sub=hibabejelento&f=admin')); + $MENU['modules']['naplo']['ertekeles'] = array(array('txt' => 'Értékelés', 'url' => 'index.php?page=naplo&sub=ertekeles')); + $MENU['modules']['naplo']['orarend'] = array(array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend')); + $MENU['modules']['naplo']['esemeny'] = array(array('txt' => 'Események', 'url' => 'index.php?page=naplo&sub=esemeny')); + $MENU['modules']['naplo']['nyomtatas'][] = array('txt' => 'Nyomtatás', 'url' => 'index.php?page=naplo&sub=nyomtatas'); + $MENU['modules']['naplo']['tanev'] = array( + array('txt' => 'Munkaterv', 'url' => 'index.php?page=naplo&sub=tanev&f=munkaterv'), + array('txt' => 'Fogadóóra', 'url' => 'index.php?page=naplo&sub=tanev&f=fogadoOra'), + ); + $MENU['modules']['naplo']['sub']['ertekeles'] = array( + 'osszesites' => array(array('txt' => 'Összesítés')), + ); + $MENU['modules']['naplo']['sub']['intezmeny'] = array( + 'tankorDiak' => array(array('txt' => 'Tankörnévsor', 'url' => 'index.php?page=naplo&sub=intezmeny&f=tankorDiak')), + 'diakTankor' => array(array('txt' => 'Diák tankörei', 'url'=> 'index.php?page=naplo&sub=intezmeny&f=diakTankor')), + 'diakTankorJelentkezes' => array(array('txt' => 'Diák választott tankörei', 'url'=> 'index.php?page=naplo&sub=intezmeny&f=diakTankorJelentkezes')), + 'diak' => array(array('txt' => 'Diákok', 'url' => 'index.php?page=naplo&sub=intezmeny&f=diak')), + 'diakFelmentes' => array(array('txt' => 'Felmentés', 'url' => 'index.php?page=naplo&sub=intezmeny&f=diakFelmentes')), + 'valtas'=> array(array('txt' => 'Tanévváltás', 'url' => 'index.php?page=naplo&sub=intezmeny&f=valtas')), + 'tovabbkepzes' => array(array('txt' => 'Továbbképzés')), + ); + $MENU['modules']['naplo']['sub']['orarend'] = array( + 'helyettesites' => array(array('txt'=> 'Helyettesítések')), + 'szabadTerem' => array(array('txt' => 'Szabad termek' /*, 'url' => 'index.php?page=naplo&sub=tanev&f=szabadTerem' */)), + 'tanarOrarend' => array(array('txt' => 'Speciális összesített tanári órarend (xls)')), + ); + $MENU['modules']['naplo']['sub']['tanev'] = array( + 'diakTanarai' => array(array('txt' => 'Diák tanára')), + ); + $MENU['modules']['naplo']['sub']['hibabejelento'] = array( + 'hibabejelento' => array(array('txt' => 'Új kérelem a hangyának')), + ); + $MENU['modules']['naplo']['sub']['osztalyozo'] = array( + 'tankor' => array(array('txt' => 'Tankör osztályzatai')), + 'diak' => array(array('txt' => 'Diák osztályzatai')), + 'dolgozat' => array(array('txt' => 'Dolgozatok')), + 'szovegesErtekeles' => array(array('txt' => 'Szöveges értékelés')), + 'bizonyitvany' => array(array('txt' => 'Bizonyítvány')), + 'stat' => array(array('txt' => 'Zárási statisztika, tanulmányi statisztika')), + ); + if (__OSZTALYFONOK === true) $MENU['modules']['naplo']['sub']['osztalyozo']['targySorrend'] = array(array('txt' => 'Tárgysorrend')); + $MENU['modules']['naplo']['sub']['bejegyzesek'] = array( + 'bejegyzesek' => array(array('txt' => 'Bejegyzések listája')), + 'ujBejegyzes' => array(array('txt' => 'Új bejegyzések')), + ); + $MENU['modules']['naplo']['sub']['esemeny'] = array( + 'ujEsemeny' => array(array('txt' => 'Esemény felvétel/módosítás')), + 'esemenyDiak' => array(array('txt' => 'Jelentkezők kezelése')), + ); + $MENU['modules']['naplo']['sub']['tanmenet'] = array( + 'tanmenetTankor' => array(array('txt' => 'Tanmenetek tankörhöz rendelése')), + 'tanmenetJovahagyas' => array(array('txt' => 'Tanmenet jóváhagyás')), + 'tanmenetInfo' => array(array('txt' => 'Tanmenet részletei')), + 'tanmenetModositas' => array(array('txt' => 'Tanmenet módosítása')), + 'ujTanmenet' => array(array('txt' => 'Új tanmenet létrehozása')), + ); + $MENU['modules']['naplo']['sub']['haladasi'] = array( + 'hetes' => array(array('txt' => 'Hetesek')), + 'stat' => array(array('txt' => 'Haladási statisztika')), + 'elszamolas' => array(array('txt' => 'Munkaidő')), + ); + if (MAYOR_SOCIAL === true) { + $MENU['modules']['naplo']['sub']['haladasi']['helyettesites'] = array(array('txt' => 'Helyettesítés kezelés')); + } + $MENU['modules']['naplo']['sub']['hianyzas'] = array( + 'osztaly' => array(array('txt' => 'Osztály hiányzásösszesítő')), + 'osztalyNap' => array(array('txt' => 'Osztály napi hiányzásösszesítő')), + 'diak' => array(array('txt' => 'Diák hiányzásai (naptár nézet)')), + 'diakLista' => array(array('txt' => 'Diák hiányzásai (lista)')), + 'diakIgazolatlan' => array(array('txt' => 'Diák igazolatlanjai (lista)')), + 'info' => array(array('txt' => 'Hiányzás statisztika')), + ); + $MENU['modules']['naplo']['sub']['nyomtatas'] = array( + 'osztalyozonaplo' => array(array('txt' => 'Osztályozónapló nyomtatása')), + 'torzslap' => array(array('txt'=>'Törzslap')), + 'helyettesitesinaplo' => array(array('txt' => 'Helyettesítési-napló nyomtatása')), + 'ertesito' => array(array('txt' => 'Értesítő')) + ); + if(__UZENO_INSTALLED===true) + $MENU['modules']['naplo']['uzeno'] = array(array('txt' => 'Üzenő', 'url' => 'index.php?page=naplo&sub=uzeno&f=uzeno')); + + $MENU['modules']['naplo']['hirnok'] = array(array('txt' => 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok')); + + $MENU['modules']['naplo']['koszi'] = array(array('txt' => 'Köszi', 'url' => 'index.php?page=naplo&sub=koszi&f=kosziAdmin')); + $MENU['modules']['naplo']['sub']['hirnok'] = array( + 'hirnok' =>array(array('txt' => 'Hírnök', 'icon'=>'icon-bullhorn')), + 'hirnokFeliratkozas' => array(array('txt' => 'Hírnök beállítás', 'icon'=>'icon-cog')) + ); + + + } elseif (__TITKARSAG === true) { + +/* Titkárság */ + + $MENU['modules']['naplo']['haladasi'] = array(array('txt' => 'Haladási napló', 'url' => 'index.php?page=naplo&sub=haladasi')); + $MENU['modules']['naplo']['osztalyozo'] = array(array('txt' => 'Osztályozó napló', 'url' => 'index.php?page=naplo&sub=osztalyozo')); + $MENU['modules']['naplo']['hianyzas'] = array(array('txt' => 'Hiányzások', 'url' => 'index.php?page=naplo&sub=hianyzas')); + $MENU['modules']['naplo']['orarend'] = array(array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend')); + $MENU['modules']['naplo']['hibabejelento'] = array(array('txt' => 'Kérelmek', 'url' => 'index.php?page=naplo&sub=hibabejelento&f=admin')); + $MENU['modules']['naplo']['nyomtatas'][] = array('txt' => 'Nyomtatás', 'url' => 'index.php?page=naplo&sub=nyomtatas'); + $MENU['modules']['naplo']['export'][] = array('txt' => 'Export', 'url' => 'index.php?page=naplo&sub=export&f=diakExport'); + $MENU['modules']['naplo']['stat'][] = array('txt' => 'Létszám statisztika', 'url' => 'index.php?page=naplo&sub=export&f=letszam'); + $MENU['modules']['naplo']['tanev'] = array( + array('txt' => 'Munkaterv', 'url' => 'index.php?page=naplo&sub=tanev&f=munkaterv'), + array('txt' => 'Fogadóóra', 'url' => 'index.php?page=naplo&sub=tanev&f=fogadoOra'), + ); + $MENU['modules']['naplo']['intezmeny'] = array(array('txt' => 'Intézményi adatok', 'url' => 'index.php?page=naplo&sub=intezmeny')); + $MENU['modules']['naplo']['sub']['orarend'] = array( + 'helyettesites' => array(array('txt' => 'Helyettesítés')), + 'szabadTerem' => array(array('txt' => 'Szabad termek' )), + ); + $MENU['modules']['naplo']['sub']['tanev'] = array( + 'diakTanarai' => array(array('txt' => 'Diák tanára')), + ); + $MENU['modules']['naplo']['sub']['hibabejelento'] = array( + 'hibabejelento' => array(array('txt' => 'Új kérelem a hangyának')), + ); + $MENU['modules']['naplo']['sub']['osztalyozo'] = array( + 'tankor' => array(array('txt' => 'Tankör osztályzatai')), + 'diak' => array(array('txt' => 'Diák osztályzatai')), + 'dolgozat' => array(array('txt' => 'Dolgozatok')), + 'bizonyitvany' => array(array('txt' => 'Bizonyítvány')), + 'stat' => array(array('txt' => 'Zárási statisztika, tanulmányi statisztika')), + 'targySorrend' => array(array('txt' => 'Tárgysorrend')), + ); + $MENU['modules']['naplo']['sub']['haladasi'] = array( + 'stat' => array(array('txt' => 'Haladási statisztika')), +// 'elszamolas' => array(array('txt' => 'Elszámolás')), + ); + $MENU['modules']['naplo']['sub']['intezmeny'] = array( + 'valtas' => array(array('txt' => 'Intézményváltás')), + 'diak' => array(array('txt' => 'Diákok')), + 'zaradek' => array(array('txt' => 'Záradék')), + ); + $MENU['modules']['naplo']['sub']['export'] = array( + 'diakExport' => array(array('txt' => 'Diak adatok')), + 'tantargyFelosztas' => array(array('txt' => 'Tantárgyfelosztás export')), + ); + $MENU['modules']['naplo']['sub']['hianyzas'] = array( + 'info' => array(array('txt' => 'Hiányzás statisztika')), + 'oktstat' => array(array('txt' => 'Októberi statisztika')), + 'osztaly' => array(array('txt' => 'Osztály hiányzásösszesítő')), + ); + $MENU['modules']['naplo']['sub']['nyomtatas'] = array( + 'tankorNaplohozRendeles' => array(array('txt' => 'Tankör naplóhozrendelése')), + 'osztalyozonaplo' => array(array('txt' => 'Osztályozónapló nyomtatása')), + 'haladasinaplo' => array(array('txt' => 'Haladásinapló nyomtatása')), + 'torzslap' => array(array('txt'=>'Törzslap')), + 'zaradekok' => array(array('txt' => 'Záradékok, bejegyzések nyomtatása')), + 'diakTankorJelentkezes' => array(array('txt' => 'Tankörjelentkezés')), + 'ertesito' => array(array('txt' => 'Értesítő', 'rejtett' => true)), + 'szovegesErtekeles' => array(array('txt' => 'Szöveges értékelés', 'rejtett' => true)), + ); + + $MENU['modules']['naplo']['sub']['stat'] = array( + 'letszam' => array(array('txt'=>'Létszám statisztika')), + 'lemorzsolodas' => array(array('txt'=>'Lemorzsolódás')), + ); + + + } + if (__VEZETOSEG===true) { + +/* Vezetőség */ + + $MENU['modules']['naplo']['haladasi'] = array(array('txt' => 'Haladási napló', 'url' => 'index.php?page=naplo&sub=haladasi')); + $MENU['modules']['naplo']['osztalyozo'] = array(array('txt' => 'Osztályozó napló', 'url' => 'index.php?page=naplo&sub=osztalyozo')); + $MENU['modules']['naplo']['hianyzas'] = array(array('txt' => 'Hiányzások', 'url' => 'index.php?page=naplo&sub=hianyzas')); + $MENU['modules']['naplo']['bejegyzesek'] = array(array('txt' => 'Bejegyzések', 'url' => 'index.php?page=naplo&sub=bejegyzesek')); + $MENU['modules']['naplo']['tanmenet'] = array(array('txt' => 'Tanmenetek', 'url' => 'index.php?page=naplo&sub=tanmenet')); + $MENU['modules']['naplo']['nyomtatas'][] = array('txt' => 'Nyomtatás', 'url' => 'index.php?page=naplo&sub=nyomtatas'); + $MENU['modules']['naplo']['esemeny'] = array(array('txt' => 'Események', 'url' => 'index.php?page=naplo&sub=esemeny')); + $MENU['modules']['naplo']['tanev'][] = array('txt' => 'Tanév adatok', 'url' => 'index.php?page=naplo&sub=tanev'); + $MENU['modules']['naplo']['export'][] = array('txt' => 'Export', 'url' => 'index.php?page=naplo&sub=export&f=diakExport'); + $MENU['modules']['naplo']['ertekeles'] = array(array('txt' => 'Értékelés', 'url' => 'index.php?page=naplo&sub=ertekeles')); + $MENU['modules']['naplo']['hibabejelento'] = array(array('txt' => 'Kérelmek', 'url' => 'index.php?page=naplo&sub=hibabejelento&f=admin')); + + $MENU['modules']['naplo']['intezmeny'] = array(array('txt' => 'Intézményi adatok', 'url' => 'index.php?page=naplo&sub=intezmeny')); + + $MENU['modules']['naplo']['stat'] = array(array('txt' => 'Létszám statisztika', 'url' => 'index.php?page=naplo&sub=stat&f=letszam')); + + $MENU['modules']['naplo']['sub']['intezmeny'] = array ( + 'tankorDiak' => array(array('txt' => 'Tankörnévsor', 'url' => 'index.php?page=naplo&sub=intezmeny&f=tankorDiak')), + 'tankorTanar' => array(array('txt' => 'Tankör tanárok', 'url' => 'index.php?page=naplo&sub=intezmeny&f=tankorTanar')), + 'tankorTanarHozzarendeles' => array(array('txt' => 'Tantárgyfelosztás, tankör-tanár')), + 'diak' => array(array('txt' => 'Diákok')), + 'diakTankor' => array(array('txt' => 'Diák tankörei', 'url'=> 'index.php?page=naplo&sub=intezmeny&f=diakTankor')), + 'diakTankorJelentkezes' => array(array('txt'=> 'Tankörjelentkezés', 'url'=> 'index.php?page=naplo&sub=intezmeny&f=diakTankorJelentkezes')), + 'valtas' => array(array('txt' => 'Tanévváltás', 'url' => 'index.php?page=naplo&sub=intezmeny&f=valtas')), + 'tankorCsoport' => array(array('txt' => 'Tankörcsoportok*', 'url' => 'index.php?page=naplo&sub=tanev&f=tankorCsoport')), + 'tankorBlokk' => array(array('txt' => 'Tankörblokkok*', 'url' => 'index.php?page=naplo&sub=tanev&f=tankorBlokk')), + 'diakFelmentes' => array(array('txt' => 'Diák felmentése', 'rejtett' => true)), + 'zaradek' => array(array('txt' => 'Záradék')), + 'tankorLetszam' => array(array('txt' => 'Tankörlétszámok', 'rejtett' => true)), + 'kepesitesek' => array(array('txt' => 'Képesítések')), + 'tovabbkepzes' => array(array('txt' => 'Továbbképzés')), + ); + + + $MENU['modules']['naplo']['sub']['hibabejelento'] = array( + 'hibabejelento' => array(array('txt' => 'Új kérelem a hangyának')), + ); + $MENU['modules']['naplo']['sub']['haladasi'] = array( + 'helyettesites' => array(array('txt' => 'Helyettesítés')), + 'pluszora' => array(array('txt' => 'Plusz óra')), + 'minuszora' => array(array('txt' => 'Óra elmaradás')), + 'osszevonas' => array(array('txt' => 'Összevonás')), + 'teremModositas' => array(array('txt' => 'Haladási teremmódosító')), + 'specialis' => array(array('txt' => 'Speciális nap')), + 'elmaradas' => array(array('txt' => 'Haladási elmaradások')), + 'stat' => array(array('txt' => 'Haladási statisztika')), + 'elszamolas' => array(array('txt' => 'Elszámolás')), + 'oralatogatas' => array(array('txt' => 'Óralátogatás')), + 'hetes' => array(array('txt' => 'Hetesek')), + ); + $MENU['modules']['naplo']['sub']['osztalyozo'] = array( + 'tankor' => array(array('txt' => 'Tankör osztályzatai')), + 'diak' => array(array('txt' => 'Diák osztályzatai')), + 'szovegesErtekeles' => array(array('txt' => 'Szöveges értékelés')), + 'dolgozat' => array(array('txt' => 'Dolgozatok')), + 'vizsga' => array(array('txt' => 'Vizsga')), + 'bizonyitvany' => array(array('txt' => 'Bizonyítvány')), + 'stat' => array(array('txt' => 'Zárási statisztika, tanulmányi statisztika')), + 'targySorrend' => array(array('txt' => 'Tárgysorrend')), + ); + $MENU['modules']['naplo']['sub']['bejegyzesek'] = array( + 'bejegyzesek' => array(array('txt' => 'Bejegyzések listája')), + 'ujBejegyzes' => array(array('txt' => 'Új bejegyzések')), + ); + $MENU['modules']['naplo']['sub']['esemeny'] = array( + 'ujEsemeny' => array(array('txt' => 'Esemény felvétel/módosítás')), + 'esemenyDiak' => array(array('txt' => 'Jelentkezők kezelése')), + ); + $MENU['modules']['naplo']['sub']['tanmenet'] = array( + 'tanmenetLeadas' => array(array('txt' => 'Tanmenet leadás')), + 'tanmenetJovahagyas' => array(array('txt' => 'Tanmenet jóváhagyás')), + 'tanmenetTankor' => array(array('txt' => 'Tanmenetek tankörhöz rendelése')), + 'tanmenetInfo' => array(array('txt' => 'Tanmenet részletei')), + 'tanmenetModositas' => array(array('txt' => 'Tanmenet módosítása')), + 'ujTanmenet' => array(array('txt' => 'Új tanmenet létrehozása')), + ); + $MENU['modules']['naplo']['sub']['nyomtatas'] = array( + 'tankorNaplohozRendeles' => array(array('txt' => 'Tankör naplóhozrendelése')), + 'osztalyozonaplo' => array(array('txt' => 'Osztályozónapló nyomtatása')), + 'haladasinaplo' => array(array('txt' => 'Haladásinapló nyomtatása')), + 'torzslap' => array(array('txt'=>'Törzslap')), + 'zaradekok' => array(array('txt' => 'Záradékok, bejegyzések nyomtatása')), + 'helyettesitesinaplo' => array(array('txt' => 'Helyettesítési-napló nyomtatása')), + 'diakTankorJelentkezes' => array(array('txt' => 'Tankörjelentkezés nyomtatvány')), + 'ertesito' => array(array('txt' => 'Értesítő')) + ); + $MENU['modules']['naplo']['sub']['export'] = array( + 'bizonyitvany' => array(array('txt' => 'Bizonyítvány export')), + 'kirBizonyitvanyExport' => array(array('txt' => 'Bizonyítvány export (KIR)')), + 'diakExport' => array(array('txt' => 'Diak adatok')), + 'tantargyFelosztas' => array(array('txt' => 'Tantárgyfelosztás export')), + 'kreta' => array(array('txt' => 'KRÉTA export')), + ); + + + $MENU['modules']['naplo']['sub']['orarend'] = array( + 'orarend' => array(array('txt' => 'Órarend')), + 'helyettesites' => array(array('txt'=> 'Helyettesítések')), + 'orarendEllenorzes' => array(array('txt' => 'Órarend ellenőrzés')), + 'orarendTeremModositas' => array(array('txt' => 'Teremmódosítás')), + 'termez' => array(array('txt' => 'Órarend termező')), + 'szabadTerem' => array(array('txt' => 'Szabad termek')), + 'tanarOrarend' => array(array('txt' => 'Összesített tanári órarend')), + 'ascExport' => array(array('txt' => 'ascExport')), + ); + $MENU['modules']['naplo']['sub']['tanev'] = array( + 'munkaterv' => array(array('txt' => 'Éves munkaterv, tanév rendje')), + 'tankorCsoport' => array(array('txt' => 'Tankörcsoportok')), + 'tankorBlokk' => array(array('txt' => 'Tankörblokkok')), + 'fogadoOra' => array(array('txt' => 'Fogadóóra')), + 'targyOraszam' => array(array('txt' => 'Tárgy óraszámok')), + 'diakTanarai' => array(array('txt' => 'Diák tanára')), + 'targyBontas' => array(array('txt' => 'Tantárgyfelosztás, bontás-tankör')), + ); + $MENU['modules']['naplo']['sub']['ertekeles'] = array( + 'kerdoivBetoltes' => array(array('txt' => 'Kérdőív betöltése')), + 'osszesites' => array(array('txt' => 'Összesítés')), + ); + $MENU['modules']['naplo']['sub']['hianyzas'] = array( + 'osztaly' => array(array('txt' => 'Osztály hiányzásösszesítő')), + 'osztalyNap' => array(array('txt' => 'Osztály napi hiányzásösszesítő')), + 'diak' => array(array('txt' => 'Diák hiányzásai (naptár nézet)')), + 'diakLista' => array(array('txt' => 'Diák hiányzásai (lista)')), + 'oktstat' => array(array('txt' => 'Októberi statisztika')), + 'info' => array(array('txt' => 'Hiányzás statisztika')), + + ); + + $MENU['modules']['naplo']['sub']['stat'] = array( + 'tantargyFelosztas' => array(array('txt' => 'Tantárgyfelosztás statisztika')), + 'letszam' => array(array('txt'=>'Létszám statisztika')), + 'lemorzsolodas' => array(array('txt'=>'Lemorzsolódás')), + ); + + } + if (__NAPLOADMIN === true) { + $MENU['modules']['naplo']['haladasi'] = array(array('txt' => 'Haladási napló', 'url' => 'index.php?page=naplo&sub=haladasi')); + $MENU['modules']['naplo']['osztalyozo'] = array(array('txt' => 'Osztályozó napló', 'url' => 'index.php?page=naplo&sub=osztalyozo')); + $MENU['modules']['naplo']['hianyzas'] = array(array('txt' => 'Hiányzások', 'url' => 'index.php?page=naplo&sub=hianyzas')); + $MENU['modules']['naplo']['bejegyzesek'] = array(array('txt' => 'Bejegyzések', 'url' => 'index.php?page=naplo&sub=bejegyzesek')); + $MENU['modules']['naplo']['orarend'] = array(array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend')); + $MENU['modules']['naplo']['tanmenet'] = array(array('txt' => 'Tanmenetek', 'url' => 'index.php?page=naplo&sub=tanmenet')); + $MENU['modules']['naplo']['esemeny'] = array(array('txt' => 'Események', 'url' => 'index.php?page=naplo&sub=esemeny')); + $MENU['modules']['naplo']['tanev'] = array( + array('txt' => 'Tanév adatok', 'url' => 'index.php?page=naplo&sub=tanev'), + array('txt' => 'Fogadóóra', 'url' => 'index.php?page=naplo&sub=tanev&f=fogadoOra'), + ); + $MENU['modules']['naplo']['nyomtatas'][] = array('txt' => 'Nyomtatás', 'url' => 'index.php?page=naplo&sub=nyomtatas', 'rejtett' => true); + $MENU['modules']['naplo']['export'][] = array('txt' => 'Export', 'url' => 'index.php?page=naplo&sub=export&f=diakExport'); + $MENU['modules']['naplo']['intezmeny'] = array(array('txt' => 'Intézményi adatok', 'url' => 'index.php?page=naplo&sub=intezmeny')); + + $MENU['modules']['naplo']['stat'] = array(array('txt' => 'Látszám statisztika', 'url' => 'index.php?page=naplo&sub=stat&f=letszam')); + $MENU['modules']['naplo']['ertekeles'] = array(array('txt' => 'Értékelés', 'url' => 'index.php?page=naplo&sub=ertekeles', 'rejtett' => true)); + $MENU['modules']['naplo']['admin'] = array(array('txt' => 'Admin', 'url' => 'index.php?page=naplo&sub=admin')); + $MENU['modules']['naplo']['koszi'] = array(array('txt' => 'Köszi', 'url' => 'index.php?page=naplo&sub=koszi&f=kosziAdmin')); + $MENU['modules']['naplo']['hibabejelento'] = array(array('txt' => 'Kérelmek', 'url' => 'index.php?page=naplo&sub=hibabejelento&f=admin', 'rejtett' => true)); + $MENU['modules']['naplo']['hirnok'] = array(array('txt' => 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok')); + if(__UZENO_INSTALLED===true) + $MENU['modules']['naplo']['uzeno'] = array(array('txt' => 'Üzenő', 'url' => 'index.php?page=naplo&sub=uzeno&f=uzeno')); + + $MENU['modules']['naplo']['sub']['stat'] = array( + 'tantargyFelosztas' => array(array('txt' => 'Tantárgyfelosztás statisztika')), + 'letszam' => array(array('txt'=>'Létszám statisztika')), + 'lemorzsolodas' => array(array('txt'=>'Lemorzsolódás')), + ); + + $MENU['modules']['naplo']['sub']['haladasi'] = array( + 'helyettesites' => array(array('txt' => 'Helyettesítés kiírás')), + 'pluszora' => array(array('txt' => 'Plusz óra')), + 'minuszora' => array(array('txt' => 'Óra elmaradás')), + 'osszevonas' => array(array('txt' => 'Összevonás', 'rejtett' => true)), + 'teremModositas' => array(array('txt' => 'Haladási teremmódosító')), + 'specialis' => array(array('txt' => 'Speciális nap', 'rejtett' => true)), + 'elmaradas' => array(array('txt' => 'Haladási elmaradások', 'rejtett' => true)), + 'stat' => array(array('txt' => 'Haladási statisztika', 'rejtett' => true)), + 'elszamolas' => array(array('txt' => 'Elszámolás', 'rejtett' => true)), + 'oralatogatas' => array(array('txt' => 'Óralátogatás', 'rejtett' => true)), + 'hetes' => array(array('txt' => 'Hetesek')), + ); + $MENU['modules']['naplo']['sub']['hibabejelento'] = array( + 'hibabejelento' => array(array('txt' => 'Új kérelem a hangyának')), + ); + $MENU['modules']['naplo']['sub']['koszi'] = array( + // ez csak diákoknak van, nem? // 'koszi' => array(array('txt' => 'Köszi')), + 'esemenyAdmin' => array(array('txt' => 'Esemény adminisztráció')), + 'kosziAdmin' => array(array('txt' => 'Pont adminisztráció')), + ); + $MENU['modules']['naplo']['sub']['hianyzas'] = array( + 'osztaly' => array(array('txt' => 'Osztály hiányzásösszesítő')), + 'osztalyNap' => array(array('txt' => 'Osztály napi hiányzásösszesítő')), + 'diak' => array(array('txt' => 'Diák hiányzásai (naptár nézet)')), + 'diakLista' => array(array('txt' => 'Diák hiányzásai (lista)')), + 'diakIgazolatlan' => array(array('txt' => 'Diák igazolatlanjai (lista)')), + 'oktstat' => array(array('txt' => 'Októberi statisztika')), + 'info' => array(array('txt' => 'Hiányzás statisztika')), + + ); + $MENU['modules']['naplo']['sub']['osztalyozo'] = array( + 'tankor' => array(array('txt' => 'Tankör osztályzatai')), + 'diak' => array(array('txt' => 'Diák osztályzatai', 'rejtett' => true)), + 'dolgozat' => array(array('txt' => 'Dolgozatok', 'rejtett' => true)), + 'vizsga' => array(array('txt' => 'Vizsga')), + 'bizonyitvany' => array(array('txt' => 'Bizonyítvány', 'rejtett' => true)), +// 'bizelomenetel' => array(array('txt' => 'Előmenetel', 'rejtett' => true)), + 'zaroJegyCheck' => array(array('txt' => 'Zárójegy évfolyam ellenőrző')), + 'stat' => array(array('txt' => 'Zárási statisztika, tanulmányi statisztika')), + 'targySorrend' => array(array('txt' => 'Tárgysorrend', 'rejtett' => true)), + 'szovegesErtekeles' => array(array('txt' => 'Szöveges értékelés', 'rejtett' => true)), + 'szempontRendszer' => array(array('txt' => 'Szempont rendszer', 'rejtett' => true)), + ); + $MENU['modules']['naplo']['sub']['bejegyzesek'] = array( + 'bejegyzesek' => array(array('txt' => 'Bejegyzések listája')), + 'ujBejegyzes' => array(array('txt' => 'Új bejegyzések')), + 'bejegyzesTipus' => array(array('txt' => 'Bejegyzés-típusok')), + ); + $MENU['modules']['naplo']['sub']['tanmenet'] = array( + 'tanmenetLeadas' => array(array('txt' => 'Tanmenet leadás')), + 'tanmenetJovahagyas' => array(array('txt' => 'Tanmenet jóváhagyás')), + 'tanmenetTankor' => array(array('txt' => 'Tanmenetek tankörhöz rendelése')), + 'tanmenetInfo' => array(array('txt' => 'Tanmenet részletei')), + 'tanmenetModositas' => array(array('txt' => 'Tanmenet módosítása')), + 'ujTanmenet' => array(array('txt' => 'Új tanmenet létrehozása')), + ); + $MENU['modules']['naplo']['sub']['esemeny'] = array( + 'ujEsemeny' => array(array('txt' => 'Esemény felvétel/módosítás')), + 'esemenyDiak' => array(array('txt' => 'Névsor kezelése')), + ); + $MENU['modules']['naplo']['sub']['orarend'] = array( + 'orarend' => array(array('txt' => 'Órarend')), + 'szabadTerem' => array(array('txt' => 'Szabad termek', 'rejtett' => true)), + 'helyettesites' => array(array('txt' => 'Helyettesítés', 'rejtett' => true)), + 'orarendTankor' => array(array('txt' => 'Órarend-tankör összerendező', 'rejtett' => true)), + 'orarendUtkozes' => array(array('txt' => 'Órarend ütközés', 'rejtett' => true)), + 'orarendBetolto' => array(array('txt' => 'Órarend betöltő', 'rejtett' => true)), + 'orarendEllenorzes' => array(array('txt' => 'Órarend ellenőrzés', 'rejtett' => true)), + 'orarendTeremModositas' => array(array('txt' => 'Teremmódosítás', 'rejtett' => true)), + 'orarendModosito' => array(array('txt' => 'Órarend módosítás', 'rejtett' => true)), + 'termez' => array(array('txt' => 'Órarend termező', 'rejtett' => true)), + 'tanarOrarend' => array(array('txt' => 'Összesített tanári órarend', 'rejtett' => true)), + 'ascExport' => array(array('txt' => 'ascExport', 'rejtett' => true)), + ); + $MENU['modules']['naplo']['sub']['tanev'] = array( + 'munkaterv' => array(array('txt' => 'Éves munkaterv, tanév rendje', 'rejtett' => true)), + 'checkStatus' => array(array('txt' => 'Ellenőr', 'rejtett' => true)), + 'tankorCsoport' => array(array('txt' => 'Tankörcsoportok')), + 'tankorBlokk' => array(array('txt' => 'Tankörblokkok')), + // 'vegzosTankorLezaras' => array(array('txt' => 'Végzős tankör kiléptetés', 'rejtett' => true)), + 'vegzosOrarendLezaras' => array(array('txt' => 'Végzős órarend lezárása', 'rejtett' => true)), + 'fogadoOra' => array(array('txt' => 'Fogadóóra', 'rejtett' => true)), + // 'intezmeny' => array(array('txt' => 'Intézményváltó', 'url' => 'index.php?page=naplo&sub=intezmeny&f=valtas')), + 'targyOraszam' => array(array('txt' => 'Tárgy óraszámok', 'rejtett' => true)), + 'diakTanarai' => array(array('txt' => 'Diák tanára', 'rejtett' => true)), + 'targyBontas' => array(array('txt' => 'Tantárgyfelosztás, bontás-tankör')), + ); + $MENU['modules']['naplo']['sub']['nyomtatas'] = array( + 'tankorNaplohozRendeles' => array(array('txt' => 'Tankör naplóhozrendelése')), + 'osztalyozonaplo' => array(array('txt' => 'Osztályozónapló nyomtatása')), + 'haladasinaplo' => array(array('txt' => 'Haladásinapló nyomtatása')), + 'torzslap' => array(array('txt'=>'Törzslap')), + 'zaradekok' => array(array('txt' => 'Záradékok, bejegyzések nyomtatása')), + 'helyettesitesinaplo' => array(array('txt' => 'Helyettesítési-napló nyomtatása')), + 'diakTankorJelentkezes' => array(array('txt' => 'Tankörjelentkezés')), + 'ertesito' => array(array('txt' => 'Értesítő', 'rejtett' => true)), + 'szovegesErtekeles' => array(array('txt' => 'Szöveges értékelés', 'rejtett' => true)), + ); + + $MENU['modules']['naplo']['sub']['export'] = array( + 'bizonyitvany' => array(array('txt' => 'Bizonyítvány export')), + 'kirBizonyitvanyExport' => array(array('txt' => 'Bizonyítvány export (KIR)')), + 'diakExport' => array(array('txt' => 'Diak adatok')), + 'tantargyFelosztas' => array(array('txt' => 'Tantárgyfelosztás export')), + 'sulix' => array(array('txt' => 'Együttműködés SuliXerverrel')), + 'kreta' => array(array('txt' => 'KRÉTA export')), + 'tanarOsztalyOraszam' => array(array('txt' => 'Tanár-Osztály óraszámok')), + ); + $MENU['modules']['naplo']['sub']['intezmeny'] = array( + 'valtas' => array(array('txt' => 'Intézményváltás', 'rejtett' => true)), + 'osztaly' => array(array('txt' => 'Osztályok')), + 'diak' => array(array('txt' => 'Diákok')), + 'diakSzulo' => array(array('txt' => 'Szülő/Nevelő', 'rejtett' => true)), + 'tanar' => array(array('txt' => 'Tanárok')), + 'kepesitesek' => array(array('txt' => 'Képesítések')), + 'tovabbkepzes' => array(array('txt' => 'Továbbképzés')), + 'munkakozosseg' => array(array('txt' => 'Munkaközösségek, tárgyak', 'rejtett' => true)), + 'tankor' => array(array('txt' => 'Tankörök')), + 'tankorTanar' => array(array('txt' => 'Tankör tanárok')), + 'tankorTanarHozzarendeles' => array(array('txt' => 'Tantárgyfelosztás, tankör-tanár')), + 'tankorDiak' => array(array('txt' => 'Tankör diákok')), + 'diakTankor' => array(array('txt' => 'Diák tankörei')), + 'diakFelmentes' => array(array('txt' => 'Diák felmentése', 'rejtett' => true)), + 'diakTankorJelentkezes' => array(array('txt' => 'Tankörjelentkezés', 'rejtett' => true)), + 'tankorSzemeszter' => array(array('txt' => 'Tankör óraterve', 'rejtett' => true)), + 'tankorLetszam' => array(array('txt' => 'Tankörlétszámok', 'rejtett' => true)), + 'kepzes' => array(array('txt' => 'Képzések', 'rejtett' => true)), + 'kepzesOraterv' => array(array('txt' => 'Képzés óraterv', 'rejtett' => true)), + 'zaradek' => array(array('txt' => 'Záradék')), + 'terem' => array(array('txt' => 'Terem')), + 'verseny' => array(array('txt' => 'Verseny')), + ); + $MENU['modules']['naplo']['sub']['ertekeles'] = array( + 'kerdoivBetoltes' => array(array('txt' => 'Kérdőív betöltése')), + 'osszesites' => array(array('txt' => 'Összesítés')), + ); + $MENU['modules']['naplo']['sub']['admin'] = array( + 'intezmenyek' => array(array('txt' => 'Intézmények')), + 'tanevek' => array(array('txt' => 'Tanévek megnyitása, lezárása')), + 'szemeszterek' => array(array('txt' => 'Szemeszterek')), + 'fillhaladasi' => array(array('txt' => 'Haladási napló feltöltése')), + 'import' => array(array('txt' => 'Import')), + 'azonositok' => array(array('txt' => 'Azonosító generálás')), + 'szuloiAzonositok' => array(array('txt' => 'Szülői azonosítók generálása')), + 'rpcPrivilege' => array(array('txt' => 'RPC jogosultságok')), + ); + $MENU['modules']['naplo']['sub']['hirnok'] = array( + 'hirnok' =>array(array('txt' => 'Hírnök', 'icon'=>'icon-bullhorn')), + 'hirnokFeliratkozas' => array(array('txt' => 'Hírnök beállítás', 'icon'=>'icon-cog')) + ); + + } + if (__UZENO_INSTALLED===true && __UZENOADMIN===true) + $MENU['modules']['naplo']['uzeno'] = array(array('txt' => 'Üzenő', 'url' => 'index.php?page=naplo&sub=uzeno&f=uzeno')); + + // SNI + if (__NAPLOADMIN || __VEZETOSEG || __TANAR) { + $MENU['modules']['naplo']['sni'] = array(array('txt' => 'Egyéni fejlesztés', 'url' => 'index.php?page=naplo&sub=sni')); + $MENU['modules']['naplo']['sub']['sni'] = array( + 'diakAllapot' => array(array('txt' => 'Belépő/kilépő állapot')), + 'fejlesztesiTerv' => array(array('txt' => 'Havi összegzés')), + 'tantargyiFeljegyzesek' => array(array('txt' => 'Tantárgyi feljegyzések')), + ); + $MENU['modules']['naplo']['sub']['nyomtatas']['sniHaviJegyzokonyv'] = array(array('txt' => 'Havi jegyzőkönyv')); + $MENU['modules']['naplo']['sub']['nyomtatas']['sniEvVegiJegyzokonyv'] = array(array('txt' => 'Év végi jegyzőkönyv')); + } + // SNI VEGE + +if ($page==='naplo') { + + // Navigáció - alapértelmezés + $NAV[1] = array( + array('page' => 'naplo', 'sub' => 'haladasi'), + array('page' => 'naplo', 'sub' => 'osztalyozo'), + array('page' => 'naplo', 'sub' => 'hianyzas'), + array('page' => 'naplo', 'sub' => 'orarend'), + ); + if (__NAPLOADMIN) { + $NAV[1][] = array('page' => 'naplo', 'sub' => 'intezmeny'); + $NAV[1][] = array('page' => 'naplo', 'sub' => 'admin'); + $NAV[1][] = array('page' => 'naplo', 'sub' => 'hibabejelento'); + } + + if (is_array($MENU['modules']['naplo']['sub'][$sub])) foreach ($MENU['modules']['naplo']['sub'][$sub] as $_f => $M) { + $NAV[2][] = array('page' => 'naplo', 'sub' => $sub, 'f' => $_f); + } elseif (is_array($MENU['modules']['naplo'])) foreach ($MENU['modules']['naplo'] as $_f => $M) { + if ($_f != 'sub') $NAV[2][] = array('page' => 'naplo', 'sub' => $_f); + } + +} +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/menu/public/hu_HU/module-naplo.php b/mayor-orig/mayor-naplo/www/include/menu/public/hu_HU/module-naplo.php new file mode 100644 index 00000000..090c7db2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/menu/public/hu_HU/module-naplo.php @@ -0,0 +1,13 @@ + 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend&f=orarend')); + $MENU['modules']['naplo']['orarend'] = array( + array('txt' => 'Órarend', 'url' => 'index.php?page=naplo&sub=orarend&f=orarend'), + array('txt' => 'Helyettesítés', 'url'=>'index.php?page=naplo&sub=orarend&f=helyettesites', 'refresh'=>60), + array('txt' => 'Szabad termek', 'url' => 'index.php?page=naplo&sub=orarend&f=szabadTerem'), + ); + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/azonositok.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/azonositok.php new file mode 100644 index 00000000..9d85b3e5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/azonositok.php @@ -0,0 +1,14 @@ += 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/mayor-naplo/www/include/modules/naplo/admin/checksql.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/checksql.php new file mode 100644 index 00000000..cb751521 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/checksql.php @@ -0,0 +1,98 @@ + 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$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 +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 and , +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'])?"".implode(' ',$k['d'])." ":''). +(!empty($k['i'])?"".implode(' ',$k['i'])." ":''); +else $ret .= $k . ' '; +} +return $ret; +} + + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/intezmenyek.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/intezmenyek.php new file mode 100644 index 00000000..654a4c56 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/intezmenyek.php @@ -0,0 +1,117 @@ + '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/mayor-naplo/www/include/modules/naplo/admin/szemeszterek.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/szemeszterek.php new file mode 100644 index 00000000..6e4c2149 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/szemeszterek.php @@ -0,0 +1,48 @@ + '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/mayor-naplo/www/include/modules/naplo/admin/szuloiAzonositok.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/szuloiAzonositok.php new file mode 100644 index 00000000..585292bf --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/szuloiAzonositok.php @@ -0,0 +1,14 @@ += 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/mayor-naplo/www/include/modules/naplo/admin/tanevek.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/tanevek.php new file mode 100644 index 00000000..cf2b32db --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/tanevek.php @@ -0,0 +1,390 @@ + '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/mayor-naplo/www/include/modules/naplo/admin/tankorok.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/tankorok.php new file mode 100644 index 00000000..23887dbd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/admin/tankorok.php @@ -0,0 +1,133 @@ + '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 '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 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); + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/base/base.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/base.php new file mode 100644 index 00000000..d3c32ad6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/base.php @@ -0,0 +1,298 @@ + strtotime($tolDt)) $igDt = $dt; else $igDt = $tolDt; + elseif (!$override && strtotime($igDt) > strtotime($TA['zarasDt'])) $igDt = $TA['zarasDt']; + } else { + if ($tolDt == '' or (!$override && strtotime($tolDt) < strtotime($TA['kezdesDt']))) $tolDt = $TA['kezdesDt']; + elseif ($tolDt != '' && strtotime($TA['zarasDt']) < strtotime($tolDt)) $tolDt = $TA['zarasDt']; + if ($igDt == '' or (!$override && strtotime($igDt) > strtotime($TA['zarasDt']))) $igDt = $TA['zarasDt']; + elseif ($igDt != '' && strtotime($igDt) < strtotime($TA['kezdesDt'])) $igDt = $TA['kezdesDt']; + } + } + } + + // -------------------------------------------------- // + + function getTanitasiNapVissza($napszam, $from = 'curdate()', $olr = '') { + return getTanitasiNap(array('direction'=>'vissza','napszam'=>$napszam,'fromDt'=>$from), $olr); + } + + function getTanitasiNap($ADAT = array('direction'=>'', 'napszam'=>0, 'fromDt'=>'curdate()'), $olr = null) { + + global $_TANEV; + + if ($ADAT['fromDt']!='') $fromDt = $ADAT['fromDt']; else $fromDt = 'curdate()'; + if ($ADAT['direction']!='') $direction = $ADAT['direction']; + if ($ADAT['napszam']!='') $napszam = $ADAT['napszam']; + if ($napszam < 0 || !defined('__TANEV') || is_null(__TANEV) ||!is_array($_TANEV) || $_TANEV['kezdesDt']=='' || $_TANEV['statusz']=='tervezett') { + return false; + } + if ($direction == 'vissza') { $relacio='<'; $DESC = 'DESC'; } + else { $relacio = '>'; $DESC = 'ASC'; } + + if ($napszam==0) { // extra eset + $v = array($fromDt,1); + $from="CAST('%s' AS DATE)"; + if ($direction == 'vissza') $relacio = '<='; + else $relacio = '>='; + $limit = "1"; + } elseif ($fromDt != 'curdate()') { + $v = array($fromDt, ($napszam-1)); + $from="CAST('%s' AS DATE)"; + $limit = "%u,1"; + } else { + $v = array(($napszam-1)); + $from='curdate()'; + $limit = "%u,1"; + } + + $q = "SELECT DISTINCT(dt) FROM nap + WHERE dt $relacio $from + AND tipus LIKE '%%tanítási nap' + ORDER BY dt $DESC + LIMIT ".$limit; + $nap = db_query($q, array('fv' => 'getTanitasiNap', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $olr); + // Ha nincs elég tanítási nap, akkor iránytól függően adjuk vissza a szélső értékeket + if ($nap == '') { + if ($direction == 'vissza') $nap = date('Y-m-d',strtotime($_TANEV['kezdesDt'])); // ez ugye lehet nem tanítási nap is! + else $nap = date('Y-m-d',strtotime($_TANEV['zarasDt'])); // ez ugye lehet nem tanítási nap is! + } + + return $nap; + + } + + function getTanitasiHetHetfo($ADAT = array('direction'=>'', 'napszam'=>0, 'fromDt'=> ''), $olr = null) { + + global $_TANEV; + + if ($ADAT['fromDt']!='') $fromDt = $ADAT['fromDt']; else $fromDt = date('Y-m-d'); + if ($ADAT['direction']!='') $direction = $ADAT['direction']; + if ($ADAT['napszam']!='') $napszam = $ADAT['napszam']; + if ($napszam < 0 || !defined('__TANEV') || is_null(__TANEV) ||!is_array($_TANEV) || $_TANEV['kezdesDt']=='') { + return false; + } + if ($napszam == 0) { + // Az előző/következő napot követő/megelőző nap utáni 1 tanítási nap + if ($direction == 'vissza') { $muv = '+'; } + else { $muv = '-'; } + $v = array($napszam); + $from = "'$fromDt' $muv INTERVAL 1 DAY"; + } elseif ($fromDt != 'curdate()') { + $v = array($fromDt, ($napszam-1)); + $from="CAST('%s' AS DATE)"; + } else { + $v = array(($napszam-1)); + $from = $fromDt; + } + if ($direction == 'vissza') { $relacio='<'; $DESC = 'DESC'; } + else { $relacio = '>'; $DESC = 'ASC'; } + + $q = "SELECT DISTINCT( DATE(dt-INTERVAL (DAYOFWEEK(dt)-2) DAY) ) AS dt FROM nap + WHERE dt $relacio $from + AND tipus LIKE '%%tanítási nap' + ORDER BY dt $DESC + LIMIT %u,1"; + $nap = db_query($q, array('fv' => 'getTanitasiNap', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $olr); + + if ($nap == '') $nap = date('Y-m-d',strtotime($_TANEV['kezdesDt'])); // ez ugye lehet nem tanítási nap is! + + return $nap; + + } + + + // -------------------------------------------------- // + + function checkNaplo($dt = '') { + + global $_TANEV; + + $time = strtotime($dt); + + if ($time < strtotime($_TANEV['kezdesDt']) || $time > strtotime($_TANEV['zarasDt'])) return false; + if ($time === false // $dt == '0000-00-00' || $dt == '' || !isset($dt) + || __TANKOROK_OK !== true + || ( + !__NAPLOADMIN + && ($time < strtotime($_TANEV['kezdesDt']) || $time > strtotime($_TANEV['zarasDt'])) + ) + ) { + $_SESSION['alert'][] = 'message:wrong_data:checkNaplo:'.$dt.'('.(__TANKOROK_OK?1:2).')'; + return false; + } else { + + $napszam = date('w', strtotime($dt)); + if ($napszam == 0) $napszam = 7; + + // Muszáj újrakapcsolódnunk a lock miatt - nem adható át $olr... + $lr = db_connect('naplo', array('force' => true, 'fv' => 'checkNaplo')); + + // E helyett: Van-e olyan munkaterv, amiben van tanítási nap - sőt, lekérdezzük rögtön a hozzá tartozó órarendi hét-osztalyId párokat is! + $query = "SELECT distinct orarendiHet, osztalyId FROM nap LEFT JOIN munkatervOsztaly USING (munkatervId) WHERE dt=CAST('%s' AS DATE) + AND tipus='tanítási nap' AND osztalyId IS NOT NULL"; // ha egy munkatervhez nincs osztály rendelve, akkor se zavarjon be... + $v = array($dt); + // keyvalues = első mező a kulcs, azon belül a második mező indexelve jelenik meg + $RESULT = db_query($query, array('fv' => 'checkNaplo', 'modul' => 'naplo', 'result' => 'keyvalues', 'values' => $v), $lr); + if ($RESULT===false) { + db_close($lr); + return false; + } + if (is_array($RESULT) && count($RESULT) > 0) { + + $query = "SELECT oraId FROM ora WHERE dt=CAST('%s' AS DATE) LIMIT 1"; + $_oraId = db_query($query, array('fv' => 'checkNaplo/testIfCheck', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $lr); + if ($_oraId === false) { + db_close($lr); + return false; + } + + if ($_oraId === null) { + + // lock + $lock_q = 'LOCK TABLE ora write, orarendiOra read, orarendiOraTankor read, osztalyNaplo READ, '.__INTEZMENYDBNEV.'.osztaly READ,'.__INTEZMENYDBNEV.'.tankorOsztaly READ,'.__INTEZMENYDBNEV.'.tankorSzemeszter READ'; + db_query($lock_q, array('fv' => 'checkNaplo/lock ora', 'modul' => 'naplo'), $lr); + // recheck + $query = "SELECT oraId FROM ora WHERE dt=CAST('%s' AS DATE) LIMIT 1"; + $_oraId = db_query($query, array('fv' => 'checkNaplo/testIfCheck', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $lr); + if ($_oraId === false || $_oraId !== null) { + db_query('unlock tables', array('fv' => 'checkNaplo/lock ora', 'modul' => 'naplo'), $lr); + db_close($lr); + return false; + } + // -- + + // órarendi hetenként töltjük be... bár jelenleg egy nap csak egy órarendi hét lehet! + foreach ($RESULT as $orarendiHet => $osztalyIds) { + if (!is_array($osztalyIds) || count($osztalyIds)==0) continue; + // INSERT-be pedig csak azon tankorId-k, amik szerepelnek a tankorOsztaly táblában + $q = "SELECT DISTINCT tankorId FROM ".__INTEZMENYDBNEV.".tankorOsztaly WHERE osztalyId IN (".implode(',',$osztalyIds).")"; + $tankorIds = db_query($q, array('fv'=>'checkNaplo/tankorIds', 'modul'=>'naplo', 'result'=>'idonly')); + // Elvileg nem lehet tankor NULL - _TANKOROK_OK + // De sajnos minden lehet: + if (!is_array($tankorIds) || count($tankorIds)==0) continue; + $query = "INSERT INTO ora (dt,ora,ki,tankorId,teremId,tipus,eredet) + SELECT '%s',ora,orarendiOra.tanarId AS tanarId, orarendiOraTankor.tankorId AS tankorId, + teremId, 'normál','órarend' + FROM orarendiOra LEFT JOIN orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + WHERE orarendiOraTankor.tankorId IS NOT NULL + AND tankorId IN (".implode(',', $tankorIds).") + AND het=%u + AND nap=%u + AND tolDt<='%s' AND igDt>='%s' "; // !!!! + $v = array($dt, $orarendiHet, $napszam, $dt, $dt); + $er = db_query($query, array('fv' => 'checkNaplo/finally', 'modul' => 'naplo', 'values' => $v), $lr); + } + + db_query('unlock tables', array('fv' => 'checkNaplo/unlock', 'modul' => 'naplo'), $lr); + if ($er === false) { + db_close($lr); + return false; + } + } + //} + } + db_close($lr); + return true; + } + } + + // -------------------------------------------------- // + + function checkNaploStatus($olr = '') { + + if ($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + // A munkaterv meglétének ellenőrzése + $q = "SELECT COUNT(*) FROM nap"; + $count = db_query($q, array('fv' => 'checkNaploStatus/darab', 'modul' => 'naplo', 'result' => 'value'), $lr); + define('__MUNKATERV_OK', ($count != 0)); + + $q = "SELECT COUNT(*) FROM orarendiOra WHERE tolDt <= curdate() AND igDt >= curdate()"; + $count = db_query($q, array('fv' => 'checkNaploStatus/darab', 'modul' => 'naplo', 'result' => 'value'), $lr); + define('__ORAREND_OK', ($count != 0)); + + $q = "SELECT COUNT(DISTINCT orarendiOra.tanarId, orarendiOra.targyJel, orarendiOra.osztalyJel) + FROM orarendiOra LEFT JOIN orarendiOraTankor USING(tanarId, targyJel, osztalyJel) + WHERE tankorId IS NULL"; + $count = db_query($q, array('fv' => 'checkNaploStatus/darab', 'modul' => 'naplo', 'result' => 'value'),$lr); + if ($count != 0) { + define('__TANKOROK_OK', false); + define('__HIANYZO_TANKOROK_SZAMA', $count); + } else { + define('__TANKOROK_OK', true); + define('__HIANYZO_TANKOROK_SZAMA', 0); + } + + if ($olr == '') db_close($lr); + + } + + function checkDiakStatusz() { + + /* Konzisztencia ellenőrzés */ + + $lr = db_connect('naplo_intezmeny', array('fv' => 'checkDiakStatusz')); + db_start_trans($lr); + + // Ha státusz!='felvételt nyert' akkor kell lennie jogviszonyKezdete dátumnak + $q = "SELECT COUNT(*) AS db FROM diak WHERE statusz!='felvételt nyert' AND (jogviszonyKezdete IS NULL OR jogviszonyKezdete = '0000-00-00')"; + $db = db_query($q, array('fv' => 'checkDiakStatusz/pre#1', 'modul' => 'naplo_intezmeny', 'result' => 'value'), $lr); + if (__NAPLOADMIN && $db > 0) $_SESSION['alert'][] = 'message:wrong_data:jogviszonyKezdete hiányzik '.$db.' darab rekordban'; + + // Ha van olyan jogviszonyKezdete bejegyzés, melyhez nem tartozik diakJogviszony rekord, akkor azt pótoljuk + $q = "SELECT COUNT(*) AS db FROM diak LEFT JOIN diakJogviszony + ON diak.diakId = diakJogviszony.diakId AND diakJogviszony.statusz IN ('jogviszonyban van','vendégtanuló') AND diak.jogviszonyKezdete=diakJogviszony.dt + WHERE diakJogviszony.dt IS NULL AND jogviszonyKezdete IS NOT NULL AND jogviszonyKezdete != '0000-00-00'"; + $db = db_query($q, array('fv' => 'checkDiakStatusz/pre#1', 'modul' => 'naplo_intezmeny', 'result' => 'value'), $lr); + + $insDb = 0; + if ($db!==false && $db>0) { + $q = "INSERT INTO ".__INTEZMENYDBNEV.".diakJogviszony + SELECT diak.diakId as diakId, IF(diak.statusz='vendégtanuló','vendégtanuló','jogviszonyban van') AS statusz, jogviszonyKezdete AS dt FROM diak LEFT JOIN diakJogviszony + ON diak.diakId = diakJogviszony.diakId AND diakJogviszony.statusz IN ('jogviszonyban van','vendégtanuló') AND diak.jogviszonyKezdete=diakJogviszony.dt + WHERE diakJogviszony.dt IS NULL AND jogviszonyKezdete IS NOT NULL AND jogviszonyKezdete != '0000-00-00'"; + $insDb = db_query($q, array('fv' => 'checkDiakStatusz/#1', 'modul' => 'naplo_intezmeny', 'result' => 'affected rows'), $lr); + } + // A diakJogviszony tábla alapján állítjuk az aktuális státuszt + /* $q = "UPDATE ".__INTEZMENYDBNEV.".diak LEFT JOIN ".__INTEZMENYDBNEV.".diakJogviszony AS dj ON diak.diakId=dj.diakId + AND dj.dt=(SELECT MAX(dt) FROM ".__INTEZMENYDBNEV.".diakJogviszony WHERE dt<=CURDATE() AND diakId=dj.diakId) + SET diak.statusz = dj.statusz + WHERE diak.statusz<>'felvételt nyert' AND dj.statusz IS NOT NULL AND diak.statusz<>dj.statusz"; + */ + $q = "SELECT ".__INTEZMENYDBNEV.".diak.diakId,dj.statusz,dt + FROM ".__INTEZMENYDBNEV.".diak LEFT JOIN ".__INTEZMENYDBNEV.".diakJogviszony AS dj + ON ( + diak.diakId=dj.diakId + AND dj.dt=(SELECT MAX(dt) FROM ".__INTEZMENYDBNEV.".diakJogviszony WHERE dt<=CURDATE() AND diakId=dj.diakId) + ) WHERE diak.statusz<>'felvételt nyert' AND dj.statusz IS NOT NULL AND diak.statusz<>dj.statusz ORDER BY diakId,dt"; + $r = db_query($q, array('fv' => 'checkDiakStatusz/#2', 'modul' => 'naplo_intezmeny', 'result' => 'indexed'), $lr); + $updDb = 0; + for ($i=0; $i 'checkDiakStatusz/#2', 'modul' => 'naplo_intezmeny', 'values'=>$v, 'result' => 'affected rows'), $lr); + } + + db_commit($lr); + db_close($lr); + + return intval($insDb)+intval($updDb); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/base/log.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/log.php new file mode 100644 index 00000000..e244c9a3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/log.php @@ -0,0 +1,40 @@ + null, 'szoveg' => '', 'tabla' => '', 'values' => array()), $olr = null) + Logbejegyzést készít, belerakja a datetime-ot, az action-t és a _USERACCOUNT-ot, ... + checkReloadAction($actionId, $action = '', $tabla = '', $olr = '') +*/ + + function logAction($SET = array('actionId' => null, 'szoveg' => '', 'tabla' => '', 'values' => array()), $olr = null) { + + global $action; + + $ip = $_SERVER['REMOTE_ADDR']; + $v = mayor_array_join(array($ip, $SET['tabla'], $action), $SET['values'], array($SET['actionId'])); + $q = "INSERT INTO ".__TANEVDBNEV.".logBejegyzes (userAccount, dt, ip, tabla, action, szoveg, actionId) VALUES + ('"._USERACCOUNT."', now(), '%s', '%s', '%s', '".$SET['szoveg']."','%s')"; + return db_query($q, array('fv' => 'logAction', 'modul' => 'naplo', 'values' => $v), $olr); + + } + + function checkReloadAction($actionId, $action = '', $tabla = '', $olr = null) { + + + $q = "SELECT logId FROM ".__TANEVDBNEV.".logBejegyzes WHERE actionId = '%s'"; + $v = array($actionId); + if ($action != '') { $q .= " AND action='%s'"; $v[] = $action; } + if ($tabla != '') { $q .= " AND tabla='%s'"; $v[] = $tabla; } + + $r = db_query($q, array('fv' => 'checkReloadAction', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $olr); + + if ($r===false) { + $_SESSION['alert'][] = 'message:sql_query_failure:checkReloadAction:'.$q.':'.$error; + return false; + } + return ($r === null); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/base/rights.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/rights.php new file mode 100644 index 00000000..fd538da0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/rights.php @@ -0,0 +1,469 @@ + 'getTanevAdat', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'szemeszter', 'values' => array($tanev) + ), $olr); + + if (!is_array($ret['szemeszter'])) return false; + + // A legkorábbi kezdés és legkésőbbi zárás keresése... + $kezdesDt = '2030-01-01'; $zarasDt = '1980-01-01'; + $kezdes = strtotime($kezdesDt); $zaras = strtotime($zarasDt); + foreach ($ret['szemeszter'] as $szemeszter => $A) { + + if ($kezdes > strtotime($A['kezdesDt'])) { + $kezdesDt = $A['kezdesDt']; + $kezdes = strtotime($kezdesDt); + } + if ($zaras < strtotime($A['zarasDt'])) { + $zarasDt = $A['zarasDt']; + $zaras = strtotime($zarasDt); + } + $ret['statusz'] = $A['statusz']; + } + $ret['kezdesDt'] = $kezdesDt; $ret['zarasDt'] = $zarasDt; $ret['tanev'] = $tanev; + $q = "SELECT MAX(zarasDt) FROM szemeszter WHERE zarasDt<'%s'"; + $ret['elozoZarasDt'] = db_query($q, array('fv'=>'getTanevAdat/elozo','modul'=>'naplo_intezmeny','result'=>'value','values'=>array($ret['kezdesDt']))); + $q = "SELECT MIN(kezdesDt) FROM szemeszter WHERE kezdesDt>'%s'"; + $ret['kovetkezoKezdesDt'] = db_query($q, array('fv'=>'getTanevAdat/kovetkezo','modul'=>'naplo_intezmeny','result'=>'value','values'=>array($ret['zarasDt']))); + + return $ret; + + } + + function initIntezmeny($DATA) { + + global $MYSQL_DATA; + + $intezmeny = $DATA['intezmeny']; + $MYSQL_DATA['naplo_intezmeny'] = $MYSQL_DATA['naplo_base']; + $MYSQL_DATA['naplo_intezmeny']['db']= intezmenyDbNev($intezmeny); + + define('__INTEZMENY', $intezmeny); + define('__INTEZMENYDBNEV', intezmenyDbNev(__INTEZMENY)); + + if (isset($DATA['telephelyId'])) { + define('__TELEPHELYID',$DATA['telephelyId']); + } + + $num = checkDiakStatusz(); + if ($num != 0) $_SESSION['alert'][] = 'info:success:checkDiakStatusz:helyreállított rekordok száma='.$num; + + $q = "SELECT OMKod FROM intezmeny WHERE rovidNev='%s'"; + define('__OMKOD',db_query($q, array('fv' => 'initIntezmeny', 'modul' => 'naplo_base', 'result' => 'value','values'=>array($intezmeny)))); + + } + + function initTanev($intezmeny, $tanev) { + + global $MYSQL_DATA, $_TANEV; + + $MYSQL_DATA['naplo'] = $MYSQL_DATA['naplo_base']; + $MYSQL_DATA['naplo']['db']= tanevDbNev($intezmeny, $tanev); + + define('__TANEV', $tanev); + define('__TANEVDBNEV', tanevDbNev(__INTEZMENY, __TANEV)); + $_TANEV = getTanevAdat(); + // A kezdes- és zarasDt a szemeszter táblában DATE típusú, így az összehasonlítás korrekt + $date = date('Y-m-d'); + define('__FOLYO_TANEV',( + $_TANEV['kezdesDt'] <= $date + && $date <= $_TANEV['zarasDt'] + )); + + if (file_exists($file = _CONFIGDIR."/module-naplo/config-$intezmeny.php")) require_once($file); + initDefaults(); + + if ($_TANEV['statusz'] == 'aktív') { + checkNaploStatus(); + if (__FOLYO_TANEV === true) + if (__MUNKATERV_OK && __ORAREND_OK && __TANKOROK_OK) checkNaplo(date('Y-m-d')); + else { + if (MAYOR_SOCIAL!==true) $_SESSION['alert'][]= 'info:checkNaploFailed:Tanév:'.($_TANEV['tanev']).':Részletek '.((__MUNKATERV_OK)?'munkaterv ok':'#chknaplo1 nincs munkaterv!').':'.((__ORAREND_OK)?'órarend ok':'#chknaplo2 nincs órarend!').':'.((__TANKOROK_OK)?'órarend-tankörök ok':'#chknaplo3 órarendi óra tankör összerendezési hiány!'); + } + } + } + + function initDefaults() { + + if (!defined('_ZARAS_HATARIDO')) define('_ZARAS_HATARIDO',date('Y-m-01 00:00:00',strtotime('10 days ago'))); + // Helyttesített óra beírása (szaktanár): következő nap 8:00 + if (!defined('_HELYETTESITES_HATARIDO')) define('_HELYETTESITES_HATARIDO',date('Y-m-d',strtotime('8 hours ago'))); // Csak dárum lehet, mert az órák időpontját nem tudjuk + // Jegyek beírása, módosítása, törlése (szaktanár): zárásig (zárt időintervallum!) + if (!defined('_OSZTALYOZO_HATARIDO')) define('_OSZTALYOZO_HATARIDO',_ZARAS_HATARIDO); + + // Saját óra beírása (szaktanár) + // A mai nap+8 óra előtti tanatási nap utáni napot megelőző hétfő + // Azaz egy óra a következő hétfői tanítási nap 16:00-ig írható be. + if (!defined('_HALADASI_HATARIDO')) + define('_HALADASI_HATARIDO', + date('Y-m-d H:i:s', + strtotime('last Monday', + strtotime('next day', + strtotime( + getTanitasiNapVissza(1,date('Y-m-d H:i:s',strtotime('+8hours'))) + ) + ) + ) + ) + ); + + // A nevek rendezése a helyettesítés kiíráskor: súly szerint (súly) vagy névsorban (ABC) + if (!defined('__HELYETTESITES_RENDEZES')) define('__HELYETTESITES_RENDEZES','súly'); + // Fogadóórán egy vizit tervezett hossza + if (!defined('_VIZITHOSSZ')) define('_VIZITHOSSZ',10); + // Jegyek default súlyozása + if (!defined('__DEFAULT_SULYOZAS')) define('__DEFAULT_SULYOZAS','1:1:1:1:1'); + // Jegymódosításkor a jegy típus modosítható-e (pl: féljegy --> százalékos) + if (!defined('__JEGYTIPUS_VALTHATO')) define('__JEGYTIPUS_VALTHATO',false); + + // TANEV + // Szülői igazolások száma: félévenként legfeljebb 5 nap + define('__SZULOI_IGAZOLAS_FELEVRE',5); + define('__SZULOI_IGAZOLAS_EVRE',0); + // Szülő által igazolható órák maximális száma: félévenként legfeljebb 14 óra + define('__SZULOI_ORA_IGAZOLAS_FELEVRE',14); + define('__SZULOI_ORA_IGAZOLAS_EVRE',0); + // Osztályfőnöki igazolások száma: évi 3 nap + // Csak ha < 5 igazolatlanja van + define('__OSZTALYFONOKI_IGAZOLAS_FELEVRE',0); + define('__OSZTALYFONOKI_IGAZOLAS_EVRE',5); + define('__OSZTALYFONOKI_ORA_IGAZOLAS_FELEVRE',0); + define('__OSZTALYFONOKI_ORA_IGAZOLAS_EVRE',21); + + // Összeadjuk-e a késések perceit, hogy átváltsuk + if (!defined('_KESESI_IDOK_OSSZEADODNAK')) define('_KESESI_IDOK_OSSZEADODNAK', false); + // Hány késés felel meg egy igazolatlan órának - ha 0 vagy _KESESI_IDOK_OSSZEADODNAK, akkor nem váltjuk át + if (!defined('_HANY_KESES_IGAZOLATLAN')) define('_HANY_KESES_IGAZOLATLAN', 3); + // Hány felszerelés hiány felel meg egy igazolatlan órának - ha 0 vagy _KESESI_IDOK_OSSZEADODNAK, akkor nem váltjuk + if (!defined('_HANY_FSZ_IGAZOLATLAN')) define('_HANY_FSZ_IGAZOLATLAN', 3); + // Hány egyenruha hiány felel meg egy igazolatlan órának - ha 0, akkor nem váltjuk + if (!defined('_HANY_EH_IGAZOLATLAN')) define('_HANY_EH_IGAZOLATLAN', 0); + + // Hiányzás, késés, felszerelés hiány, egyenruha hiány beírása (szaktanár): következő nap 16:00 + if (!defined('_HIANYZAS_HATARIDO')) define('_HIANYZAS_HATARIDO',date('Y-m-d 00:00:00',strtotime('16 hours ago'))); + // Hiányzás, késés beírása osztályfőnöknek: 5 tanítási nap + if (!defined('_OFO_HIANYZAS_BEIRAS')) define('_OFO_HIANYZAS_BEIRAS',5); + if (!defined('_OFO_HIANYZAS_HATARIDO')) define('_OFO_HIANYZAS_HATARIDO',getTanitasiNapVissza(_OFO_HIANYZAS_BEIRAS,'curdate()')); + // Igazolás beírásának határideje: 5 tanítási nap + if (!defined('_IGAZOLAS_BEIRAS')) define('_IGAZOLAS_BEIRAS',6); + if (!defined('_IGAZOLAS_BEIRAS_HATARIDO')) define('_IGAZOLAS_BEIRAS_HATARIDO',getTanitasiNapVissza(_IGAZOLAS_BEIRAS,'curdate()')); + // Igazolás leadás határideje - ha nincs közben osztályfőnöki óra: 8 tanítási nap + if (!defined('_IGAZOLAS_LEADAS')) define('_IGAZOLAS_LEADAS',8); + if (!defined('_LEGKORABBI_IGAZOLHATO_HIANYZAS')) define('_LEGKORABBI_IGAZOLHATO_HIANYZAS',getTanitasiNapVissza(_IGAZOLAS_BEIRAS+_IGAZOLAS_LEADAS,'curdate()')); + + } + + //--- + + function getIdByOid($oId, $td = 'diak') { + + + if (intval($oId) == 0) { + $_SESSION['alert'][] = 'page:insufficient_access:Hiányzó oktatási azonosító!:'.$td; + return false; + } + $td = readVariable($td, 'enum', 'diak', array('tanar', 'diak')); + + $q = "SELECT ${td}Id FROM $td WHERE oId = '%s'"; + $id = db_query($q, array('fv' => 'getIdByOid', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($oId))); + + if (!$id) { + $_SESSION['alert'][] = 'message:id_not_found:(oid:'.$oId.')'; + return false; + } + + return $id; + + } + + function getSzuloIdByUserAccount($szuloCheck=true) { + $q = "SELECT szuloId FROM ".__INTEZMENYDBNEV.".szulo WHERE userAccount='"._USERACCOUNT."'"; + $szuloId = db_query($q, array('fv' => 'getSzuloIdByUserAccount', 'modul' => 'naplo_intezmeny', 'result' => 'value')); + if ($szuloCheck===true && __CHECK_SZULO_TORVENYES === true) { + $q = "SELECT count(*) FROM `".__INTEZMENYDBNEV."`.`diak` WHERE diakId='".__PARENTDIAKID."' AND + ( + (anyaId=%u AND FIND_IN_SET('anya',torvenyesKepviselo)=1) OR + (apaId=%u AND FIND_IN_SET('apa',torvenyesKepviselo)=2) OR + (gondviseloId=%u)OR + (neveloId=%u) ) + "; + $torvenyesE = db_query($q, array('fv' => 'getSzuloIdByUserAccount', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values'=>array($szuloId,$szuloId,$szuloId,$szuloId))); + if ($torvenyesE==0) { + $_SESSION['alert'][] = 'page:nem_torvenyes_kepviselo'; + } + } + return $szuloId; + } + + + function isTanar($tanarId) { + $q = "SELECT COUNT(*) AS db FROM ".__INTEZMENYDBNEV.".tanar + WHERE tanarId=%u AND beDt<=CURDATE() AND (kiDt IS NULL OR kiDt>=CURDATE())"; + $v = db_query($q, array('fv' => 'isTanar', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($tanarId))); + return ($v==1); + } + + // Én hajlanék arra is, hogy az egész $Param tömböt kivegyük... + function getOsztalyIdsByTanarId($tanarId, $Param = array('tanev' => __TANEV, 'tolDt' => '', 'igDt' => '', 'csakId'=>true)) { + + global $_TANEV; + + if (is_null($Param['tanev']) || $Param['tanev']=='') $Param['tanev']=__TANEV; + if ($Param['tanev'] != __TANEV && $Param['tanev']!='') $TA = getTanevAdat($Param['tanev']); + else $TA = $_TANEV; + + if (isset($Param['tolDt']) && $Param['tolDt']!='') $tolDt = $Param['tolDt']; else unset($tolDt); + if (isset($Param['igDt']) && $Param['igDt']!='') $igDt = $Param['igDt']; else unset($igDt); + initTolIgDt($Param['tanev'], $tolDt, $igDt); + + $q = "SELECT DISTINCT osztalyId FROM ".__INTEZMENYDBNEV.".osztalyTanar WHERE tanarId=%u AND beDt <= '%s' + AND (kiDt IS NULL OR kiDt >= '%s')"; + $v = array($tanarId, $igDt, $tolDt); + return db_query($q, array('fv' => 'getOsztalyIdsByTanarId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + + } + + + function naploBeallitasok() { + + global $_RPC; + + $lr = db_connect('naplo_base', array('fv' => 'naploBeallitasok')); + if ($lr == false) return false; + + // session lekérdezése + $q = "SELECT intezmeny, telephelyId, tanev, parentDiakId FROM session WHERE sessionID='"._SESSIONID."' AND policy='"._POLICY."'"; + $RESULT = db_query($q, array('fv' => 'naploBeallitasok', 'modul' => 'naplo_base', 'result' => 'record'), $lr); + + if ($vanSession = (is_array($RESULT) && (count($RESULT) > 0))) { // Létező session - egyszerű eset + + if ($RESULT['intezmeny'] != '') + initIntezmeny($RESULT); + if (defined('__INTEZMENY') && $RESULT['tanev'] != '') + initTanev($RESULT['intezmeny'], $RESULT['tanev']); + if (_POLICY == 'parent' && $RESULT['parentDiakId'] != '') + define('__PARENTDIAKID', $RESULT['parentDiakId']); + + } + // Az (alapértelmezett) intézmény lekérdezése - ha még nincs meg + if (!defined('__INTEZMENY')) { + + if (_RPC) { + /* Ha az RPC hívás tartalmazza az OMKod-ot */ + $OMKod = readVariable($_RPC['request']['OMKod'],'numeric unsigned'); + $q = "SELECT rovidNev AS intezmeny FROM intezmeny WHERE OMKod=%u"; + $RESULT = db_query($q, array('fv' => 'naploBeallitasok/settings', 'modul' => 'naplo_base', 'values'=> array($OMKod),'result' => 'record')); + if ($RESULT['intezmeny'] == '' && $page=='naplo') { // ismeretlen OMKod esetén elutasítjuk a további feldolgozást + $DATA = array('alert'=>'page:wrong_data:OMKod','OMKod'=>$OMKod,'result'=>'failure'); + global $RPC; + $RPC->setResponse($DATA); $RPC->sendResponse(); die(); + } + } else { + /* egyedi intezmeny és telephely lekérdezése a settings-ből */ + $q = "SELECT intezmeny, telephelyId FROM settings WHERE userAccount='%s' AND policy='%s'"; + $RESULT = db_query($q, array('fv' => 'naploBeallitasok/settings', 'modul' => 'naplo_base', 'values'=> array(_USERACCOUNT,_POLICY),'result' => 'record')); + + /* ellenőrizzük, hogy érvényes-e */ + if ($RESULT['intezmeny'] != '') { + $q = "SELECT rovidnev FROM intezmeny WHERE rovidnev='%s'"; + $RESULT['intezmeny'] = db_query($q, array('fv' => 'naploBeallitasok/settings intézmény', 'modul' => 'naplo_base', 'result' => 'value', 'values'=>array($RESULT['intezmeny'])), $lr); + + /* telephely ellenőrzése */ + if ($RESULT['intezmeny'] != '' && $RESULT['telephelyId'] != '') { + $q = "SELECT telephelyId FROM `%s`.`telephely` WHERE `telephelyId`='%s'"; + $RESULT['telephelyId'] = db_query($q, array( + 'fv' => 'naploBeallitasok/settings telephely', 'modul' => 'naplo_base', 'result' => 'value', + 'values' => array(intezmenyDbNev($RESULT['intezmeny']), $RESULT['telephelyId']) + ), $lr); + } else { unset($RESULT['telephelyId']); /* Ha az intézmény hibás, akkor a telephely sem lehet jó... */ } + } + } + + /* ha nem érvényes vagy nincs elmentve */ + if ($RESULT['intezmeny']=='') { + $q = "SELECT rovidnev FROM intezmeny ORDER BY alapertelmezett DESC LIMIT 1"; + $RESULT['intezmeny'] = db_query($q, array('fv' => 'naploBeallitasok/default intézmény', 'modul' => 'naplo_base', 'result' => 'value'), $lr); + } + + /* Ha a settings-ben nem kapott a telephelyId értéket, akkor lássuk, van-e alapértelmezett! */ + if ($RESULT['telephelyId'] == '') { + // Csak ha van alapértelmezett telephely, akkor kérdezzük le! + $q = "SELECT telephelyId FROM `%s`.`telephely` WHERE alapertelmezett=1 LIMIT 1"; + $RESULT['telephelyId'] = db_query($q, array( + 'fv' => 'naploBeallitasok/default telephely', 'modul' => 'naplo_base', 'result' => 'value', + 'values' => array(intezmenyDbNev($RESULT['intezmeny'])) + ), $lr); + } + + /* */ + + if ($RESULT['intezmeny']) initIntezmeny($RESULT); + } + + if (defined('__INTEZMENY') && !defined('__TANEV')) { + + $lr2 = db_connect('naplo_intezmeny', array('fv' => 'naploBeallitasok')); + if ($lr2 === false) return false; + + if (_RPC) { + // Ha az RPC hívás tartalmazza a tanévet + $tanev = readVariable($_RPC['request']['tanev'], 'numeric unsigned'); + // ellenőrzés + $q = "SELECT tanev FROM szemeszter WHERE tanev=%u ORDER BY szemeszter LIMIT 1"; + $v = array($tanev); + $ret = db_query($q, array('fv' => 'naploBeallitasok/default tanév', 'modul' => 'naplo_intezmeny', 'result' => 'record','values'=>$v)); + } + if (!is_array($ret) || count($ret) == 0) { + // A mai dátumhoz leközelebb eső kezdesDt, vagy zarasDt határozza meg, hogy melyik az aktív szemeszter + $q = "SELECT tanev, szemeszter, + IF(ABS(DATEDIFF(zarasDt,CURDATE())) 'naploBeallitasok/default tanév', 'modul' => 'naplo_intezmeny', 'result' => 'record')); + } + if (is_array($ret) && count($ret) > 0) { + $RESULT['tanev'] = $ret['tanev']; $RESULT['szemeszter'] = $ret['szemeszter']; + initTanev(__INTEZMENY, $RESULT['tanev']); + } + + } + + // session létrehozása - ha kell + $intezmeny = ''; $tanev = $telephelyId = 'NULL'; + if (defined('__INTEZMENY')) { + $intezmeny = __INTEZMENY; + if (defined('__TELEPHELYID')) $telephelyId = __TELEPHELYID; + if (!defined('__TANEV')) $_SESSION['alert'][] = 'message:nincs_tanev'; + } else { + $_SESSION['alert'][] = 'message:nincs_intezmeny'; + } + if (defined('__TANEV') && __TANEV!='') $tanev = __TANEV; + + if (defined('_SESSIONID') && _SESSIONID!='' && !$vanSession) { + $q = "REPLACE INTO session (sessionID, policy, intezmeny, telephelyId, tanev) VALUES + ('"._SESSIONID."','"._POLICY."' , '".$intezmeny."',".$telephelyId.", ".$tanev.")"; + db_query($q, array('fv' => 'naploBeallitasok/session', 'modul' => 'naplo_base'), $lr); + } + + db_close($lr); + return defined('__TANEV') && defined('__INTEZMENY'); + + } // function + + function nagykoruE($diakId) { + if (is_numeric($diakId)) { + $q = "select IF(diak.szuletesiIdo + interval 18 year < CURDATE(),1,0) FROM `diak` WHERE diakId=%u"; + return db_query($q, array('fv' => 'nagykoruE', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($diakId))); + } else { + return false; + } + } + + + +/* ====================================================================================================================================== */ + + + +// Kategóriák + if (_POLICY=='private' && memberOf(_USERACCOUNT, 'naploadmin') || _RUNLEVEL==='cron') { + $AUTH['my']['categories'][] = 'naploadmin'; + define('__NAPLOADMIN',true); + } else { + define('__NAPLOADMIN',false); + } + if (_POLICY=='private' && memberOf(_USERACCOUNT, 'vezetoseg')) { + $AUTH['my']['categories'][] = 'vezetoseg'; + define('__VEZETOSEG',true); + } else { + define('__VEZETOSEG',false); + } + + if (_POLICY=='parent') + define('__DIAK',true); + else + define('__DIAK',in_array('diák',$AUTH['my']['categories'])); + + define('__TITKARSAG',in_array('titkárság',$AUTH['my']['categories'])); + + // a TANAR tagság lejjebb dől el!!! + $TANARE = in_array('tanár',$AUTH['my']['categories']); + + + +if (__NAPLO_INSTALLED === true) { + + if (__UZENO_INSTALLED === true && _POLICY=='private') { + if (memberOf(_USERACCOUNT,'uzenoadmin')===true) define('__UZENOADMIN',true); + else define('__UZENOADMIN',false); + } else define('__UZENOADMIN',false); + + if (!naploBeallitasok()) { // Ha nincs intézmény, vagy tanév + if (__NAPLOADMIN === true) { + // naploadmin vegyen fel intézményt, tanévet + if (!defined('__INTEZMENY') and "$page:$sub:$f" != 'naplo:admin:intezmenyek') { + $href = 'index.php?page=naplo&sub=admin&f=intezmenyek'; + header('Location: '.location($href)); + } elseif ( + defined('__INTEZMENY') and !defined('__TANEV') + and "$page:$sub" != 'naplo:admin' + and "$page:$sub" != 'naplo:intezmeny' + ) { + $href = 'index.php?page=naplo&sub=admin&f=tanevek'; + header('Location: '.location($href)); + } + } elseif (!defined('__INTEZMENY') or (!defined('__TANEV') and "$page:$sub" != 'naplo:intezmeny')) { + // ures oldal, ez túl szigorú! + //$sub = ''; + //$f = 'error'; + } + } + + if (defined('__INTEZMENY')) { + if (__DIAK) { + if (_POLICY=='private') { + define('__USERDIAKID',getIdByOid(_STUDYID,'diak')); + } elseif (defined('__PARENTDIAKID')) { + define('__USERDIAKID',__PARENTDIAKID); + define('__USERSZULOID', getSzuloIdByUserAccount(("$page/$sub/$f" != 'naplo//diakValaszto'))); + } elseif ("$page/$sub/$f" != 'naplo//diakValaszto') { + header('Location: '.location('index.php?page=naplo&f=diakValaszto')); + } else { + define('__USERDIAKID',false); + } + } + // A diák milyen jogokkal és kötelezettségekkel rendelkezik + define('__NAGYKORU',(__DIAK===true && nagykoruE(__USERDIAKID))); + if ($TANARE && ($TANARE=isTanar(getIdByOid(_STUDYID,'tanar')))) { // itt már ellenőrizhetjük, hogy a keretrendszer szerint tanár, a napló szerint is tanár-e még a megfelelő intézmény időszakában + define('__USERTANARID',getIdByOid(_STUDYID,'tanar')); + if (__USERTANARID !== false) { + $_OSZTALYA = getOsztalyIdsByTanarId(__USERTANARID, array('tanev'=>__TANEV,'csakId'=>true)); + define('__OSZTALYFONOK',(is_array($_OSZTALYA) && count($_OSZTALYA) > 0)); + } + } + } + +} elseif (__NAPLOADMIN===true || memberOf(_USERACCOUNT,'useradmin')===true) { + $sub = 'admin'; + $f = 'install'; +} elseif ($page == 'naplo') { + global $sub,$f; + $sub = ''; + $f = 'error'; + $_SESSION['alert'][] = 'page:page_missing'; +} else { + // másik modult nézünk, csak becsatoljuk a base alatt lévő dolgokat..... + // jó ez vajon??? dump($page,$sub,$f); +} + + define('__TANAR',$TANARE); + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/base/tool.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/tool.php new file mode 100644 index 00000000..8fb6e9e9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/tool.php @@ -0,0 +1,590 @@ + array('type'=>'id'), + 'tanarId'=> array('type'=>'id'), + 'szuloId'=> array('type'=>'id'), + 'teremId'=> array('type'=>'id'), + 'osztalyId'=> array('type'=>'id'), + 'targyId'=> array('type'=>'id'), + 'mkId'=> array('type'=>'id'), + 'tankorId'=> array('type'=>'id'), + 'telephelyId' => array('type'=>'id'), + + 'tolDt' => array('type'=>'datetime'), + 'igDt' => array('type'=>'datetime'), + 'refDt' => array('type'=>'datetime'), + 'dt' => array('type'=>'datetime'), + + 'tanev' => array('type'=>'numeric unsigned'), + 'het' => array('type'=>'numeric unsigned'), + + 'fileName' => array('type'=>'strictstring'), + 'conv' => array('type'=>'strictstring'), + 'sorrendNev' => array('type'=>'enum','allowOnly' => array('napló','anyakönyv','ellenőrző','bizonyítvány','egyedi')), + 'targySorrend' => array('type'=>'strictstring'), + 'vizsgaTipus' => array('type'=>'enum','allowOnly' => array('osztályozó vizsga','javítóvizsga','különbözetivizsga','beszámoltatóvizsga')), + + + // ellenőrizendő még: + 'ho' => array('type'=>'strictstring'), + 'ora' => array('type'=>'strictstring'), + 'tipus' => array('type'=>'strictstring'), +// 'telephely' => array('type'=>'strictstring'), + // ... + ); + + + foreach ( $TOOL as $tool => $params ) if (is_array($params)) { + + for ($i = 0; $i < count($params['post']); $i++) { + $_var = $params['post'][$i]; + //if ($TOOLVARS[$_var]=='') $_SESSION['alert'][] = '::toolvars:'.$_var; // nem üzenünk hibát + if ( $_POST[$_var]!='' && ($TOOLVARS[$_var]['type']!='') ) { // ellenőrizzük a fenti tömb szerinti változókat. + // itt típuskonverzió is történik + $_POST[$_var] = readVariable($_POST[$_var],$TOOLVARS[$_var]['type'],null,$TOOLVARS[$_var]['allowOnly']); + } + } + + if ( function_exists( $func = "get$tool" ) ) { + $func(); + } + + } + +} + + +/* AUDIT */ + +/* +getAuditInfo(); +function getAuditInfo() { + +global $page,$sub,$f; + +$_SESSION['alert'][] = '::'.$page.$sub.$f; + +$WORK = $_POST; + +for ($i +reset($WORK); +ksort($WORK); +$X = unserialize(serialize($WORK)); + +var_dump($X); + +} + */ + + +/* ------------------------- */ + + +function getSzamSelect() { + + global $TOOL; + + if (!is_array($TOOL['szamSelect']['szamok'])) { + $minValue = (isset($TOOL['szamSelect']['minValue']))?$TOOL['szamSelect']['minValue']:1; + $maxValue = (isset($TOOL['szamSelect']['maxValue']))?$TOOL['szamSelect']['maxValue']:100; + $TOOL['szamSelect']['szamok'] = range($minValue, $maxValue); + } + + if ( !isset($TOOL['szamSelect']['paramName']) || $TOOL['szamSelect']['paramName']=='' ) + $TOOL['szamSelect']['paramName'] = 'szam'; + +} + +function getIntezmenySelect() { + + global $TOOL; + + if (!is_array($TOOL['intezmenySelect']['intezmenyek'])) { + require_once('include/modules/naplo/share/intezmenyek.php'); + $TOOL['intezmenySelect']['intezmenyek'] = getIntezmenyek(); + } + if ( !isset($TOOL['intezmenySelect']['paramName']) || $TOOL['intezmenySelect']['paramName'] == '' ) + $TOOL['intezmenySelect']['paramName'] = 'intezmeny'; + +} + +function getTelephelySelect() { + + global $TOOL; + + if (!is_array($TOOL['telephelySelect']['telephelyek'])) { + require_once('include/modules/naplo/share/intezmenyek.php'); + $TOOL['telephelySelect']['telephelyek'] = getTelephelyek(); + } + if ( !isset($TOOL['telephelySelect']['paramName']) || $TOOL['telephelySelect']['paramName'] == '' ) + $TOOL['telephelySelect']['paramName'] = 'telephelyId'; + if (count($TOOL['telephelySelect']['telephelyek']) < 2) unset($TOOL['telephelySelect']); + +} + +function getTanevSelect() { + + global $TOOL; + + require_once('include/modules/naplo/share/intezmenyek.php'); + if (!is_array($TOOL['tanevSelect']['tanevek'])) $TOOL['tanevSelect']['tanevek'] = getTanevek($TOOL['tanevSelect']['tervezett']); + + if ( !isset($TOOL['tanevSelect']['paramName']) || $TOOL['tanevSelect']['paramName']=='' ) + $TOOL['tanevSelect']['paramName'] = 'tanev'; + +} + +function getSzemeszterSelect() { + + global $TOOL; + + require_once('include/modules/naplo/share/szemeszter.php'); + $TOOL['szemeszterSelect']['szemeszterek'] = getSzemeszterek($TOOL['szemeszterSelect']); + + if ( !isset($TOOL['szemeszterSelect']['paramName']) || $TOOL['szemeszterSelect']['paramName'] == '' ) + $TOOL['szemeszterSelect']['paramName'] = 'szemeszterId'; + +} + +function getTargySorrendSelect() { + + global $TOOL; + + require_once('include/modules/naplo/share/targy.php'); + if (!isset($TOOL['targySorrendSelect']['tanev'])) $TOOL['targySorrendSelect']['tanev'] = __TANEV; + $TOOL['targySorrendSelect']['sorrendNevek'] = getTargySorrendNevek($TOOL['targySorrendSelect']['tanev']); + + if ( !isset($TOOL['targySorrendSelect']['paramName']) || $TOOL['targySorrendSelect']['paramName'] == '' ) + $TOOL['targySorrendSelect']['paramName'] = 'sorrendNev'; + +} + +function getMunkakozossegSelect() { + + global $TOOL; + + if (!is_array($TOOL['munkakozossegSelect']['munkakozossegek'])) + $TOOL['munkakozossegSelect']['munkakozossegek'] = getMunkakozossegek(); + if ( !isset($TOOL['munkakozossegSelect']['paramName']) || $TOOL['munkakozossegSelect']['paramName']=='' ) + $TOOL['munkakozossegSelect']['paramName'] = 'mkId'; + +} + +function getTargySelect() { + + global $TOOL; + + if (!is_array($TOOL['targySelect']['targyak'])) + $TOOL['targySelect']['targyak'] = getTargyak(array('mkId' => $TOOL['targySelect']['mkId'])); + if ( !isset($TOOL['targySelect']['paramName']) || $TOOL['targySelect']['paramName']=='' ) + $TOOL['targySelect']['paramName'] = 'targyId'; + +} + +function getMunkatervSelect() { + + global $TOOL; + + if (!is_array($TOOL['munkatervSelect']['munkatervek'])) + $TOOL['munkatervSelect']['munkatervek'] = getMunkatervek(); + if ( !isset($TOOL['munkatervSelect']['paramName']) || $TOOL['munkatervSelect']['paramName']=='' ) + $TOOL['munkatervSelect']['paramName'] = 'munkatervId'; + +} + +function getTanarSelect() { + + global $TOOL; + + if (!is_array($TOOL['tanarSelect']['tanarok'])) { + if (!isset($TOOL['tanarSelect']['tanev']) && defined('__TANEV')) $TOOL['tanarSelect']['tanev'] = __TANEV; + if (is_array($TOOL['tanarSelect']['Param'])) $Param = $TOOL['tanarSelect']['Param']; + else $Param = array( + 'mkId' => $TOOL['tanarSelect']['mkId'], + 'tanev' => $TOOL['tanarSelect']['tanev'], + 'beDt' => $TOOL['tanarSelect']['beDt'], + 'kiDt' => $TOOL['tanarSelect']['kiDt'], + 'összes' => $TOOL['tanarSelect']['összes'], + 'override' => $TOOL['tanarSelect']['override'], + ); + $TOOL['tanarSelect']['tanarok'] = getTanarok($Param); + } + if (!isset($TOOL['tanarSelect']['paramName']) || $TOOL['tanarSelect']['paramName']=='' ) + $TOOL['tanarSelect']['paramName'] = 'tanarId'; + +} + +function getDiakSelect() { + + global $TOOL, $osztalyId; + + if (!isset($TOOL['diakSelect']['osztalyId']) && isset($osztalyId)) + $TOOL['diakSelect']['osztalyId'] = $osztalyId; + if (!is_array($TOOL['diakSelect']['diakok'])) + $TOOL['diakSelect']['diakok'] = getDiakok(array( + 'osztalyId' => $TOOL['diakSelect']['osztalyId'], + 'tanev' => $TOOL['diakSelect']['tanev'], + 'statusz' => $TOOL['diakSelect']['statusz'], + 'tolDt' => $TOOL['diakSelect']['tolDt'], + 'igDt' => $TOOL['diakSelect']['igDt'], + )); + if (!is_array($TOOL['diakSelect']['statusz'])) + $TOOL['diakSelect']['statusz'] = array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva','felvételt nyert'); + if ( !isset($TOOL['diakSelect']['paramName']) || $TOOL['diakSelect']['paramName']=='' ) + $TOOL['diakSelect']['paramName'] = 'diakId'; +} + +function getDiakLapozo() { + + global $TOOL, $osztalyId; + + if (!isset($TOOL['diakLapozo']['osztalyId']) && isset($osztalyId)) + $TOOL['diakLapozo']['osztalyId'] = $osztalyId; + if (!is_array($TOOL['diakLapozo']['diakok'])) + $TOOL['diakLapozo']['diakok'] = getDiakok(array( + 'osztalyId' => $TOOL['diakLapozo']['osztalyId'], + 'tanev' => $TOOL['diakLapozo']['tanev'], + 'statusz' => $TOOL['diakLapozo']['statusz'], + 'tolDt' => $TOOL['diakLapozo']['tolDt'], + 'igDt' => $TOOL['diakLapozo']['igDt'], + )); + if (!is_array($TOOL['diakLapozo']['statusz'])) + $TOOL['diakLapozo']['statusz'] = array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva','felvételt nyert'); + if ( !isset($TOOL['diakLapozo']['paramName']) || $TOOL['diakLapozo']['paramName']=='' ) + $TOOL['diakLapozo']['paramName'] = 'diakId'; + +} + + +function getTableSelect () { + + global $TOOL; + + $TOOL['tableSelect']['naplo'] =$TOOL['tableSelect']['naplo_intezmeny'] = array(); + if (defined('__INTEZMENY')) { + $TOOL['tableSelect']['naplo_intezmeny'] = db_query('SHOW TABLES', array('fv' => 'getTableSelect', 'modul' => 'naplo_intezmeny', 'result' => 'idonly')); + } + if (defined('__TANEV')) { + $TOOL['tableSelect']['naplo'] = + db_query('SHOW TABLES', array('fv' => 'getTableSelect', 'modul' => 'naplo', 'result' => 'idonly')); + } + if ( !isset($TOOL['tableSelect']['paramName']) || $TOOL['tableSelect']['paramName']=='' ) + $TOOL['tableSelect']['paramName'] = 'dbtable'; + +} + +function getOsztalySelect() { + + global $TOOL, $tanev; + + if (!isset($TOOL['osztalySelect']['tanev'])) { + if (isset($tanev)) $TOOL['osztalySelect']['tanev'] = $tanev; + elseif (defined('__TANEV')) $TOOL['osztalySelect']['tanev'] = __TANEV; + } + global $telephelyId; + if (!isset($TOOL['osztalySelect']['osztalyok'])) + if (isset($TOOL['osztalySelect']['tanev'])) + $TOOL['osztalySelect']['osztalyok'] = getOsztalyok($TOOL['osztalySelect']['tanev'],array('mindenOsztalyfonok'=>true, 'result'=>'indexed','telephelyId' => $telephelyId)); + else + $TOOL['osztalySelect']['osztalyok'] = array(); + + if ( !isset($TOOL['osztalySelect']['paramName']) || $TOOL['osztalySelect']['paramName']=='' ) + $TOOL['osztalySelect']['paramName'] = 'osztalyId'; + +} + +function getTanmenetSelect() { + + global $TOOL, $tanev, $tanarId, $targyId; + + if (!isset($TOOL['tanmenetSelect']['tanev'])) { + if (isset($tanev)) $TOOL['tanmenetSelect']['tanev'] = $tanev; + elseif (defined('__TANEV')) $TOOL['tanmenetSelect']['tanev'] = __TANEV; + } + + if (!isset($TOOL['tanmenetSelect']['tanmenetek'])) + if (isset($TOOL['tanmenetSelect']['tanev'])) { + if (isset($tanarId)) $TOOL['tanmenetSelect']['tanmenetek'] = getTanmenetByTanarId($tanarId, array('tanev' => $TOOL['tanmenetSelect']['tanev'])); + elseif (isset($targyId)) $TOOL['tanmenetSelect']['tanmenetek'] = getTanmenetByTargyId($targyId, array('tanev' => $TOOL['tanmenetSelect']['tanev'])); +// } else { +// $TOOL['tanmenetSelect']['tanmenetek'] = array(); + } + + if ( !isset($TOOL['tanmenetSelect']['paramName']) || $TOOL['tanmenetSelect']['paramName']=='' ) + $TOOL['tanmenetSelect']['paramName'] = 'tanmenetId'; + +} + +function getTankorSelect() { + + global $TOOL, $tanev, $mkId, $targyId, $osztalyId, $tanarId, $diakId; + + // Tanév beállítás: paraméter, globális változó, konstans + if (!isset($TOOL['tankorSelect']['tanev'])) { + if (isset($tanev)) $TOOL['tankorSelect']['tanev'] = $tanev; + elseif (defined('__TANEV')) $TOOL['tankorSelect']['tanev'] = __TANEV; + } + $tolDt=$TOOL['tankorSelect']['tolDt']; + $igDt=$TOOL['tankorSelect']['igDt']; + + // Paraméter neve + if ( !isset($TOOL['tankorSelect']['paramName']) || $TOOL['tankorSelect']['paramName']=='' ) + $TOOL['tankorSelect']['paramName'] = 'tankorId'; + + // tankörök lekérdezése - ha még nem történt meg + if (!is_array($TOOL['tankorSelect']['tankorok'])) { + if (isset($diakId) && $diakId!='') { // diák tankörei + $TOOL['tankorSelect']['tankorok'] = getTankorByDiakId($diakId, $TOOL['tankorSelect']['tanev'], array('tolDt'=>$tolDt, 'igDt'=>$igDt)); + } elseif (isset($osztalyId) && $osztalyId!='') { // osztály tankörei + $TOOL['tankorSelect']['tankorok'] = getTankorByOsztalyId($osztalyId, $TOOL['tankorSelect']['tanev'], array('tolDt'=>$tolDt, 'igDt'=>$igDt)); + } elseif (isset($tanarId) && $tanarId!='') { // tanár tankörei + $TOOL['tankorSelect']['tankorok'] = getTankorByTanarId($tanarId, $TOOL['tankorSelect']['tanev'], array('tolDt'=>$tolDt, 'igDt'=>$igDt)); + } else { // általános tankörlekérdző + $WHERE = array(); + if (isset($targyId) && $targyId != '') { // leszűkítés adott tárgyra + $WHERE[] = 'targyId='.$targyId; + } elseif (isset($mkId) && $mkId != '') { // leszűkítés adott munkaközösségre + $TARGYAK = getTargyakByMkId($mkId); + for ($i = 0; $i < count($TARGYAK); $i++) $T[] = $TARGYAK[$i]['targyId']; + if (count($T) > 0) $WHERE[] = 'targyId IN ('.implode(',', $T).')'; + } + + if (isset($TOOL['tankorSelect']['tanev'])) // szűkítés adott tanévre + $WHERE[] = 'tankorSzemeszter.tanev='.$TOOL['tankorSelect']['tanev']; + + $TOOL['tankorSelect']['tankorok'] = getTankorok($WHERE); + } + } else { + // A megadott tankörök csoportosításához + if (!is_array($TOOL['tankorSelect']['tankorIds'])) { + if (isset($diakId) && $diakId != '') { // diák tankörei + $TOOL['tankorSelect']['tankorIds'] = getTankorByDiakId($diakId, $TOOL['tankorSelect']['tanev'],array('csakId' => true, 'tolDt'=>$tolDt, 'igDt'=>$igDt )); + } elseif (isset($osztalyId) && $osztalyId != '') { // osztály tankörei + $TOOL['tankorSelect']['tankorIds'] = getTankorByOsztalyId($osztalyId, $TOOL['tankorSelect']['tanev'], array('csakId' => true, 'tolDt'=>$tolDt, 'igDt'=>$igDt)); + } elseif (isset($tanarId) && $tanarId != '') { // tanár tankörei + $TOOL['tankorSelect']['tankorIds'] = getTankorByTanarId($tanarId, $TOOL['tankorSelect']['tanev'], array('csakId' => true,'tolDt'=>$tolDt, 'igDt'=>$igDt)); + } + } + } + if ($tolDt!='' || $igDt!='') + $TOOL['tankorSelect']['tankorIdsDt'] = $tolDt.'-'.$igDt; + +} + +function getDatumSelect() { + + global $TOOL, $tanev; + + if (isset($tanev)) $TOOL['datumSelect']['tanev'] = $tanev; + elseif (defined('__TANEV')) $TOOL['datumSelect']['tanev'] = __TANEV; + + if ( + (is_array($TOOL['datumSelect']['napTipusok']) || isset($TOOL['datumSelect']['napokSzama'])) + && !is_array($TOOL['datumSelect']['napok']) + ) { + $TOOL['datumSelect']['napok'] = getNapok( + array( + 'tanev' => $TOOL['datumSelect']['tanev'], + 'tolDt' => $TOOL['datumSelect']['tolDt'], + 'igDt' => $TOOL['datumSelect']['igDt'], + 'tipus' => $TOOL['datumSelect']['napTipusok'], + 'napokSzama' => $TOOL['datumSelect']['napokSzama'], + ) + ); + } else { + + $tolDt = $TOOL['datumSelect']['tolDt']; $igDt = $TOOL['datumSelect']['igDt']; + initTolIgDt($TOOL['datumSelect']['tanev'], $tolDt, $igDt, $TOOL['datumSelect']['override']); + $TOOL['datumSelect']['tolDt'] = $tolDt; $TOOL['datumSelect']['igDt'] = $igDt; + + if (!isset($TOOL['datumSelect']['hanyNaponta']) || $TOOL['datumSelect']['hanyNaponta']=='' ) + $TOOL['datumSelect']['hanyNaponta'] = 1; + + }; + + if (!isset($TOOL['datumSelect']['paramName']) || $TOOL['datumSelect']['paramName']=='' ) + $TOOL['datumSelect']['paramName'] = 'dt'; +} + +function getDatumTolIgSelect() { + + global $TOOL, $tanev; + + if (isset($tanev)) $TOOL['datumTolIgSelect']['tanev'] = $tanev; + elseif (defined('__TANEV')) $TOOL['datumTolIgSelect']['tanev'] = __TANEV; + + if ( + (is_array($TOOL['datumTolIgSelect']['napTipusok']) || isset($TOOL['datumTolIgSelect']['napokSzama'])) + && !is_array($TOOL['datumTolIgSelect']['napok']) + ) { + $TOOL['datumTolIgSelect']['napok'] = getNapok( + array( + 'tanev' => $TOOL['datumTolIgSelect']['tanev'], + 'tolDt' => $TOOL['datumTolIgSelect']['tolDt'], + 'igDt' => $TOOL['datumTolIgSelect']['igDt'], + 'tipus' => $TOOL['datumTolIgSelect']['napTipusok'], + 'napokSzama' => $TOOL['datumTolIgSelect']['napokSzama'], + ) + ); + } else { + $tolDt = $TOOL['datumTolIgSelect']['tolDt']; $igDt = $TOOL['datumTolIgSelect']['igDt']; + initTolIgDt($TOOL['datumTolIgSelect']['tanev'], $tolDt, $igDt, $TOOL['datumTolIgSelect']['override']); + $TOOL['datumTolIgSelect']['tolDt'] = $tolDt; $TOOL['datumTolIgSelect']['igDt'] = $igDt; + + if (!isset($TOOL['datumTolIgSelect']['hanyNaponta']) || $TOOL['datumTolIgSelect']['hanyNaponta']=='' ) + $TOOL['datumTolIgSelect']['hanyNaponta'] = 1; + + }; + + if (!isset($TOOL['datumTolIgSelect']['tolParamName']) || $TOOL['datumTolIgSelect']['tolParamName']=='' ) + $TOOL['datumTolIgSelect']['tolParamName'] = 'tolDt'; + if (!isset($TOOL['datumTolIgSelect']['igParamName']) || $TOOL['datumTolIgSelect']['igParamName']=='' ) + $TOOL['datumTolIgSelect']['igParamName'] = 'igDt'; + +} + +function getOraSelect() { + + global $TOOL, $tanev; + + if (!isset($TOOL['oraSelect']['tol']) || $TOOL['oraSelect']['tol'] == '' ) + $TOOL['oraSelect']['tol'] = getMinOra(); + if (!isset($TOOL['oraSelect']['ig']) || $TOOL['oraSelect']['ig'] == '' ) + $TOOL['oraSelect']['ig'] = getMaxOra(); + + if (!isset($TOOL['oraSelect']['paramName']) || $TOOL['oraSelect']['paramName']=='' ) + $TOOL['oraSelect']['paramName'] = 'ora'; + +} + +function getTeremSelect() { + + global $TOOL; + + $telephelyId = $TOOL['teremSelect']['telephelyId']; + if (!is_array($TOOL['teremSelect']['termek'])) $TOOL['teremSelect']['termek'] = getTermek(array('telephelyId' => $telephelyId)); + if (!isset($TOOL['teremSelect']['paramName']) || $TOOL['teremSelect']['paramName']=='' ) + $TOOL['teremSelect']['paramName'] = 'teremId'; + +} + +function getKepzesSelect() { + + global $TOOL; + + $TOOL['kepzesSelect']['kepzes'] = getKepzesek(); + if (!is_array($TOOL['kepzesSelect']['kepzes']) || count($TOOL['kepzesSelect']['kepzes']) == 0) { + unset($TOOL['kepzesSelect']); + } else { + if ( !isset($TOOL['kepzesSelect']['paramName']) || $TOOL['kepzesSelect']['paramName'] == '' ) + $TOOL['kepzesSelect']['paramName'] = 'kepzesId'; + } +} + +function getKerdoivSelect() { + + global $TOOL; + + if (!is_array($TOOL['kerdoivSelect']['kerdoiv'])) $TOOL['kerdoivSelect']['kerdoiv'] = getKerdoiv(); + if ( !isset($TOOL['kerdoivSelect']['paramName']) || $TOOL['kerdoivSelect']['paramName'] == '' ) + $TOOL['kerdoivSelect']['paramName'] = 'kerdoivId'; + +} + +function getSzuloSelect() { + + global $TOOL; + + $TOOL['szuloSelect']['szulo'] = getSzulok(array('result' => 'indexed')); + if (!is_array($TOOL['szuloSelect']['szulo']) || count($TOOL['szuloSelect']['szulo']) == 0) { + unset($TOOL['szuloSelect']); + } else { + if ( !isset($TOOL['szuloSelect']['paramName']) || $TOOL['szuloSelect']['paramName'] == '' ) + $TOOL['szuloSelect']['paramName'] = 'szuloId'; + } +} + + +/* TANEV FÜGGŐK */ + +function getOrarendiHetSelect() { + + global $TOOL; + $TOOL['orarendiHetSelect']['hetek'] = getOrarendiHetek($TOOL['orarendiHetSelect']); // tolDt, igDt, tanev + if ( !isset($TOOL['orarendiHetSelect']['paramName']) || $TOOL['orarendiHetSelect']['paramName']=='' ) + $TOOL['orarendiHetSelect']['paramName'] = 'het'; + +} + +function getTanarOraLapozo() { + + global $TOOL; + global $tanarId,$tolDt,$igDt,$oraId; + $_X = $TOOL['tanarOraLapozo']['orak'] = getTanarOrak( + $tanarId,array('tolDt' => $tolDt, 'igDt' => $igDt, 'tipus' => array('normál','normál máskor','helyettesítés','felügyelet','összevonás')) + ); + for ($i = 0; $i < count($_X); $i++) { + if ($_X[$i]['oraId'] == $oraId) { + $TOOL['tanarOraLapozo']['oraAdat'] = $_X[$i]; + if (is_array($_X[($i-1)])) $TOOL['tanarOraLapozo']['elozo'] = $_X[$i-1]; + if (is_array($_X[($i+1)])) $TOOL['tanarOraLapozo']['kovetkezo'] = $_X[$i+1]; + break; + } + } + if ( !isset($TOOL['tanarOraLapozo']['paramName']) || $TOOL['tanarOraLapozo']['paramName']=='' ) + $TOOL['tanarOraLapozo']['paramName'] = 'oraId'; + +} + +function getIgazolasOsszegzo() { + + global $TOOL; + global $diakId; + global $_TANEV; + if ($diakId!='') { + $TOOL['igazolasOsszegzo']['igazolasok'] = getIgazolasSzam($diakId); + $_T = getDiakHianyzasOsszesites(array($diakId),$_TANEV); + $TOOL['igazolasOsszegzo']['hianyzasok'] = $_T[$diakId]; + $TOOL['kretaIgazolasOsszegzo'] = getKretaIgazolasOsszegzo($diakId); + } + +} + +function getZaradekSelect() { + + global $TOOL; + + if (!is_array($TOOL['zaradekSelect']['zaradekok'])) $TOOL['zaradekSelect']['zaradekok'] = getZaradekok(); + + if (!isset($TOOL['zaradekSelect']['paramName']) || $TOOL['zaradekSelect']['paramName']=='' ) + $TOOL['zaradekSelect']['paramName'] = 'zaradekIndex'; + +} + +function getKerelemStat() { + global $TOOL; + //$TOOL['kerelemStat']['stat'] = getKerelemOsszesito(); +} + +//function getTelephelySelect() { +// global $TOOL; +// if (!is_array($TOOL['telephelySelect']['telephelyek'])) { +// $TOOL['telephelySelect']['telephelyek'] = getTelephely(); +// } +// +//} + +function getVissza() { + global $TOOL; + if ($TOOL['vissza']['icon']=='') { $TOOL['vissza']['icon'] = 'arrow-left'; } // default, egyelőre csak a 'vissza' típusnál használjuk +} + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/base/update.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/update.php new file mode 100644 index 00000000..02bcf0e8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/update.php @@ -0,0 +1,86 @@ + $bejegyzesTipusNev) { + if ($fokozat > 0) { + // Ki jogosult beírni + $jogosult = array('admin'); + if (in_array(mb_substr($bejegyzesTipusNev, 0, 9, 'UTF-8'), array('igazgatói', 'nevelőtes'))) $jogosult[] = 'vezetőség'; + if (mb_substr($bejegyzesTipusNev, 0, 13, 'UTF-8') == 'osztályfőnöki') $jogosult[] = 'osztályfőnök'; + if (mb_substr($bejegyzesTipusNev, 0, 10, 'UTF-8') == 'szaktanári') $jogosult[] = 'szaktanár'; + // frissítés + $q = "UPDATE `bejegyzesTipus` SET `bejegyzesTipusNev`='%s', `jogosult`='".implode(',', $jogosult)."' WHERE `tipus`='fegyelmi' AND `fokozat`='%s'"; + $v = array($bejegyzesTipusNev, $fokozat); + $r = db_query($q, array('fv' => 'update002483/fegyelmi','modul' => 'naplo_intezmeny','values' => $v, 'rollback' => true), $lr); + if (!$r) { + db_close($lr); + return false; + } + } + } + // A dicséret fokozatok neveinek beállítása + foreach ($DICSERET_FOKOZATOK as $fokozat => $bejegyzesTipusNev) { + if ($fokozat > 0) { + // Ki jogosult beírni + $jogosult = array('admin'); + if (in_array(mb_substr($bejegyzesTipusNev, 0, 9, 'UTF-8'), array('igazgatói', 'nevelőtes'))) $jogosult[] = 'vezetőség'; + if (mb_substr($bejegyzesTipusNev, 0, 13, 'UTF-8') == 'osztályfőnöki') $jogosult[] = 'osztályfőnök'; + if (mb_substr($bejegyzesTipusNev, 0, 10, 'UTF-8') == 'szaktanári') $jogosult[] = 'szaktanár'; + // frissítés + $q = "UPDATE `bejegyzesTipus` SET `bejegyzesTipusNev`='%s', `jogosult`='".implode(',', $jogosult)."' WHERE `tipus`='dicseret' AND `fokozat`='%s'"; + $v = array($bejegyzesTipusNev, $fokozat); + $r = db_query($q, array('fv' => 'update002483/dicseret','modul' => 'naplo_intezmeny','values' => $v, 'rollback' => true), $lr); + if (!$r) { + db_close($lr); + return false; + } + } + } + // Az adott számú igazolatlan hiűnyzáshoz rendelt fegyelmi fokozatok eltárolása + foreach ($HIANYZASI_FOKOZATOK as $hianyzasDb => $fokozat) { + if ($fokozat > 0) { + $q = "UPDATE `bejegyzesTipus` SET `hianyzasDb`=%u WHERE `tipus`='fegyelmi' AND `fokozat`='%s'"; + $v = array($hianyzasDb, $fokozat); + $r = db_query($q, array('fv' => 'update002483/hianyzas','modul' => 'naplo_intezmeny','values' => $v, 'rollback' => true), $lr); + if (!$r) { + db_close($lr); + return false; + } + } + } + // A felesleges fegyelmi és dicséret fokozatok törlése (20-20 fokozat volt felvéve) + $q = "DELETE FROM `bejegyzesTipus` WHERE `bejegyzesTipusNev` IS NULL"; + $r = db_query($q, array('fv' => 'update002483/delete','modul' => 'naplo_intezmeny', 'rollback' => true), $lr); + + if ($r) db_commit($lr); + db_close($lr); + + $fp = fopen($lock,'w'); + fwrite($fp, 'PHP update 002483 done.'); + fclose($fp); + } + } +*/ + + +// update002483(); + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/base/zcheck.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/zcheck.php new file mode 100644 index 00000000..38c03a11 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/base/zcheck.php @@ -0,0 +1,100 @@ +0) define('__UZENOSZEREP','szulo'); + elseif (__DIAK===true && defined('__USERDIAKID') && intval(__USERDIAKID)>0) define('__UZENOSZEREP','diak'); + elseif (__UZENOADMIN===true) define('__UZENOSZEREP','admin'); + else define('__UZENOSZEREP',''); + + if (count($KERELEM_TAG) ==0) $KERELEM_TAG = array('névsor','jogviszony','órarend, haladási','hiányzás, igazolás','jegy, zárójegy'); + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/bejegyzesek/bejegyzesTipus.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/bejegyzesek/bejegyzesTipus.php new file mode 100644 index 00000000..cf2fd2fd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/bejegyzesek/bejegyzesTipus.php @@ -0,0 +1,87 @@ +'getBejegyzesek','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'multiassoc','keyfield'=>'tipus')); + + } + + function jogosultValtoztatas($btId, $jogosult) { + + $q = "UPDATE bejegyzesTipus SET jogosult='%s' WHERE bejegyzesTipusId=%u"; + $v = array(implode(',',$jogosult), $btId); + return db_query($q, array('fv' => 'jogosultValtoztatas', 'modul'=>'naplo_intezmeny', 'values'=>$v)); + + } + + + function bejegyzesTipusModositas($btId, $btAdat, $dt) { + $B = getBejegyzesTipusById($btId); + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + if ($B['tolDt'] != $dt) { + // A korábbi bejegyzesTipus lemásolása + foreach ($btAdat as $key => $value) { $B[$key] = $value; } + $q = "INSERT INTO bejegyzesTipus (tipus, fokozat, bejegyzesTipusNev, hianyzasDb, jogosult, tolDt, igDt) VALUES "; + if ($igDt == NULL) { + $q .= "('%s',%u,'%s',%u,'%s','%s',NULL)"; + $v = array($B['tipus'], $B['fokozat'], $B['bejegyzesTipusNev'], $B['hianyzasDb'], implode(',',$B['jogosult']), $dt); + } else { + $q .= "('%s',%u,'%s',%u,'%s','%s','%s')"; + $v = array($B['tipus'], $B['fokozat'], $B['bejegyzesTipusNev'], $B['hianyzasDb'], implode(',',$B['jogosult']), $dt, $B['igDt']); + } + $bejegyzesTipusId = db_query($q, array('fv'=>'bejegyzesTipusModositas/insert','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'insert'),$lr); + if (!$bejegyzesTipusId) { db_rollback($lr); db_close($lr); return false; } + // A korábbi bejegyzesTipus lezárása a megelőző nap dátumával + $q = "UPDATE bejegyzesTipus SET igDt = '%s' - INTERVAL 1 DAY WHERE bejegyzesTipusId=%u"; + $v = array($dt, $btId); + $r = db_query($q, array('fv'=>'bejegyzesTipusModositas/lezar','modul'=>'naplo_intezmeny','values'=>$v),$lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } else { + // A meglévő bejegyzesTipus módosítása + $q = "UPDATE bejegyzesTipus SET bejegyzesTipusNev='%s', hianyzasDb=%u, jogosult='%s' WHERE bejegyzesTipusId=%u"; + $v = array($btAdat['bejegyzesTipusNev'], $btAdat['hianyzasDb'], implode(',', $btAdat['jogosult']), $btId); + $r = db_query($q, array('fv'=>'bejegyzesTipusModositas/lezar','modul'=>'naplo_intezmeny','values'=>$v),$lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } + db_commit($lr); + db_close($lr); + return true; + } + + function fokozatTorles($tipus, $dt) { + $q ="SELECT bejegyzesTipusId FROM bejegyzesTipus WHERE tipus='%s' AND tolDt<='%s' AND (igDt IS NULL OR '%s'<=igDt) ORDER BY fokozat DESC LIMIT 1"; + $v = array($tipus, $dt, $dt); + $id = db_query($q, array('fv'=>'fokozatTorles/id','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'value')); + + $q = "UPDATE bejegyzesTipus SET igDt = '%s' - INTERVAL 1 DAY WHERE bejegyzesTipusId=%u"; + $v = array($dt, $id); + return db_query($q, array('fv'=>'fokozatTorles/update','modul'=>'naplo_intezmeny','values'=>$v)); + } + + function ujFokozat($tipus, $dt) { + $q ="SELECT max(fokozat) FROM bejegyzesTipus WHERE tipus='%s' AND tolDt<='%s' AND (igDt IS NULL OR '%s'<=igDt)"; + $v = array($tipus, $dt, $dt); + $fokozat = db_query($q, array('fv'=>'ujFokozat/fokozat','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'value')); + $fokozat++; + + // van-e ilyen fokozat későbbi dátummal? + $q = "SELECT tolDt FROM bejegyzesTipus WHERE tipus='%s' AND fokozat=%u AND tolDt>'%s' ORDER BY tolDt LIMIT 1"; + $v = array($tipus, $fokozat, $dt); + $tolDt = db_query($q, array('fv'=>'ujFokozat/tolDt','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'value')); + + if ($tolDt == NULL) { + $q = "INSERT INTO bejegyzesTipus (tipus, fokozat, bejegyzesTipusNev, hianyzasDb, jogosult, tolDt, igDt) VALUES ('%s', %u,'%s',NULL, 'admin','%s',NULL)"; + $v = array($tipus, $fokozat, $tipus.' fokozat', $dt); + } else { + $q = "INSERT INTO bejegyzesTipus (tipus, fokozat, bejegyzesTipusNev, hianyzasDb, jogosult, tolDt, igDt) VALUES ('%s', %u,'%s',NULL, 'admin','%s', '%s' - INTERVAL 1 DAY)"; + $v = array($tipus, $fokozat, $tipus.' fokozat', $dt, $tolDt); + } + return db_query($q, array('fv'=>'ujFokozat/insert','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'insert')); + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/bejegyzesek/bejegyzesek.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/bejegyzesek/bejegyzesek.php new file mode 100644 index 00000000..97ab45de --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/bejegyzesek/bejegyzesek.php @@ -0,0 +1,74 @@ + 'getBejegyzesLista', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($tanarId))); + for ($i = 0; $i < count($BEJEGYZESEK); $i++) + if ($BEJEGYZESEK[$i]['tanarId'] != '') $BEJEGYZESEK[$i]['tanarNev'] = getTanarNevById($BEJEGYZESEK[$i]['tanarId']); + + return $BEJEGYZESEK; + + } + // ok + function getBejegyzesLista($diakId) { + + $q = "SELECT * FROM bejegyzes LEFT JOIN `".__INTEZMENYDBNEV."`.`bejegyzesTipus` USING (bejegyzesTipusId) WHERE diakId=%u ORDER BY tipus,beirasDt"; + + $BEJEGYZESEK = db_query($q, array('fv' => 'getBejegyzesLista', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($diakId))); + for ($i = 0; $i < count($BEJEGYZESEK); $i++) + if ($BEJEGYZESEK[$i]['tanarId'] != '') $BEJEGYZESEK[$i]['tanarNev'] = getTanarNevById($BEJEGYZESEK[$i]['tanarId']); + + return $BEJEGYZESEK; + + } + // ok + function getBejegyzesekByDiakIds($diakIds, $orderBy = 'diakId,tipus,beirasDt') { + + $q = "SELECT * FROM bejegyzes LEFT JOIN `".__INTEZMENYDBNEV."`.`bejegyzesTipus` USING (bejegyzesTipusId) + WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") ORDER BY $orderBy"; + + $BEJEGYZESEK = db_query($q, array( + 'fv' => 'getBejegyzesekByDiakIds', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'diakId', 'values' => $diakIds + )); + foreach ($BEJEGYZESEK as $diakId => $BADAT) + for ($i = 0; $i < count($BADAT); $i++) + if ($BADAT[$i]['tanarId'] != '') + $BEJEGYZESEK[$diakId][$i]['tanarNev'] = getTanarNevById($BADAT[$diakId][$i]['tanarId']); + + return $BEJEGYZESEK; + + } + // ok + function delBejegyzes($bejegyzesId) { + + + $torolheto = false; + if (__NAPLOADMIN) { + $torolheto = true; + } elseif (__TANAR) { + $q = "SELECT tanarId FROM bejegyzes WHERE bejegyzesId=%u"; + $tanarId = db_query($q, array('fv' => 'delBejegyzes/check tanar', 'modul' => 'naplo', 'result' => 'value', 'values' => array($bejegyzesId))); + if (__USERTANARID == $tanarId) $torolheto = true; + } + if ($torolheto) { + $q = "DELETE FROM bejegyzes WHERE bejegyzesId=%u"; + db_query($q, array('fv' => 'delBejegyzes', 'modul' => 'naplo', 'values' => array($bejegyzesId))); + } else { + $_SESSION['alert'][] = 'message:insufficient_access:delBejegyzes'; + } + } + + function getBejegyzesAdatById($bejegyzesId) { + + $q = "SELECT * FROM bejegyzes LEFT JOIN `".__INTEZMENYDBNEV."`.`bejegyzesTipus` USING (bejegyzesTipusId) WHERE bejegyzesId=%u"; + return db_query($q, array('fv' => 'getBejegyzesAdatById', 'modul' => 'naplo', 'result' => 'record', 'values' => array($bejegyzesId))); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/diakValaszto.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/diakValaszto.php new file mode 100644 index 00000000..e3a2f6b4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/diakValaszto.php @@ -0,0 +1,10 @@ + 'updateSessionOid', 'modul' => 'naplo_base', 'values' => array($parentDiakId))); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/ertekeles/kerdoivBetoltes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/ertekeles/kerdoivBetoltes.php new file mode 100644 index 00000000..811f27fe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/ertekeles/kerdoivBetoltes.php @@ -0,0 +1,81 @@ + 'ujKerdoiv', 'modul' => 'naplo', 'result' => 'insert', 'values' => $v), $lr); + + } + + function kerdesValaszFelvetel($ADAT) { + $kerdoivId = $ADAT['kerdoivId']; + $kerdes = ''; + for ($i = 0; $i < count($ADAT['txt']); $i++) { + if (trim($ADAT['txt'][$i]) != '') { + if ($kerdes == '') { + $kerdes = chop(readVariable($ADAT['txt'][$i], 'string')); + $q = "INSERT INTO kerdoivKerdes (kerdoivId, kerdes) VALUES (%u, '%s')"; + $v = array($kerdoivId, $kerdes); + $kerdesId = db_query($q, array('fv' => 'kerdesValaszFelvetel/kerdes', 'modul' => 'naplo', 'result' => 'insert', 'values' => $v), $lr); + } else { + $mezok = explode('|', chop(readVariable($ADAT['txt'][$i],'string'))); + if (count($mezok) == 1) { + $valasz = $mezok[0]; + $pont = 0; + } else { + $valasz = $mezok[1]; + $pont = $mezok[0]; + } + $q = "INSERT INTO kerdoivValasz (kerdesId, valasz, pont) VALUES (%u, '%s', %d)"; + $v = array($kerdesId, $valasz, $pont); + db_query($q, array('fv' => 'kerdesValaszFeltoltes/valasz', 'modul' => 'naplo', 'values' => $v), $lr); + } + } else { + $kerdes = ''; + } + } + } + + function kerdoivCimzettFelvetel($kerdoivId, $cimzettId, $cimzettTipus) { + // kerdoivCimzett + $q = "INSERT INTO kerdoivCimzett (kerdoivId,cimzettId,cimzettTipus) VALUES (%u, %u, '%s')"; + $v = array($kerdoivId, $cimzettId, $cimzettTipus); + db_query($q, array('fv' => 'kerdoivCimzett - cimzett', 'modul' => 'naplo', 'values' => $v)); + // kerdoivValaszSzam + $q = "INSERT INTO kerdoivValaszSzam (valaszId,cimzettId,cimzettTipus,szavazat) + SELECT valaszId, %u, '%s', 0 FROM kerdoivValasz LEFT JOIN kerdoivKerdes USING (kerdesId) WHERE kerdoivId=%u"; + $v = array($cimzettId, $cimzettTipus, $kerdoivId); + return db_query($q, array('fv' => 'kerdoivCimzett - valaszSzam', 'modul' => 'naplo', 'values' => $v)); + + } + + function kerdoivCimzettTorles($kerdoivId, $cimzettId, $cimzettTipus) { + $return = true; + $lr = db_connect('naplo'); + db_start_trans($lr); + // kerdoivCimzett + $q = "DELETE FROM kerdoivCimzett WHERE kerdoivId=%u AND cimzettId=%u AND cimzettTipus='%s'"; + $v = array($kerdoivId, $cimzettId, $cimzettTipus); + $return = $return && db_query($q, array('fv' => 'kerdoivCimzettTorles - cimzett', 'modul' => 'naplo', 'values' => $v), $lr); + // kerdoivMegvalaszoltKerdes + $q = "DELETE FROM kerdoivMegvalaszoltKerdes WHERE cimzettId=%u AND cimzettTipus='%s' AND kerdesId IN + (SELECT kerdesId FROM kerdoivKerdes WHERE kerdoivId=%u)"; + $v = array($cimzettId, $cimzettTipus, $kerdoivId); + $return = $return && db_query($q, array('fv' => 'kerdoivCimzettTorles - cimzett', 'modul' => 'naplo', 'values' => $v), $lr); + // kerdoivValaszSzam + $q = "DELETE FROM kerdoivValaszSzam WHERE cimzettId=%u AND cimzettTipus='%s' AND valaszId IN + (SELECT valaszId FROM kerdoivValasz LEFT JOIN kerdoivKerdes USING (kerdesId) WHERE kerdoivId=%u)"; + $v = array($cimzettId, $cimzettTipus, $kerdoivId); + $return = $return && db_query($q, array('fv' => 'kerdoivCimzettTorles - valaszSzam', 'modul' => 'naplo', 'values' => $v), $lr); + + if ($return) db_commit($lr); + else db_rollback($lr); + + db_close($lr); + return $return; + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/ertekeles/osszesites.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/ertekeles/osszesites.php new file mode 100644 index 00000000..a57dc671 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/ertekeles/osszesites.php @@ -0,0 +1,57 @@ + 'getKerdoivStat', 'db' => 'naplo')); + + // A kérdőív kérdései + $q = "SELECT * FROM kerdoivKerdes WHERE kerdoivId=$kerdoivId ORDER BY kerdesId"; + $ret['kerdes'] = _m_y_query($q, array('fv' => 'getKerdoivStat/kerdes', 'db' => 'naplo')); + + // A kérdőív válaszai + $ret['valaszIds'] = array(); + for ($i = 0; $i < count($ret['kerdes']); $i++) { + $q = "SELECT * FROM kerdoivValasz WHERE kerdesId=".$ret['kerdes'][$i]['kerdesId']." ORDER BY valaszId"; + $ret['kerdes'][$i]['valasz'] = _m_y_query($q, array('fv' => 'getKerdoivStat/valasz', 'db' => 'naplo')); + for ($j = 0; $j < count($ret['kerdes'][$i]['valasz']); $j++) $ret['valaszIds'][] = $ret['kerdes'][$i]['valasz'][$j]['valaszId']; + } + + // A kérdőív címzettjei + $q = "SELECT * FROM kerdoivCimzett WHERE kerdoivId=$kerdoivId"; + $ret['cimzett'] = _m_y_multiassoc_query($q, 'cimzettTipus', array('fv' => 'getKerdoivStat/cimzett', 'db' => 'naplo')); + // A tankör típusú címzettek tanára(i) + $ret['tanarNev'] = array(); + if (is_array($ret['cimzett']['tankor']) && count($ret['cimzett']['tankor']) > 0) { + for ($i = 0; $i < count($ret['cimzett']['tankor']); $i++) { + $tankorId = $ret['cimzett']['tankor'][$i]['cimzettId']; + $tanarIds = getTankorTanaraiByInterval( + $tankorId, array('tanev' => __TANEV, 'tolDt' => $ret['kerdes']['tolDt'], 'igDt' => $ret['kerdes']['igDt'], 'result' => 'csakId') + ); + for ($j = 0; $j < count($tanarIds); $j++) { + $ret['tanarTankorei'][$tanarIds[$j]][] = $tankorId; + if (!isset($ret['tanarNev'][ $tanarIds[$j] ])) $ret['tanarNev'][ $tanarIds[$j] ] = getTanarNevById($tanarIds[$j]); + } + } + } + + $q = "SELECT * FROM kerdoivValaszSzam WHERE valaszId IN (".implode(',', $ret['valaszIds']).") ORDER BY cimzettTipus,cimzettId,valaszId"; + $tmp = _m_y_query($q, array('fv' => 'getKerdoivStat/szavazat', 'db' => 'naplo')); + for ($i = 0; $i < count($tmp); $i++) + $ret['szavazat'][ $tmp[$i]['cimzettTipus'] ][ $tmp[$i]['cimzettId'] ][ $tmp[$i]['valaszId'] ] = $tmp[$i]['szavazat']; + + $tmp = getTankorok(array("tanev=".__TANEV)); + for ($i = 0; $i < count($tmp); $i++) { + $ret['tankorAdat'][ $tmp[$i]['tankorId'] ] = $tmp[$i]; + $ret['tankorAdat'][ $tmp[$i]['tankorId'] ]['letszam'] = getTankorLetszam($tmp[$i]['tankorId'], array('refDt' => $_TANEV['zarasDt'])); + } + return $ret; + + } +*/ + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/export/bizonyitvany.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/bizonyitvany.php new file mode 100644 index 00000000..2f7c27a1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/bizonyitvany.php @@ -0,0 +1,88 @@ + $targyAdat) { + $EXPORT[0][] = 'targy'.($i+1).'_nev'; + $EXPORT[0][] = 'targy'.($i+1).'_oraszam'; + $EXPORT[0][] = 'targy'.($i+1).'_jegy'; + } + + // adatok + foreach ($ADAT['diakIds'] as $diakId) { + $ADAT['evesOraszam'][$diakId] = getTargyOraszamByDiakId($diakId, $ADAT); + $SOR = array(); + // -- diák adatok + foreach ($ADAT['diakAttrs'] as $attr) $SOR[] = $ADAT['diakAdat'][$diakId][$attr]; + if (true) { + $SOR[] = $ADAT['hianyzas'][$diakId]["igazolt"]; + $SOR[] = $ADAT['hianyzas'][$diakId]["igazolatlan"]; + $SOR[] = $ADAT['hianyzas'][$diakId]["kesesPercOsszeg"]; + $SOR[] = $ADAT['hianyzas'][$diakId]["gyakorlatIgazolt"]; + $SOR[] = $ADAT['hianyzas'][$diakId]["gyakorlatIgazolatlan"]; + $SOR[] = $ADAT['hianyzas'][$diakId]["gyakorlatKesesPercOsszeg"]; + $SOR[] = $ADAT['hianyzas'][$diakId]["elmeletIgazolt"]; + $SOR[] = $ADAT['hianyzas'][$diakId]["elmeletIgazolatlan"]; + $SOR[] = $ADAT['hianyzas'][$diakId]["elmeletKesesPercOsszeg"]; + } + // -- jegyek + foreach ($ADAT['targyak'] as $i => $targyAdat) { + $jegy = $ADAT['jegyek'][$diakId][ $targyAdat['targyId'] ][0]; + $SOR[] = $targyAdat['targyNev']; + $SOR[] = $ADAT['evesOraszam'][$diakId][ $targyAdat['targyId'] ]; + $SOR[] = $KOVETELMENY[ $jegy['jegyTipus'] ][ $jegy['jegy'] ]['hivatalos']; + } + + $EXPORT[] = $SOR; + } + + if ($ADAT['formatum'] == 'xml') return generateXLS("$file.${ADAT['formatum']}", $EXPORT, 'bizonyítvány'); + elseif ($ADAT['formatum'] == 'csv') return generateCSV("$file.${ADAT['formatum']}", $EXPORT, 'bizonyítvány'); + elseif ($ADAT['formatum'] == 'ods') return generateODS("$file.${ADAT['formatum']}", $EXPORT, 'bizonyítvány'); + else return false; + + } + + function getTargyOraszamByDiakId($diakId, $ADAT) { + + $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, $ADAT['szemeszterAdat']['tanev'], $ADAT['szemeszterAdat']['zarasDt'], $ADAT['szemeszterAdat']['zarasDt']); + $jres = db_query($q, array( + 'fv' => 'getTargyOraszamByDiakId', '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; + // itt mindenképp van osztalyId - ha nem adunk meg 'vegzos' paramétert, úgy az osztály alapján veszi... + $ret[$targyId] = $oraszam / $szDb * getTanitasiHetekSzama(array('osztalyId'=>$ADAT['osztalyId']/* ,'vegzos'=>diakVegzosE($diakId) */)); + } + return $ret; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/export/diakExport.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/diakExport.php new file mode 100644 index 00000000..3114d7a9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/diakExport.php @@ -0,0 +1,144 @@ + array( + 'oId','viseltCsaladinev','viseltUtonev','szuletesiIdo','szuletesiHely','nem', + 'lakhelyIrsz','lakhelyHelyseg','lakhelyKozteruletNev','lakhelyKozteruletJelleg','lakhelyHazszam','lakhelyEmelet','lakhelyAjto','telefon'), + 'egyszerű' => array('viseltCsaladinev','viseltUtonev','diakigazolvanySzam','diakNaploSorszam'), + 'osztályfőnöki' => array('diakigazolvanySzam','viseltCsaladinev','viseltUtonev','oId','diakNaploSorszam','telefon','mobil','email'), + 'taninformTanuló' => array('oId','diakigazolvanySzam','viseltNevElotag','viseltCsaladinev','viseltUtonev','szuleteskoriNevElotag', + 'szuleteskoriCsaladinev','szuleteskoriUtonev','szuletesiHely','szuletesiIdo','anyaSzuleteskoriNevElotag','anyaSzuleteskoriCsaladinev', + 'anyaSzuleteskoriUtonev','allampolgarsag','lakhelyOrszag','lakhelyHelyseg', + 'lakhelyIrsz','lakhelyKozteruletNev','lakhelyKozteruletJelleg','lakhelyHazszam','lakhelyEmelet','lakhelyAjto','tartOrszag','tartHelyseg', + 'tartIrsz','tartKozteruletNev','tartKozteruletJelleg','tartHazszam','tartEmelet','tartAjto','jogviszonyKezdete','diakNaploSorszam' + ), + ); + + function diakExport($ADAT) { + + $tanevDbNev = tanevDbNev(__INTEZMENY, $ADAT['tanev']); + $W = array(); + $q = "SELECT diak.*, osztalyId, osztalyJel, diakNaploSorszam(osztalyDiak.diakId,".$ADAT['tanev'].",osztalyDiak.osztalyId) AS diakNaploSorszam FROM diak LEFT JOIN osztalyDiak USING (diakId) + LEFT JOIN `%s`.osztalyNaplo USING (osztalyId)"; + $v = array($tanevDbNev); + if (isset($ADAT['osztalyId'])) { $W[] = "osztalyId=%u"; $v[] = $ADAT['osztalyId']; } + if (isset($ADAT['dt'])) { $W[] = "beDt<='%s' AND ('%s'<=kiDt OR kiDt IS NULL)"; array_push($v, $ADAT['dt'], $ADAT['dt']); } + + $q .= " WHERE ".implode(' AND ', $W); + + $ret = db_query($q, array('fv' => 'diakExport', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + if (!$ret) return false; + + $osztalyAdat = getOsztalyok($ADAT['tanev'], array('result' => 'assoc')); + + $Szulok = getSzulok(); + for ($i = 0; $i < count($ret); $i++) { + $ret[$i]['telephelyId'] = $osztalyAdat[ $ret[$i]['osztalyId'] ]['telephelyId']; + foreach (array('anya','apa','gondviselo','nevelo') as $tipus) { + $szuloId = $ret[$i][ $tipus.'Id' ]; + if (is_array($Szulok[$szuloId])) foreach ($Szulok[$szuloId] as $attr => $value) { + $ret[$i][ $tipus . ucfirst($attr) ] = $value; + } elseif ($i == 0 && is_array($Szulok[1])) foreach ($Szulok[1] as $attr => $value) { + $ret[$i][ $tipus . ucfirst($attr) ] = ''; + } + } + } + + return $ret; + + } + + function createFile($ADAT) { + if ($ADAT['formatum'] == 'xls' || $ADAT['formatum'] == 'xml') return generateXLSExport($ADAT['export'], $ADAT['mezok']); + elseif ($ADAT['formatum'] == 'pdf') return generatePDFExport($ADAT['export'], $ADAT['mezok']); + else return generateCSVExport($ADAT['export'], $ADAT['mezok']); + } + + function generateCSVExport($ret, $Mezok = array()) { + + + $fp = fopen(__DIAK_EXPORT_FILE . '.csv', 'w'); + if (!$fp) { + $_SESSION['alert'][] = 'message:file_open:'.__DIAK_EXPORT_FILE . '.csv'; + return false; + } + + fputs($fp, implode(' ',$Mezok)."\n"); + for ($i = 0; $i < count($ret); $i++) { + $A = array(); + foreach ($Mezok as $attr => $attrNev) $A[] = $ret[$i][$attr]; + $sor = implode(' ', $A)."\n"; + fputs($fp, $sor); + } + + fclose($fp); + return true; + + } + + function generateXLSExport($ret, $Mezok = array()) { + + $fp = fopen(__DIAK_EXPORT_FILE . '.xml', 'w'); + if (!$fp) return false; + + fputs($fp, ''."\r\n"); + fputs($fp, ''."\r\n"); + + fputs($fp, ' '."\r\n" + .' '."\r\n" + .' '."\r\n" + ."\r\n".' '."\r\n"); + + fputs($fp, ''."\r\n"); + fputs($fp, ''."\r\n"); + + // fejléc + fputs($fp, ''."\r\n"); + foreach ($Mezok as $index => $attr) { + fputs($fp, " ".$attr."\r\n"); + } + fputs($fp, ''."\r\n"); + + + for ($i = 0; $i < count($ret); $i++) { + fputs($fp, ''."\r\n"); + foreach ($Mezok as $attr => $attrNev) { + $value = $ret[$i][$attr]; + $time = strtotime($value); + if (is_numeric($value)) + fputs($fp, " ".$value."\r\n"); + elseif (is_numeric($time) && $value == date('Y-m-d H:i:s', $time)) + fputs($fp, " ".str_replace(' ','T',$value).'.000'."\r\n"); + elseif (is_numeric($time) && $value == date('Y-m-d', $time)) + fputs($fp, " ".$value.'T08:40:00.000'."\r\n"); + else + fputs($fp, " ".$value."\r\n"); + } + fputs($fp, ''."\r\n"); + } + + fputs($fp, '
'."\r\n"); + fputs($fp, '
'."\r\n"); + fputs($fp, '
'."\r\n"); + + fclose($fp); + return true; + + } + + function generatePDFExport($ret, $mezok = array()) { + + + $_SESSION['alert'][] = 'message:not implemented'; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/export/kirBizonyitvanyExport.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/kirBizonyitvanyExport.php new file mode 100644 index 00000000..d5182042 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/kirBizonyitvanyExport.php @@ -0,0 +1,24 @@ + diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/export/kreta.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/kreta.php new file mode 100644 index 00000000..77c89539 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/kreta.php @@ -0,0 +1,23 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/export/sulix.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/sulix.php new file mode 100644 index 00000000..1658bb58 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/sulix.php @@ -0,0 +1,129 @@ +/dev/null"); + + unlink(TMP.'/diak.csv'); + unlink(TMP.'/tanar.csv'); + unlink(TMP.'/schoolserver'); + rmdir(TMP); + + return true; + } + + function getDiakAccounts() { + + $D = getDiakok(array('extraAttrs'=>'oId, viseltCsaladinev, viseltUtonev, szuletesiIdo')); + for ($i = 0; $i < count($D); $i++) { + $oId = $D[$i]['oId']; + if (isset($oId)) { + $U = searchAccount('studyId', $oId, array('userAccount','studyId'), 'private'); + for ($j = 0; $j < $U['count']; $j++) { + // Ha az oId nem valódi, akkor lehet egy valódi oId része. Az egyenlőséget vizsgálni kell! + if ($oId == $U[$j]['studyId'][0]) { + $O = getDiakOsztalya($D[$i]['diakId']); + $D[$i]['userAccount'] = ekezettelen($U[$j]['userAccount'][0]); + $D[$i]['osztalyJel'] = str_replace('.','',$O[0]['osztalyJel']); + $ret[] = $D[$i]; + } + } + } + } + + return $ret; + + } + + function getTanarAccounts() { + + $D = getTanarok(array('tanev'=>__TANEV,'result'=>'indexed','extraAttrs'=>'oId, viseltCsaladinev, viseltUtonev, szuletesiIdo')); + + for ($i = 0; $i < count($D); $i++) { + $oId = $D[$i]['oId']; + if (isset($oId)) { + $U = searchAccount('studyId', $oId, array('userAccount','studyId'), 'private'); + for ($j = 0; $j < $U['count']; $j++) { + // Ha az oId nem valódi, akkor lehet egy valódi oId része. Az egyenlőséget vizsgálni kell! + if ($oId == $U[$j]['studyId'][0]) { + $D[$i]['userAccount'] = ekezettelen($U[$j]['userAccount'][0]); + $Osztalya = getOsztalyByTanarId($D[$i]['tanarId'], array('csakId'=>false)); + $D[$i]['osztalyJel'] = str_replace('.','',$Osztalya[0]['osztalyJel']); + if ($D[$i]['szuletesiIdo'] == '') $D[$i]['szuletesiIdo'] = '0000-00-00'; + $ret[] = $D[$i]; + } + } + } + } + + return $ret; + + } + + function getEgyebAccounts() { + + } + + function getAlapadatok($fileName) { + + $D = getIntezmenyByRovidnev(__INTEZMENY); +//var_dump($D); + $fp = fopen(_DOWNLOADDIR.'/private/naplo/export/sulix/'.$fileName,'w'); + if (!$fp) { + $_SESSION['alert'][] = 'message:file_open_failure:'.$fileName; + return false; + } + + fputs($fp, "SCHOOLOM=\"${D['OMKod']}\"\n"); + fputs($fp, "SCHOOLNAME=\"${D['nev']}\"\n"); + fputs($fp, "SCHOOLSHORTNAME=\"${D['rovidNev']}\"\n"); + + fclose($fp); + return true; + } + + function myImplode($v) { return implode(':', $v); } // az alábbi array_map-hez + + function createCSV($csoport, $ADAT) { + + if (!is_array($ADAT[$csoport]) || count($ADAT[$csoport])==0) return false; + + $fileName = $csoport.'.csv'; + $title = ':'; + $mayor2sulix = array( + 'userAccount' => 'AZONOSITO', 'viseltCsaladinev' => 'CSALADI_NEV', 'viseltUtonev' => 'KERESZTNEV', + 'szuletesiIdo' => 'SZULETESNAP', 'osztalyJel' => 'OSZTALY', 'oId' => 'OKTATASI_AZONOSITO' // ':UTF-8 + ); + $Attrs = array(); + foreach ($ADAT[$csoport][0] as $attr => $value) { + if (isset($mayor2sulix[$attr])) { + $title .= $mayor2sulix[$attr].':'; + $Attrs[] = $attr; + } + } + $title .= 'UTF-8'; + $Table = array(); + for ($i = 0; $i < count($ADAT[$csoport]); $i++) { + $Table[$i] = array(0=>''); + for ($j = 0; $j < count($Attrs); $j++) { + $Table[$i][$j+1] = $ADAT[$csoport][$i][ $Attrs[$j] ]; + } + $Table[$i][] = ''; // $Table[$i][] = ''; + } + return $title."\n".implode("\n",array_map('myImplode', $Table)); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/export/tanarOsztalyOraszam.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/tanarOsztalyOraszam.php new file mode 100644 index 00000000..c858e674 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/tanarOsztalyOraszam.php @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/export/tantargyFelosztas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/tantargyFelosztas.php new file mode 100644 index 00000000..7bc52c09 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/export/tantargyFelosztas.php @@ -0,0 +1,72 @@ +'getTankorOraszamok','modul'=>'naplo_intezmeny','result'=>'indexed')); + for ($i=0; $i __TANEV, 'tolDt' => '', 'igDt' => '', 'result' => 'idonly', 'datumKenyszeritessel' => false)); + $return[$i]['osztalyIds'] = getTankorOsztalyai($return[$i]['tankorId']); + } + return $return; + + } + + function exportTantargyFelosztas($file, $ADAT) { + + $T = array(); + + $T[0] = array('név','képesítés/tantárgy','tényleges óraszám','kötelező óraszám','besorolás'); +/* + $T[0] = array('név','képesítés/tantárgy','óraszám'); + foreach ($ADAT['osztalyok'] as $oAdat) { + $T[0][] = $oAdat['osztalyJel']; + } +*/ + foreach ($ADAT['osztalyok'] as $oAdat) { + $T[0][] = $oAdat['osztalyJel']; + } + + foreach ($ADAT['tanarAdat'] as $tanarId => $tAdat) { + // tanár neve, képesítései, összes óraszáma, kötelező óraszáma, besorolas + $elsoSor = count($T); + $sor = array($tAdat['tanarNev'], null, null, $tAdat['hetiKotelezoOraszam'], $tAdat['besorolas']); + if (is_array($ADAT['tanarKepesitesIds'])) { + $_kepesites = array(); + foreach ($ADAT['tanarKepesitesIds'][$tanarId] as $kepesitesId) $_kepesites[] = $ADAT['kepesitesAdat'][$kepesitesId]['kepesitesNev']; + $sor[1] = implode(', ', $_kepesites); + } + $T[] = $sor; + // tanár tárgyai és óraszámai + $sum = 0; + $utolsoTargyId = end((array_keys($ADAT['export'][$tanarId]))); + foreach ($ADAT['export'][$tanarId] as $targyId => $targyAdat) { + + $sor = array('', $ADAT['targyAdat'][$targyId]['targyNev'],0); + $resz = 0; + foreach ($ADAT['osztalyok'] as $oAdat) { + + if (($targyAdat[$oAdat['osztalyId']][1]+$targyAdat[$oAdat['osztalyId']][2])/2 != 0) + $sor[] = ($targyAdat[$oAdat['osztalyId']][1]+$targyAdat[$oAdat['osztalyId']][2])/2; + else $sor[] = null; + + $resz += ($targyAdat[$oAdat['osztalyId']][1]+$targyAdat[$oAdat['osztalyId']][2])/2; + } + $sor[2] = $resz; + $sum += $resz; + $T[] = $sor; + + } + $T[$elsoSor][2] = $sum; + } +//dump($T); + if ($ADAT['formatum'] == 'xml') return generateXLS("$file.${ADAT['formatum']}", $T, 'tantárgyFelosztás'); + elseif ($ADAT['formatum'] == 'csv') return generateCSV("$file.${ADAT['formatum']}", $T, 'tantárgyFelosztás'); + elseif ($ADAT['formatum'] == 'ods') return generateODS("$file.${ADAT['formatum']}", $T, 'tantárgyFelosztás'); + else return false; + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/elmaradas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/elmaradas.php new file mode 100644 index 00000000..e6db4268 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/elmaradas.php @@ -0,0 +1,27 @@ += CAST('"._HALADASI_HATARIDO."' AS DATE) + AND dt <= CAST('%s' AS DATE) GROUP BY ki"; + $ret['beirando'] = db_query($q, array( + 'fv' => 'getHaladasiElmaradas/#1', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'ki', 'values' => array($elozoTanitasiNapDt) + )); + // Lezárt hiányzások száma + $q = "SELECT ki, COUNT(*) AS db FROM ".__TANEVDBNEV.".ora WHERE tipus NOT LIKE 'elmarad%' + AND (leiras = '' OR leiras IS NULL) + AND dt < CAST('"._HALADASI_HATARIDO."' AS DATE) + GROUP BY ki + ORDER BY db DESC"; + $ret['lezart'] = db_query($q, array('fv' => 'getHaladasiElmaradas/#2', 'modul' => 'naplo', 'result' => 'indexed')); + + return $ret; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/elszamolas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/elszamolas.php new file mode 100644 index 00000000..5490624a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/elszamolas.php @@ -0,0 +1,44 @@ + 'getElszamolas', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + for ($i = 0; $i < count($ret); $i++) { + $A[ $ret[$i]['ki'] ][ $ret[$i]['tipus'] ] += intval($ret[$i]['db']); + $A['detailed'][ $ret[$i]['ki'] ][ $ret[$i]['tipus'] ][ $ret[$i]['munkaido'] ] = intval($ret[$i]['db']); + $A['detailed_ki_tipus_munkaido_eredet'][ $ret[$i]['ki'] ][ $ret[$i]['tipus'] ][ $ret[$i]['munkaido'] ][ $ret[$i]['eredet'] ] = intval($ret[$i]['db']); + } + // Tanárok heti óraszáma + $q = "SELECT tanarId, + COUNT(*)/( + SELECT COUNT(DISTINCT het) AS db FROM orarendiOra WHERE tolDt<=CURDATE() AND CURDATE()<=igDt + ) AS db + FROM orarendiOra WHERE tolDt <= CURDATE() AND CURDATE() <= igDt + GROUP BY tanarId"; + $ret = db_query($q, array('fv' => 'getElszamolas', 'modul' => 'naplo', 'result'=> 'indexed')); + for ($i = 0; $i < count($ret); $i++) $A[ $ret[$i]['tanarId'] ]['oraszam'] = $ret[$i]['db']; + + // Napok száma az adott időszak alatt - típusonként + $q = "SELECT munkatervId,tipus,COUNT(*) AS db FROM nap WHERE '%s'<=dt AND dt<='%s' GROUP BY munkatervId,tipus"; + $ret = db_query($q, array( + 'fv' => 'getElszamolas', 'modul' => 'naplo', 'result' => 'indexed', 'keyfield' => 'tipus', 'values' => mayor_array_join(array($tolDt, $igDt),$v) + )); + foreach ($ret as $tmp) { $A['napok'][ $tmp['munkatervId'] ][ $tmp['tipus'] ] = $tmp['db']; } + $A['munkaterv'] = getMunkatervek(array('result'=>'assoc', 'keyfield'=>'munkatervId')); + + return $A; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/haladasi.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/haladasi.php new file mode 100644 index 00000000..391ef7c8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/haladasi.php @@ -0,0 +1,155 @@ + 'getOraszamByOraId')) : $olr; + + $q = "SELECT tankorId, dt, ora FROM ora WHERE oraId=%u"; + $r = db_query($q, array('fv' => 'getOraszamByOraId', 'modul' => 'naplo', 'result' => 'record', 'values' => array($oraId)), $lr); + + $tankorId = $r['tankorId']; + $dt = $r['dt']; + $ora = $r['ora']; + + if (defined('__ORASZAMOT_NOVELO_TIPUSOK')) { + $oraszamNoveloTipus = explode(',', __ORASZAMOT_NOVELO_TIPUSOK); + } else { + if (!in_array('info:missing_constant:__ORASZAMOT_NOVELO_TIPUSOK',$_SESSION['alert'])) $_SESSION['alert'][] = 'info:missing_constant:__ORASZAMOT_NOVELO_TIPUSOK'; + $oraszamNoveloTipus = array('normál', 'normál máskor', 'helyettesítés', 'összevonás'); + } + $q = "SELECT count(oraId) FROM ora + WHERE tankorId=%u + AND tipus IN ('".implode("','", array_fill(0, count($oraszamNoveloTipus), '%s'))."') + AND (dt<'%s' OR (dt='%s' AND ora<=%u))"; + $v = mayor_array_join(array($tankorId), $oraszamNoveloTipus, array($dt, $dt, $ora)); + $oraszam = db_query($q, array('fv' => 'getOraszamByOraId', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $lr); + + if ($olr == '') db_close($lr); + return $oraszam; + } + + function getHaladasi($Tankorok, $munkatervIds, $orderBy, $tanarId = '', $csakUres=false, $teremId=false) { + + $ret = array(); + + // Munkatervidk + if (!is_array($munkatervIds) || count($munkatervIds)==0) $munkatervIds = array(1); // a default + + // Az érintett tankörök id-inek listája + $tankorIds = $tankorAdat = array(); + if (is_array($Tankorok) && ($count = count($Tankorok)) > 0) { + $tankorFeltetel = 'tankorId IN (' . $Tankorok[0]['tankorId']; + $tankorIds[] = $Tankorok[0]['tankorId']; + $Tankorok[0]['tanar'] = getTankorTanaraiByInterval($Tankorok[0]['tankorId'], array('tanev' => __TANEV, 'tolDt' => _SHOW_DAYS_FROM, 'igDt' => _SHOW_DAYS_TO, 'result' => 'nevsor')); + $tankorAdat[$Tankorok[0]['tankorId']] = $Tankorok[0]; + for ($i = 1; $i < $count; $i++) { + $tankorFeltetel .= ', '.$Tankorok[$i]['tankorId']; + $tankorIds[] = $Tankorok[$i]['tankorId']; + $Tankorok[$i]['tanar'] = getTankorTanaraiByInterval($Tankorok[$i]['tankorId'], array('tanev' => __TANEV, 'tolDt' => _SHOW_DAYS_FROM, 'igDt' => _SHOW_DAYS_TO, 'result' => 'nevsor')); + $tankorAdat[$Tankorok[$i]['tankorId']] = $Tankorok[$i]; + } + $tankorFeltetel .= ')'; + } + elseif ($tanarId=='') return false; + // else return false; // Ha egy kollégának nincs rendszeres órája, tanköre, de helyettesít, akkor meg kell jelenjenek ezek az órái... (Bug #53) + + if ($teremId!==false && is_numeric($teremId)) { + $teremFeltetel = ' and teremId = '.$teremId; + } else + $teremFeltetel = ''; + + // Ha tanarId is van, akkor az általa helyettesített órák is kellenek + if ($tanarId != '') { + if (isset($tankorFeltetel)) $kiFeltetel = 'OR ki = '.$tanarId; + else $kiFeltetel = 'ki = '.$tanarId; + } + if (isset($tankorFeltetel) || isset($kiFeltetel)) $feltetel = "AND ($tankorFeltetel $kiFeltetel)"; + if (isset($csakUres) && $csakUres==true) $feltetel .= " AND (leiras='' OR leiras IS NULL) "; + + // Csatlakozás az adatbázishoz + $lr = db_connect('naplo', array('fv' => 'getHaladasi')); + $q = "SELECT oraId, dt, ora, ki, kit, tankorId, teremId, ora.leiras, tipus, eredet, csoportId, feladatTipusId, + getOraTolTime(oraId) AS tolTime, + getOraIgTime(oraId) AS igTime + FROM ora + LEFT JOIN tankorCsoport USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".feladatTipus USING (feladatTipusId) + WHERE dt>='%s' AND dt<='%s' AND tipus NOT LIKE 'elmarad%%' + $feltetel $teremFeltetel + ORDER BY ".implode(',',$orderBy); + $v = array(_SHOW_DAYS_FROM, _SHOW_DAYS_TO); + $r = db_query($q, array('fv' => 'getHaladasi', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + + if ($r===false) { + db_close($lr); + return false; + } + foreach ($r as $i => $sor) { + // ha nincs a tankorok kozott a tankorId, akkor le kell kérdezni az adatait + if (!in_array($sor['tankorId'],$tankorIds)) { + $T = getTankorById($sor['tankorId'], __TANEV); + $tankorIds[] = $sor['tankorId']; + $tankorAdat[$sor['tankorId']] = $T[0]; + $Tankorok[$i]['tanar'] = getTankorTanaraiByInterval($sor['tankorId'], array('tanev' => __TANEV, 'tolDt' => _SHOW_DAYS_FROM, 'igDt' => _SHOW_DAYS_TO, 'result' => 'nevsor')); + } + $sor['kiCn'] = getTanarNevById($sor['ki'], $lr); + $sor['tankorNev'] = $tankorAdat[$sor['tankorId']]['tankorNev']; + $sor['tankorTipusId'] = $tankorAdat[$sor['tankorId']]['tankorTipusId']; + $sor['oraszam'] = getOraszamByOraId($sor['oraId'], $lr); + $sor['tanar'] = $tankorAdat[$sor['tankorId']]['tanar']; + // Az óracsoportokat is!!! + if (isset($sor['csoportId']) && $tanarId != '') { // Csak tanár nézet esetén lehet váltani!!! + if (!is_array($tankorAdat[$sor['tankorId']]['csoport'])) { + // Csoport adatok lekérdezése + // Ha minden oldalon le akarjuk kérdezi a csoportokat, akkor valahogy így... + // if ($sor['kit'] == '') $tanarId = $sor['ki']; + // else $tanarId = $sor['kit']; + $q = "SELECT DISTINCT tankorCsoport.tankorId AS tankorId, tankorNev + FROM tankorCsoport + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTanar USING (tankorId) + WHERE tanarId=%u AND csoportId=%u + AND beDt<='"._SHOW_DAYS_TO."' AND (kiDt IS NULL OR '"._SHOW_DAYS_FROM."'<=kiDt) + AND tanev=" . __TANEV; + $v = array($tanarId, $sor['csoportId']); + $r_cs = db_query($q, array('fv' => 'getHaladasi/csoport', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + if ($r_cs===false) { //!!!! nem jó simán a tagadás! + db_close($lr); + return false; + } + foreach ($r_cs as $key => $val) { + $tankorAdat[$sor['tankorId']]['csoport'][] = $val; + } + } + $sor['csoport'] = $tankorAdat[$sor['tankorId']]['csoport']; + } + $ret[$sor['dt']][] = $sor; + } + // Nap információk lekérdezése + $q = "SELECT dt,tipus,megjegyzes,orarendiHet FROM nap + WHERE dt>='%s' AND dt<='%s' AND munkatervId IN (".implode(',', $munkatervIds).")"; + $v = array(_SHOW_DAYS_FROM, _SHOW_DAYS_TO); + $ret['napok'] = db_query($q, array('fv' => 'getHaladasi', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'dt', 'values' => $v), $lr); + if (!$ret['napok']) { + db_close($lr); + return false; + } + + // dolgozatok lekérdezése; + $ret['dolgozatok'] = getTankorDolgozatok($tankorIds,true,_SHOW_DAYS_FROM,_SHOW_DAYS_TO, $lr); + db_close($lr); + return $ret; + } + + function haladasiTeremModositas($oraId,$teremId,$lr) { + if (!is_numeric($oraId) || !is_numeric($teremId)) return false; + $lr = $olr=='' ? db_connect('naplo', array('fv' => 'haladasiTeremModositas')):$olr; + $q = "UPDATE ora SET teremId=%u WHERE oraId=%u"; + $v = array($teremId,$oraId); + $RESULT = db_query($q, array( 'fv' => 'haladasiTeremModositas','modul' => 'naplo', 'values' => $v), $lr); + if ($olr == '') db_close($lr); + return $RESULT; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/helyettesites.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/helyettesites.php new file mode 100644 index 00000000..2fbbc4ac --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/helyettesites.php @@ -0,0 +1,945 @@ + 'getHianyzok', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($dt)), $olr); + + foreach ($result as $key => $sor) { + // Ha a kit nem üres, akkor az az eredeti tanár, különben a ki (plusz óránál lehet) + if ($sor['kit'] != '') { + if (!in_array($sor['kit'], $hianyzok)) $hianyzok[] = $sor['kit']; + } elseif ($sor['ki'] != '' && !in_array($sor['ki'], $hianyzok)) { + $hianyzok[] = $sor['ki']; + } + } + + return $hianyzok; + + } + + + function getHianyzoOrak($dt = '', $olr = '') { + + + if($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + // Kik érintettek az aktuális helyettesítésekben + $ORAK['helyettesites']['tanarIds'] = getHianyzok($dt, $lr); + + // Az érintettek óráinak adatai, kivéve a kötött munkaidő plusz óráit, hiszen azok nem számítanak. Nem számítanak? + if (count($ORAK['helyettesites']['tanarIds']) > 0) { + $q = "SELECT DISTINCT + oraId, dt, ora, ki, kit, tankorId, teremId, leiras, tipus, eredet, tankorNev, targyId,feladatTipusId,munkaido + FROM ora + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".feladatTipus USING (feladatTipusId) + WHERE ( + ki IN (".implode(',', array_fill(0, count($ORAK['helyettesites']['tanarIds']),'%u')).") OR + kit IN (".implode(',', array_fill(0, count($ORAK['helyettesites']['tanarIds']), '%u')).") + ) + AND dt='%s' + AND (tanev=".__TANEV." OR feladatTipusId IS NOT NULL) + ORDER BY ora"; + $v = mayor_array_join($ORAK['helyettesites']['tanarIds'], $ORAK['helyettesites']['tanarIds'], array($dt)); + $result = db_query($q, array('fv' => 'getHianyzoOrak', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + if (!$result) { + if($olr == '') $lr = db_close($lr); + return false; + } + foreach ($result as $key => $sor) { + if ($sor['kit'] != '') { + $ORAK['helyettesites'][$sor['kit']]['orak'][] = $sor; + } + if (in_array($sor['ki'], $ORAK['helyettesites']['tanarIds'])) { + $ORAK['helyettesites'][$sor['ki']]['orak'][] = $sor; + } + } + } + + // Tanárnevek lekérése + $TANAR_NEVSOR = getTanarok(array('tanev' => __TANEV,'beDt'=>$dt,'kiDt'=>$dt), $lr); + for ($i = 0; $i < count($TANAR_NEVSOR); $i++) { + $ORAK['tanarok']['tanarIds'][] = $TANAR_NEVSOR[$i]['tanarId']; + $ORAK['tanarok'][$TANAR_NEVSOR[$i]['tanarId']] = array('tanarNev' => $TANAR_NEVSOR[$i]['tanarNev']); + } + // Az adott napon ki melyik órákban tanít, első, utolsó, db + $q = "SELECT ki, ora FROM ora + WHERE dt = '%s' AND ki != '' + ORDER BY ki, ora"; + $r = db_query($q, array('fv' => 'getHianyzoOrak', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($dt)), $lr); + foreach ($r as $key => $val) { + $ki = $val['ki']; $ora = $val['ora']; + if (!is_array($ORAK['tanarok']['foglaltak'][$ora]) // gyűjtjük, hogy kik tanítanak az adott órában + || !in_array($ki, $ORAK['tanarok']['foglaltak'][$ora]) + ) $ORAK['tanarok']['foglaltak'][$ora][] = $ki; + $ORAK['tanarok'][$ki]['orak'][$ora] = true; + $ORAK['tanarok'][$ki]['db']++; + if ( + !isset($ORAK['tanarok'][$ki]['elso ora']) or + $ORAK['tanarok'][$ki]['elso ora'] > $ora + ) $ORAK['tanarok'][$ki]['elso ora'] = $ora; + if ($ORAK['tanarok'][$ki]['utolso ora'] < $ora) $ORAK['tanarok'][$ki]['utolso ora'] = $ora; + } + + // Milyen tárgyat és mely osztályokban tanít az adott tanévben! (TANAR_NEVSOR tömbből válogassuk hozzá a tanáridket) + $q = "SELECT tanarId,targyId FROM ".__INTEZMENYDBNEV.".mkTanar + LEFT JOIN ".__INTEZMENYDBNEV.".targy USING (mkId) + WHERE mkTanar.tanarId IN (".implode(',', array_fill(0, count($ORAK['tanarok']['tanarIds']), '%u')).")"; + $r = db_query($q, array('fv' => 'getHianyzoOrak', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $ORAK['tanarok']['tanarIds']), $lr); + if (count($r)>0) foreach ($r as $key => $val) { + $tanarId = $val['tanarId']; $targyId = $val['targyId']; + $ORAK['tanarok'][$tanarId]['targyak'][$targyId] = true; + } + // Egészítsük ki a képesítése szerint is! (2011, 2015) + $q = "SELECT tanarId,targyId FROM ".__INTEZMENYDBNEV.".tanarKepesites LEFT JOIN ".__INTEZMENYDBNEV.".kepesitesTargy USING (kepesitesId) ". + "WHERE tanarId IN (".implode(',', array_fill(0, count($ORAK['tanarok']['tanarIds']), '%u')).")"; + $r = db_query($q, array('fv' => 'getHianyzoOrak', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $ORAK['tanarok']['tanarIds']), $lr); + if (count($r)>0) foreach ($r as $key => $val) { + $tanarId = $val['tanarId']; + $targyId = $val['targyId']; + $ORAK['tanarok'][$tanarId]['targyak'][$targyId] = true; + } + + // Az összevonó/foglalt tanárok + for ($i = 0; $i < count($ORAK['helyettesites']['tanarIds']);$i++) { + + $tanarId = $ORAK['helyettesites']['tanarIds'][$i]; + $tanarOrak = $ORAK['helyettesites'][$tanarId]['orak']; + + for ($j = 0; $j < count($tanarOrak); $j++) { + + $ora = $tanarOrak[$j]['ora']; + $Foglaltak = $ORAK['tanarok']['foglaltak'][$ora]; + // Ha a tanár szakos, akkor összevonhat. + // Itt most egyelőre annyit kérdezünk le, hogy ugyanabban az időben ki tanít + for ($f = 0; $f < count($Foglaltak); $f++) { + if ($Foglaltak[$f] != $tanarId) { + if ($ORAK['tanarok'][$Foglaltak[$f]]['targyak'][$tanarOrak[$j]['targyId']]) + $ORAK['helyettesites'][$tanarId]['orak'][$j]['osszevono'][] = $Foglaltak[$f]; + else + $ORAK['helyettesites'][$tanarId]['orak'][$j]['foglalt'][] = $Foglaltak[$f]; + } + } // Adott óra öszzevonói/foglaltjai + } // Adott tanár órái + } // A helyettesítésben érintett tanárok + $q = "SELECT ki, ora FROM ora + WHERE dt = '%s' AND ki != '' AND feladatTipusId IS NOT NULL + ORDER BY ki, ora"; + $r = db_query($q, array('fv' => 'getHianyzoOrak', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($dt)), $lr); + for ($i=0; $i'assoc')); + + if($olr=='') $lr = db_close($lr); + return $ORAK; + } + + function ujHianyzokFelvetele($ujHianyzok, $dt, $olr = '') { + + + if (count($ujHianyzok) > 0) { + + if ($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + $where = "ki IN (".implode(',', array_fill(0, count($ujHianyzok), '%u')).")"; + $v = $ujHianyzok; + + // Ha visszamenőleg állítunk elmaradtra egy órát, akkor kezelni kell a hozzá tartozó bejegyzéseket + if (strtotime($dt) < time()) { + // Az elmaradó órák id-inek lekérdezése + $q = "SELECT oraId FROM ora + WHERE dt='%s' + AND ki IN (".implode(',', array_fill(0, count($ujHianyzok), '%u')).") + AND ( + tipus='normál' OR + tipus='helyettesítés' OR + tipus='felügyelet' OR + tipus='összevonás' + )"; + $v = mayor_array_join(array($dt), $ujHianyzok); + $oraIds = db_query($q, array('fv' => 'ujHianyzokFelvetele', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v), $lr); + + if (is_array($oraIds) && count($oraIds) > 0) { // Ha van elmaradt óra + $where_id = "oraId IN (".implode(',', array_fill(0, count($oraIds), '%u')).")"; + + // Az elmaradt órákhoz tartozó hiányztások, késések, felszerelés hiányok, egyenruha hiányok törlése! + $q = "SELECT hianyzasId FROM hianyzas WHERE oraId IN (".implode(',', array_fill(0, count($oraIds), '%u')).")"; + $hIds = db_query($q, array('fv' => 'ujHianyzokFelvetele', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $oraIds), $lr); + if (count($hIds) > 0) { + logAction( + array( + 'tabla' => 'hianyzas', + 'szoveg'=> "hiányzó tanár - óraelmaradás: $where_id, hianyzasId IN (".implode(',', array_fill(0, count($hIds), '%u')).")", + 'values' => mayor_array_join($oraIds, $hIds) + ), + $lr + ); + $q = "DELETE FROM hianyzas WHERE oraId IN (".implode(',', array_fill(0, count($oraIds), '%u')).")"; + $r = db_query($q, array('fv' => 'ujHianyzokFelvetele', 'modul' => 'naplo', 'values' => $oraIds), $lr); + } + // Az elmaradt órákhoz rendelt jegyek hozzárendelésének törlése + $q = "UPDATE jegy SET oraId=NULL WHERE oraId IN (".implode(',', array_fill(0, count($oraIds), '%u')).")"; + $r = db_query($q, array('fv' => 'ujHianyzokFelvetele', 'modul' => 'naplo', 'values' => $oraIds), $lr); + } + } + + $v = mayor_array_join(array($dt), $ujHianyzok); + // Normál órái elmaradnak + $q = "UPDATE ora + SET kit=ki, ki=NULL, tipus='elmarad', modositasDt=NOW() + WHERE dt='%s' + AND tipus='normál' + AND ki IN (".implode(',', array_fill(0, count($ujHianyzok), '%u')).")"; + $r = db_query($q, array('fv' => 'ujHianyzokFelvetele', 'modul' => 'naplo', 'values' => $v), $lr); + + // Helyettesített, felügyelt, összevont órái elmaradnak + $q = "UPDATE ora SET ki=NULL,tipus='elmarad', modositasDt=NOW() + WHERE dt='%s' + AND ( + tipus='helyettesítés' OR + tipus='felügyelet' OR + tipus='összevonás' + ) + AND ki IN (".implode(',', array_fill(0, count($ujHianyzok), '%u')).")"; + $r = db_query($q, array('fv' => 'ujHianyzokFelvetele', 'modul' => 'naplo', 'values' => $v), $lr); + + // Elmaradnak-e a rögzített feladatai? ?????????????? + + if ($olr == '') db_close($lr); + } + } + + function toroltHianyzokVisszaallitasa($toroltHianyzok, $dt, $olr='') { + + + if (count($toroltHianyzok) > 0) { + + if ($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + // Cserék visszaállítása + $q_cs = "SELECT oraId FROM ora WHERE tipus like '%%máskor' + AND ( + ki IN (".implode(',', array_fill(0, count($toroltHianyzok), '%u')).") + OR kit IN (".implode(',', array_fill(0, count($toroltHianyzok), '%u')).") + ) AND dt = '%s'"; + $v_cs = mayor_array_join($toroltHianyzok, $toroltHianyzok, array($dt)); + $r_cs = db_query($q_cs, array('fv' => 'ujHianyzokFelvetele', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v_cs), $lr); + foreach ($r_cs as $key => $vissza_id) { + csereVisszaallitas($vissza_id, $lr); + } + + // A nem hiáynzók helyettesített, összevont, elmaradt, felügyelt óráinak visszaállítása + // 2013. Itt vissza kell állítanunk munkaido-t 'lekötött'-re. Mi történik ugyanakkor, ha + // a visszaállított óra már nem fér bele... Ugye... Sajnos + $q_v = "UPDATE ora SET ki=kit, kit=NULL, tipus='normál', munkaido='lekötött', modositasDt=NOW() + WHERE tipus IN ('helyettesítés','felügyelet','összevonás','elmarad') + AND dt='%s' AND kit IN (".implode(',', array_fill(0, count($toroltHianyzok), '%u')).")"; + $v_v = mayor_array_join(array($dt), $toroltHianyzok); + $r_v = db_query($q_v, array('fv' => 'toroltHianyzokVisszaallitasa', 'modul' => 'naplo', 'values' => $v_v), $lr); + + if ($olr == '') db_close($lr); + } + } + + function csereVisszaallitas($oraId, $olr = '') { + + + if ($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + // A csere csereId-jének lekérdezése + $q = "SELECT DISTINCT csereId + FROM csereAlapOra LEFT JOIN cserePluszOra USING (csereId) + WHERE csereAlapOra.oraId=%u OR cserePluszOra.oraId=%u"; + $v = array($oraId, $oraId); + $r = db_query($q, array('fv' => 'csereVisszaallitas', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v), $lr); + if (!$r) { + if ($olr == '') db_close($lr); + return false; + } + if (($num = count($r)) != 1) { + $_SESSION['alert'][] = 'message:wrong_data:csereVisszaallitas:Nincs csere?:'.$num; + if ($olr == '') db_close($lr); + return false; // Lehet ilyen? + } + $csereId = $r[0]; + + // A cserében résztvevő órák id-jének lekérdezése + $q = "SELECT csereAlapOra.oraId AS alap, cserePluszOra.oraId AS plusz + FROM cserePluszOra LEFT JOIN csereAlapOra USING (csereId) + WHERE csereId=%u"; + $r = db_query($q, array('fv' => 'csereVisszaallitas', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($csereId)), $lr); + if (!$r) { + if ($olr == '') db_close($lr); + return false; + } + $Alap = $Plusz = array(); + for ($i = 0; $i < count($r); $i++) { + $alap = $r[$i]['alap']; $plusz = $r[$i]['plusz']; + if (!in_array($alap, $Alap)) $Alap[] = $alap; + if (!in_array($plusz, $Plusz)) $Plusz[] = $plusz; + } + + // az eredeti órák 'elmarad máskor'-ról 'elmarad'-ra állítása + $q = "UPDATE ora SET tipus='elmarad',modositasDt=NOW() WHERE oraId IN (".implode(',', array_fill(0, count($Alap), '%u')).")"; + $r = db_query($q, array('fv' => 'csereVisszaallitas', 'modul' => 'naplo', 'values' => $Alap), $lr); + if (!$r) { + if ($olr == '') db_close($lr); + return false; + } + + // a csere-bejegyzés törlése + $q = "DELETE FROM csere WHERE csereId=%u"; + $r = db_query($q, array('fv' => 'csereVisszaallitas', 'modul' => 'naplo', 'values' => array($csereId)), $lr); + if (!$r) { + if ($olr == '') db_close($lr); + return false; + } + + // Az órákhoz rendelt hiányzások és jegyhozzárendelések törlése (csak plusz lehet érintett!) + hianyzasEsJegyHozzarendelesTorles($Plusz, $lr); + + // a plusz órák törlése + $q = "DELETE FROM ora WHERE oraId IN (".implode(',', array_fill(0, count($Plusz), '%u')).")"; + $r = db_query($q, array('fv' => 'csereVisszaallitas', 'modul' => 'naplo', 'values' => $Plusz), $lr); + if (!$r) { + if ($olr == '') db_close($lr); + return false; + } + + if ($olr == '') db_close($lr); + return true; + + } + + + function cmp($a,$b) { + if ($a['súly'] == $b['súly']) return 0; + return ($a['súly'] > $b['súly']) ? -1 : 1; + } + + + function ujOra($ORA, $olr = null) { + // alapértelmezésben munkaido='lekötött' + if ($ORA['ki'] == '') $ORA['ki'] = 'NULL'; + if ($ORA['kit'] == '') $ORA['kit'] = 'NULL'; + if ($ORA['teremId'] == '') $ORA['teremId'] = 'NULL'; + $q = "INSERT INTO ora (ki,kit,dt,ora,tankorId,teremId,leiras,tipus,eredet,modositasDt) VALUES (%s, %s, '%s', %u, %u, %s, '%s', '%s', '%s',NOW())"; + $v = array($ORA['ki'], $ORA['kit'], $ORA['dt'], $ORA['ora'], $ORA['tankorId'], $ORA['teremId'], $ORA['leiras'], $ORA['tipus'], $ORA['eredet']); + return db_query($q, array('fv' => 'ujOra', 'modul' => 'naplo', 'result' => 'insert', 'values' => $v), $olr); + } + + function oraMozgatas($oraId, $dt, $ora, $olr = '') { + + + if ($olr == '') $lr = db_connect('naplo', array('fv' => 'oraMozgatas')); + else $lr = $olr; + + $oraAdat = getOraAdatById($oraId, __TANEV, $lr); + + if ($oraAdat['tipus'] == 'elmarad máskor') { + $_SESSION['alert'][] = 'message:wrong_data:oraMozgatas:már mozgatott óra:'.$oraId; + if ($olr == '') db_close($lr); + return false; + } + + if (isset($oraAdat['kit']) && $oraAdat['kit'] != '') $tanarId = $oraAdat['kit']; + else $tanarId = $oraAdat['ki']; + $tankorId = $oraAdat['tankorId']; + $teremId = $oraAdat['teremId']; + + checkNaplo($dt); + + // A tanár nem foglalt-e az adott időpontban + if (!tanarLukasOrajaE($tanarId, $dt, $ora, $lr)) { + $_SESSION['alert'][] = 'message:haladasi_utkozes:'."mozgat/tanár ütközés/$dt:$ora"; + if ($olr == '') db_close($lr); + return false; + } + + // diák ütközés + if (!tankorTagokLukasOrajaE($tankorId, $dt, $ora)) { + $_SESSION['alert'][] = 'message:haladasi_utkozes:'."mozgat/diák ütközés/$dt:$ora"; + if ($olr == '') db_close($lr); + return false; + } + + // terem ellenőrzés + $Termek = getSzabadTermek(array('dt' => $dt, 'ora' => $ora), $lr); + for ($i = 0;($i < count($Termek) && $Termek[$i]['teremId'] != $teremId); $i++); + if ($i >= count($Termek)) { + $_SESSION['alert'][] = 'message:haladasi_utkozes:Foglalt terem:'.$teremId; + $teremUtkozes = true; + } + + // érintett hiányzások, késések, felszerelés hiányok, egyenruha hiányok, jegyHozzárendelések törlése! + if (strtotime($dt) < time()) hianyzasEsJegyHozzarendelesTorles($oraId, $lr); + + if ($oraAdat['eredet'] == 'órarend') { + + // ha órarendi óra, akkor elmarad máskor - plusz óra felvétel + if (isset($oraAdat['kit']) && $oraAdat['kit'] != '') { + // kit nem üres, ki törölhető + $q = "UPDATE ora SET tipus='elmarad máskor',ki=NULL,modositasDt=NOW() WHERE oraId=%u"; + $oraAdat['ki'] = $tanarId; + $oraAdat['kit'] = ''; + } else { + // normál óra, akkor a ki --> kit... + $q = "UPDATE ora SET tipus='elmarad máskor',kit=ki,ki=NULL,modositasDt=NOW() WHERE oraId=%u"; + } + $r = db_query($q, array('fv' => 'oraMozgatas', 'modul' => 'naplo', 'values' => array($oraAdat['oraId'])), $lr); + if (!$r) { + if ($olr == '') db_close($lr); + return false; + } + + // A felveendő plusz óra + $oraAdat['tipus']='normál máskor'; + $oraAdat['eredet']='plusz'; + $oraAdat['dt'] = $dt; + $oraAdat['ora'] = $ora; + if ($teremUtkozes) $oraAdat['teremId'] = 'NULL'; + + if ($pluszId = ujOra($oraAdat, $lr)) { + + // órarendi óra mozgatásánál a csere táblába is fel kell venni... + $error = ''; + db_start_trans($lr); + + $q = "INSERT INTO csere VALUES ('')"; + $csereId = db_query($q, array('fv' => 'oraMozgatas', 'modul' => 'naplo', 'result' => 'insert', 'rollback' => true), $lr); + if (!$csereId) { if ($olr == '') db_close($lr); return false; } + + $q = "INSERT INTO csereAlapOra (csereId, oraId) VALUES (%u, %u)"; + $r = db_query($q, array('fv' => 'oraMozgatas', 'modul' => 'naplo', 'values' => array($csereId, $oraId), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + $q = "INSERT INTO cserePluszOra (csereId, oraId) VALUES (%u, %u)"; + $r = db_query($q, array('fv' => 'oraMozgatas', 'modul' => 'naplo', 'values' => array($csereId, $pluszId), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + db_commit($lr); + + } + } else { + + // plusz óra egyszerűen módosítandó... + if ($teremUtkozes) $q = "UPDATE ora SET tipus='normál máskor',ki=%u, kit=NULL, dt='%s', ora='%u', teremId=NULL, modositasDt=NOW() WHERE oraId=%u"; + else $q = "UPDATE ora SET tipus='normál máskor',ki=%u, kit=NULL, dt='%s', ora='%u', modositasDt=NOW() WHERE oraId=%u"; + $v = array($tanarId, $dt, $ora, $oraId); + $r = db_query($q, array('fv' => 'oraMozgatas', 'modul' => 'naplo', 'values' => $v), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + } // órarendi vagy plusz óra + + if ($olr == '') db_close($lr); + return true; + + } + + function getCsereOraiByOraId($oraId) { + + + $lr = db_connect('naplo', array('fv' => 'getCsereOraiByOraId')); + + $q = "SELECT DISTINCT csereId FROM csereAlapOra LEFT JOIN cserePluszOra USING (csereId) + WHERE csereAlapOra.oraId=%u OR cserePluszOra.oraId=%u"; + $v = array($oraId, $oraId); + $arrayCsereId = db_query($q , array('fv' => 'getCsereOraiByOraId', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v), $lr); + if (!is_array($arrayCsereId) || ($num = count($arrayCsereId)) != 1) { + $_SESSION['alert'][] = 'message:wrong_data:getCsereOraiByOraId:Nincs csere?:'.$num.'/'.$oraId; + db_close($lr); return false; + } + $csereId = $arrayCsereId[0]; + + $q = "SELECT DISTINCT oraId, dt, ora, ki, kit, tankorId, tipus, eredet, tankorNev + FROM csereAlapOra LEFT JOIN ora USING (oraId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + WHERE csereId=%u AND tanev=".__TANEV." ORDER BY dt, ora"; + $ret['alap'] = db_query($q, array( + 'fv' => 'getCsereOraiByOraId', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => array($csereId) + ), $lr); + + $q = "SELECT DISTINCT oraId, dt, ora, ki, kit, tankorId, tipus, eredet, tankorNev + FROM cserePluszOra LEFT JOIN ora USING (oraId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + WHERE csereId=%u AND tanev=".__TANEV." ORDER BY dt, ora"; + $ret['plusz'] = db_query($q, array( + 'fv' => 'getCsereOraiByOraId', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => array($csereId) + ), $lr); + + db_close($lr); + return $ret; + + } + + function oraCsere($oraId1, $oraId2, $olr = '') { + + + if ($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + $csereOraAdat1 = $oraAdat1 = getOraAdatById($oraId1, __TANEV, $lr); + $csereOraAdat2 = $oraAdat2 = getOraAdatById($oraId2, __TANEV, $lr); + + if ($oraAdat1['tipus'] == 'elmarad máskor' || $oraAdat2['tipus'] == 'elmarad máskor') { + $_SESSION['alert'][] = 'message:wrong_data:oraCsere:már mozgatott óra:'.$oraId1.'/'.$oraId2; + if ($olr == '') db_close($lr); + return false; + } + + if (isset($oraAdat1['kit']) && $oraAdat1['kit'] != '') $tanarId1 = $oraAdat1['kit']; + else $tanarId1 = $oraAdat1['ki']; + + if (isset($oraAdat2['kit']) && $oraAdat2['kit'] != '') $tanarId2 = $oraAdat2['kit']; + else $tanarId2 = $oraAdat2['ki']; + + if ($tanarId1 != $tanarId2) { + // Ha nem saját magával cserél, akkor a tanár nem foglalt-e az adott időpontban + if (!tanarLukasOrajaE($tanarId1, $oraAdat2['dt'], $oraAdat2['ora'], $lr)) { + $_SESSION['alert'][] = 'message:haladasi_utkozes:'."oraCsere/tanár ütközés #1 (".$oraId1.'):'.$oraAdat2['dt'].':'.$oraAdat2['ora']; + if ($olr == '') db_close($lr); + return false; + } + if (!tanarLukasOrajaE($tanarId2, $oraAdat1['dt'], $oraAdat1['ora'], $lr)) { + $_SESSION['alert'][] = 'message:haladasi_utkozes:'."oraCsere/tanár ütközés #2 (".$oraId2.'):'.$oraAdat1['dt'].':'.$oraAdat1['ora']; + if ($olr == '') db_close($lr); + return false; + } + } + + // diák ütközés + if (!tankorTagokLukasOrajaE($oraAdat1['tankorId'], $oraAdat2['dt'], $oraAdat2['ora'], $oraAdat2['tankorId'])) { + if ($olr == '') db_close($lr); + return false; + } + if (!tankorTagokLukasOrajaE($oraAdat2['tankorId'], $oraAdat1['dt'], $oraAdat1['ora'], $oraAdat1['tankorId'])) { + if ($olr == '') db_close($lr); + return false; + } + + // terem ellenőrzés nincs: Termeket nem cserélünk!! + + // érintett hiányzások, késések, felszerelés hiányok, egyenruha hiányok, jegyHozzárendelések törlése! + if (strtotime($oraAdat1['dt']) < time()) hianyzasEsJegyHozzarendelesTorles($oraId1, $lr); + if (strtotime($oraAdat2['dt']) < time()) hianyzasEsJegyHozzarendelesTorles($oraId2, $lr); + + // 1. óra mozgatása + if ($oraAdat1['eredet'] == 'órarend') { + + $q = "UPDATE ora SET tipus='elmarad máskor', kit=%u, ki=NULL, modositasDt=NOW() WHERE oraId=%u"; + if (!db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($tanarId1, $oraAdat1['oraId'])), $lr)) { + if ($olr == '') db_close($lr); + return false; + } + + // A felveendő plusz óra + $csereOraAdat1['ki'] = $tanarId1; + $csereOraAdat1['kit'] = 'NULL'; + $csereOraAdat1['tipus']='normál máskor'; + $csereOraAdat1['eredet']='plusz'; + $csereOraAdat1['dt'] = $oraAdat2['dt']; + $csereOraAdat1['ora'] = $oraAdat2['ora']; + $csereOraAdat1['teremId'] = $oraAdat2['teremId']; + + $pluszId1 = ujOra($csereOraAdat1, $lr); + + // A csere táblába bejegyezzük a mozgatást + if ($pluszId1) { + + db_start_trans($lr); + + $q = "INSERT INTO csere VALUES ('')"; + $csereId1 = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'result' => 'insert', 'rollback' => true), $lr); + if (!$csereId1) { if ($olr == '') db_close($lr); return false; } + + $q = "INSERT INTO csereAlapOra (csereId, oraId) VALUES (%u, %u)"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId1, $oraId1), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + $q = "INSERT INTO cserePluszOra (csereId, oraId) VALUES (%u, %u)"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId1, $pluszId1), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + db_commit($lr); + } + + } else { + + // plusz óra egyszerűen módosítandó... + $q = "UPDATE ora SET tipus='normál máskor', ki=%u, kit=NULL, dt='%s', ora=%u, teremId=%u, modositasDt=NOW() WHERE oraId=%u"; + $r = db_query($q, array( + 'fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($tanarId1, $oraAdat2['dt'], $oraAdat2['ora'], $oraAdat2['teremId'], $oraId1) + ), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + // A plusz óra beletartozik-e valamelyik cserébe (elvileg csak egybe tartozhat) + $q = "SELECT csereId FROM cserePluszOra WHERE oraId=%u"; + $csereId1 = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'result' => 'value', 'values' => array($oraId1)), $lr); + + } // 1. óra: órarendi vagy plusz óra + + // 2. óra mozgatsa + if ($oraAdat2['eredet'] == 'órarend') { + + // ha órarendi óra, akkor elmarad máskor - plusz óra felvétel + $q = "UPDATE ora SET tipus='elmarad máskor', kit=%u, ki=NULL, modositasDt=NOW() WHERE oraId=%u"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($tanarId2, $oraAdat2['oraId'])), $lr); + if (!r) { if ($olr == '') db_close($lr); return false; } + + // A felveendő plusz óra + $csereOraAdat2['ki'] = $tanarId2; + $csereOraAdat2['kit'] = 'NULL'; + $csereOraAdat2['tipus']='normál máskor'; + $csereOraAdat2['eredet']='plusz'; + $csereOraAdat2['dt'] = $oraAdat1['dt']; + $csereOraAdat2['ora'] = $oraAdat1['ora']; + $csereOraAdat2['teremId'] = $oraAdat1['teremId']; + + $pluszId2 = ujOra($csereOraAdat2, $lr); + // A csere táblába bejegyezzük a mozgatást + if ($pluszId2) { + + db_start_trans($lr); + + $q = "INSERT INTO csere VALUES ('')"; + $csereId2 = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'result' => 'insert', 'rollback' => true), $lr); + if (!$csereId2) { if ($olr == '') db_close($lr); return false; } + + $q = "INSERT INTO csereAlapOra (csereId, oraId) VALUES (%u, %u)"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId2, $oraId2), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + $q = "INSERT INTO cserePluszOra (csereId, oraId) VALUES (%u, %u)"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId2, $pluszId2), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + db_commit($lr); + } + + } else { + + // plusz óra egyszerűen módosítandó... + $q = "UPDATE ora SET tipus='normál máskor', ki=%u , kit=NULL, dt='%s', ora=%u, teremId=%u, modositasDt=NOW() WHERE oraId=%u"; + $r = db_query($q, array( + 'fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($tanarId2, $oraAdat1['dt'], $oraAdat1['ora'], $oraAdat1['teremId'], $oraId2) + ), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + // A plusz óra beletartozik-e valamelyik cserébe + $q = "SELECT csereId FROM cserePluszOra WHERE oraId=%u"; + $csereId2 = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'result' => 'value', 'values' => array($oraId2)), $lr); + + } // 2. óra: órarendi vagy plusz óra + + // Egy cserévé tesszük... + + if (isset($csereId1) && isset($csereId2) && $csereId1 != $csereId2) { + + db_start_trans($lr); + + // A cserélt órák két különböző cserébe tartoznak --> egyesítjük a két cserét + $q = "UPDATE csereAlapOra SET csereId=%u WHERE csereId=%u"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId1, $csereId2), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + $q = "UPDATE cserePluszOra SET csereId=%u WHERE csereId=%u"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId1, $csereId2), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + $q = "DELETE FROM csere WHERE csereId=%u"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId2), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + db_commit($lr); + + } elseif (isset($csereId1) && !isset($csereId2)) { + + // Csak az első óra van cserében --> a másodikat is (ami plusz óra) bele kell rakni + $q = "INSERT INTO cserePluszOra (csereId, oraId) VALUES (%u, %u)"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId1, $oraId2), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + } elseif (!isset($csereId1) && isset($csereId2)) { + // Csak a második óra van cserében --> az elsőt is (ami plusz óra) bele kell rakni + $q = "INSERT INTO cserePluszOra (csereId, oraId) VALUES (%u, %u)"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($csereId2, $oraId1), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + } elseif (!isset($csereId1) && !isset($csereId2)) { + // Egyik sincs cserében --> Azaz két plusz óra --> nem vesszük fel őket cserének + // Ezért ez nem is csere --> a típusok nem normál máskor, hanem normál + $q = "UPDATE ora SET tipus='normál', modositasDt=NOW() WHERE oraId IN (%u, %u)"; + $r = db_query($q, array('fv' => 'oraCsere', 'modul' => 'naplo', 'values' => array($oraId1, $oraId2), 'rollback' => true), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + } + + if ($olr == '') db_close($lr); + return true; + + } + + function tanarTankortTanithatE($tanarId, $tankorId, $olr = '') { + + + if ($olr != '') $lr = $olr; + else $lr = db_connect('naplo'); + + // Beletartozik-e a megadott tanár a tankör munkaközösségébe? + $q = "SELECT COUNT(tanarId) + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".targy USING (targyId) + LEFT JOIN ".__INTEZMENYDBNEV.".mkTanar USING (mkId) + WHERE tankorId=%u AND tanarId=%u"; + $num = db_query($q, array( + 'fv' => 'tanarTankortTanithatE', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($tankorId, $tanarId) + )); + if ($num != 1) $_SESSION['alert'][] = 'message:wrong_data:keziBeallitas/tanarTankortTanithatE:Nem szakos:(tanarId/tankorId) - '.$tanarId.'/'.$tankorId; + + if ($olr == '') db_close($lr); + return ($num == 1); + + } + + + function keziBeallitas($oraId, $ki, $tipus, $teremId) { + + global $dt; + + $lr = db_connect('naplo', array('fv' => 'keziBeallitas')); + + $oraAdat = getOraAdatById($oraId, __TANEV, $lr); + $dt = $oraAdat['dt']; + if ($ki != $oraAdat['ki'] || $tipus != $oraAdat['tipus'] || $teremId != $oraAdat['teremId']) { + $ok = true; + // új tanár, vagy típus - ütközés ellenőrzése + if ($ki != $oraAdat['ki'] || $tipus != $oraAdat['tipus']) { + $q = "SELECT COUNT(*) FROM ora + WHERE dt='%s' AND ora=%u AND oraId!=%u AND ki=%u AND tipus NOT LIKE 'elmarad%%'"; + $_db = db_query($q, array( + 'fv' => 'keziBeallitas', 'modul' => 'naplo', 'result' => 'value', 'values' => array($oraAdat['dt'], $oraAdat['ora'], $oraId, $ki) + ), $lr); + if ($_db == 0) { + if ($tipus == 'összevonás') { + $_SESSION['alert'][] = 'message:wrong_data:keziBeallitas:Egy órát nem lehet összevonni'; + $ok = false; + } elseif ($tipus == 'helyettesítés') { + // Beletartozik-e a megadott tanár a tankör munkaközösségébe? + $ok = tanarTankortTanithatE($ki, $oraAdat['tankorId'], $lr); + } + } else { + if ($tipus != 'összevonás') { + $_SESSION['alert'][] = "message:haladasi_utkozes:keziBeallitas:Már van órája!:$ki"; + $ok = false; + } else { + // Beletartozik-e a megadott tanár a tankör munkaközösségébe? + $ok = tanarTankortTanithatE($ki, $oraAdat['tankorId'], $lr); + } + } + } + // Terem változtatás - szabad-e a terem? vagy nincs megadva + if ($teremId != $oraAdat['teremId'] && $teremId!='NULL') { + // Szabad-e a terem? - a saját maga által használt terem nem foglalt! (összevonáshoz így kell) + $Termek = getSzabadTermek(array('dt' => $OraAdat['dt'], 'ora' => $oraAdat['ora'], 'ki' => $ki), $lr); + for ($i = 0;($i < count($Termek) && $Termek[$i]['teremId'] != $teremId); $i++); + if ($i >= count($Termek)) { + $_SESSION['alert'][] = 'message:haladasi_utkozes:keziBeallitas:Foglalt terem:'.$teremId; + $ok = false; + } + } + // Módosítás + if ($ok && $tipus != 'elmarad') { + if (substr($oraAdat['tipus'], 0, 7) == 'normál') { + if ($tipus == $oraAdat['tipus'] || $ki == $oraAdat['ki']) { + // Vagy mindkettő változik, vagy egyik se + $q = "UPDATE ora SET teremId=%u, modositasDt=NOW() WHERE oraId=%u"; + $v = array($teremId, $oraId); + } else { // ki --> kit (csak helyettesítés, felügyelet, vagy összevonás lehet az új típus!! + $q = "UPDATE ora SET kit=ki, ki=%u, tipus='%s', teremId=%u, modositasDt=NOW() WHERE oraId=%u"; + $v = array($ki, $tipus, $teremId, $oraId); + } + } else { // kit nem változik + $q = "UPDATE ora SET ki=%u, tipus='%s', teremId=%u, modositasDt=NOW() WHERE oraId=%u"; + $v = array($ki, $tipus, $teremId, $oraId); + } + $r = db_query($q, array('fv' => 'keziBeallitas', 'modul' => 'naplo', 'values' => $v), $lr); + if ($r) $_SESSION['alert'][] = 'info:change_success:keziBeallitas'; + } else { + $_SESSION['alert'][] = 'info:do_nothing:keziBeallitas:Nem történt módosítás'; + } + } + + db_close($lr); + + } + + function ujHelyettes2($oraAdat, $ki, $tipus, $olr = null) { + $oraId = $oraAdat['oraId']; + $dt = $oraAdat['dt']; + if (is_null($ki) || $ki!=0) { + + // a helyettesített óra milyen munkaidőbe számolódik vajon? + // 1. összevonás = ??? (ezt nem vesszük figyelembe, ezért tökmindegy) + // 2. felügyelet = ez bizony egyértelműen a fennmaradó + // 3. helyettesítés = lekötött HA (26-on belül van az elmúlt 5 napos lekötött VAGY még a 28-on belül van, de érvényesek a feltételek 2-6-30) + // fennmaradó EGYÉBKÉNT. + + // ez már le van kérdezve, de a tranzakció miatt sajnos újra kell: + $TERHELES = getOraTerhelesStatByTanarId(array('tanarId'=>array($ki),'dt'=>$dt), $olr); + + if ($tipus=='összevonás') $_munkaido = 'lekötött'; + elseif ($tipus=='felügyelet') $_munkaido = 'fennmaradó'; + elseif ($tipus=='helyettesítés') { + if ($TERHELES[$ki]['munkaido']['lekotott']>$TERHELES[$ki]['lekotott']['heti']) { + $_lekotheto = true; + } elseif ($TERHELES[$ki]['over']['napi']<2 && $TERHELES[$ki]['over']['heti']<6) { + $_lekotheto =false; + } else { + $_lekotheto=false; + $_SESSION['alert'][] = 'info:OVERTIME'; // időközben túllépte valahogy + } + if ($_lekotheto===true) $_munkaido = 'lekötött'; else $_munkaido='fennmaradó'; + } else { + $_munkaido='lekötött'; //tipus??? + } + + if ($_munkaido=='') + $q = "UPDATE ora SET ki=%u,tipus='%s', modositasDt=NOW() WHERE oraId=%u"; + else + $q = "UPDATE ora SET ki=%u,tipus='%s',munkaido='".$_munkaido."', modositasDt=NOW() WHERE oraId=%u"; + + return db_query($q, array('fv' => 'ujHelyettes', 'modul' => 'naplo', 'values' => array($ki, $tipus, $oraId)), $olr); + } else { + $_SESSION['alert'][] = '::Nem sikerült beállítani az új helyettest!:oraId-'.$oraId.':ki-'.$ki.':tipus-'.$tipus; + return false; + } + + } + + function eredetiOraVissza($oraId, $eredet, $olr = null) { + + + if ($olr == '') $lr = db_connect('naplo', array('fv' => 'eredetiOraVissza')); + else $lr = $olr; + + if ($eredet == 'plusz') { + $q_csere = "SELECT COUNT(csereId) FROM cserePluszOra WHERE oraId=%u"; + $num = db_query($q_csere, array('fv' => 'eredetiOraVissza', 'modul' => 'naplo', 'result' => 'value', 'values' => array($oraId)), $lr); + } + if (($eredet == 'órarend') || ($num == 0)) + $q = "UPDATE ora SET ki=kit,kit=NULL,tipus='normál',munkaido='lekötött',modositasDt=NOW() WHERE oraId=%u"; + else + $q = "UPDATE ora SET ki=kit,kit=NULL,tipus='normál máskor',munkaido='lekötött',modositasDt=NOW() WHERE oraId=%u"; + $r = db_query($q, array('fv' => 'eredetiOraVissza', 'modul' => 'naplo', 'values' => array($oraId)), $lr); + + if ($olr == '') db_close($lr); + } + + function helyettesitesRogzites($T) { + + + $lr = db_connect('naplo'); + + for ($i = 0; $i < count($T); $i++) { + + if ($T[$i] == '') continue; // ha eredeti maradt, ne módosítson! + $teremUtkozes = false; + list($ki, $oraId, $tipus) = explode('/',$T[$i]); + $oraAdat = getOraAdatById($oraId); + if ($tipus == 'normál') { + if ($oraAdat['kit'] != '') $ki = $oraAdat['kit']; + else $ki = $oraAdat['ki']; + } + $regi_tipus = $oraAdat['tipus']; + + // A csere miatt elmaradt óra változásakor, illetve + // a csere miatt felvett óra visszaállításakor a cserét meg kell szüntetni + if (($regi_tipus == 'normál máskor' && $tipus == '') || ($regi_tipus == 'elmarad máskor')) { + csereVisszaallitas($oraId, $lr); + if ( + $tipus == '' // csere/mozgatás visszaállítás + || ($regi_tipus == 'elmarad máskor' && $tipus == 'elmarad') // mozgatott óra elmarad + ) continue; + } + + // Elmaradó óra esetén a hiányzások, késések, felszerelés hiányok, egyenruha hiányok, jegy hozzárendelések törlendők! + // Ezek bekerült az oraElmarad függvénybe + if ($tipus=='töröl' && $oraAdat['tipus']=='egyéb') { // az egyéb típusú óra gond nélkül törölhető, nincs hozzá semmi + oraElmarad($oraId, $lr); // használjuk ugyanazt a függvényt + } elseif (substr($tipus,0,7) == 'elmarad') { + oraElmarad($oraId, $lr); + } else { + // Ha egy órát "mégis" megtartunk, akkor ellenőrizni kell, hogy nem ütközik-e valamivel!! (esetleg felvett plusz órával, mozgatott órával) + // Tanár ellenőrzése + if (tanarLukasOrajaE($ki, $oraAdat['dt'], $oraAdat['ora'], $lr)) { + if ($tipus == 'összevonás') { + $_SESSION['alert'][] = 'message:wrong_data:helyettesitesRogzites:nincs mivel összevonni:'.$oraId; + continue; + } + } else { + if ($tipus != 'összevonás') { + $_SESSION['alert'][] = 'message:haladasi_utkozes:helyettesitesRogzites:'.$oraId; + continue; + } + } + if (substr($regi_tipus,0,7) == 'elmarad') { + // Tankör tagok ellenőrzése + if (getTankorJelenletKotelezoE($oraAdat['tankorId']) && !tankorTagokLukasOrajaE($oraAdat['tankorId'], $oraAdat['dt'], $oraAdat['ora'])) { + $_SESSION['alert'][] = 'message:wrong_data:A mégis megtartott óra ütközne!:oraId='.$oraId.', dt='.$oraAdat['dt'].', ora='.$oraAdat['ora']; + continue; + } + } + + // A helyettesítés rögzítése + if (mb_substr($tipus,0,6,'UTF-8') == 'normál') { + if (mb_substr($regi_tipus,0,6,'UTF-8') != 'normál') eredetiOraVissza($oraId, $oraAdat['eredet'], $lr); + } else { + if (mb_substr($regi_tipus,0,6,'UTF-8') == 'normál') { + // óraelmaradás itt már nem lehet! + masTartja($oraId, $ki, $tipus, $lr); + } else { + // Ebbe NEM értjük bele a helyettesítés --> elmarad váltást + // de beleértjük az elmarad --> helyettesítés váltást + //ujHelyettes($oraId, $ki, $tipus, $lr); + ujHelyettes2($oraAdat, $ki, $tipus, $lr); + } + } + + } // elmarad / nem marad el + + + // Ha összevonásról nem összevonásra állítunk, akkor kialakulhatott terem ütközés! + if ( + $oraAdat['teremId'] != '' + && substr($tipus,0,7) != 'elmarad' + && ($regi_tipus == 'összevonás' || substr($regi_tipus,0,7) == 'elmarad') + ) { + $Termek = getSzabadTermek(array('dt' => $oraAdat['dt'], 'ora' => $oraAdat['ora'], 'ki' => $ki), $lr); + for ($j = 0; ($j < count($Termek) && $Termek[$j]['teremId'] != $oraAdat['teremId']); $j++); + if ($j >= count($Termek)) { + $_SESSION['alert'][] = 'message:haladasi_utkozes:hianyzasRogzites:a terem foglalt:'.$oraAdat['teremId']; + $q = "UPDATE ".__TANEVDBNEV.".ora SET teremId=NULL WHERE oraId=%u"; + db_query($q, array('fv' => 'hianyzasRogzites', 'modul' => 'naplo', 'values' => array($oraId)), $lr); + } + } + } // for + + db_close($lr); + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/oralatogatas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/oralatogatas.php new file mode 100644 index 00000000..4364fc36 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/oralatogatas.php @@ -0,0 +1,30 @@ + 'oralatogatasBeiras', 'modul' => 'naplo', 'result' => 'insert', 'values' => $v)); + + if ($oralatogatasId === false) return false; + + // régi tanárhozzárendelések törlése + $q = "DELETE FROM oraLatogatasTanar WHERE oraLatogatasId=%u"; + db_query($q, array('fv' => 'oralatogatasBeiras', 'modul' => 'naplo', 'values' => array($oralatogatasId))); + + // új tanárhozzárendelések felvétele - ha van tanárhozzárendelés + if (is_array($ADAT['tanarIds']) && count($ADAT['tanarIds']) > 0) { + $q = "INSERT INTO oraLatogatasTanar (oraLatogatasId,tanarId) VALUES ".implode(',', array_fill(0, count($ADAT['tanarIds']), "($oralatogatasId, %u)")); + return db_query($q, array('fv' => 'oralatogatasBeiras', 'modul' => 'naplo', 'values' => $ADAT['tanarIds'])); + } + return true; + } + + function oralatogatasTorles($oraId) { + $q = "DELETE FROM oraLatogatas WHERE oraId=%u"; + $v = array($oraId); + return db_query($q, array('fv' => 'oralatogatasTorles', 'modul' => 'naplo', 'result' => '', 'values' => $v)); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/osszevonas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/osszevonas.php new file mode 100644 index 00000000..af80ce98 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/osszevonas.php @@ -0,0 +1,38 @@ + null, 'ora' => null)) { + + if (!is_array($DIAKIDK) || count($DIAKIDK) == 0) return false; + + $dt = readVariable($SET['dt'], 'datetime', date('Y-m-d')); + $ora = readVariable($SET['ora'], 'numeric unsigned', 1); + + $q = "SELECT DISTINCT a.tankorId, a.oraId FROM ora AS a LEFT JOIN ".__INTEZMENYDBNEV.".tankorDiak AS b + ON (a.tankorId = b.tankorId AND b.beDt<='%s' AND ('%s'<=b.kiDt OR b.kiDt IS NULL)) + WHERE b.diakId IN (".implode(',', array_fill(0, count($DIAKIDK), '%u')).") AND a.dt='%s' AND a.ora=%u + GROUP BY b.diakId HAVING COUNT(a.oraId)>0"; + $v = mayor_array_join(array($dt, $dt), $DIAKIDK, array($dt, $ora)); + return db_query($q, array('fv' => 'getOrakByDiakIdk', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + + } + + function oraFelvetele($dt, $ora, $tanarId, $tankorId, $teremId = 'NULL', $tipus = 'normál', $eredet = 'plusz') { + + // ------------------------------------ + // ITT NEM ellenőrizzük a tanár terhelését! + // ------------------------------------ + + if (!isset($teremId) || $teremId == '' || intval($teremId) == 0) { + $q = "INSERT INTO ora (dt,ora,ki,tankorId,teremId,tipus,eredet) + VALUES ('%s', %u, %u, %u, NULL, '%s', '%s')"; + $v = array($dt, $ora, $tanarId, $tankorId, $tipus, $eredet); + } else { + $q = "INSERT INTO ora (dt,ora,ki,tankorId,teremId,tipus,eredet) + VALUES ('%s', %u, %u, %u, %u, '%s', '%s')"; + $v = array($dt, $ora, $tanarId, $tankorId, $teremId, $tipus, $eredet); + } + return db_query($q, array('fv' => 'oraFelvetele', 'modul' => 'naplo', 'values' => $v)); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/pluszora.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/pluszora.php new file mode 100644 index 00000000..0112181a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/pluszora.php @@ -0,0 +1,55 @@ + 'oraFelvetele', 'modul' => 'naplo', 'values' => $v), $lr); + + } + + function getSzabadTankorok($dt, $ora) { + + // Összes tankör + $ret = $osszesTankorIds = getTankorByTanev($tanev = __TANEV, array('result' => 'idonly')); + // Az adott időpontban foglalt tankörök + $q = "SELECT tankorId FROM ora WHERE dt='%s' AND ora=%u AND tipus IN ('normál','normál máskor','helyettesítés','felügyelet','összevonás')"; + $v = array($dt, $ora); + $tankorIds = db_query($q, array('fv' => 'getSzabadTankorok', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v)); + if (is_array($tankorIds) && count($tankorIds) > 0) { + // A tankörök tagjai + $q = "SELECT DISTINCT diakId FROM ".__INTEZMENYDBNEV.".tankorDiak + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND (kiDt>='%s' OR kiDt is null) AND beDt<='%s' ORDER BY diakId"; + $v = mayor_array_join($tankorIds, array($dt, $dt)); + $diakIds = db_query($q, array('fv' => 'getSzabadTankorok', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v)); + // A foglalt diákok tankörei + $foglaltTankorIds = getTankorIdsByDiakIds($diakIds, array('tanev'=>__TANEV,'tolDt'=>$dt,'igDt'=>$dt, 'felmentettekkel'=>false)); + if (!is_array($foglaltTankorIds)) $foglaltTankorIds = $tankorIds; + $ret = array_diff($osszesTankorIds, $foglaltTankorIds); + } + + /* és vegyük hozzá a szabadon felvehető tanköröket, hm? */ + $pluszNemKotelezoTankorok = getTankorByTanev($tanev, array('result'=>'idonly','jelenlet'=>'nem kötelező' )); + $ret = mayor_array_join($ret,$pluszNemKotelezoTankorok); + if (is_array($ret) && count($ret)>0) { + $q = "SELECT DISTINCT tankor.tankorId,tankorNev + FROM ".__INTEZMENYDBNEV.".tankor LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + WHERE tanev=".__TANEV." AND tankorId IN (".implode(',', array_fill(0, count($ret), '%u')).") ORDER BY tankorNev"; + return db_query($q, array('fv' => 'getSzabadTankorok', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $ret)); + } else { + return $ret; + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/specialis.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/specialis.php new file mode 100644 index 00000000..8c78d49d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/specialis.php @@ -0,0 +1,167 @@ + 'napiOrakTorlese')); + + $q = "DELETE FROM ora WHERE dt='%s'"; + $r = db_query($q, array('fv' => 'napiOrakTorlese', 'modul' => 'naplo', 'values' => array($dt)), $lr); + if (!$r) { + db_close($lr); + return false; + } + + if ($tipus !== '') { + $q = "UPDATE nap SET tipus='%s' WHERE dt='%s'"; + $r = db_query($q, array('fv' => 'napiOrakTorlese', 'modul' => 'naplo', 'values' => array($tipus, $dt)), $lr); + // ?? Mi van, ha szünetről tanítási nap-ra állítjuk? Marad a 0. órarendi hét? ?? + } + db_close($lr); + return $r; + + } + + function orakBetoltese($dt, $orarendiHet) { + + + $lr = db_connect('naplo', array('fv' => 'orakBetoltese')); + + // Ellenőrizzük, hogy van-e már betöltve óra az adott napra + $q = "SELECT COUNT(oraId) FROM ora WHERE dt='%s'"; + $num = db_query($q, array('fv' => 'orakBetoltese', 'modul' => 'naplo', 'values' => array($dt), 'result'=>'value'), $lr); + if ($num === false) { + db_close($lr); + return false; + } + if ($num > 0) { + $_SESSION['alert'][] = 'message:wrong_data:orakBetoltese:van már betöltve óra az adott napon:'.$dt; + db_close($lr); + return false; + } + + // Ha az órarendi órákat töltjük be, akkor a nap csak tanítási nap típusú lehet + $q = "UPDATE nap SET tipus='tanítási nap',orarendiHet=%u WHERE dt='%s'"; + $r = db_query($q, array('fv' => 'orakBetoltese', 'modul' => 'naplo', 'values' => array($orarendiHet, $dt)), $lr); + if (!$r) { + db_close($lr); + return false; + } + + // Órák betöltése + checkNaplo($dt, $lr); + db_close($lr); + return true; + + } + + function specialisNap($dt, $celOra, $het, $nap, $ora, $olr = null) { + + if ($olr == '') $lr = db_connect('naplo', array('fv' => 'specialisNap')); + else $lr = $olr; + db_start_trans($lr); + + // A (speciális) tanítási napokhoz rendelt osztályok + $q = "SELECT osztalyId FROM nap LEFT JOIN munkatervOsztaly USING (munkatervId) WHERE dt='%s' + AND tipus IN ('tanítási nap','speciális tanítási nap') AND osztalyId IS NOT NULL"; // null akkor lehet, ha nincs hozzárendelve egyetlen osztály sem egy munkatervhez... + $v = array($dt); + $osztalyIds = db_query($q, array('fv' => 'specialisNap/osztalyIds', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v), $lr); + if (!is_array($osztalyIds) || count($osztalyIds) == 0) { + db_rollback($lr, 'specialisNap/#1'); + if ($olr == '') db_close($lr); + return false; + } + + // Érintett tankörök + $q = "SELECT DISTINCT tankorId FROM ".__INTEZMENYDBNEV.".tankorOsztaly WHERE osztalyId IN (".implode(',',$osztalyIds).")"; + $tankorIds = db_query($q, array('fv'=>'specialisNap/tankorIds', 'modul'=>'naplo', 'result'=>'idonly'), $lr); + if (!is_array($tankorIds) || count($tankorIds) == 0) { + db_rollback($lr, 'specialisNap/#2'); + if ($olr == '') db_close($lr); + return false; + } + + // Órák betöltése sávonként + $ok = true; + for ($i = 0; $i < count($celOra); $i++) { + if ($het[$i] != '' and $nap[$i] != '' and $ora[$i] != '') { + + $napszam = date('w',strtotime($nap[$i])); + if ($napszam == 0) $napszam = 7; + + $q = "INSERT INTO ora (dt,ora,ki,tankorId,teremId,tipus,eredet) + SELECT '%s', %u, orarendiOra.tanarId,orarendiOraTankor.tankorId,teremId,'normál','órarend' + FROM orarendiOra LEFT JOIN orarendiOraTankor USING (tanarId, osztalyJel, targyJel) + WHERE orarendiOraTankor.tankorId IS NOT NULL + AND tankorId IN (".implode(',', $tankorIds).") + AND het=%u + AND nap=%u + AND ora=%u + AND tolDt<='%s' + AND (igDt IS NULL OR igDt>='%s')"; + $v = array($dt, $celOra[$i], $het[$i], $nap[$i], $ora[$i], $dt, $dt); + $r = db_query($q, array('fv' => 'specialisNap', 'modul' => 'naplo', 'values' => $v), $lr); + if (!$r) $ok = false; + + } // minden adat megvan + } // end for + if (!$ok) { + db_rollback($lr, 'specialisNap/#3'); + if ($olr == '') db_close($lr); + return false; + } + + // speciális tanítási nap-ra állítjuk a tanítási napokat + $q = "UPDATE nap SET tipus='speciális tanítási nap',orarendiHet=0 WHERE dt='%s' AND tipus='tanítási nap'"; + $r = db_query($q, array('fv' => 'specialisNap', 'modul' => 'naplo', 'values' => array($dt)), $lr); + if (!$r) { + db_rollback($lr, 'specialisNap/#4'); + if ($olr == '') db_close($lr); + return false; + } + + db_commit($lr); + if ($olr == '') db_close($lr); + return true; + } + + function getSzabadOrak($dt) { + + $q = "SELECT DISTINCT ora FROM ora + WHERE dt='%s' AND tipus NOT LIKE 'elmarad%%'"; + $foglaltOrak = db_query($q, array('fv' => 'getSzabadOrak', 'modul' => 'naplo', 'result' => 'idonly', 'values' => array($dt))); + if (is_array($foglaltOrak)) { + $szabadOrak = array(); + for ($i = getMinOra(); $i <= getMaxOra(); $i++) { + if (!in_array($i, $foglaltOrak)) $szabadOrak[] = $i; + } + } + + return $szabadOrak; + + } + + function orakTorlese($dt, $Orak) { + + + $lr = db_connect('naplo', array('fv' => 'orakTorlese')); + + $q = "DELETE FROM ora WHERE dt='%s' AND ora IN (".implode(',', array_fill(0, count($Orak), '%u')).")"; + array_unshift($Orak, $dt); + $r = db_query($q, array('fv' => 'orakTorlese', 'modul' => 'naplo', 'values' => $Orak), $lr); + if (!$r) { + db_close($lr); + return false; + } + + $q = "UPDATE nap SET tipus='speciális tanítási nap', orarendiHet=0 WHERE dt='%s'"; + $r = db_query($q, array('fv' => 'orakTorlese', 'modul' => 'naplo', 'values' => array($dt)), $lr); + db_close($lr); + return $r; + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/stat.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/stat.php new file mode 100644 index 00000000..45d1d9de --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/stat.php @@ -0,0 +1,103 @@ + 'munkatervTankor', 'modul'=>'naplo', 'result'=>'keyvalues','values'=>$tankorIds)); + } + + function tankorMunkaterv($tankorIds) { + + $q = "SELECT DISTINCT tankorId, munkatervId FROM munkatervOsztaly LEFT JOIN ".__INTEZMENYDBNEV.".tankorOsztaly USING (osztalyId) + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") ORDER BY tankorId, munkatervId"; + return db_query($q, array('fv' => 'tankorMunkaterv', 'modul'=>'naplo', 'result'=>'keyvalues','values'=>$tankorIds)); + } +*/ + function getTankorStat($tankorIds, $dt = '') { + + global $_TANEV; + + if ($dt == '') $dt = date('Y-m-d'); + $szDb = count($_TANEV['szemeszter']); + $ret = array(); + + // Van-e nem végzős tanuló az adott tankörökben --> a tankör végzős-e + $ret['vegzos'] = tankorokVegzosekE($tankorIds, __TANEV, array('tagokAlapjan' => true, 'tolDt' => null, 'igDt' => null)); + + // tervezett óraszámok lekérdezése + $q = "SELECT szemeszter, tankorId, tankorNev, oraszam FROM ".__INTEZMENYDBNEV.".tankorSzemeszter + WHERE tanev=".__TANEV." AND tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + ORDER BY tankorId, szemeszter"; + $ret['tervezett'] = db_query($q, array( + 'fv' => 'getTankorStat', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => $tankorIds + )); + foreach ($ret['tervezett'] as $tankorId => $tankorAdat) { + $ret['tanitasiHetekSzama'][$tankorId] = getTanitasiHetekSzama(array('tankorId'=>$tankorId,'vegzos'=>$ret['vegzos'][$tankorId])); + $oraszam = 0; + for ($i = 0; $i < count($tankorAdat); $i++) { + $oraszam += $tankorAdat[$i]['oraszam']; + } + $ret['tervezett'][$tankorId]['hetiOraszam'] = $oraszam / $szDb; + $ret['tervezett'][$tankorId]['evesOraszam'] = $oraszam / $szDb * $ret['tanitasiHetekSzama'][$tankorId]; + } + + // megtartott órák száma + if (defined('__ORASZAMOT_NOVELO_TIPUSOK')) { + $oraszamNoveloTipus = explode(',', __ORASZAMOT_NOVELO_TIPUSOK); + } else { + $_SESSION['alert'][] = 'info:missing_constant:__ORASZAMOT_NOVELO_TIPUSOK'; + $oraszamNoveloTipus = array('normál', 'normál máskor', 'helyettesítés', 'összevonás'); + } + $q = "SELECT tankorId, COUNT(oraId) AS oraSzam FROM ora + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND tipus IN ('".implode("','", array_fill(0, count($oraszamNoveloTipus), '%s'))."') + AND dt <= '%s' GROUP BY tankorId"; + $v = mayor_array_join($tankorIds, $oraszamNoveloTipus, array($dt)); + $ret['megtartott'] = db_query($q, array( + 'fv' => 'getTankorStat', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $v + )); + + if (is_array($tankorIds) && count($tankorIds)>0) { + + $q = "SELECT tankorId,COUNT(DISTINCT dt, ora) AS oraSzam + FROM (nap LEFT JOIN munkatervOsztaly USING (munkatervId)) + LEFT JOIN ( + orarendiOra + LEFT JOIN orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorOsztaly USING (tankorId) + ) + ON (((DAYOFWEEK(dt)+5) MOD 7)+1 = orarendiOra.nap) + AND orarendiOra.het=nap.orarendiHet + AND orarendiOra.tolDt<=dt AND orarendiOra.igDt>=dt + AND munkatervOsztaly.osztalyId = tankorOsztaly.osztalyId + WHERE tanarId IS NOT NULL + AND tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND dt > '%s' + GROUP BY tankorId"; + $v = mayor_array_join($tankorIds, array($dt)); + $ret['becsult'] = db_query($q, array( + 'fv' => 'getTankorStat/becsült', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $v + )); + + // beírt érdemjegyek száma + $q = "SELECT tankorId, COUNT(jegy) AS jegyDb FROM jegy WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND dt <= '%s' GROUP BY tankorId"; + $v = $tankorIds; array_push($v, $dt); + $ret['jegyekSzama'] = db_query($q, array( + 'fv' => 'getTankorStat/jegyekSzama', 'modul' => 'naplo', 'result' => 'keyvaluepair', 'values' => $v + )); + // tankörlétszámok... + array_push($v, $dt); + $q = "SELECT tankorId, COUNT(*) AS db FROM tankorDiak WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR '%s' <= kiDt) GROUP BY tankorId"; + $ret['letszam'] = db_query($q, array( + 'fv' => 'getTankorStat/letszam', 'modul' => 'naplo_intezmeny', 'result' => 'keyvaluepair', 'values' => $v + )); + } + + return $ret; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/teremModositas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/teremModositas.php new file mode 100644 index 00000000..1f104649 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/haladasi/teremModositas.php @@ -0,0 +1,30 @@ + 'getOraIdByPattern', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v, 'debug'=>false )); + if (count($r)!==1) + return false; + else + return $r[0]['oraId']; + return false; + } + + function checkHaladasiSzabadTerem($dt,$ora,$teremId,$lr) { + $v = array($dt,$ora,$teremId); + $q = "SELECT count(*) as db FROM `ora` WHERE `dt`='%s' AND `ora`=%u AND `teremId`=%u AND tipus!='elmarad' AND tipus!='elmarad máskor'"; + return (db_query($q, array( 'fv' => 'checkHaladasiSzabadTerem', 'modul' => 'naplo', 'result'=>'value','values' => $v), $lr) === "0"); + } + + function haladasiTeremModositas($oraId,$teremId,$lr) { + if (!is_numeric($oraId) || !is_numeric($teremId)) return false; + $v = array($teremId,$oraId); + $q = "UPDATE ora SET teremId=%u WHERE oraId=%u"; + return db_query($q, array( 'fv' => 'haladasiTeremModositas', + 'modul' => 'naplo', 'values' => $v), $lr); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/diak.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/diak.php new file mode 100644 index 00000000..a98a0ef0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/diak.php @@ -0,0 +1,119 @@ +'hiányzás','statusz'=>'igazolatlan', 'igazolas'=>'')) { + global $napiMinOra, $napiMaxOra; + + $q = "SELECT * FROM hianyzas WHERE diakId=%u AND dt='%s'"; + $RES = db_query($q, array('fv' => 'napiHianyzasBeiras', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($diakId, $dt))); + + $T = $diakTANKOROK = getTankorByDiakId($diakId, __TANEV, array('csakId' => true, 'tolDt' => $dt, 'igDt' => $dt, 'result'=>'csakid')); + + $tmpOrak = getOrak($T,array('tolDt'=>$dt,'igDt'=>$dt,'csakId'=>false)); + $diakORAK = $tmpOrak['orak']; + + if (!is_array($diakORAK)) { + $_SESSION['alert'][] = ':nincs_oraja:'; + return false; + } + foreach ($diakORAK[$dt] as $_ora=>$ORA) { + $_diakFmTankorIdk = getTankorDiakFelmentes($diakId, __TANEV, array('csakId' => true, 'tolDt' => $dt, 'igDt' => $dt, 'nap'=>date('w',strtotime($dt)), 'ora'=>$_ora, 'result'=>'csakid')); + foreach($ORA as $_tankorId => $_OA) { + if ( in_array($_tankorId,$_diakFmTankorIdk) === true ) { + continue; + } + $diakORAIDK[] = $_OA['oraId']; + $ORAK[$_OA['oraId']] = $_OA; + } + } + + $MODOSITANDO = $eddigORAIDK = array(); + $error = false; + for ($i=0; $i$_oraId,'id'=>$_hid,'statusz'=>$SET['statusz'],'igazolas'=>$SET['igazolas'],'tipus'=>$SET['tipus']); + } + $eddigORAIDK[] = $_oraId; + } + + if (!$error) { + $BEIRANDO = array_diff($diakORAIDK,$eddigORAIDK); +// for ($i=0; $i $_oraId) { + if (!in_array($ORAK[$_oraId]['tipus'],array('elmarad','elmarad máskor'))) + hianyzasRegisztralas( + array('oraId'=>$_oraId,'dt'=>$ORAK[$_oraId]['dt'],'ora'=>$ORAK[$_oraId]['ora']), + array(array('diakId'=>$diakId, 'id'=>'','statusz'=>$SET['statusz'],'igazolas'=>$SET['igazolas'],'tipus'=>$SET['tipus'])) + ); + } + + if (is_array($MODOSITANDO) && count($MODOSITANDO)>0) + hianyzasIgazolas($MODOSITANDO,$diakId); + + } + } + + + function oraHianyzasBeiras($dt, $ora, $diakId, $SET=array()) { + + if ($dt=='' || $ora=='') { + $_SESSION['alert'][] = 'message:empty_fields:kötelező paraméter üres (oraHianyzasBeiras:dt,ora)'; + return false; + } + $q = "SELECT * FROM hianyzas WHERE diakId=%u AND dt='%s' AND ora=%u"; + $RES = db_query($q, array('fv' => 'oraHianyzasBeiras', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($diakId, $dt, $ora))); + if ($RES!==false && count($RES)>0) { + + $_SESSION['alert'][] = 'message:wrong_data:már van bejegyzése. Eldöntési kérdés.'; + + } else { + + // Aznapi tankörei és felmentései + $diakTANKOROK = getTankorByDiakId($diakId, __TANEV, array('csakId' => true, 'tolDt' => $dt, 'igDt' => $dt, 'result'=>'csakid')); + $diakFMTANKOROK = getTankorDiakFelmentes($diakId, __TANEV, array('csakId' => true, 'tolDt' => $dt, 'igDt' => $dt, 'nap'=>date('w',strtotime($dt)),'ora'=>$ora,'result'=>'csakid')); + + $T = array_diff($diakTANKOROK,$diakFMTANKOROK); + reset($T); + sort($T); + + $q = "SELECT * FROM ora WHERE ora=%u AND dt='%s' and tankorId IN (".implode(',', array_fill(0, count($T), '%u')).")"; + $v = mayor_array_join(array($ora, $dt), $T); + $oraAdat = db_query($q, array('fv' => 'oraHianyzasBeiras', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + + // EDDIG: csak akkor regisztráltuk, ha egy találatot adott az ora tábla. + // if ( ($db=count($oraAdat)) ==1 && !in_array($oraAdat[0]['tipus'],array('elmarad','elmarad máskor')) ) { + // MOST : azonban lehetséges olyan eset, hogy az adott órára többször is regisztrálandó. Mit tegyünk? + // a napi beírás beírja! Ez a függvény hibaüzen. + + if ( ($db=count($oraAdat)) >=1 ) { + for ($i=0; $i$oraAdat[$i]['oraId'],'dt'=>$oraAdat[$i]['dt'],'ora'=>$oraAdat[$i]['ora']), + array(array('diakId'=>$diakId, 'id'=>'','statusz'=>$SET['statusz'],'igazolas'=>$SET['igazolas'],'tipus'=>$SET['tipus'])) + ); + } + } + } elseif ($db==0) { + $_SESSION['alert'][] = '::nincs órája.'; + } elseif (in_array($oraAdat[0]['tipus'],array('elmarad','elmarad máskor'))) { + // ekkor nem kell csinálni semmit. Hibaüzenetet sem. + } else { + // ide nem juthatunk MÁR! + $_SESSION['alert'][] = ':%0%:%1% órája is van ebben az időpontban:'.$db; + } + } + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/oktstat.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/oktstat.php new file mode 100644 index 00000000..c3cc7a24 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/oktstat.php @@ -0,0 +1,155 @@ + 'hianyzasOsszesites', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result'=>'value'), $lr); + + if ( $overrideLezart === true || $dbAdat==0 ) { + + $Wnemszamit = defWnemszamit(); + // A tanévhez tartozó hiányzási adatok lekérdezése és rögzítése + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + $j = 0; + foreach ($TA['szemeszter'] as $i => $szAdat) { + if ($j==0) $q = "CREATE TEMPORARY TABLE ".__INTEZMENYDBNEV.".__hianyzasOsszesites "; + else $q = "INSERT INTO ".__INTEZMENYDBNEV.".__hianyzasOsszesites "; + $q .= " 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 + 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']); + db_query($q, array('fv' => 'hianyzasOsszesites', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + // 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']); + db_query($q, array('fv' => 'hianyzasOsszesites/hozott', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + $j++; + } + } + +// ----------------------------- + + $SQL_hianyzasOsszesites = ( ($overrideLezart === true) ? '__hianyzasOsszesites' : 'hianyzasOsszesites'); + + $q = "select IFNULL(telephelyId,0) AS telephelyId, osztalyJel as 'osztály', +count(if(igazolatlan>0,1,null)) as `van igazolatlanja`, +count(if(igazolatlan=1,1,null)) as `1 igazolatlan`, +count(if(10,1,null)) as igazolt, +count(if(249'oktstat','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'indexed'), $lr); + + $q = "select IFNULL(telephelyId,0) AS telephelyId, osztalyJel as `osztály`, +count(if(igazolatlan>0,1,null)) as `van igazolatlanja`, +count(if(igazolatlan=1,1,null)) as `1 igazolatlan`, +count(if(10,1,null)) as igazolt, +count(if(249='%s' +and tanev=%u and szemeszter=%u +and beDt<='%s' and (kiDt is null or '%s'<=kiDt) +group by csop order by telephelyId,lpad(osztalyJel,4,' ') +"; + + $v = array($tanev,date('Y-m-d',strtotime('-16 years', strtotime($TA['kezdesDt']))),$tanev,count($TA['szemeszter']),$TA['zarasDt'],$TA['zarasDt']); + $r['tankoteles'] = db_query($q, array('fv'=>'oktstat','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'indexed'), $lr); + + db_query('DROP TABLE IF EXISTS __hianyzasOsszesites', array('fv' => 'hianyzasOsszesites/hozott', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + db_close($lr); + + $r['a04t17'] = getStat_a04t17($tanev); + + return $r; + } + + function getStat_a04t17($tanev) { + + $stat = 'a04t17'; + + $LJ = "LEFT JOIN osztalyDiak USING (diakId) LEFT JOIN osztaly USING (osztalyId)"; + + // az iskolába lépőnek tekintjük az 1 évfolyamosokat, vagyis azokat, akik annak az osztálynak a tagjai szept 1-jén + // amelyik kezdoEvfolyamSorszam=1, kezdoTanev=$tanev és osztalyJellegId IN (1,21,22,65) az adott tanévben + $W = " AND osztaly.kezdoTanev=$tanev AND kezdoEvfolyamSorszam=1 AND osztalyJellegId IN (1,21,22,65)"; // kezdoEvfolyam=1 volt eredetileg + + $q = "SELECT nem,count(DISTINCT diakId) AS db FROM diak $LJ WHERE szuletesiIdo+INTERVAL 6 YEAR>'$tanev-09-01' $W GROUP BY nem"; // nincs egyenlő!!! + $R[$stat.'_4'] = db_query($q, array('fv'=>'oktstat','modul'=>'naplo_intezmeny','result'=>'assoc','keyfield'=>'nem')); + $q = "SELECT nem,count(DISTINCT diakId) AS db FROM diak $LJ WHERE szuletesiIdo+INTERVAL 6 YEAR<='$tanev-08-31' and szuletesiIdo+INTERVAL 6 YEAR>='$tanev-06-01' $W GROUP BY nem"; + $R[$stat.'_3'] = db_query($q, array('fv'=>'oktstat','modul'=>'naplo_intezmeny','result'=>'assoc','keyfield'=>'nem')); + $q = "SELECT nem,count(DISTINCT diakId) AS db FROM diak $LJ WHERE szuletesiIdo+INTERVAL 6 YEAR<='$tanev-05-31' $W GROUP BY nem"; // nincs egyenlő!!! + $R[$stat.'_2'] = db_query($q, array('fv'=>'oktstat','modul'=>'naplo_intezmeny','result'=>'assoc','keyfield'=>'nem')); + + return $R; + } + +// var_dump(getStat_a04t17(2014)); + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/ora.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/ora.php new file mode 100644 index 00000000..56648a8c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/ora.php @@ -0,0 +1,8 @@ +share hianyzasModifier + function hianyzasPercUpdate($ORAADAT,$PERCEK) +*/ + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/osztaly.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/osztaly.php new file mode 100644 index 00000000..07efde7d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/hianyzas/osztaly.php @@ -0,0 +1,232 @@ + 'getHianyzok')); + $H = array(); + if ($SET['dt']!='') { + $Diakok = getDiakokByOsztaly($ADAT['osztalyId'],array('tolDt'=>$SET['dt'],'igDt'=>$SET['dt'])); + } else { + $Diakok = getDiakokByOsztaly($ADAT['osztalyId']); + } + $munkatervIds = getMunkatervByOsztalyId($ADAT['osztalyId'], array('result'=>'idonly')); + $H['névsor'] = array(); + foreach (array('jogviszonyban van','magántanuló','vendégtanuló') as $statusz) { + foreach ($Diakok[$statusz] as $diakId) { + if (!is_array($H['névsdor'][$diakId])) { + $H['névsor'][$diakId] = $Diakok[$diakId]; + // Az aktuális státusz megállapítása + $i = 0; + // A státuszbejegyzések sora időben visszafele rendezett!! + while ($i < count($Diakok[$diakId]['statusz']) && strtotime($Diakok[$diakId]['statusz'][$i]['dt']) > time()) $i++; + $H['névsor'][$diakId]['aktualisStatusz'] = $Diakok[$diakId]['statusz'][$i]['statusz']; + } + } + } + + + foreach ($H['névsor'] as $diakId => $dAdat) { + $H['diakIds'][] = $diakId; + $H[$diakId] = array(); + } + + if (count($H['névsor']) == 0) return $H; + + // A legmagasabb fegyelmi fokozat lekérdezése tanulónként + $q = "SELECT `diakId`, MAX(`referenciaDt`) AS `referenciaDt`, MAX(`fokozat`) AS `fokozat`, MAX(`bejegyzes`.`hianyzasDb`) AS `hianyzasDb` + FROM `".__TANEVDBNEV."`.`bejegyzes` LEFT JOIN `".__INTEZMENYDBNEV."`.`bejegyzesTipus` USING (`bejegyzesTipusId`) + WHERE `diakId` IN (".implode(',', array_fill(0, count($H['diakIds']), '%u')).") + AND `tipus` = 'fegyelmi' AND `bejegyzes`.`hianyzasDb` > 0 + GROUP BY `diakId`"; + $ret = db_query($q, array('fv' => 'getHianyzok/fegyelmi', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $H['diakIds']), $lr); + if (!is_array($ret)) { if ($olr == '') db_close($lr); return false; } + foreach ($ret as $key => $val) { + $H[ $val['diakId'] ]['fegyelmi'] = array( + 'fokozat' => $val['fokozat'], + 'referenciaDt' => $val['referenciaDt'], + 'hianyzasDb' => $val['hianyzasDb'] + ); + } + $q = "SELECT `diakId`, MAX(`referenciaDt`) AS `referenciaDt`, MAX(`fokozat`) AS `fokozat`, MAX(`bejegyzes`.`hianyzasDb`) AS `hianyzasDb` + FROM `".__TANEVDBNEV."`.`bejegyzes` LEFT JOIN `".__INTEZMENYDBNEV."`.`bejegyzesTipus` USING (`bejegyzesTipusId`) + WHERE `diakId` IN (".implode(',', array_fill(0, count($H['diakIds']), '%u')).") + AND `tipus` = 'fegyelmi' + GROUP BY `diakId`"; + $ret = db_query($q, array('fv' => 'getHianyzok/fegyelmi', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $H['diakIds']), $lr); + if (!is_array($ret)) { if ($olr == '') db_close($lr); return false; } + foreach ($ret as $key => $val) { + $H[ $val['diakId'] ]['fegyelmi']['maxFokozat'] = $val['fokozat']; + } + + $f_where = $where = $v_fw = $v_w = array(); + $v_w = array($ADAT['tolDt'], $ADAT['igDt']); + // A _LEGKORABBI_IGAZOLHATO_HIANYZAS és a legutóbbi osztályfőnöki óra függvénye + $dt = legkorabbiIgazolhatoHianyzasVeg($ADAT['osztalyId'], $lr); + foreach ($H['névsor'] as $diakId => $dAdat) { + // Az utolsó lezártnak tekinthető dátum - a beírt hiányzások függvénye! + $H[$diakId]['igDt'] = $tDt = getNemIgazolhatoDt($diakId, $munkatervIds, $dt, $lr); + // Ha megadott a felhasználó új viszonyítási pontott, akkor úgy vesszük, hogy addig a dátumig már le vannak zárva a hiányzások - legalábbis a fegyelmi szempontjából + if ($ADAT['referenciaDt'] != '' && strtotime($ADAT['referenciaDt']) > strtotime($tDt)) $tDt = $ADAT['referenciaDt']; + $where[] = "(diakId=%u AND dt<='%s')"; array_push($v_w, $diakId, $tDt); + if ($H[$diakId]['fegyelmi']['referenciaDt'] != '') { + $f_where[] = "(diakId=%u AND '%s'
0) $where = "AND '%s' <= dt AND dt <= '%s' AND (".implode(' OR ', $where).")"; + if ($f_where != '') $f_where = 'AND ('.implode(' OR ',$f_where).')'; + // Összes hiányzás lekérdezése + $q = "SELECT diakId,tipus,statusz,count(*) AS db,SUM(perc) AS ido + FROM ".__TANEVDBNEV.".hianyzas".$Wnemszamit['join']." + WHERE statusz != 'törölt' + AND diakId IN (".implode(',', array_fill(0, count($H['diakIds']), '%u')).") + AND '%s' <= dt AND dt <= '%s' + ".$Wnemszamit['nemszamit']." + GROUP BY diakId, tipus, statusz"; + $v = $H['diakIds']; $v[] = $ADAT['tolDt']; $v[] = $ADAT['igDt']; + $ret = db_query($q, array('fv' => 'getHianyzok/összes', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + if (!is_array($ret)) { if ($olr == '') db_close($lr); } + foreach ($ret as $key => $val) { + if ($val['tipus'] == 'késés') + $H[ $val['diakId'] ]['összes'][ $val['tipus'] ][ $val['statusz'] ] = array('db' => $val['db'], 'ido' => $val['ido']); + else + $H[ $val['diakId'] ]['összes'][ $val['tipus'] ][ $val['statusz'] ] = $val['db']; + } + + // Lezárt hiányzások lekérdezése + $q = "SELECT diakId,tipus,statusz,COUNT(*) AS db,SUM(perc) AS ido + FROM hianyzas + ".$Wnemszamit['join']." + WHERE statusz != 'törölt' + $where + ".$Wnemszamit['nemszamit']." + GROUP BY diakId, tipus, statusz"; + $ret = db_query($q, array('fv' => 'getHianyzok/lezárt', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v_w), $lr); + if (!is_array($ret)) { if ($olr == '') db_close($lr); } + foreach ($ret as $key => $val) { + if ($val['tipus'] == 'késés') + $H[ $val['diakId'] ]['lezárt'][ $val['tipus'] ][ $val['statusz'] ] = array('db' => $val['db'], 'ido' => $val['ido']); + else + $H[ $val['diakId'] ]['lezárt'][ $val['tipus'] ][ $val['statusz'] ] = $val['db']; + } + + // Lezárt, még nem szankcionált hiányzások lekérdezése + $q = "SELECT diakId, tipus, statusz, COUNT(*) AS db, SUM(perc) AS ido + FROM hianyzas + ".$Wnemszamit['join']." + WHERE statusz != 'törölt' + $f_where + ".$Wnemszamit['nemszamit']." + GROUP BY diakId, tipus, statusz"; + + $ret = db_query($q, array('fv' => 'getHianyzok/lezárt, nem szankcionált', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v_fw), $lr); + if (!is_array($ret)) { if ($olr == '') db_close($lr); } + foreach ($ret as $key => $val) { + if ($val['tipus'] == 'késés') + $H[ $val['diakId'] ]['fegyelmi'][ $val['tipus'] ][ $val['statusz'] ] = array('db' => $val['db'], 'ido' => $val['ido']); + else + $H[ $val['diakId'] ]['fegyelmi'][ $val['tipus'] ][ $val['statusz'] ] = $val['db']; + } + + // Tanulónként + foreach ($H['névsor'] as $diakId => $dAdat) { + + $_HOZOTT = getDiakHozottHianyzas($diakId); //hozott hiányzások lekérdezése az alapértelmezett tanévre + //$H[$diakId]['összes']['hozott'] = $_HOZOTT['igazolatlan']['db'] + $_HOZOTT['igazolt']['db']; + + $H[$diakId]['hozott'] = $_HOZOTT; //??? + +// $H[$diakId]['összes']['hiányzás']['igazolt'] += $_HOZOTT['igazolt']['db']; +// $H[$diakId]['összes']['hiányzás']['igazolatlan'] += $_HOZOTT['igazolatlan']['db']; + + /* Egy diák */ + $H[$diakId]['összes igazolatlan'] = $H[$diakId]['összes']['hiányzás']['igazolatlan']; + + // 20/2012 EMMI 51. § (10) - igazolt késések is átváltandók + $H[$diakId]['összes igazolt'] += + floor($H[$diakId]['összes']['késés']['igazolt']['ido'] / 45); + // Az igazolatlanok esetén azt a számítási módot használjuk, amelyik szigorúbb + // Előbb a hivatalos, 45 percenkénti átváltás szerint + $igazolatlanKesesbol = floor($H[$diakId]['összes']['késés']['igazolatlan']['ido'] / 45); + // majd a késések, felszereléshiányok darabszáma szerinti + if (intval(_HANY_KESES_IGAZOLATLAN) != 0) + $igazolatlanFegyelmi = floor($H[$diakId]['összes']['késés']['igazolatlan']['db'] / intval(_HANY_KESES_IGAZOLATLAN)); + else + $igazolatlanFegyelmi = 0; + if (intval(_HANY_FSZ_IGAZOLATLAN) != 0) + $igazolatlanFegyelmi += floor($H[$diakId]['összes']['felszerelés hiány']['igazolatlan'] / intval(_HANY_FSZ_IGAZOLATLAN)); + if (intval(_HANY_EH_IGAZOLATLAN) != 0) // egyenruha hiány + $igazolatlanFegyelmi += floor($H[$diakId]['összes']['egyenruha hiány']['igazolatlan'] / intval(_HANY_EH_IGAZOLATLAN)); + // végül a kettő közül a nagyobbikkal növeljük az összes igazolatlanok számát ??? ezt miért? + if ($igazolatlanKesesbol > $igazolatlanFegyelmi) + $H[$diakId]['összes igazolatlan'] += $igazolatlanKesesbol; + else + $H[$diakId]['összes igazolatlan'] += $igazolatlanFegyelmi; +/* + //if (_KESESI_IDOK_OSSZEADODNAK === true) { // 20/2012 EMMI - mindenképp összeadódnak a késési idők + $H[$diakId]['összes igazolatlan'] += + floor($H[$diakId]['összes']['késés']['igazolatlan']['ido'] / 45); + //} else { + if (intval(_HANY_KESES_IGAZOLATLAN) != 0) + $H[$diakId]['összes igazolatlan'] += + floor($H[$diakId]['összes']['késés']['igazolatlan']['db'] / intval(_HANY_KESES_IGAZOLATLAN)); + if (intval(_HANY_FSZ_IGAZOLATLAN) != 0) + $H[$diakId]['összes igazolatlan'] += + floor($H[$diakId]['összes']['felszerelés hiány']['igazolatlan'] / intval(_HANY_FSZ_IGAZOLATLAN)); + //} +*/ +# Itt ne adjuk ezt hozzá, mert alább a $H[$diakId]['összes igazolatlan']-okat összegezzük - abban meg már benne lesz a hozott! (Issu 59) +# $H['összes']['összes igazolatlan'] += floor($_HOZOTT['igazolatlan']['db']); +# $H['összes']['összes igazolt'] += floor($_HOZOTT['igazolt']['db']); + $H[$diakId]['összes igazolatlan'] += floor($_HOZOTT['igazolatlan']['db']); + $H[$diakId]['összes igazolt'] += floor($_HOZOTT['igazolt']['db']); + + + if (_KESESI_IDOK_OSSZEADODNAK === true) { + $H[$diakId]['összes fegyelmi igazolatlan'] += + floor(((($H[$diakId]['összes']['késés']['igazolatlan']['ido'] + - $H[$diakId]['fegyelmi']['késés']['igazolatlan']['ido']) % 45 ) + + $H[$diakId]['fegyelmi']['késés']['igazolatlan']['ido']) / 45); + } + + + /* Összes Diákra, összesítés */ + $H['összes']['hiányzás']['igazolt'] += $H[$diakId]['összes']['hiányzás']['igazolt']; + $H['összes']['hiányzás']['igazolatlan'] += $H[$diakId]['összes']['hiányzás']['igazolatlan']; + + $H['összes']['hiányzás']['igazolatlan'] += floor($_HOZOTT['igazolatlan']['db']); + $H['összes']['hiányzás']['igazolt'] += floor($_HOZOTT['igazolt']['db']); + + $H['összes']['késés']['igazolt'] += $H[$diakId]['összes']['késés']['igazolt']['db']; + $H['összes']['késés']['igazolatlan'] += $H[$diakId]['összes']['késés']['igazolatlan']['db']; + $H['összes']['felszerelés hiány']['igazolatlan'] += $H[$diakId]['összes']['felszerelés hiány']['igazolatlan']; + $H['összes']['felmentés']['igazolatlan'] += $H[$diakId]['összes']['felmentés']['igazolatlan']; + $H['összes']['egyenruha hiány']['igazolatlan'] += $H[$diakId]['összes']['egyenruha hiány']['igazolatlan']; + + $H['összes']['összes igazolatlan'] += $H[$diakId]['összes igazolatlan']; + + $H['összes']['fegyelmi']['hiányzás']['igazolatlan'] += $H[$diakId]['fegyelmi']['hiányzás']['igazolatlan']; + $H['összes']['fegyelmi']['késés']['igazolatlan'] += $H[$diakId]['fegyelmi']['késés']['igazolatlan']['db']; + $H['összes']['fegyelmi']['felszerelés hiány']['igazolatlan'] += $H[$diakId]['fegyelmi']['felszerelés hiány']['igazolatlan']; + $H['összes']['fegyelmi']['egyenruha hiány']['igazolatlan'] += $H[$diakId]['fegyelmi']['egyenruha hiány']['igazolatlan']; + + } + + db_close($lr); + + return $H; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/hibabejelento/admin.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/hibabejelento/admin.php new file mode 100644 index 00000000..a32c1283 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/hibabejelento/admin.php @@ -0,0 +1,28 @@ + 'hibabejeletes', 'result'=>'insert','modul' => 'naplo_base', 'values' => array($ADAT['txt'],$ADAT['kategoria'],$telephelyId))); + } else { + return false; + } + + } + + function kerelemValasz($ADAT) { + if ($ADAT['txt'] != '' && $ADAT['kerelemId']>0) { + //if ($ADAT['telephelyId']=='') $telephelyId = 'NULL'; else $telephelyId = $ADAT['telephelyId']; + $q = "INSERT INTO kerelemValasz (kerelemId,userAccount,valasz) VALUES ('%u','"._USERACCOUNT."','%s')"; + return db_query($q, array('fv' => 'hibabejeletes', 'modul' => 'naplo_base', 'values' => array($ADAT['kerelemId'],$ADAT['txt']))); + } else { + return false; + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/hibabejelento/hibabejelento.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/hibabejelento/hibabejelento.php new file mode 100644 index 00000000..bedda878 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/hibabejelento/hibabejelento.php @@ -0,0 +1,27 @@ + 'hibabejeletes', 'result'=>'insert','modul' => 'naplo_base', 'values' => array($ADAT['txt'],$ADAT['kategoria'],$telephelyId))); + } else { + return false; + } + + } + + function kerelemValasz($ADAT) { + if ($ADAT['txt'] != '' && $ADAT['kerelemId']>0) { + //if ($ADAT['telephelyId']=='') $telephelyId = 'NULL'; else $telephelyId = $ADAT['telephelyId']; + $q = "INSERT INTO kerelemValasz (kerelemId,userAccount,valasz) VALUES ('%u','"._USERACCOUNT."','%s')"; + return db_query($q, array('fv' => 'hibabejeletes', 'modul' => 'naplo_base', 'values' => array($ADAT['kerelemId'],$ADAT['txt']))); + } else { + return false; + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakExport.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakExport.php new file mode 100644 index 00000000..7752c577 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakExport.php @@ -0,0 +1,137 @@ + array('oId','viseltNevElotag','viseltCsaladinev','viseltUtonev','diakNaploSorszam'), + 'egyszerű' => array('diakigazolvanySzam','viseltNevElotag','viseltCsaladinev','viseltUtonev','diakNaploSorszam'), + 'osztályfőnöki' => array('diakigazolvanySzam','viseltNevElotag','viseltCsaladinev','viseltUtonev','oId','diakNaploSorszam'), + 'taninformTanuló' => array('oId','diakigazolvanySzam','viseltNevElotag','viseltCsaladinev','viseltUtonev','szuleteskoriNevElotag', + 'szuleteskoriCsaladinev','szuleteskoriUtonev','szuletesiHely','szuletesiIdo','anyaSzuleteskoriNevElotag','anyaSzuleteskoriCsaladinev', + 'anyaSzuleteskoriUtonev','allampolgarsag','lakhelyOrszag','lakhelyHelyseg', + 'lakhelyIrsz','lakhelyKozteruletNev','lakhelyKozteruletJelleg','lakhelyHazszam','lakhelyEmelet','lakhelyAjto','tartOrszag','tartHelyseg', + 'tartIrsz','tartKozteruletNev','tartKozteruletJelleg','tartHazszam','tartEmelet','tartAjto','jogviszonyKezdete','diakNaploSorszam' + ), + ); + + function diakExport($ADAT) { + + $tanevDbNev = tanevDbNev(__INTEZMENY, $ADAT['tanev']); + $W = array(); + $q = "SELECT diak.*, osztalyId, osztalyJel, diakNaploSorszam(osztalyDiak.diakId,".$ADAT['tanev'].",osztalyDiak.osztalyId) AS diakNaploSorszam FROM diak LEFT JOIN osztalyDiak USING (diakId) + LEFT JOIN `%s`.osztalyNaplo USING (osztalyId)"; + $v = array($tanevDbNev); + if (isset($ADAT['osztalyId'])) { $W[] = "osztalyId=%u"; $v[] = $ADAT['osztalyId']; } + if (isset($ADAT['dt'])) { $W[] = "beDt<='%s' AND ('%s'<=kiDt OR kiDt IS NULL)"; array_push($v, $ADAT['dt'], $ADAT['dt']); } + + $q .= " WHERE ".implode(' AND ', $W); + + $ret = db_query($q, array('fv' => 'diakExport', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + if (!$ret) return false; + + $osztalyAdat = getOsztalyok($ADAT['tanev'], array('result' => 'assoc')); + + $Szulok = getSzulok(); + for ($i = 0; $i < count($ret); $i++) { + $ret[$i]['telephelyId'] = $osztalyAdat[ $ret[$i]['osztalyId'] ]['telephelyId']; + foreach (array('anya','apa','gondviselo') as $tipus) { + $szuloId = $ret[$i][ $tipus.'Id' ]; + if (is_array($Szulok[$szuloId])) foreach ($Szulok[$szuloId] as $attr => $value) { + $ret[$i][ $tipus . ucfirst($attr) ] = $value; + } elseif ($i == 0 && is_array($Szulok[1])) foreach ($Szulok[1] as $attr => $value) { + $ret[$i][ $tipus . ucfirst($attr) ] = ''; + } + } + } + + return $ret; + + } + + function createFile($ADAT) { + if ($ADAT['formatum'] == 'xls' || $ADAT['formatum'] == 'xml') return generateXLSExport($ADAT['export'], $ADAT['mezok']); + elseif ($ADAT['formatum'] == 'pdf') return generatePDFExport($ADAT['export'], $ADAT['mezok']); + else return generateCSVExport($ADAT['export'], $ADAT['mezok']); + } + + function generateCSVExport($ret, $Mezok = array()) { + + $fp = fopen(__DIAK_EXPORT_FILE . '.csv', 'w'); + if (!$fp) return false; + + fputs($fp, implode(' ',$Mezok)."\n"); + for ($i = 0; $i < count($ret); $i++) { + $A = array(); + foreach ($Mezok as $attr => $attrNev) $A[] = $ret[$i][$attr]; + $sor = implode(' ', $A)."\n"; + fputs($fp, $sor); + } + + fclose($fp); + return true; + + } + + function generateXLSExport($ret, $Mezok = array()) { + + $fp = fopen(__DIAK_EXPORT_FILE . '.xml', 'w'); + if (!$fp) return false; + + fputs($fp, ''."\r\n"); + fputs($fp, ''."\r\n"); + + fputs($fp, ' '."\r\n" + .' '."\r\n" + .' '."\r\n" + ."\r\n".' '."\r\n"); + + fputs($fp, ''."\r\n"); + fputs($fp, ''."\r\n"); + + // fejléc + fputs($fp, ''."\r\n"); + foreach ($Mezok as $index => $attr) { + fputs($fp, " ".$attr."\r\n"); + } + fputs($fp, ''."\r\n"); + + + for ($i = 0; $i < count($ret); $i++) { + fputs($fp, ''."\r\n"); + foreach ($Mezok as $attr => $attrNev) { + $value = $ret[$i][$attr]; + $time = strtotime($value); + if (is_numeric($value)) + fputs($fp, " ".$value."\r\n"); + elseif (is_numeric($time) && $value == date('Y-m-d H:i:s', $time)) + fputs($fp, " ".str_replace(' ','T',$value).'.000'."\r\n"); + elseif (is_numeric($time) && $value == date('Y-m-d', $time)) + fputs($fp, " ".$value.'T08:40:00.000'."\r\n"); + else + fputs($fp, " ".$value."\r\n"); + } + fputs($fp, ''."\r\n"); + } + + fputs($fp, '
'."\r\n"); + fputs($fp, '
'."\r\n"); + fputs($fp, '
'."\r\n"); + + fclose($fp); + return true; + + } + + function generatePDFExport($ret, $mezok = array()) { + + + $_SESSION['alert'][] = 'message:not implemented'; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakFelmentes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakFelmentes.php new file mode 100644 index 00000000..383281de --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakFelmentes.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakStatusz.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakStatusz.php new file mode 100644 index 00000000..94944ba1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakStatusz.php @@ -0,0 +1,12 @@ + 'getHibasJogviszony', 'modul' => 'naplo_intezmeny', 'result' => 'idonly')); + + return $ret; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakSzulo.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakSzulo.php new file mode 100644 index 00000000..a6f1bd2b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakSzulo.php @@ -0,0 +1,98 @@ + $value) { + if (array_key_exists(($attr), $FIELDS) && !in_array($attr, array('szuloId'))) { + if ($value == '') { + $T[] = "`%s`=NULL"; + array_push($v, $attr); + } else { + array_push($v, $attr, $value); + $T[] = "`%s`='%s'"; + } + } + } + $q = "UPDATE szulo SET ".implode(',',$T)." WHERE szuloId=%u"; + array_push($v, $ADAT['szuloId']); + + return db_query($q, array('fv' => 'szuloAdatModositas', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + } + + function szuloHozzarendeles($diakId, $tipus, $ujSzuloId) { + + + if ($tipus == 'anya' || $tipus == 'apa') { + // Nem ellenőrzés + if ($tipus == 'anya') $tiltott = 'fiú'; + else $tiltott = 'lány'; + $q = "SELECT nem FROM szulo WHERE szuloId=%u"; + $nem = db_query($q, array('fv' => 'szuloHozzarendeles', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($ujSzuloId))); + if ($nem == $tiltott) { + $_SESSION['alert'][] = 'message:tiltott_nem_'.$tiltott; + return false; + } + } + + $q = "UPDATE diak SET `%sId` = %u WHERE diakId = %u"; + $v = array($tipus, $ujSzuloId, $diakId); + $ret = db_query($q, array('fv' => 'szuloHozzarendeles', 'modul' => 'naplo_intezmeny', 'values' => $v)); + if ($ret) return $ujSzuloId; + else return false; + + } + + function szuloHozzarendelesTorlese($diakId, $tipus) { + + $q = "UPDATE diak SET `%sId` = NULL WHERE diakId = %u"; + $v = array($tipus, $diakId); + return db_query($q, array('fv' => 'szuloHozzarendelesTorles', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + } + + function ujSzulo($ADAT, $FIELDS) { + + + $diakId = $ADAT['diakId']; + $tipus = $ADAT['tipus']; + + // Kötelező paraméterek ellenőrzése + if ($ADAT['csaladinev'] == '' + || $ADAT['utonev'] == '' + || !in_array($tipus, array('anya','apa','gondviselo','nevelo')) + ) { + $_SESSION['alert'][] = 'message:wrong_data:ujSzulo:csaladinev - '.$_POST['csaladinev'].', utonev - '.$_POST['utonev'].', tipus - '.$tipus; + return false; + } + + $lr = db_connect('naplo_intezmeny', array('fv' => 'ujSzulo')); + + foreach($ADAT as $attr => $value) { + if (array_key_exists(($attr), $FIELDS)) { + if ($value != '') { + $V[] = $value; + $A[] = $attr; + } + } + } + + $q = "INSERT INTO szulo (`".implode('`,`', array_fill(0, count($A), '%s'))."`) VALUES ('".implode("', '", array_fill(0, count($V), '%s'))."')"; + $v = mayor_array_join($A, $V); + $szuloId = db_query($q, array('fv' => 'ujSzulo', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + if ($szuloId) { + $q = "UPDATE diak SET `%sId` = %u WHERE diakId = %u"; + $v = array($tipus, $szuloId, $diakId); + $r = db_query($q, array('fv' => 'ujSzulo', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + db_close($lr); + if ($r) return $szuloId; + else return false; + } else { + db_close($lr); + return false; + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakTankorJelentkezes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakTankorJelentkezes.php new file mode 100644 index 00000000..e7ab1aad --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/diakTankorJelentkezes.php @@ -0,0 +1,97 @@ + $TB) { + for ($j=0; $j0) { + $W = " AND osztalyId IN (".implode(',', array_fill(0, count($OSZTALYIDK), '%u')).")"; + $v = mayor_array_join(array($tanev, $szemeszter), $OSZTALYIDK, $OSZTALYIDK, array($tanev,$tanev,$szemeszter)); + } else { + $v = array($tanev, $szemeszter, $tanev, $tanev, $szemeszter); + } + $q = "SELECT DISTINCT tankorId, targyId, kovetelmeny, min, max, tanev, szemeszter, oraszam, tankorNev + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) JOIN tankorOsztaly USING (tankorId) + WHERE tanev=%u and szemeszter=%u and tankor.felveheto =1".$W." + AND tankorId NOT IN ( + SELECT distinct tankorId FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) JOIN tankorOsztaly USING (tankorId) + WHERE tankor.felveheto =1".$W." AND (tanev<%u OR (tanev=%u AND szemeszter<%u)) + ) + ORDER BY tankorNev,tankor.tankorId"; + $felvehetoTankorok = db_query($q, array('fv' => 'getValaszthatoTankorok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + for ($i=0; $i $DT['tolDt'], 'igDt' => $DT['igDt'], 'result' => 'nevsor')); + } + return $felvehetoTankorok; + } + + + + function getValaszthatoTankorokOrig($tanev, $szemeszter, $OSZTALYIDK) { + + if ($tanev=='') { + $tanevAdat = $_TANEV; + } else { + $tanevAdat = getTanevAdat($tanev); + } + + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev); + + $DT['tolDt'] = $tanevAdat['kezdesDt']; + $DT['igDt'] = $tanevAdat['zarasDt'] ; + + $tankorBlokkok = getTankorBlokkok($tanev); + if (is_array($tankorBlokkok) && is_array($tankorBlokkok['idk'])) + foreach ($tankorBlokkok['idk'] as $blokkId => $TB) { + for ($j=0; $j0) { + $W = " AND osztalyId IN (".implode(',', array_fill(0, count($OSZTALYIDK), '%u')).")"; + $v = mayor_array_join(array($tanev, $szemeszter), $OSZTALYIDK, $OSZTALYIDK, array($tanev)); + } else { + $v = array($tanev, $szemeszter, $tanev); + } + $q = "SELECT DISTINCT tankorId, targyId, kovetelmeny, min, max, tanev, szemeszter, oraszam, tankorNev + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) JOIN tankorOsztaly USING (tankorId) + WHERE tanev=%u and szemeszter=%u and tankor.felveheto =1".$W." + AND tankorId NOT IN ( + SELECT distinct tankorId FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) JOIN tankorOsztaly USING (tankorId) + WHERE tankor.felveheto =1".$W." AND tanev<%u + ) + ORDER BY tankorNev,tankor.tankorId"; + $felvehetoTankorok = db_query($q, array('fv' => 'getValaszthatoTankorok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + for ($i=0; $i $DT['tolDt'], 'igDt' => $DT['igDt'], 'result' => 'nevsor')); + } + return $felvehetoTankorok; + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/kepzes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/kepzes.php new file mode 100644 index 00000000..e08e6856 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/kepzes.php @@ -0,0 +1,64 @@ + 'ujKepzes', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v)); + + } + + function kepzesEles($kepzesId, $kepzesEles) { + + $q = "UPDATE kepzes SET kepzesEles=%u WHERE kepzesId =%u"; + $v = array($kepzesEles,$kepzesId); + return db_query($q, array('fv' => 'kepzesEles', 'modul' => 'naplo_intezmeny', 'result' => 'update', 'values' => $v)); + + } + + function kepzesModositas($ADAT) { + + //$ADAT eredeti paraméterezése: $kepzesId, $kepzesNev, $tanev, $osztalyJellegId, $osztalyIds, $delOsztalyIds + extract($ADAT); + + // Van-e ilyen képzés + $q = "SELECT COUNT(*) AS db FROM kepzes WHERE kepzesId = %u"; + $v = array($kepzesId); + $db = db_query($q, array('modul'=> 'naplo_intezmeny','fv'=>'kepzesModositas','values'=>$v, 'result'=>'value')); + + if ($db != 1) { + $_SESSION['alert'][] = 'message:wrong_data:hibás képzés azonosító:'.$kepzesId; + return false; + } + + if (isset($osztalyJellegId) && $osztalyJellegId>0) { + $q = "UPDATE kepzes SET kepzesNev='%s',tanev=%u,osztalyJellegId=%u WHERE kepzesId=%u"; + $v = array($kepzesNev,$tolTanev,$osztalyJellegId,$kepzesId); + } + db_query($q, array('modul'=> 'naplo_intezmeny','fv'=>'kepzesModositas','values'=>$v)); + + // TOROLNI NEM LEHET csak, ha egyetlen osztály-tag sincs hozzárendelve az adott képzéshez AZ ADOTT TANÉVBEN... + if (count($delOsztalyIds) > 0) { + foreach ($delOsztalyIds as $osztalyId) { + $q = "SELECT COUNT(*) FROM kepzesDiak LEFT JOIN osztalyDiak USING (diakId) WHERE kepzesId=%u AND osztalyId=%u + AND tolDt<='".$_TANEV['zarasDt']."' AND (igDt IS NULL OR igDt>='".$_TANEV['kezdesDt']."') + AND beDt<='".$_TANEV['zarasDt']."' AND (kiDt IS NULL OR kiDt>='".$_TANEV['kezdesDt']."')"; + $db = db_query($q, array('fv'=>'kepzesModositas/del-osztaly#1','modul'=>'naplo_intezmeny','result'=>'value','values'=>array($kepzesId, $osztalyId))); + if ($db == 0) { + $q = "DELETE FROM kepzesOsztaly WHERE kepzesId=%u AND osztalyId=%u"; + db_query($q, array('fv' => 'kepzesModositas/osztályhozzárendelés törlése', 'modul' => 'naplo_intezmeny', 'values' => array($kepzesId,$osztalyId))); + } else { + $_SESSION['alert'][] = 'message:wrong_data:Az osztály hozzárendelés nem törölhető! '.$db.' db tanuló az osztályból hozzá van rendelve ehhez a képzéshez.'; + } + } + } + if (count($osztalyIds)>0) { + $q = "REPLACE INTO kepzesOsztaly (kepzesId,osztalyId) VALUES (".implode("),(", array_fill(0, count($osztalyIds), '%u, %u')).")"; + $v = array(); + for ($i = 0; $i < count($osztalyIds); $i++) array_push($v, $kepzesId, $osztalyIds[$i]); + db_query($q, array('fv' => 'kepzesModositas/osztályhozzárendelés', 'modul' => 'naplo_intezmeny', 'values' => $v)); + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/kepzesOraterv.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/kepzesOraterv.php new file mode 100644 index 00000000..d689aa40 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/kepzesOraterv.php @@ -0,0 +1,92 @@ + $D) { + $q = "REPLACE INTO kepzesOraszam (kepzesId,evfolyamJel,kotelezoOraszam,maximalisOraszam) VALUES (%u,'%s',%f,%f)"; + $v = array($kepzesId,$evfolyamJel,$D['kotelezo'],$D['max']); + db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'modifyKepzesOraterv', 'values'=>$v), $lr); + } + + //blabla if + if (is_array($ADAT['adatok'])) { + foreach ($ADAT['adatok'] as $targyTipus => $X) { + foreach ($X as $targyId => $EGYTARGY) { + // [$evfolyamJel][$szemeszter]['oraszam'|'kovetelmeny'] + if (is_array($EGYTARGY)) + foreach ($EGYTARGY as $evfolyamJel => $DS) { + if (is_array($DS)) foreach($DS as $szemeszter => $D) { + if ($D['kovetelmeny']!='' && isset($D['oraszam'])) { + if ($targyTipus!='mintatantervi') { + $q = "SELECT kepzesOratervId FROM kepzesOraterv WHERE kepzesId=%u AND evfolyamJel='%s' AND szemeszter=%u AND tipus='%s'"; + $v = array($kepzesId,$evfolyamJel,$szemeszter,$targyTipus); + $_oratervId = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'value','fv'=>'modifyKepzesOraterv', 'debug'=>false, 'values'=>$v), $lr); + if ($_oratervId>0) { + $q = "UPDATE kepzesOraterv SET hetiOraszam=%f,kovetelmeny='%s' WHERE kepzesOratervId=%u"; + $v = array($D['oraszam'],$D['kovetelmeny'],$_oratervId); + } else { + $q = "INSERT INTO kepzesOraterv (kepzesId,targyId,evfolyamJel,szemeszter,hetiOraszam,kovetelmeny,tipus) + VALUES (%u,null,'%s',%u,%f,'%s','%s')"; + $v = array($kepzesId,$evfolyamJel,$szemeszter,$D['oraszam'],$D['kovetelmeny'],$targyTipus); + } + } else { + $q = "SELECT kepzesOratervId FROM kepzesOraterv WHERE kepzesId=%u AND evfolyamJel='%s' AND szemeszter=%u AND tipus='%s' AND targyId=%u"; + $v = array($kepzesId,$evfolyamJel,$szemeszter,$targyTipus,$targyId); + $_oratervId = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'value','fv'=>'modifyKepzesOraterv', 'debug'=>false, 'values'=>$v), $lr); + if ($_oratervId>0) { + $q = "UPDATE kepzesOraterv SET hetiOraszam=%f,kovetelmeny='%s' WHERE kepzesOratervId=%u"; + $v = array($D['oraszam'],$D['kovetelmeny'],$_oratervId); + } else { + $q = "INSERT INTO kepzesOraterv (kepzesId,targyId,evfolyamJel,szemeszter,hetiOraszam,kovetelmeny,tipus) VALUES (%u,%u,'%s',%u,%f,'%s','%s')"; + $v = array($kepzesId,$targyId,$evfolyamJel,$szemeszter,$D['oraszam'],$D['kovetelmeny'],$targyTipus); + } + } + } else { // ha nincs megadva követelmény, akkor töröljük + if ($targyTipus!='mintatantervi') { + $q = "DELETE FROM kepzesOraterv WHERE kepzesId=%u AND evfolyamJel='%s' AND szemeszter=%u AND tipus='%s'"; + $v = array($kepzesId,$evfolyamJel,$szemeszter,$targyTipus); + } else { + $q = "DELETE FROM kepzesOraterv WHERE kepzesId=%u AND targyId=%u AND evfolyamJel='%s' AND szemeszter=%u"; + $v = array($kepzesId,$targyId,$evfolyamJel,$szemeszter); + } + } + db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'modifyKepzesOraterv', 'debug'=>false, 'values'=>$v), $lr); + } /* if */ + } /* if-foreach */ + } /* foreach */ + } /* foreach */ + } /* if */ + db_close($lr); + } + + function dropKepzesOratervRekord($kepzesId,$tipus,$targyId) { + if ($tipus=='mintatantervi') { + $q = "DELETE FROM kepzesOraterv WHERE kepzesId=%u AND targyId=%u"; + $v = array($kepzesId,$targyId); + } else { + $q = "DELETE FROM kepzesOraterv WHERE kepzesId=%u AND tipus='%s'"; + $v = array($kepzesId,$tipus); + } + db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'dropKepzesOratervRekord', 'debug'=>false, 'values'=>$v)); + } + + function getKepzesOraszam($kepzesId) { + $q = "SELECT * FROM kepzesOraszam WHERE kepzesId=$kepzesId ORDER BY evfolyamJel ASC"; // order error! + return db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'getKepzesOraszam', 'result'=>'assoc', 'keyfield'=>'evfolyamJel')); + } + + function kepzesOratervMasolas($masolandoKepzesId, $kepzesId) { + + $q ="INSERT INTO kepzesOraterv (kepzesId, targyId, evfolyamJel, szemeszter, hetiOraszam, kovetelmeny, tipus) + SELECT %u AS kepzesId, targyId, evfolyamJel, szemeszter, hetiOraszam, kovetelmeny, tipus + FROM kepzesOraterv WHERE kepzesId=%u"; + return db_query($q, array('debug'=>false,'fv'=>'kepzesOratervMasolas','modul'=>'naplo_intezmeny','values'=>array($kepzesId, $masolandoKepzesId))); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/munkakozosseg.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/munkakozosseg.php new file mode 100644 index 00000000..d9c01d61 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/munkakozosseg.php @@ -0,0 +1,288 @@ + 'ujMunkakozosseg')); + if (!$lr) return false; + + $result = false; // sikerült-e? + + // Van-e már ilyen munkaközösség? + $q = "SELECT COUNT(mkId) FROM munkakozosseg WHERE leiras='%s'"; + $num = db_query($q, array('fv' => 'ujMunkakozosseg', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($leiras)), $lr); + + if ($num == 0) { + $v = array($leiras); + if ($mkVezId == '') { + $MKVEZID = 'NULL'; + } else { + $MKVEZID = '%u'; + $v[] = $mkVezId; + } + $q = "INSERT INTO munkakozosseg (leiras,mkVezId) VALUES ('%s',$MKVEZID)"; + $result = db_query($q, array('fv' => 'ujMunkakozosseg', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + + } else { + // már van ilyen munkaközösség... + $_SESSION['alert'][] = 'massege:wrong_data:duplikált munkaközösség leírás (név)'; + } + db_close($lr); + + return $result; + + } + + function modMunkakozosseg($mkId,$leiras,$mkVezId,$MKUJTAGOK,$MKTORLENDOTAGOK) { + + + $lr = db_connect('naplo_intezmeny', array('fv' => 'modMunkakozosseg')); + + if (!$lr) return false; + if ($mkId=='') { $_SESSION['alert'][] = 'message::no mkId'; return false; } + + $result = false; // sikerült-e? + + // Van-e már ilyen munkaközösség? + $q = "SELECT COUNT(mkId) FROM munkakozosseg WHERE mkId=%u"; + $num = db_query($q, array('fv' => 'modMunkakozosseg', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => array($mkId)), $lr); + + if ($num != 0) { + if ($mkVezId == '') { + $q = "UPDATE munkakozosseg SET leiras='%s',mkVezId=NULL WHERE mkId=%u"; + $v = array($leiras, $mkId); + } else { + $q = "UPDATE munkakozosseg SET leiras='%s',mkVezId=%u WHERE mkId=%u"; + $v = array($leiras, $mkVezId, $mkId); + } + $result = db_query($q, array('fv' => 'modMunkakozosseg', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + } else { + // már van ilyen munkaközösség... + $_SESSION['alert'][] = 'massege:wrong_data:mkId='.$mkId; + } + + if ($result) { + if (is_array($MKUJTAGOK) && count($MKUJTAGOK)>0) { + //mkTanar[mkId,tanarId] + for($i=0; $i 'modMunkakozosseg', 'modul' => 'naplo_intezmeny', 'values' => array($mkId,$_tanarId)), $lr); + } + } + if (is_array($MKTORLENDOTAGOK) && count($MKTORLENDOTAGOK)>0) { + $q = "DELETE FROM mkTanar WHERE mkId=%u AND tanarId IN (".implode(',', array_fill(0, count($MKTORLENDOTAGOK), '%u')).")"; + db_query($q, array('fv' => 'modMunkakozosseg', 'modul' => 'naplo_intezmeny', 'values' => mayor_array_join(array($mkId),$MKTORLENDOTAGOK)), $lr); + } + } + + + db_close($lr); + + return $result; + + } + + + + + function ujTargy($ADAT) { + + + $leiras=$ADAT['leiras']; + $mkId=$ADAT['mkId']; + $targyJelleg=$ADAT['targyJelleg']; + $kirTargyId=$ADAT['kirTargyId']; + + if ($leiras=='') { + $_SESSION['alert'][] = 'message:UI:empty field'; + return false; + } + + if (is_numeric($kirTargyId)) { + $q = "INSERT INTO targy (targyNev,mkId,targyJelleg,kirTargyId) VALUES ('%s',%u,'%s',%u)"; + $v = array($leiras,$mkId,$targyJelleg,$kirTargyId); + } else { + $q = "INSERT INTO targy (targyNev,mkId,targyJelleg) VALUES ('%s',%u,'%s')"; + $v = array($leiras,$mkId,$targyJelleg); + } + $result = db_query($q,array('modul'=>'naplo_intezmeny', 'fv'=>'ujTargy','result'=>'insert', 'detailed'=>false, 'debug'=>false, 'values'=>$v)); + + return $result; + + } + + function targyModosit($ADAT) { + if (is_numeric($ADAT['kirTargyId'])) { + $q = "UPDATE targy SET targyJelleg='%s',zaroKovetelmeny='%s',evkoziKovetelmeny='%s',targyRovidNev='%s',kirTargyId=%u WHERE targyId=%u"; + $v = array($ADAT['targyJelleg'],$ADAT['zaroKovetelmeny'],$ADAT['evkoziKovetelmeny'],$ADAT['targyRovidNev'], $ADAT['kirTargyId'], $ADAT['targyId']); + } else { + $q = "UPDATE targy SET targyJelleg='%s',zaroKovetelmeny='%s',evkoziKovetelmeny='%s',targyRovidNev='%s' WHERE targyId=%u"; + $v = array($ADAT['targyJelleg'],$ADAT['zaroKovetelmeny'],$ADAT['evkoziKovetelmeny'],$ADAT['targyRovidNev'],$ADAT['targyId']); + } + return db_query($q,array('modul'=>'naplo_intezmeny', 'fv'=>'targyModosit', 'detailed'=>false, 'debug'=>false, 'values'=>$v)); + } + + function targyTorol($targyId,$mkId) { + + $q = "DELETE FROM targy WHERE targyId=%u AND mkId=%u"; + return db_query($q, array('fv' => 'targyTorol', 'modul' => 'naplo_intezmeny', 'values' => array($targyId, $mkId)), $lr); + + } + + + function munkakozossegTorol($mkId) { + + $q = "DELETE FROM munkakozosseg WHERE mkId=%u"; + return db_query($q, array('fv' => 'munkakozossegTorol', 'modul' => 'naplo_intezmeny', 'values' => array($mkId)), $lr); + + } + + function targyBeolvasztas($ADAT) { + /** + * Elvárt paraméterek: $ADAt['targyId'], $ADAT['befogadoTargyId'], $ADAT['tankorJeloles'] (lehet üres) + **/ + + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + + // A befogadó tárgy adatai + $befogadoTargy = getTargyById($ADAT['befogadoTargyId']); + $targyAdat = getTargyById($ADAT['targyId']); + // A tárgyhoz tartozó tankörök lekérdezése + $q = "SELECT tankorId FROM tankor WHERE targyId=%u"; + $tankorIds = db_query($q, array('fv'=>'targyBeolvasztas/tankorok','result'=>'idonly','values'=>array($ADAT['targyId'])), $lr); + if (is_array($tankorIds) && count($tankorIds)>0) /*foreach ($tankorIds as $tankorId)*/ { + /* tárgyhoz tartozó tankörök átnevezése */ + if (isset($ADAT['tankorJeloles'])) { + $q = "UPDATE tankorSzemeszter SET tankorNev=CONCAT(LEFT(tankorNev,LOCATE('%s',tankorNev)-1),'%s',' ','%s') + WHERE tankorId IN (".implode(',', array_fill(0,count($tankorIds),'%u')).")"; + $v = mayor_array_join(array($targyAdat['targyNev'], $befogadoTargy['targyNev'], $ADAT['tankorJeloles']), $tankorIds); + } else { + $q = "UPDATE tankorSzemeszter SET tankorNev=REPLACE(tankorNev,'%s','%s') + WHERE tankorId IN (".implode(',', array_fill(0,count($tankorIds),'%u')).")"; + $v = mayor_array_join(array($targyAdat['targyNev'], $befogadoTargy['targyNev']), $tankorIds); + } + $r = db_query($q, array('fv'=>'targyBeolvasztas/tankör-átnevezés','values'=>$v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + /* tárgyhoz tartozó tannkörök áthelyezése */ + $q = "UPDATE tankor SET targyId=%u WHERE targyId=%u"; + $r = db_query($q, array('fv'=>'targyBeolvasztas/tankör-tárgy','values'=>array($ADAT['befogadoTargyId'], $ADAT['targyId'])), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } + + /* tanév adatbázisok lekérdezése */ + $q = "SHOW DATABASES LIKE 'naplo_".__INTEZMENY."%'"; + $dbs = db_query($q, array('fv'=>'targyBeolvasztas/dbs','result'=>'idonly'), $lr); + if (!$dbs) { db_rollback($lr); db_close($lr); return false; } + if (is_array($dbs) && count($dbs) > 0) foreach ($dbs as $db) { + /* tanév adatbázis tábláinak lekérdezése */ + $q = "SHOW TABLES FROM $db"; + $tables = db_query($q, array('fv'=>'targyBeolvasztas/tables','result'=>'idonly'), $lr); + if (is_array($tables) && count($tables)>0) foreach ($tables as $table) { + if ($table == 'targySorszam') { + /* törlendő: targySorszam, */ + $q = "DELETE FROM `$db`.`targySorszam` WHERE targyId=%u"; + $r = db_query($q, array('fv'=>'targyBeolvasztas/targySorszam','values'=>array($ADAT['targyId'])), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } else { + /* Tábla tartalmaz-e targyId mezőt... */ + $q = "SHOW FIELDS FROM `$db`.`$table` LIKE 'targyId'"; + $ret = db_query($q, array('fv'=>'targyBeolvasztas/table-targyId','result'=>'idonly'), $lr); + if (is_array($ret) && count($ret)>0) { + /* ... ha igen: targyId módosítás */ + $q = "UPDATE `$db`.`$table` SET targyId=%u WHERE targyId=%u"; + $v = array($ADAT['befogadoTargyId'], $ADAT['targyId']); + $r = db_query($q, array('fv'=>'targyBeolvasztas/table','values'=>$v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } + } + } + } + /* intézményi adattáblák lekérdezése */ + $q = "SHOW TABLES"; + $tables = db_query($q, array('fv'=>'targyBeolvasztas/i-tables','result'=>'idonly'), $lr); + if (is_array($tables) && count($tables)>0) foreach ($tables as $table) { + if ($table != 'targy') { + /* Tábla tartalmaz-e targyId mezőt... */ + $q = "SHOW FIELDS FROM `$table` LIKE 'targyId'"; + $ret = db_query($q, array('fv'=>'targyBeolvasztas/i-table-targyId','result'=>'idonly'), $lr); + if (is_array($ret) && count($ret)>0) { + /* ... ha igen: targyId módosítás */ + $q = "UPDATE IGNORE `$table` SET targyId=%u WHERE targyId=%u"; + $v = array($ADAT['befogadoTargyId'], $ADAT['targyId']); + $r = db_query($q, array('fv'=>'targyBeolvasztas/i-table','values'=>$v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } + } // != tárgy + } + + /* targy törlése */ + $q = "DELETE FROM targy WHERE targyId=%u"; + $r = db_query($q, array('fv'=>'targyBeolvasztas/delete','values'=>array($ADAT['targyId'])), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + + db_commit($lr); + db_close($lr); + return true; + + } + + function targyMkValtas($ADAT) { + /** + * Elvárt paraméterek: $ADAt['targyId'], $ADAT['befogadoMkId'] + **/ + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + // Az adott tárgy tanköreinek jelenlegi tanárai között van-e az új munkaközösségben nem szereplő + $q = "SELECT DISTINCT tanarId FROM tankor LEFT JOIN tankorTanar USING (tankorId) + WHERE targyId=%u AND beDt<=CURDATE() AND (kiDt IS NULL OR kiDt>=CURDATE()) + AND tanarId NOT IN (SELECT tanarId FROM mkTanar WHERE mkId=%u)"; + $tanarIds = db_query($q, array('fv'=>'targyMkValtas/tanarIds','result'=>'idonly','values'=>array($ADAT['targyId'], $ADAT['befogadoMkId'])), $lr); + if (is_array($tanarIds) && count($tanarIds)>0) { + db_rollback($lr); + db_close($lr); + $_SESSION['alert'][] = 'message:wrong_data:targyMkValtas:Van az új munkaközösségbe nem tartozó érintett tanár!:'.implode(',',$tanarIds); + return false; + } + // munkaközösség váltás + $q = "UPDATE targy SET mkId=%u WHERE targyId=%u"; + $r = db_query($q, array('fv'=>'targyMkValtas/mkId','values'=>array($ADAT['befogadoMkId'], $ADAT['targyId'])), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + + db_commit($lr); + db_close($lr); + return true; + + } + + function targyAtnevezes($ADAT) { + /** + * Elvárt paraméterek: $ADAt['targyId'], $ADAT['ujTargyNev'] + **/ + + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + + $targyAdat = getTargyById($ADAT['targyId']); + // tankörnév módosítás + $q = "UPDATE tankorSzemeszter SET tankorNev=REPLACE(tankorNev,'%s','%s') + WHERE tankorId IN (SELECT tankorId FROM tankor WHERE targyId=%u)"; + $v = array($targyAdat['targyNev'], $ADAT['ujTargyNev'], $ADAT['targyId']); + $r = db_query($q, array('fv'=>'targyAtnevezes/tankor','values'=>$v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + // tárgy átnevezés + $q = "UPDATE targy SET targyNev='%s' WHERE targyId=%u"; + $v = array($ADAT['ujTargyNev'], $ADAT['targyId']); + $r = db_query($q, array('fv'=>'targyAtnevezes/targy','values'=>$v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + + db_commit($lr); + db_close($lr); + return true; + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/osztaly.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/osztaly.php new file mode 100644 index 00000000..a23daa2e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/osztaly.php @@ -0,0 +1,474 @@ +delType('osztaly'); + + $leiras = $ADAT['leiras']; $kTanev = $ADAT['kezdoTanev']; $vTanev = $ADAT['vegzoTanev']; + $kEvfolyamSorszam = $ADAT['kezdoEvfolyamSorszam']; $jel = $ADAT['jel']; + $telephelyId = $ADAT['telephelyId']; + // Felhasználva, hogy le vannak kérdzve a definiált tanévek + // Ellenőrizzük, hogy a megadott tanév helyes-e... + if (!in_array($kTanev,$ADAT['tanevek']) || !in_array($vTanev,$ADAT['tanevek'])) { + $_SESSION['alert'][] = 'message:wrong_data:ujOsztaly:'."$kTanev/$vTanev"; + return false; + } + + // Csatlakozás az adatbázishoz + $lr = db_connect('naplo_intezmeny', array('fv' => 'ujOsztaly')); + if (!$lr) return false; + + // Osztály felvétele + if (isset($telephelyId)) { + $q = "INSERT INTO osztaly (leiras, kezdoTanev, vegzoTanev, kezdoEvfolyamSorszam, jel, telephelyId, osztalyJellegId) + VALUES ('%s', %u, %u, %u, '%s', %u, %u)"; + $v = array($leiras, $kTanev, $vTanev, $kEvfolyamSorszam, $jel, $telephelyId, $ADAT['osztalyJellegId']); + } else { + $q = "INSERT INTO osztaly (leiras, kezdoTanev, vegzoTanev, kezdoEvfolyamSorszam, jel, osztalyJellegId) + VALUES ('%s', %u, %u, %u, '%s', %u)"; + $v = array($leiras, $kTanev, $vTanev, $kEvfolyamSorszam, $jel, $ADAT['osztalyJellegId']); + } + $osztalyId = db_query($q, array('fv' => 'ujOsztaly', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + if (!$osztalyId) { db_close($lr); return false; } + + // Az aktív tanévek osztalyNaplo táblájába vegyük fel az osztályt! És ha inicializálva van a munkaterv, akkor a default-hoz rendeljük is hozzá! + // Aktív tanévek lekérdezése + $ok = updateOsztalyNev($osztalyId, $lr); + + db_close($lr); + return $osztalyId; +} + +function updateOsztalyNev($osztalyId, $lr = null) { + /* + Az aktív tanévek osztalyNaplo táblájába vegyük fel/módosítsuk az osztályt! És ha inicializálva van a munkaterv, és nincs még hozzárendelve, + akkor a default-hoz rendeljük is hozzá! + Hopp! És a tankör-nevek? + */ + + global $mayorCache; + $mayorCache->delType('osztaly'); + + // Aktív tanévek lekérdezése + $q ="SELECT DISTINCT tanev FROM szemeszter WHERE statusz = 'aktív'"; + $ret = db_query($q, array('fv' => 'updateOsztalyNev', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array()), $lr); + if (!is_array($ret)) { return false; } + $ok = true; + foreach ($ret as $key => $te) { + $tanevDb = tanevDbNev(__INTEZMENY,$te); + $osztalyAdat = getOsztalyAdat($osztalyId, $te, $lr); + if ($te < $osztalyAdat['kezdoTanev'] || $te > $osztalyAdat['vegzoTanev']) { // ebben a tanévben nem érintett az osztály + // törlés az osztalyNaplo táblából + $q = "DELETE FROM `%s`.osztalyNaplo WHERE osztalyId=%u"; + $v = array($tanevDb, $osztalyId); + $ok = $ok && db_query($q, array('fv' => 'updateOsztalyNev/osztalyNaplo - delete', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + // törlés a munkatervOsztaly táblából + $q = "DELETE FROM `%s`.munkatervOsztaly WHERE osztalyId=%u"; + $v = array($tanevDb, $osztalyId); + $ok = $ok && db_query($q, array('fv' => 'updateOsztalyNev/munkatervOsztaly - delete', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + } else { // ebben a tanévben érintett az osztály + $osztalyJel = getOsztalyJel($osztalyId, $te, $osztalyAdat, $lr); + $evfolyamJel = getEvfolyamJel($osztalyId, $te, $osztalyAdat, $osztalyJellel=false, $lr); + $evfolyam = getEvfolyam($osztalyId, $te, $osztalyAdat, $lr); + // Osztálynapló felvétele + $q = "REPLACE INTO `%s`.osztalyNaplo (osztalyId, osztalyJel, evfolyam, evfolyamJel) VALUES (%u, '%s', %u, '%s')"; + $v = array($tanevDb, $osztalyId, $osztalyJel, $evfolyam, $evfolyamJel); + $ok = $ok && db_query($q, array('fv' => 'updateOsztalyNev/osztalyNaplo - replace', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + if (!$ok) continue; + // Van-e inicializált munkaterv? + $q = "SELECT COUNT(*) FROM `%s`.munkaterv WHERE munkatervId=1"; + $v = array($tanevDb); + $db = db_query($q, array('fv' => 'updateOsztalyNev/munkaterv', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value'), $lr); + if ($db == 1) { // Ha van, akkor van-e már osztaly-munkaterv hozzárendelés + $q = "SELECT COUNT(*) FROM `%s`.munkatervOsztaly WHERE osztalyId=%u"; + $v = array($tanevDb, $osztalyId); + $db = db_query($q, array('fv' => 'updateOsztalyNev/munkatervOsztaly - select', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result'=>'value'), $lr); + if ($db == 0) { // Ha nincs, akkor rendeljük az 1-es munkatervhez az osztályt + $q = "INSERT INTO `%s`.munkatervOsztaly (munkatervId, osztalyId) VALUES (1, %u)"; + $v = array($tanevDb, $osztalyId); + $ok = $ok && db_query($q, array('fv' => 'updateOsztaly/munkatervOsztaly - insert', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + } + } + } + } // foreach... + // tankör-nevek módosítása + $q = "SELECT tankorId FROM tankorOsztaly WHERE osztalyId = %u"; + $v = array($osztalyId); + $tankorIds = db_query($q, array('fv' => 'updateOsztalyNev', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $lr); + if (is_array($tankorIds) && count($tankorIds)>0) { + for ($i=0; $i 'updateOsztaly')); + if (!$lr) { + $_SESSION['alert'][] = 'message:db_connect_failure:updateOsztaly'; + fclose($fp); + return false; + } + db_start_trans($lr); + + // Az első sor kihagyása + if ($rovatfej) $sor = fgets($fp,1024); + $TAG = $TAGV = array(); + while ($sor = fgets($fp, 1024)) { + + $adatSor = explode($mezo_elvalaszto, chop($sor)); + $beDt = $kiDt = ''; + if ($keyBeDt !== false) $beDt = $adatSor[$keyBeDt]; + if ($keyKiDt !== false) $kiDt = $adatSor[$keyKiDt]; + // keresési feltétel összerakása + $where = $wherev = array(); + for ($i = 0; $i < count($KULCS_MEZOK); $i++) { + if ($adatSor[$KULCS_MEZOK[$i]] != '') { + if ($adatSor[$KULCS_MEZOK[$i]] == '\N') { + $where[] = "`%s`=NULL"; + array_push($wherev, $MEZO_LISTA[$KULCS_MEZOK[$i]]); + } else { + $where[] = "`%s`='%s'"; + array_push($wherev, $MEZO_LISTA[$KULCS_MEZOK[$i]], $adatSor[$KULCS_MEZOK[$i]]); + } + } + } + if (count($where) > 0) { + $q = "SELECT diakId FROM diak WHERE ".implode(' AND ', $where); + $diakIds = db_query($q, array('fv' => 'updateOsztaly', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $wherev), $lr); + $num = count($diakIds); + } else { $num = 0; } + if ($num == 1 && _SKIP_ON_DUP === true) { $_SESSION['alert'][] = 'info:_SKIP_ON_DUP:'.serialize($sor); continue; } + if ($num == 1) { // update + // tag felvételhez adatsor + $diakId = $diakIds[0]; + if (!isset($kiDt) || $kiDt=='') { + $TAG[] = "(%u, %u, '%s', NULL)"; + array_push($TAGV, $diakId, $osztalyId, $beDt); + } else { + $TAG[] = "(%u, %u, '%s', '%s')"; + array_push($TAGV, $diakId, $osztalyId, $beDt, $kiDt); + } + // diak adatok frissítése + $UPDATE = $UPDATEV = array(); + for ($i = 0; $i < count($MEZO_LISTA); $i++) { + if ( + $MEZO_LISTA[$i] != '' + and $adatSor[$i] != '' + and !in_array($i, $KULCS_MEZOK) + ) { + $UPDATE[] = "`%s`='%s'"; + array_push($UPDATEV, $MEZO_LISTA[$i], $adatSor[$i]); + } + } + if (count($UPDATE) > 0) { + $q = "UPDATE diak SET ".implode(',', $UPDATE)." WHERE ".implode(' AND ', $where); + $v = mayor_array_join($UPDATEV, $wherev); + $r = db_query($q, array('fv' => 'updateOsztaly/update', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if (!$r) { + db_close($lr); + fclose($fp); + return false; + } + } + } elseif ($num == 0) { // insert + $insertValues = $insertPatterns = array(); + for ($i = 0; $i < count($MEZO_LISTA); $i++) { + if ($MEZO_LISTA[$i] != '') { + if ($adatSor[$i] == '\N') { + $insertValues[] = 'NULL'; + $insertPatterns[] = '%s'; + } else { + $insertValues[] = $adatSor[$i]; + $insertPatterns[] = "'%s'"; + } + } + } + $q = 'INSERT INTO `diak` ('.implode(',', array_fill(0, count($attrList), '%s')).') + VALUES ('.implode(',', $insertPatterns).')'; + $v = mayor_array_join($attrList, $insertValues); + /* + + + + $value = array(); + for ($i = 0; $i < count($MEZO_LISTA); $i++) { + if ($MEZO_LISTA[$i] != '') $value[] = $adatSor[$i]; + } + // beszúrás egyesével, hogy meglegyen a diakId (insert_id) + $q = "INSERT INTO diak (`".implode("`,`", array_fill(0, count($attrList), '%s'))."`) + VALUES ('".implode("','", array_fill(0, count($value), '%s'))."')"; + $v = array_merge($attrList, $value); + + */ + $diakId = db_query($q, array('fv' => 'updateOsztaly/insert', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v, 'rollback' => true), $lr); + if (!$diakId) { + db_close($lr); + fclose($fp); + return false; + } + + if ($diakId) { + // tagok adatai + if (!isset($kiDt) || $kiDt=='') { + $TAG[] = "(%u, %u,'%s', NULL)"; + array_push($TAGV, $diakId, $osztalyId, $beDt); + } else { + $TAG[] = "(%u, %u, '%s', '%s')"; + array_push($TAGV, $diakId, $osztalyId, $beDt, $kiDt); + } + } + } else { + $_SESSION['alert'][] = 'message:wrong_data:'.$where; + } + } // while + if (count($TAG) > 0) { // tagok felvétele az osztályba + $q = "REPLACE INTO osztalyDiak (diakId,osztalyId,beDt,kiDt) VALUES ".implode(",\n",$TAG); + $r = db_query($q, array('fv' => 'updateOsztaly/osztályba', 'modul' => 'naplo_intezmeny', 'values' => $TAGV, 'rollback'=>true), $lr); + if (!$r) { + db_close($lr); + fclose($fp); + return false; + } + } + db_commit($lr); + db_close($lr); + + fclose($fp); + return true; +} + +/* áthelyezve: share/osztalyModifier.php +// osztalyId, tanarId, beDt --> kiDt +function osztalyfonokKileptetes($osztalyId, $tanarId, $beDt, $kiDt, $olr = '') { +... +} +*/ + +function osztalyfonokKinevezes($osztalyId, $tanarId, $beDt, $lr = null) { + + global $mayorCache; + $mayorCache->delType('osztaly'); + + // Ellenőrizzük, hogy az adott időszakban nincs-e már kinevezve ofőnek + $q = "SELECT COUNT(*) AS db FROM osztalyTanar WHERE osztalyId=%u AND tanarId=%u + AND (beDt<'%s' AND '%s' 'osztalyfonokKinevezes', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v), $lr); + + if ($db > 0) { + $_SESSION['alert'][] = 'message:wrong_data:már ki van nevezve:'."$beDt - $kiDt:$num"; + return false; + } + + $q = "INSERT INTO osztalyTanar (osztalyId, tanarId, beDt, kiDt) VALUES (%u, %u, '%s', NULL)"; + $v = array($osztalyId, $tanarId, $beDt); + return db_query($q, array('fv' => 'osztalyfonokKinevezes', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + +} + +/* + TODO: az osztalyJellegId módosítása nem megengedett, vagy végig kell gondolni, + hogy mi mindent érint (osztalyJel, evfolyam, evfolyamJel - minden érintett tanév osztalyNaplo táblájában+tankör nevek+vegzoTanev...) +*/ +function osztalyLeirasTelephelyModositas($osztalyId, $leiras, $telephelyId, $osztalyJellegId, $kezdoEvfolyamSorszam, $osztalyAdat, $lr = null) { + + global $mayorCache; + $mayorCache->delType('osztaly'); + + if (isset($telephelyId) && $telephelyId != '') { + $q = "UPDATE osztaly SET leiras='%s',telephelyId=%u, kezdoEvfolyamSorszam=%u WHERE osztalyId=%u"; + $v = array($leiras, $telephelyId, $kezdoEvfolyamSorszam, $osztalyId); + } else { + $q = "UPDATE osztaly SET leiras='%s',telephelyId=NULL, kezdoEvfolyamSorszam=%u WHERE osztalyId=%u"; + $v = array($leiras, $kezdoEvfolyamSorszam, $osztalyId); + } + $ret = db_query($q, array('fv' => 'osztalyLeirasTelephelyModositas', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + return osztalyJellegModositas($osztalyId, $osztalyJellegId, $osztalyAdat, $lr); + +} + +function osztalyJellegModositas($osztalyId, $osztalyJellegId, $osztalyAdat, $lr = null) { + + global $mayorCache; + $mayorCache->delType('osztaly'); + + // Az osztalyJelleg lekérdezése + $ojAdat = getOsztalyJellegAdat($osztalyJellegId); + $ojEvfolyamJelek = explode(',', $ojAdat['evfolyamJelek']); + // csak akkor módosítunk, ha az oszály évfolyamainak száma <= az osztály-jelleg évfolyamainak száma + if (count($ojEvfolyamJelek) < ($osztalyAdat['vegzoTanev']-$osztalyAdat['kezdoTanev']+$osztalyAdat['kezdoEvfolyamSorszam'])) { + $_SESSION[] = 'message:wrong_data:Az osztály évfolyamainak száma nem engedi meg az adott osztály-jellegre váltást'; + return false; + } + // osztalyJelleg módosítása + $q = "UPDATE osztaly SET osztalyJellegId=%u WHERE osztalyId=%u"; + $v = array($osztalyJellegId, $osztalyId); + $ret = db_query($q, array('fv' => 'osztalyJellegModositas', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + // tanév adatbázisok frissítése (osztalyNaplo, munkatervOsztaly) + return updateOsztalyNev($osztalyId, $lr); +} + +function osztalyTorles($osztalyId) { + + global $mayorCache; + $mayorCache->delType('osztaly'); + + $q = "DELETE FROM osztaly WHERE osztalyId=%u"; + return db_query($q, array('fv' => 'osztalyTorles', 'modul' => 'naplo_intezmeny', 'values' => array($osztalyId))); + +} + +function ujTag($osztalyId, $diakId, $beDt, $kiDt) { +/* + * Az osztályba sorolás MOSTANTÓL többszakaszos, mint pl. a tankörbesorolás, azaz a diakId:osztalyId:beDt a + * kulcs a kapcsolótáblában. + */ + + // Csatlakozás az adatbázishoz + $lr = db_connect('naplo_intezmeny', array('fv' => 'ujTag')); + if (!$lr) return false; + db_start_trans($lr); + + // Van-e már beDt-t tartalmazó osztálytagsága + $q = "SELECT beDt FROM osztalyDiak WHERE osztalyId=%u AND diakId=%u AND beDt<'%s' AND (kiDt IS NULL OR kiDt >= '%s')"; + $ret = db_query($q, array('fv' => 'ujTag', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($osztalyId, $diakId, $beDt, $beDt))); + if (!is_null($ret)) $beDt = $ret; + + if ($kiDt != '') { + // Ha kiDt nem üres, akkor: van-e kiDt-t tartalmazó osztálytagsága + $q = "SELECT kiDt FROM osztalyDiak WHERE osztalyId=%u AND diakId=%u AND beDt<'%s' AND (kiDt IS NULL OR kiDt >= '%s')"; + $ret = db_query($q, array('fv' => 'ujTag', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($osztalyId, $diakId, $kiDt, $kiDt))); + if (!is_null($ret)) $kiDt = $ret['kiDt']; + } + + if ($kiDt == '') { + // Ha $kiDt üres, akkor töröljük az eddigi bejegyzéseket a lefedett tartományból és felvesszük az újat + $q = "DELETE FROM osztalyDiak WHERE osztalyId=%u AND diakId=%u AND beDt>='%s'"; + db_query($q, array('fv' => 'ujTag/töröl', 'modul' => 'naplo_intezmeny', 'values' => array($osztalyId, $diakId, $beDt))); + $q = "INSERT INTO osztalyDiak (osztalyId, diakId, beDt, kiDt) VALUES (%u, %u, '%s', NULL)"; + db_query($q, array('fv' => 'ujTag/felvesz', 'modul' => 'naplo_intezmeny', 'values' => array($osztalyId, $diakId, $beDt))); + } else { + // Ha $kiDt nem üres, akkor töröljük az eddigi bejegyzéseket a lefedett tartományból és felvesszük az újat + $q = "DELETE FROM osztalyDiak WHERE osztalyId=%u AND diakId=%u AND '%s'<=beDt AND kiDt<='%s'"; + db_query($q, array('fv' => 'ujTag/töröl', 'modul' => 'naplo_intezmeny', 'values' => array($osztalyId, $diakId, $beDt, $kiDt))); + $q = "INSERT INTO osztalyDiak (osztalyId, diakId, beDt, kiDt) VALUES (%u, %u, '%s', '%s')"; + db_query($q, array('fv' => 'ujTag/felvesz', 'modul' => 'naplo_intezmeny', 'values' => array($osztalyId, $diakId, $beDt, $kiDt))); + } + + db_commit($lr); + db_close($lr); + return $r; +} + +function diakKepzesModositas($diakIds, $kepzesMod, $dt) { + + $modKepzesIds = array_keys($kepzesMod); + + if (!is_array($diakIds) || !is_array($modKepzesIds) || count($diakIds) == 0) return false; + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + + // A megadott diákok adott dátum szerinti képzései + $q = "SELECT kepzesId, diakId FROM kepzesDiak WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") AND tolDt<='%s' AND (igDt IS NULL OR '%s'<=igDt)"; + $v = mayor_array_join($diakIds, array($dt,$dt)); + $kepzesOld = db_query($q, array('fv' => 'diakKepzesModositas/dKepzes','modul'=>'naplo_intezmeny','values'=>$v,'result'=>'keyvalues'), $lr); + if (!is_array($kepzesOld)) { db_rollback($lr); db_close($lr); return false; } + + $oldKepzesIds = array_keys($kepzesOld); + $kepzesIds = array_unique(array_merge($modKepzesIds, $oldKepzesIds)); + foreach ($kepzesIds as $kepzesId) { + + if (!is_array($kepzesMod[$kepzesId])) $kepzesMod[$kepzesId] = array(); + if (!is_array($kepzesOld[$kepzesId])) $kepzesOld[$kepzesId] = array(); + + $add = array_unique(array_diff($kepzesMod[$kepzesId], $kepzesOld[$kepzesId])); + $del = array_unique(array_diff($kepzesOld[$kepzesId], $kepzesMod[$kepzesId])); + $diff = array_unique(array_merge($add, $del)); + // Aki $dt után került be a képzésbe és most kiveendő vagy felveendő, azt töröljük + if (count($diff) > 0) { + $q = "DELETE FROM kepzesDiak WHERE kepzesId=%u AND tolDt>'%s' + AND diakId IN (".implode(',',array_fill(0,count($diff),'%u')).")"; + $v = mayor_array_join(array($kepzesId, $dt), $diff); + $r = db_query($q, array('fv'=>'diakKepzesModositas/delete','modul'=>'naplo_intezmeny','values'=>$v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } + if (count($del) > 0) { + // a tolDt=$dt esetén csak a lezárandókat kell törölni + $q = "DELETE FROM kepzesDiak WHERE kepzesId=%u AND tolDt='%s' + AND diakId IN (".implode(',',array_fill(0,count($del),'%u')).")"; + $v = mayor_array_join(array($kepzesId, $dt), $del); + $r = db_query($q, array('fv'=>'diakKepzesModositas/delete','modul'=>'naplo_intezmeny','values'=>$v), $lr); + // Aki korábban benne volt a képzésben, de most nincs, azt le kell zárni + $q = "UPDATE kepzesDiak SET igDt='%s' - INTERVAL 1 DAY WHERE kepzesId=%u AND tolDt<'%s' AND (igDt IS NULL OR '%s'<=igDt) + AND diakId IN (".implode(',',array_fill(0,count($del),'%u')).")"; + $v = mayor_array_join(array($dt, $kepzesId, $dt, $dt), $del); + $r = db_query($q, array('fv'=>'diakKepzesModositas/update','modul'=>'naplo_intezmeny','values'=>$v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } + if (count($add) > 0) { + // Aki eddig nem volt, azt fel kell venni + $v = $INS = array(); + foreach ($add as $diakId) { + $INS[] = "(%u, %u, '%s', NULL)"; + array_push($v, $kepzesId, $diakId, $dt); + } + if (count($INS)>0) { + $q = "INSERT INTO kepzesDiak (kepzesId, diakId, tolDt, igDt) VALUES ".implode(',',$INS); + db_query($q, array('fv'=>'diakKepzesModositas/inster','modul'=>'naplo_intezmeny','values'=>$v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return false; } + } + } + } + db_commit($lr); + db_close($lr); + +} + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tanar.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tanar.php new file mode 100644 index 00000000..68a203a8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tanar.php @@ -0,0 +1,54 @@ + $value) { + if (array_key_exists($attr, $FIELDS) && !in_array($attr, array('action','tanarId'))) { + if ($value == '') { + $T[] = "$attr=NULL"; + } else { + $v[] = $value; + $T[] = "$attr='%s'"; + } + } + } + $q = "UPDATE tanar SET ".implode(',',$T)." WHERE tanarId=%u"; + $v[] = $ADAT['tanarId']; + return db_query($q, array('fv' => 'tanarAdatModositas', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + } + + function ujTanar($ADAT) { + + + $FIELDS = getTableFields('tanar'); + $A = $V = $v = array(); + // Ellenőrizzük, hogy az oktatási azonosító szerepel-e már.... + if ($ADAT['oId'] != '') { + $q = "SELECT COUNT(*) FROM tanar WHERE oId=%u"; + $db = db_query($q, array('fv' => 'ujTanar/ütközés ellenőrzés','modul' => 'naplo_intezmeny', 'values' => array($ADAT['oId']), 'result' => 'value')); + if ($db > 0) { + $_SESSION['alert'][] = 'message:wrong_data:ujTanar/ütközés ellenőrzés:ütköző oktatási azonosító ('.$ADAT['oId'].')'; + return false; + } + } + foreach($ADAT as $attr => $value) { + if (array_key_exists($attr,$FIELDS) && !in_array($attr, array('action','tanarId'))) { + if ($value == '' && !in_array($attr, array('viseltNevElotag'))) { + $V[] = "NULL"; + } else { + $V[] = "'%s'"; + $v[] = $value; + } + $A[] = "$attr"; + } + } + $q = "INSERT INTO tanar (".implode(',', $A).") VALUES (".implode(',',$V).')'; + + return db_query($q, array('fv' => 'ujTanar', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankor.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankor.php new file mode 100644 index 00000000..6b1a3df4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankor.php @@ -0,0 +1,202 @@ + 'ujTankor')); + if (!$lr) return false; + + /* pre-check variables */ + //... + /* pre-check */ + if (isset($ADAT['tankorId']) && $ADAT['tankorId']!='') { + $return = $tankorId = $ADAT['tankorId']; + $_tankorCn = $ADAT['tankorCn']; + $q = "UPDATE tankor SET felveheto=%u, min=%u, max=%u, kovetelmeny='%s', tankorCn='%s' WHERE tankorId=%u"; + $v = array($ADAT['felveheto'], $ADAT['min'], $ADAT['max'], $ADAT['kovetelmeny'],$_tankorCn,$tankorId); + db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'values' => $v)); + $tanarFelvesz = false; + } else { + $q = "INSERT INTO tankor (targyId,felveheto,min,max,kovetelmeny) VALUES (%u, '%s', %u, %u,'%s')"; + $v = array($ADAT['targyId'], $ADAT['felveheto'], $ADAT['min'], $ADAT['max'], $ADAT['kovetelmeny']); + $return = $tankorId = db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + $tanarFelvesz = true; + } + /* tankorTipus rev 1261++ -- 1294 */ + if (isset($ADAT['tankorTipus']) && !is_null($ADAT['tankorTipus'])) { + $q = "UPDATE tankor SET tankorTipus='%s' WHERE tankorId=%u"; + $v = array($ADAT['tankorTipus'], $tankorId); + db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'values' => $v)); + } + /* tankorTipus rev 1294++ */ + if (isset($ADAT['tankorTipusId']) && !is_null($ADAT['tankorTipusId'])) { + $q = "UPDATE tankor SET tankorTipusId='%s' WHERE tankorId=%u"; + $v = array($ADAT['tankorTipusId'], $tankorId); + db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'values' => $v)); + $q = "SELECT jelleg FROM tankorTipus WHERE tankorTipusId=%u"; + $v = array($ADAT['tankorTipusId']); + $tankorTipusJelleg = db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'result'=>'value','values' => $v)); + } + + /* TankörCsoport min/max - a tankörcsoport minden tankörében átállítjuk ezeket */ + $q = "UPDATE ".__INTEZMENYDBNEV.".tankor SET min=%u, max=%u WHERE tankorId IN ( + SELECT DISTINCT tankorId FROM tankorCsoport WHERE csoportId IN ( + SELECT csoportId FROM tankorCsoport WHERE tankorId=%u + ) + )"; + $v = array($ADAT['min'], $ADAT['max'], $tankorId); + db_query($q, array('fv' => 'ujTankor/minMax', 'modul' => 'naplo', 'values' => $v)); + + //-- + $IOSZTALY = getTankorOsztalyai($tankorId, array('result' => 'id'), $lr); //TAGOK ALAPJÁN??? + for ($i = 0; $i < count($ADAT['osztalyok']); $i++) { + $q = "REPLACE INTO tankorOsztaly (tankorId, osztalyId) VALUES (%u, %u)"; + $v = array($tankorId, $ADAT['osztalyok'][$i]); + db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + } + + /* */ + $TOSZTALY = getTankorOsztalyaiByTanev($tankorId, $ADAT['tanev'], array('result' => 'id', 'tagokAlapjan' => true), $lr); + + /* FIGYELEM! EZ veszélyes művelet! */ + if (is_array($IOSZTALY) && is_array($ADAT['osztalyok'])) $DEL_OSZTALY = array_diff($IOSZTALY,$ADAT['osztalyok']); + if (($_ERR = array_intersect($DEL_OSZTALY,$TOSZTALY))) { + $_SESSION['alert'][] = 'info:tankorOsztalyNemTorolheto:'.implode('-',$_ERR); + for ($k=0; $k0) { + $q = "DELETE FROM tankorOsztaly WHERE osztalyId IN (".implode(',', array_fill(0, count($DEL_OSZTALY), '%u')).") AND tankorId=%u"; + $v = mayor_array_join($DEL_OSZTALY, array($tankorId)); + db_query($q, array('fv' => 'ujTankor/del-oszt', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + } + + /* create name */ + // osztalyId alapján évfolyam, osztály jelek lekérdezése + // abból összeállítás + // getOsztalyAdat helyett + + $TARGYADAT = getTargyById($ADAT['targyId'],$lr); + $kdt = '3000-01-01'; + $vdt = '1970-01-01'; + if (is_array($ADAT['szemeszterek'])) + for ($j = 0; $j < count($ADAT['szemeszterek']); $j++) { + $nev = ''; + $szid = $ADAT['szemeszterek'][$j]; + $_SZ = getSzemeszterek(array('filter' => array("szemeszterId=$szid"))); + if ($_SZ[0]['kezdesDt'] < $kdt) $kdt = $_SZ[0]['kezdesDt']; + if ($_SZ[0]['zarasDt'] > $vdt) $vdt = $_SZ[0]['zarasDt']; + $_tanev = $_SZ[0]['tanev']; + $_szemeszter = $_SZ[0]['szemeszter']; + $_oraszam = $ADAT['SZ'.$szid]; + if ($tankorTipusJelleg=='osztályfüggetlen') { + $nev = "Isk."; + } else { + $OSZTALYOK = getOsztalyok($_tanev); + if ($OSZTALYOK !== false && is_array($OSZTALYOK) && is_array($ADAT['osztalyok'])) { + $nev = ''; + $TMP = array(); + for($i = 0; $i < count($OSZTALYOK); $i++) { + // Ha évenként változik az osztály jele, akkor jobb, ha nem generáljuk, hanem a lekérdezett adatokat használjuk! + // $_oj = genOsztalyJel($_tanev, $OSZTALYOK[$i]); + $_oj = $OSZTALYOK[$i]['osztalyJel']; + if ($_oj!==false && !is_null($_oj)) { + list($e,$o) = explode('.',$_oj); + if (in_array($OSZTALYOK[$i]['osztalyId'], $ADAT['osztalyok'])) $TMP[$e][]= $o; + } + } + if (count(array_keys($TMP)) == 1) { // évfolyamon belüli osztályok: + $nev = implode('||',array_keys($TMP)); + $nev .= '.'.implode('',$TMP[$nev]); + } elseif (count((array_keys($TMP)))>1) { // multi évfolyam: + $K = (array_keys($TMP)); + sort($K); + $nev = $K[0].'-'.$K[count($K)-1].'.'; + } else { // ekkorra már elballagott minden osztaly... + $nev = false; + $_SESSION['alert'][] = '::Minden osztály elballagott'; + } + } else { + $nev = false; // adott szemeszterbe nem jár osztály + $_SESSION['alert'][] = '::Az adott szemeszterbe nem jár osztály'; + } + } + if ($nev !== false) { + $nev .= ' '.$TARGYADAT['targyNev']; + $nev .= ' '; + + $q = "SELECT tankorJel FROM tankor LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u"; + $tankorJel = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'value', 'values' => array($tankorId), 'debug'=>false), $lr); + if ($tankorJel!='') $nev .= $tankorJel.' '.$ADAT['tipus']; + else $nev .= $ADAT['tipus']; + $q = "REPLACE INTO tankorSzemeszter (tankorId,tanev,szemeszter,oraszam,tankorNev) VALUES (%u, %u, %u, %f, '%s')"; + if ($ADAT['tanev'] < __TANEV || $ADAT['tankorNevMegorzes']===true) { // a neve már ne változzon, és az óraszáma? + $q1 = "SELECT tankorNev FROM tankorSzemeszter WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; + // OVERWRITE!!!! + $orignev = db_query($q1, array('fv' => 'ujTankor', 'result'=>'value', 'modul' => 'naplo_intezmeny', 'values' => array($tankorId,$_tanev,$_szemeszter), 'debug'=>false), $lr); + if ($orignev!='' && $orignev!='Array') $nev = $orignev; // csúnya bugfix + } + $v = array($tankorId, $_tanev, $_szemeszter, $_oraszam, $nev); + if ($nev!='') db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'values' => $v, 'debug'=>false), $lr); + // delete!!!!???? + } + + } + if ($tanarFelvesz && $ADAT['tanarId']!='') { + + $q = "INSERT INTO tankorTanar (tankorId,tanarId,beDt,kiDt) VALUES (%u, %u, '%s', '%s')"; + $v = array($tankorId, $ADAT['tanarId'], $kdt, $vdt); + $r = db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + + } + + // ======================================================= + + db_close($lr); + + return $return; + } + + function tankorTorol($tankorId) { + + $q = "DELETE FROM tankor WHERE tankorId=%u"; + return db_query($q, array('fv' => 'tankorTorol', 'modul' => 'naplo_intezmeny', 'values' => array($tankorId))); + + } + + function tankorTargyModositas($ADAT) { + /** + * Elvárt paraméterek: $ADAT['tankorId'], $ADAT['ujTargyId'], $ADAT['targyId'] // az eredeti + **/ + $lr = db_connect('naplo_intezmeny'); + if (!$lr) return false; + db_start_trans($lr); + + // A régi és új tárgynév lekérdezése + $q = "SELECT targyId, targyNev FROM targy WHERE targyId IN (%u, %u)"; + $v = array($ADAT['ujTargyId'], $ADAT['targyId']); + $ret = db_query($q, array('fv'=>'tankorTargyModositas/targyNev','values'=>$v, 'result'=>'keyvaluepair'), $lr); + // a tárgynév cserje a tankorSzemeszter táblában + $q = "UPDATE tankorSzemeszter SET tankorNev=REPLACE(tankorNev,'%s','%s') WHERE tankorId=%u"; + $v = array($ret[$ADAT['targyId']], $ret[$ADAT['ujTargyId']], $ADAT['tankorId']); + $r = db_query($q, array('fv'=>'tankorTargyModositas/updateTargyNev','values'=>$v), $lr); + if (!$r) { db_rollback($lr, 'tankorTargyModositas'); db_close($lr); return false; } + // A targyId módosítása + $q = "UPDATE tankor SET targyId=%u WHERE tankorId=%u"; + $v = array($ADAT['ujTargyId'], $ADAT['tankorId']); + $r = db_query($q, array('fv'=>'tankorTargyModositas/updateTargyId','values'=>$v), $lr); + if (!$r) { db_rollback($lr, 'tankorTargyModositas'); db_close($lr); return false; } + $nev = setTankorNev($ADAT['tankorId'], $tankorNevExtra=null, $lr); + if (!$nev) { db_rollback($lr, 'tankorTargyModositas'); db_close($lr); return false; } + + db_commit($lr); + db_close($lr); + return true; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorSzemeszter.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorSzemeszter.php new file mode 100644 index 00000000..fcd411c4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorSzemeszter.php @@ -0,0 +1,200 @@ + [multiassoc][tankorId] + function getSzemeszterek_spec($tolTanev = '', $igTanev = '') + | `szemeszter` tábla bejegyzései + --> [indexed] + function tankorSzemeszterModositas($Modositas, $tankorSzemeszter, $tankorNevek, $Szemeszterek, $tanevZarasDt) { + | A módosító + * function _createName($ADAT,$SZ,$extra) +*/ + + function getTankorSzemeszterek($tankorIds) { + + if (count($tankorIds) > 0) { + $q = "SELECT * FROM tankorSzemeszter WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")"; + return db_query($q, array( + 'fv' => 'getTankorSzemeszterek', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => $tankorIds + )); + } else { + return array(); + } + + } + + function getSzemeszterek_spec($tolTanev = '', $igTanev = '') { + + $v = array(); + if ($tolTanev != '') { + $where = "WHERE tanev >= %u"; + $v[] = $tolTanev; + } + if ($igTanev != '') { + if ($tolTanev != '') $where .= " AND tanev <= %u"; + else $where = "WHERE tanev <= %u"; + $v[] = $igTanev; + } + + $q = "SELECT * FROM szemeszter $where ORDER BY tanev,szemeszter"; + return db_query($q, array('fv' => 'getSzemeszterek', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + } + + function tankorSzemeszterModositas($Modositas, $tankorSzemeszter, $tankorNevek, $Szemeszterek, $tanevZarasDt) { + + // $tankorTanarAdatok inicializásása - $Szemeszterek alapján + $tankorIds = $tankorTanarAdatok = array(); + for ($i = 0; $i < count($Szemeszterek); $i++) { + $tankorTanarAdatok[$Szemeszterek[$i]['tanev']][$Szemeszterek[$i]['szemeszter']] = array( + 'tankorIds' => array(), + 'tanev' => $Szemeszterek[$i]['tanev'], + 'statusz' => $Szemeszterek[$i]['statusz'], + 'kezdesDt' => $Szemeszterek[$i]['kezdesDt'], + 'zarasDt' => $Szemeszterek[$i]['zarasDt'] + ); + } + + $lr = db_connect('naplo_intezmeny'); + + $Values = array(); + $Values = $v = array(); + for ($i = 0; $i < count($Modositas); $i++) { + + $M = $Modositas[$i]; + if ($tankorTanarAdatok[$M['tanev']][$M['szemeszter']]['statusz'] != 'lezárt') { + + if (is_array($tankorSzemeszter[$M['tankorId']][$M['tanev']][$M['szemeszter']])) { + // update - vagy semmi + $regiOraszam = $tankorSzemeszter[$M['tankorId']][$M['tanev']][$M['szemeszter']]['oraszam']; + if (floatval($M['oraszam']) >= 0 && $regiOraszam != $M['oraszam']) { // állíthatjuk nullára + // update - most már tényleg - itt csak az óraszám változik: + $q = "UPDATE tankorSzemeszter SET oraszam=%f WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; + db_query($q, array( + 'fv' => 'tankorSzemeszterModositas', 'modul' => 'naplo_intezmeny', + 'values' => array($M['oraszam'], $M['tankorId'], $M['tanev'], $M['szemeszter']) + ,'debug'=>false + )); + } elseif ( + floatval($M['oraszam']) == 0 + && $tankorTanarAdatok[$M['tanev']][$M['szemeszter']]['statusz'] == 'tervezett' + && $regiOraszam != $M['oraszam'] + ) { // Ekkor törölhetjük... nemde? + $q = "DELETE FROM tankorSzemeszter + WHERE tankorId=%u AND tanev=%u + AND szemeszter=%u"; + db_query($q, array( + 'fv' => 'tankorSzemeszterModositas', 'modul' => 'naplo_intezmeny', + 'values' => array($M['tankorId'], $M['tanev'], $M['szemeszter']) + ,'debug'=>false + )); + } + } else { + // insert + $tankorNev = _createName($M, array($M['tanev'].'/'.$M['szemeszter']), $tankorNevek[$M['tankorId']]); + if ($tankorNev != '') { + array_push($v, $M['tankorId'], $M['tanev'], $M['szemeszter'], $M['oraszam'], $tankorNev); + $Values[] = "(%u, %u, %u, %f, '%s')"; + // A tanár felvételéhez kell a tol-ig dt (Szemeszterek) + // tankorIds + $tankorTanarAdatok[$M['tanev']][$M['szemeszter']]['tankorIds'][] = $M['tankorId']; + if (!in_array($M['tankorId'], $tankorIds)) $tankorIds[] = $M['tankorId']; + // tankorTanarIds - a tanevZarasDt pillanatában lévő tanárait kérdezzük le + + } + } // insert vagy update + } // nem lezárt szemeszter + } // for + if (count($Values) > 0) { + $q = "INSERT INTO tankorSzemeszter (tankorId, tanev, szemeszter, oraszam, tankorNev) + VALUES ".implode(',', $Values); + db_query($q, array('fv' => 'tankorSzemeszterModositas', 'modul' => 'naplo_intezmeny', 'values' => $v,'debug'=>false)); + // Az $tanev évi tanárt is rendeljük hozzá! + // kik voltak tanárok a zárás napján + $q = "SELECT DISTINCT tankorId, tanarId FROM tankorTanar + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND '%s' >= beDt AND '%s' <= kiDt"; + $v = mayor_array_join($tankorIds, array($tanevZarasDt, $tanevZarasDt)); + $ret = db_query($q, array('fv' => 'tankorSzemeszterModositas', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v, 'debug'=>false), $lr); + for ($i = 0; $i < count($ret); $i++) $tankorTanarIds[$ret[$i]['tankorId']][] = $ret[$i]['tanarId']; + foreach ($tankorTanarAdatok as $szTanev => $tanevAdat) + foreach ($tanevAdat as $szSzemeszter => $szemeszterAdat) + if (count($szemeszterAdat['tankorIds']) > 0) { + tankorTanarFelvesz( + $szemeszterAdat['tankorIds'], $tankorTanarIds, $szemeszterAdat, + $szemeszterAdat['kezdesDt'], $szemeszterAdat['zarasDt'] + ); + } + } + + db_close($lr); + return true; + + } + + function _createName($ADAT,$SZ,$extra) { + + global $TANKOR_TIPUS; + + $tankorId = $ADAT['tankorId']; + if ($tankorId=='') return false; + $tanev = $ADAT['tanev']; + $szemeszter = $ADAT['szemeszter']; + + $targyId = getTankorTargyId($tankorId); + $TANKOROSZTALYOK = getTankorOsztalyai($tankorId, array('result' => 'id')); + + if ($targyId=='') return false; + $TARGYADAT = getTargyById($targyId); + $kdt='3000-01-01'; + $vdt='1970-01-01'; + if (is_array($SZ)) + for ($j=0; $j1) { // multi évfolyam: + $K = (array_keys($TMP)); + sort($K); + $nev = $K[0].'-'.$K[count($K)-1].'.'; + } else { // ekkorra már elballagott minden osztaly... + $nev = false; + + } + + } else { + $nev = false; // adott szemeszterbe nem jár osztály + } + + if ($nev!== false) { + $nev .= ' '.$TARGYADAT['targyNev']; + foreach($TANKOR_TIPUS as $_tt=>$_tipus) { + if (strstr($extra,$_tipus)) { + $_extra = $_tipus; + } + } + $nev .= ' '.$_extra; + } + } + return $nev; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorTanar.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorTanar.php new file mode 100644 index 00000000..af6840e9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorTanar.php @@ -0,0 +1,292 @@ + 'tankorTanarTorol', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + + if ($r == 0) { + $q = "DELETE FROM ".__INTEZMENYDBNEV.".tankorTanar WHERE tankorId=%u AND bedt='%s' AND tanarId=%u"; + $v = array($tankorId, $beDt, $tanarId); + db_query($q, array('fv' => 'tankorTanarTorol', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true)); + } else { + $_SESSION['alert'][] = 'info:lezart_tanev'; + } + } + + function tankorTanarJavit($tankorId,$tanarId,$beDt,$kiDt) { + + $q = "SELECT COUNT(*) AS db FROM szemeszter WHERE statusz='lezárt' AND + (('%s' BETWEEN szemeszter.kezdesDt AND szemeszter.zarasDt) + OR + ('%s' BETWEEN szemeszter.kezdesDt AND szemeszter.zarasDt)) + LIMIT 1"; + $v = array($beDt, $kiDt); + $r = db_query($q, array('fv' => 'tankorTanarTorol', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + + if ($r == 0) { + $q = "UPDATE ".__INTEZMENYDBNEV.".tankorTanar SET kiDt='%s' WHERE tankorId=%u AND bedt='%s' AND tanarId=%u"; + $v = array($kiDt,$tankorId, $beDt, $tanarId); + db_query($q, array('fv' => 'tankorTanarTorol', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true)); + } else { + $_SESSION['alert'][] = 'info:lezart_tanev'; + } + } + + //--- + + + function tankorTanarFelvesz($tankorIds, $tankorTanarIds, $tanevAdat, $tolDt, $igDt) { + + + if (!is_array($tankorIds) || count($tankorIds) == 0) return false; + $D = array(); + + $lr = db_connect('naplo_intezmeny', array('fv' => 'tankorTanarFelvesz')); + db_start_trans($lr); + + // Az intervallumban érintett tankör-tanár tagságok lekérdezése... + $v = mayor_array_join($tankorIds, array($igDt, $tolDt)); + $q = "SELECT tanarId, tankorId, min(bedt) AS mbe ,max(kidt) AS mki + FROM ".__INTEZMENYDBNEV.".tankorTanar WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND bedt<='%s' AND kidt>='%s' GROUP BY tankorid,tanarid"; + $ret = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v, 'rollback' => true), $lr); + if ($ret === false) { db_close($lr); return false; } + for ($i = 0; $i < count($ret); $i++) { + if ($tolDt < $ret[$i]['mbe']) $ret[$i]['mbe'] = $tolDt; + if ($igDt > $ret[$i]['mki']) $ret[$i]['mki'] = $igDt; + $D[ $ret[$i]['tankorId'] ][ $ret[$i]['tanarId'] ] = array('mbe' => $ret[$i]['mbe'], 'mki' => $ret[$i]['mki'], 'torlendo' => true); + } + + // Az érintett intervallumba eső tankör-tanár tagságok törlése + $q = "DELETE FROM ".__INTEZMENYDBNEV.".tankorTanar WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND bedt<='%s' AND kidt>='%s'"; + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + + // beszúrandó + for ($i = 0; $i < count($tankorIds); $i++) { + $tankorId = $tankorIds[$i]; + $tanarIds = $tankorTanarIds[$tankorId]; + for ($j = 0; $j < count($tanarIds); $j++) { + $tanarId = $tanarIds[$j]; + if ($tanarId != '') { + $D[$tankorId][$tanarId]['torlendo'] = false; + if (($beDt = $D[$tankorId][$tanarId]['mbe']) == '') $beDt = $tolDt; + if (($kiDt = $D[$tankorId][$tanarId]['mki']) == '') $kiDt = $igDt; + $q = "INSERT INTO ".__INTEZMENYDBNEV.".tankorTanar (tankorId,tanarId,beDt,kiDt) VALUES (%u, %u, '%s', '%s')"; + $v = array($tankorId, $tanarId, $beDt, $kiDt); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + } + } + } + + // törlendők felvétele + for ($i = 0; $i < count($tankorIds); $i++) { + $tankorId = $tankorIds[$i]; + if (is_array($D[$tankorId])) + foreach($D[$tankorId] as $tanarId => $T) { + if ($T['torlendo']) { + if ($T['mbe'] < $tolDt) { + $beDt = $T['mbe']; + $kiDt = date('Y-m-d', strtotime('-1 days',strtotime($tolDt))); + $q = "INSERT INTO ".__INTEZMENYDBNEV.".tankorTanar (tankorId,tanarId,beDt,kiDt) VALUES (%u, %u, '%s', '%s')"; + $v = array($tankorId, $tanarId, $beDt, $kiDt); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + } + if ($T['mki'] > $igDt) { + $kiDt = $T['mki']; + $beDt = date('Y-m-d', strtotime('+1 days',strtotime($igDt))); + $q = "INSERT INTO ".__INTEZMENYDBNEV.".tankorTanar (tankorId,tanarId,beDt,kiDt) VALUES (%u, %u, '%s','%s')"; + $v = array($tankorId, $tanarId, $beDt, $kiDt); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + } + } + } + } + + // tankörblokkok ellenőrzése - csak nem tervezett tanévben + // Érintett blokkok lekérdezése + if ($tanevAdat['statusz'] != 'tervezett') { + $blokkIds = getTankorBlokkByTankorId($tankorIds, $tanevAdat['tanev']); + if (is_array($blokkIds)) foreach ($blokkIds as $index => $blokkId) { + // A blokk tankörei + $bTankorIds = getTankorokByBlokkId($blokkId, $tanevAdat['tanev']); + + // Ellenőrizzük a tankör tanárokat - azonosak-e tankörönként + $q = "SELECT tanarId,COUNT(DISTINCT tankorId) AS c FROM ".__INTEZMENYDBNEV.".tankorTanar + WHERE tankorId IN (".implode(',', array_fill(0, count($bTankorIds), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR '%s' <= kiDt) + GROUP BY tanarId HAVING c>1 + ORDER BY tankorId,tanarId"; + $v = mayor_array_join($bTankorIds, array($igDt, $tolDt)); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz/BlokkEllenőrzés', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $lr); + if (is_array($r) && count($r) > 0) { + db_rollback($lr, 'Ütköző tanárt találtam egy blokkban ('.$blokkId.')! Visszaállítjuk az eredeti állapotot!'); + db_close($lr); + return false; + } + } + } + /* ======================================================== + Órarend módosítása + ======================================================== */ + + + if ($tanevAdat['statusz'] == 'aktív') { + + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanevAdat['tanev']); + + // ÓrarendiOraTankor bejegyzés ellenőrzés/készítés + $V = $v2 = array(); + foreach ($tankorIds as $i => $tankorId) { + if ($tankorTanarIds[$tankorId][0] != '') { // Ha akarunk egyáltalán tanárt hozzárendelni + // van-e már az igényeinknek megfelelő bejegyzés + $q = "SELECT * FROM `%s`.orarendiOraTankor WHERE tankorId=%u + AND tanarId IN (".implode(',', array_fill(0, count($tankorTanarIds[$tankorId]), '%u')).") LIMIT 1"; + $v = mayor_array_join(array($tanevDbNev, $tankorId), $tankorTanarIds[$tankorId]); + $ret = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v, 'rollback' => true), $lr); + if ($ret === false) { db_close($lr); return false; } + + if (count($ret) != 0) { // ha van, akkor az elsőt használjuk + $OOT[$tankorId] = $ret[0]; + } else { // ha nincs, akkor generálunk egy jót + $OOT[$tankorId] = array( + 'tanarId' => $tankorTanarIds[$tankorId][0], + 'osztalyJel' => 'NaN', + 'targyJel' => $tankorId.'-'.$tankorTanarIds[$tankorId][0], + 'tankorId' => $tankorId + ); + $V[] = "(%u, 'NaN', '%s', %u)"; + array_push($v2, $tankorTanarIds[$tankorId][0], $tankorId.'-'.$tankorTanarIds[$tankorId][0], $tankorId); + } + } + } + if (count($V) > 0) { // Az új bejegyzéseket felvesszük + $q = "INSERT INTO `%s`.orarendiOraTankor (tanarId,osztalyJel,targyJel,tankorId) VALUES ".implode(',', $V); + array_unshift($v2, $tanevDbNev); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v2, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + + } + + // Az érintett órarendi bejegyzések lekérdezése beDt szerint rendezve + $q = "SELECT tolDt,igDt,het,nap,ora,tankorId,tanarId,osztalyJel,targyJel,teremId + FROM `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + WHERE tolDt <= '%s' AND (igDt >= '%s' OR igDt IS NULL) + AND tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + ORDER BY tankorId,tolDt"; + $v = mayor_array_join(array($tanevDbNev, $tanevDbNev, $igDt, $tolDt), $tankorIds); + $ret = db_query($q, array( + 'fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => $v, 'rollback' => true + ), $lr); + if ($ret === false) { db_close($lr); return false; } + + foreach ($ret as $tankorId => $tankorOrarendiBejegyzesek) { + + // Ha van orarendiOra bejegyzés és nem akarunk tanárt hozzárendelni - az hiba!! + if (!is_array($OOT[$tankorId])) { + db_rollback($lr, 'Létező órarendi óra esetén a tanár nem törölhető:'.$tankorId); db_close($lr); return false; + }; + + $tanarId = $OOT[$tankorId]['tanarId']; + $osztalyJel = $OOT[$tankorId]['osztalyJel']; + $targyJel = $OOT[$tankorId]['targyJel']; + + foreach ($tankorOrarendiBejegyzesek as $i => $TOB) { + if ($TOB['teremId'] == '') { + $TOB['teremId'] = 'NULL'; + $valueStr = "(%u, %u, %u, %u, '%s', '%s', %s, '%s', '%s')"; + } else { + $valueStr = "(%u, %u, %u, %u, '%s', '%s', %u, '%s', '%s')"; + } + if ($TOB['tolDt'] < $tolDt) { // balról túlnyúlik - kettévágjuk + $q = "UPDATE `%s`.orarendiOra SET igDt='%s' - INTERVAL 1 DAY + WHERE tolDt='%s' AND tanarId=%u + AND het=%u AND nap=%u AND ora=%u"; + $v = array($tanevDbNev, $tolDt, $TOB['tolDt'], $TOB['tanarId'], $TOB['het'], $TOB['nap'], $TOB['ora']); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + $q = "INSERT INTO `%s`.orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt) VALUES $valueStr"; + $v = array( + $tanevDbNev, $TOB['het'], $TOB['nap'], $TOB['ora'], $TOB['tanarId'], $TOB['osztalyJel'], + $TOB['targyJel'], $TOB['teremId'], $tolDt, $TOB['igDt'] + ); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + $TOB['tolDt'] = $tolDt; // Az intervallumot lefedő bejegyzések miatt - három fele fogjuk vágni + } + if ($igDt < $TOB['igDt']) { // jobbról túlnyúlik - kettévágjuk !! igDt nem lehet NULL !! + $q = "UPDATE `%s`.orarendiOra SET tolDt='%s' + INTERVAL 1 DAY + WHERE igDt='%s' AND tanarId=%u AND het=%u AND nap=%u AND ora=%u"; + $v = array($tanevDbNev, $igDt, $TOB['igDt'], $TOB['tanarId'], $TOB['het'], $TOB['nap'], $TOB['ora']); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + $q = "INSERT INTO `%s`.orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt) VALUES $valueStr"; + $v = array( + $tanevDbNev, $TOB['het'], $TOB['nap'], $TOB['ora'], $TOB['tanarId'], $TOB['osztalyJel'], + $TOB['targyJel'], $TOB['teremId'], $TOB['tolDt'], $igDt + ); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + + } + // A közbensőkben tanárt váltunk + if ($tanarId != $TOB['tanarId']) { + $q = "UPDATE `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + SET tanarId=%u, osztalyJel='%s', targyJel='%s' + WHERE '%s'<=tolDt AND igDt<='%s' AND tanarId=%u AND het=%u AND nap=%u AND ora=%u AND tankorId=%u"; + $v = array($tanevDbNev, $tanevDbNev, $tanarId, $osztalyJel, $targyJel, $tolDt, $igDt, $TOB['tanarId'], $TOB['het'], $TOB['nap'], $TOB['ora'], $tankorId); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + } + + } + + } // foreach + + // A módosított órarend ütközésellenőrzése - [k] munkatervenként külön. Itt most megengedjük, hogy ha több munkaterv is van, de egyszerre van órája a tanárnak... :/ +// $q = "SELECT tanarId, dt, ora, COUNT(*) AS db +// FROM `%s`.nap LEFT JOIN `%s`.orarendiOra +// ON (((DAYOFWEEK(dt)+5) MOD 7)+1 = orarendiOra.nap) +// AND orarendiOra.het=nap.orarendiHet +// AND orarendiOra.tolDt<=dt AND orarendiOra.igDt>=dt +// WHERE '%s' <= dt AND dt <= '%s' +// GROUP BY munkatervId,tanarId, dt, ora +// HAVING db > 1"; + // [bb] szerintem ez a jó: a hét-nap-óra-tanár-tolDt kulcs az orarendiOra táblában, így ha két sorban ezek megegyeznek, akkor nem kell külön számolni... + $q = "SELECT tanarId, dt, ora, COUNT(DISTINCT het, nap, ora, tanarId, tolDt) AS db + FROM `%s`.nap LEFT JOIN `%s`.orarendiOra + ON (((DAYOFWEEK(dt)+5) MOD 7)+1 = orarendiOra.nap) + AND orarendiOra.het=nap.orarendiHet + AND orarendiOra.tolDt<=dt AND orarendiOra.igDt>=dt + WHERE '%s' <= dt AND dt <= '%s' + GROUP BY tanarId, dt, ora + HAVING db > 1"; + $v = array($tanevDbNev, $tanevDbNev, $tolDt, $igDt); + $ret = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v, 'rollback' => true), $lr); + if ($ret === false) { db_close($lr); return false; } + + if (count($ret)) { // Van ütközés! + db_rollback($lr, 'Az összes ütközést ellenőriztem, és a megadott '.$tolDt.'-'.$igDt.' intervallumban egy (esetleg másik) tanárnak több órája van egy időben (tanarId='.$ret[0]['tanarId'].', dt='.$ret[0]['dt'].', ora='.$ret[0]['ora'].') - így visszaállítjuk az eredeti állapotot...'); + db_close($lr); + return false; + } + + } // aktív tanév + + db_commit($lr); + db_close($lr); + return true; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorTanarHozzarendeles.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorTanarHozzarendeles.php new file mode 100644 index 00000000..600ee897 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorTanarHozzarendeles.php @@ -0,0 +1,224 @@ +='".$_TANEV['zarasDt']."') + ) as db + from tankorSzemeszter left join tankorTanar using (tankorId) + where tanev=".__TANEV." and tanarId=%u and beDt<='".$_TANEV['kezdesDt']."' + and (kiDt is NULL or kiDt>='".$_TANEV['zarasDt']."') group by tankorId + ) as tankorOraszamPerTanar"; + + return db_query($q, array('fv'=>'getTanarLekotottOraszam','modul'=>'naplo_intezmeny','result'=>'value','values'=>array($tanarId))); + + } + + function getTankorokBySzuro($Szuro) { + /* + osztaly U tanar U tanarNelkul || targy U mk U tanar U tanarNelkul || (osztaly M targy) U (osztaly M mk) U tanar U tanarNelkul + */ + global $_TANEV; + + $vanOsztaly = (is_array($Szuro['osztalyIds']) && count($Szuro['osztalyIds'])>0); + $vanMk = (is_array($Szuro['mkIds']) && count($Szuro['mkIds'])>0); + $vanTargy = (is_array($Szuro['targyIds']) && count($Szuro['targyIds'])>0); + $vanTanar = (is_array($Szuro['tanarIds']) && count($Szuro['tanarIds'])>0); + $vanTanarNelkuliek = (bool)$Szuro['tanarNelkuliTankorok']; + + $v = $q = array(); + if ($vanOsztaly && !$vanMk && !$vanTargy) { + $q[] = "SELECT tankorId, tankorNev, targyId, tankorTipusId, avg(oraszam) AS hetiOraszam + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) + LEFT JOIN tankorOsztaly USING (tankorId) + WHERE osztalyId IN (".implode(',', array_fill(0, count($Szuro['osztalyIds']), '%u')).") + AND tanev=".__TANEV." + GROUP BY tankorId, tankorNev, targyId, tankorTipusId + ORDER BY tankorNev, tankorId"; + $v = array_merge($v, $Szuro['osztalyIds']); + } + if ($vanMk) { + if ($vanOsztaly) { + $q[] = "SELECT tankorId, tankorNev, targyId, tankorTipusId, avg(oraszam) AS hetiOraszam + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) + LEFT JOIN targy USING (targyId) + WHERE mkId IN (".implode(',', array_fill(0, count($Szuro['mkIds']), '%u')).") + AND tanev=".__TANEV." + AND tankorId IN ( + SELECT tankorId FROM tankorOsztaly WHERE osztalyId IN (".implode(',', array_fill(0, count($Szuro['osztalyIds']), '%u')).") + ) + GROUP BY tankorId, tankorNev, targyId, tankorTipusId + ORDER BY tankorNev, tankorId"; + $v = array_merge($v, $Szuro['mkIds'], $Szuro['osztalyIds']); + } else { + $q[] = "SELECT tankorId, tankorNev, targyId, tankorTipusId, avg(oraszam) AS hetiOraszam + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) + LEFT JOIN targy USING (targyId) + WHERE mkId IN (".implode(',', array_fill(0, count($Szuro['mkIds']), '%u')).") + AND tanev=".__TANEV." + GROUP BY tankorId, tankorNev, targyId, tankorTipusId + ORDER BY tankorNev, tankorId"; + $v = array_merge($v, $Szuro['mkIds']); + } + } + if ($vanTargy) { + if ($vanOsztaly) { + $q[] = "SELECT tankorId, tankorNev, targyId, tankorTipusId, avg(oraszam) AS hetiOraszam + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) + WHERE targyId IN (".implode(',', array_fill(0, count($Szuro['targyIds']), '%u')).") + AND tanev=".__TANEV." + AND tankorId IN ( + SELECT tankorId FROM tankorOsztaly WHERE osztalyId IN (".implode(',', array_fill(0, count($Szuro['osztalyIds']), '%u')).") + ) + GROUP BY tankorId, tankorNev, targyId, tankorTipusId + ORDER BY tankorNev, tankorId"; + $v = array_merge($v, $Szuro['targyIds'], $Szuro['osztalyIds']); + } else { + $q[] = "SELECT tankorId, tankorNev, targyId, tankorTipusId, avg(oraszam) AS hetiOraszam + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) + WHERE targyId IN (".implode(',', array_fill(0, count($Szuro['targyIds']), '%u')).") + AND tanev=".__TANEV." + GROUP BY tankorId, tankorNev, targyId, tankorTipusId + ORDER BY tankorNev, tankorId"; + $v = array_merge($v, $Szuro['targyIds']); + } + } + if ($vanTanar) { + + $q[] = "SELECT tankorId, tankorNev, targyId, tankorTipusId, avg(oraszam) AS hetiOraszam + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) + LEFT JOIN tankorTanar USING (tankorId) + WHERE tanarId IN (".implode(',', array_fill(0, count($Szuro['tanarIds']), '%u')).") + AND tanev=".__TANEV." + GROUP BY tankorId, tankorNev, targyId, tankorTipusId + ORDER BY tankorNev, tankorId"; + $v = array_merge($v, $Szuro['tanarIds']); + + } + if ($vanTanarNelkuliek) { + $q[] = "SELECT tankor.tankorId AS tankorId, tankorNev, targyId, tankorTipusId, avg(oraszam) AS hetiOraszam + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) + LEFT JOIN tankorTanar ON tankor.tankorId=tankorTanar.tankorId AND beDt<='".$_TANEV['kezdesDt']."' AND (kiDt IS NULL OR kiDt>='".$_TANEV['zarasDt']."') + WHERE tanarId IS NULL + AND tanev=".__TANEV." + GROUP BY tankorId, tankorNev, targyId, tankorTipusId + ORDER BY tankorNev, tankorId"; + + } + + if (count($q) > 0) { + $query = '('.implode(') UNION DISTINCT (', $q).')'; + $return = db_query($query, array('debug'=>false,'fv'=>'getTankorokBySzuro','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + + for ($i=0; $i __TANEV, 'result' => 'idonly')); + // A tankör lekötött óraszáma + $tmp = getTankorTervezettOraszamok((array)$return[$i]['tankorId']); + foreach (array(1, 2) as $szemeszter) { + $osz = 0; + foreach ($tmp[ $return[$i]['tankorId'] ]['bontasOraszam'][$szemeszter-1] as $oAdat) $osz += floatval($oAdat['hetiOraszam']); + $return[$i]['tervezettOraszamok'][$szemeszter] = array('btOraszam'=> $osz, 'tszOraszam' => floatval($tmp[ $return[$i]['tankorId'] ]['oraszam'][$szemeszter-1])); + }; + $return[$i]['bontasOk'] = ( + $return[$i]['tervezettOraszamok'][1]['btOraszam']==$return[$i]['tervezettOraszamok'][1]['tszOraszam'] + && $return[$i]['tervezettOraszamok'][2]['btOraszam']==$return[$i]['tervezettOraszamok'][2]['tszOraszam'] + ); + } + + return $return; + } else { return array(); } + } + + function getTanarokBySzuro($Szuro) { + + global $_TANEV; + + // Ha nincs kiválasztott tankör, akkor nincs értelme tanárokat lekérdezni + if (!is_array($Szuro['tankorTargyIds']) || count($Szuro['tankorTargyIds']) == 0) return array(); + + // Az osztály nem játszik szerepet a lehetséges tanárok szűrésében + $vanMk = (is_array($Szuro['mkIds']) && count($Szuro['mkIds'])>0); + $vanTanar = (is_array($Szuro['tanarIds']) && count($Szuro['tanarIds'])>0); + // Tárgy mindig lesz - ha más nem a tankörökből + if (is_array($Szuro['targyIds'])) $targyIds = array_merge($Szuro['targyIds'], $Szuro['tankorTargyIds']); + else $targyIds = $Szuro['tankorTargyIds']; + + $v = $q = array(); + + { + // Itt lehet tárgy és munkaközösség, valamint a megadott tanarId-k alapján szűrni + if ($vanTanar) { + $q[] = "SELECT tanarId, concat_ws(' ',viseltNevElotag,viseltCsaladinev,viseltUtonev) as tanarNev, + hetiMunkaora,hetiKotelezoOraszam, + hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam + FROM tanar WHERE statusz IN ('határozatlan idejű','határozott idejű','külső óraadó') + AND beDt<'".$_TANEV['kezdesDt']."' AND (kiDt IS NULL OR kiDt<'".$_TANEV['zarasDt']."') + AND tanarId IN (".implode(',', array_fill(0, count($Szuro['tanarIds']), '%u')).")"; + $v = array_merge($v, $Szuro['tanarIds']); + } + if ($vanMk) { + $q[] = "SELECT tanarId, concat_ws(' ',viseltNevElotag,viseltCsaladinev,viseltUtonev) as tanarNev, + hetiMunkaora,hetiKotelezoOraszam, + hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam + FROM tanar LEFT JOIN mkTanar USING (tanarId) + WHERE statusz IN ('határozatlan idejű','határozott idejű','külső óraadó') + AND beDt<'".$_TANEV['kezdesDt']."' AND (kiDt IS NULL OR kiDt<'".$_TANEV['zarasDt']."') + AND mkId IN (".implode(',', array_fill(0, count($Szuro['mkIds']), '%u')).")"; + $v = array_merge($v, $Szuro['mkIds']); + } + // targyIds mindig van + $q[] = "SELECT tanarId, concat_ws(' ',viseltNevElotag,viseltCsaladinev,viseltUtonev) as tanarNev, + hetiMunkaora,hetiKotelezoOraszam, + hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam + FROM tanar LEFT JOIN tanarKepesites USING (tanarId) + LEFT JOIN kepesitesTargy USING (kepesitesId) + WHERE statusz IN ('határozatlan idejű','határozott idejű','külső óraadó') + AND beDt<'".$_TANEV['kezdesDt']."' AND (kiDt IS NULL OR kiDt<'".$_TANEV['zarasDt']."') + AND targyId IN (".implode(',', array_fill(0, count($targyIds), '%u')).")"; + $v = array_merge($v, $targyIds); + $q[] = "SELECT tanarId, concat_ws(' ',viseltNevElotag,viseltCsaladinev,viseltUtonev) as tanarNev, + hetiMunkaora,hetiKotelezoOraszam, + hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam + FROM tanar LEFT JOIN mkTanar USING (tanarId) + LEFT JOIN targy USING (mkId) + WHERE statusz IN ('határozatlan idejű','határozott idejű','külső óraadó') + AND beDt<'".$_TANEV['kezdesDt']."' AND (kiDt IS NULL OR kiDt<'".$_TANEV['zarasDt']."') + AND targyId IN (".implode(',', array_fill(0, count($targyIds), '%u')).")"; + $v = array_merge($v, $targyIds); + + $query = '('.implode(') UNION DISTINCT (', $q).') ORDER BY tanarNev, tanarId'; + $return = db_query($query, array('fv'=>'getTanarokBySzuro #1','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + + } + // Le kell kérdezni a tárgyait és az eddigi lekötött óraszámát a tanárnak + for ($i = 0; $i < count($return); $i++) { + $return[$i]['targyIds'] = getTargyIdsByTanarId($return[$i]['tanarId']); + $return[$i]['lekotottOraszam'] = getTanarLekotottOraszam($return[$i]['tanarId']); + } + + return $return; + + } + + function getTankorStat() { + + global $_TANEV; + + $q = "select count(distinct tankorId) from tankorSzemeszter left join tankorTanar using (tankorId) + where tanev=".__TANEV." and tankorTanar.tanarId is not null + and beDt<='".$_TANEV['kezdesDt']."' AND (kiDt IS NULL OR kiDt >= '".$_TANEV['zarasDt']."')"; + $ret['kesz'] = db_query($q, array('fv'=>'getTankorStat/1','modul'=>'naplo_intezmeny','result'=>'value')); + + $q = "select count(distinct tankorId) from tankorSzemeszter where tanev=".__TANEV; + $ret['osszes'] = db_query($q, array('fv'=>'getTankorStat/1','modul'=>'naplo_intezmeny','result'=>'value')); + + return $ret; + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/terem.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/terem.php new file mode 100644 index 00000000..ee640a54 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/terem.php @@ -0,0 +1,25 @@ + 'teremAdatModositas', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tovabbkepzes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tovabbkepzes.php new file mode 100644 index 00000000..a7f56083 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tovabbkepzes.php @@ -0,0 +1,159 @@ +false,'fv'=>'getTovabbkepzesek','modul'=>'naplo_intezmeny','result'=>'indexed')); + return reindex($r,array('tanarId','tovabbkepzesStatusz')); + } + + function getTanarTovabbkepzesFolyamat($dt="NOW()") { + $q = "select tanarId,tolDt,igDt,tanusitvanyDt,tanusitvanySzam from tovabbkepzesTanar WHERE NOW() BETWEEN tolDt AND igDt"; + $r = db_query($q, array('debug'=>false,'fv'=>'getTovabbkepzesek','modul'=>'naplo_intezmeny','result'=>'assoc','keyfield'=>'tanarId')); + return $r; + } + + function getTovabbkepzesTerv($tanev) { + $q = "SELECT * FROM tovabbkepzesTanulmanyiEgyseg WHERE tanev=%u"; + $values = array($tanev); + $r = db_query($q, array('debug'=>false,'fv'=>'getTovabbkepzesek','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$values)); + return $r; + } + + function getTanarTovabbkepzesByEv($tanev,$tanarId=null) { + if ($tanarId>0) { + $values = array($tanev,$tanev,$tanarId); + $W = ' tanarId=%u AND '; + } else { + $values = array($tanev,$tanev); + $W = ''; + } + $q = "SELECT * FROM tovabbkepzesTanar + WHERE $W tolDt<=DATE(CONCAT(%u+1,'-08-31')) AND (igDt>=DATE(CONCAT(%u,'-09-01')) OR igDt IS NULL) AND (tanusitvanySzam='' or tanusitvanySzam IS NULL)"; + $r = db_query($q, array('debug'=>false,'fv'=>'getTanarTovabbkepzesByEv','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$values)); + return $r; + } + + // TODO ? + function getTanarTeljesitettTanulmanyiEgyseg() { + $q = "SELECT * FROM tovabbkepzesTanulmanyiEgyseg LEFT JOIN tovabbkepzesTanar USING (tovabbkepzesId,tanarId) WHERE tovabbkepzesStatusz='teljesített'"; + $values = array($tanarId); + $r = db_query($q, array('debug'=>false,'fv'=>'getTanarTovabbkepzesByEv','modul'=>'naplo_intezmeny','result'=>'multiassoc','keyfield'=>'tanarId','values'=>$values)); + return $r; + } + + function getTanarTovabbkepzesek($SET = array()) { + $W = ''; + $values=array(); + if (is_array($SET) && count($SET)>0) { + foreach ($SET as $k => $v) { + $M[] = "$k='%s'"; + $values[] = $v; + } + $W = 'WHERE '.implode(' AND ',$M); + } + $q = "SELECT * FROM tovabbkepzesTanar ".$W; + $r = db_query($q, array('debug'=>false,'fv'=>'getTovabbkepzesek','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$values)); + return $r; + } + function getTovabbkepzesek() { + $q = "SELECT * FROM tovabbkepzes LEFT JOIN tovabbkepzoIntezmeny USING (tovabbkepzointezmenyId) ORDER BY tovabbkepzesNev"; + $r = db_query($q, array('fv'=>'getTovabbkepzesek','modul'=>'naplo_intezmeny','result'=>'indexed')); + return $r; + } + function getTovabbkepzoIntezmenyek() { + $q = "SELECT * FROM tovabbkepzoIntezmeny ORDER BY intezmenyRovidnev,intezmenyNev"; + $r = db_query($q, array('fv'=>'getTovabbkepzoIntezmenyek','modul'=>'naplo_intezmeny','result'=>'indexed')); + return $r; + } + function getKeretosszeg($tanev) { + $q = "SELECT keretOsszeg FROM tovabbkepzesKeret WHERE tanev=%u"; + $v = array($tanev); + $r = db_query($q, array('fv'=>'getKeretosszeg','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + return $r; + } + + function ujTovabbkepzoIntezmeny($ADAT) { + $q = "INSERT INTO tovabbkepzoIntezmeny (intezmenyRovidnev,intezmenyNev) VALUES ('%s','%s')"; + $v = array($ADAT['intezmenyRovidNev'],$ADAT['intezmenyNev']); + $r = db_query($q, array('debug'=>false,'fv'=>'ujTovabbkepzoIntezmeny','modul'=>'naplo_intezmeny','result'=>'insert','values'=>$v)); + return $r; + } + + + function modKeretosszeg($tanev,$keretOsszeg) { + $q = "REPLACE INTO tovabbkepzesKeret (tanev,keretOsszeg) VALUES (%u,%u)"; + $v = array($tanev,$keretOsszeg); + db_query($q, array('debug'=>false,'fv'=>'modKeretOsszeg','modul'=>'naplo_intezmeny','result'=>'insert','values'=>$v)); + } + + function ujTovabbkepzes($ADAT) { + if ($ADAT['tovabbkepzesNev']=='') return false; + $q = "INSERT INTO tovabbkepzes (tovabbkepzesNev,tovabbkepzoIntezmenyId, oraszam, kategoria, akkreditalt) VALUES ('%s',%u,%u,'%s',%u)"; + $v = array($ADAT['tovabbkepzesNev'],$ADAT['tovabbkepzoIntezmenyId'],$ADAT['oraszam'],$ADAT['kategoria'],$ADAT['akkreditalt']); + $r = db_query($q, array('debug'=>false,'fv'=>'ujTovabbkepzes','modul'=>'naplo_intezmeny','result'=>'insert','values'=>$v)); + return $r; + } + function modTovabbkepzes($ADAT) { + if ($ADAT['tovabbkepzesId']=='') return false; + $q = "UPDATE tovabbkepzes SET tovabbkepzesNev='%s',oraszam=%u,kategoria='%s' WHERE tovabbkepzesId=%u"; + $v = array($ADAT['tovabbkepzesNev'],$ADAT['oraszam'],$ADAT['kategoria'],$ADAT['tovabbkepzesId']); + $r = db_query($q, array('debug'=>false,'fv'=>'modTovabbkepzes','modul'=>'naplo_intezmeny','result'=>'update','values'=>$v)); + return $r; + } + function ujTovabbkepzesTanar($ADAT) { + if ($ADAT['tovabbkepzesId']=='') return false; + $q = "INSERT INTO tovabbkepzesTanar (tovabbkepzesId,tanarId, tolDt, igDt) VALUES (%u,%u,'%s','%s')"; + $v = array($ADAT['tovabbkepzesId'],$ADAT['tanarId'],$ADAT['tolDt'],$ADAT['igDt']); + $r = db_query($q, array('debug'=>false,'fv'=>'ujTovabbkepzesTanar','modul'=>'naplo_intezmeny','result'=>'insert','values'=>$v)); + return $r; + } + function modTovabbkepzesTanar($ADAT) { + //if ($ADAT['tovabbkepzesId']=='') return false; + $q = "UPDATE tovabbkepzesTanar SET tolDt='%s', igDt='%s', tanusitvanyDt='%s', tanusitvanySzam='%s' WHERE tovabbkepzesId=%u AND tanarId=%u"; + $v = array($ADAT['tolDt'],$ADAT['igDt'],$ADAT['tanusitvanyDt'],$ADAT['tanusitvanySzam'],$ADAT['tovabbkepzesId'],$ADAT['tanarId']); + $r = db_query($q, array('debug'=>false,'fv'=>'ujTovabbkepzesTanar','modul'=>'naplo_intezmeny','result'=>'update','values'=>$v)); + return $r; + } + function delTovabbkepzesTanar($ADAT) { + //if ($ADAT['tovabbkepzesId']=='') return false; + $q = "DELETE FROM tovabbkepzesTanar WHERE tovabbkepzesId=%u AND tanarId=%u"; + $v = array($ADAT['tovabbkepzesId'],$ADAT['tanarId']); + $r = db_query($q, array('debug'=>false,'fv'=>'delTovabbkepzesTanar','modul'=>'naplo_intezmeny','result'=>'delete','values'=>$v)); + return $r; + } + function ujTovabbkepzesTE($ADAT,$lr) { + $q = "INSERT INTO tovabbkepzesTanulmanyiEgyseg (tovabbkepzesId, tanarId, tanev, reszosszeg, tamogatas, tovabbkepzesStatusz, tavollet,helyettesitesRendje,prioritas) VALUES (%u,%u,%u,%u,%u,'%s','%s','%s','%s')"; + $v = array($ADAT['tovabbkepzesId'],$ADAT['tanarId'],$ADAT['tanev'],intval($ADAT['reszosszeg']),intval($ADAT['tamogatas']),$ADAT['tovabbkepzesStatusz'],$ADAT['tavollet'],$ADAT['helyettesitesRendje'],$ADAT['prioritas']); + $r = db_query($q, array('debug'=>false,'fv'=>'ujTovabbkepzesTanar','modul'=>'naplo_intezmeny','result'=>'insert','values'=>$v),$lr); + } + function modTovabbkepzesTE($ADAT) { + $lr = db_connect('naplo_intezmeny'); + $q = "SELECT count(*) AS db FROM tovabbkepzesTanulmanyiEgyseg WHERE tovabbkepzesId=%u AND tanarId=%u AND tanev=%u"; + $v = array($ADAT['tovabbkepzesId'],$ADAT['tanarId'],$ADAT['tanev']); + $db = db_query($q, array('debug'=>false,'fv'=>'ujTovabbkepzesTanar','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v),$lr); + if ($db==0) { + ujTovabbkepzesTE($ADAT,$lr); + $q = "UPDATE tovabbkepzesTanulmanyiEgyseg SET reszosszeg=%u,tamogatas=%u,tovabbkepzesStatusz='%s',tavollet='%s',helyettesitesRendje='%s',prioritas='%s' WHERE tovabbkepzesId=%u AND tanarId=%u AND tanev=%u"; + $v = array(intval($ADAT['reszosszeg']),intval($ADAT['tamogatas']),$ADAT['tovabbkepzesStatusz'],$ADAT['tavollet'],$ADAT['helyettesitesRendje'],$ADAT['prioritas'],$ADAT['tovabbkepzesId'],$ADAT['tanarId'],$ADAT['tanev']); + $r = db_query($q, array('debug'=>false,'fv'=>'ujTovabbkepzesTanar','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v),$lr); + + } else { + $q = "UPDATE tovabbkepzesTanulmanyiEgyseg SET reszosszeg=%u,tamogatas=%u,tovabbkepzesStatusz='%s',tavollet='%s',helyettesitesRendje='%s',prioritas='%s' WHERE tovabbkepzesId=%u AND tanarId=%u AND tanev=%u"; + $v = array(intval($ADAT['reszosszeg']),intval($ADAT['tamogatas']),$ADAT['tovabbkepzesStatusz'],$ADAT['tavollet'],$ADAT['helyettesitesRendje'],$ADAT['prioritas'],$ADAT['tovabbkepzesId'],$ADAT['tanarId'],$ADAT['tanev']); + $r = db_query($q, array('debug'=>false,'fv'=>'ujTovabbkepzesTanar','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v),$lr); + } + db_commit($lr); + db_close($lr); + } + function delTovabbkepzesTE($ADAT) { + // echo 'EZT TÖRÖLNÉM'; + // dump($ADAT); + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/valtas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/valtas.php new file mode 100644 index 00000000..702766bb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/valtas.php @@ -0,0 +1,9 @@ +false,'fv'=>'updateNaploSettings','modul'=>'naplo_base','values'=>array(_USERACCOUNT,_POLICY))); + $q = "INSERT INTO settings (userAccount,policy,intezmeny) VALUES ('%s','%s','%s')"; + return db_query($q, array('debug'=>false,'fv'=>'updateNaploSettings','modul'=>'naplo_base','values'=>array(_USERACCOUNT,_POLICY,$intezmeny))); + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/esemenyAdmin.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/esemenyAdmin.php new file mode 100644 index 00000000..4243cf79 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/esemenyAdmin.php @@ -0,0 +1,86 @@ +'naplo_intezmeny','fv'=>'koszi_ujEsemeny','values'=>$v, 'result'=>'insert')); + + } + + function ujKosziPont($ADAT) { + + // kosziHelyezes NULL / 0 ?? + + if ($ADAT['kosziPontTipus']=='') return false; + + $q = "INSERT INTO kosziPont (kosziEsemenyId,kosziPontTipus,kosziPont,kosziHelyezes) VALUES (%u,'%s',%u,%u)"; + $v = array($ADAT['kosziEsemenyId'],$ADAT['kosziPontTipus'],$ADAT['kosziPont'],intval($ADAT['kosziHelyezes'])); + + return db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'koszi_ujPont','values'=>$v, 'result'=>'insert')); + + } + + function ujKoszi($ADAT) { +/* ++----------------+-----------------------------------------+------+-----+---------+----------------+ +| kosziId | int(10) unsigned | NO | PRI | NULL | auto_increment | +| kosziEsemenyId | int(10) unsigned | NO | MUL | NULL | | +| dt | date | YES | | NULL | | +| tanev | smallint(5) unsigned | YES | | NULL | | +| felev | tinyint(3) unsigned | YES | | NULL | | +| igazolo | set('diák','tanár','osztályfőnök') | YES | | NULL | | ++----------------+-----------------------------------------+------+-----+---------+----------------+ +*/ + + $keys = array('kosziEsemenyId','dt','igazolo'); + $pattern = array("%u","'%s'","'%s'"); + $v = array($ADAT['kosziEsemenyId'],$ADAT['dt'],$ADAT['igazolo']); + + if (!is_null($ADAT['targyId'])) { $keys[] = 'targyId'; $pattern[] = "%u"; $v[]=$ADAT['targyId'];} + if (!is_null($ADAT['felev'])) { $keys[] = 'felev'; $pattern[] = "%u"; $v[]=$ADAT['felev'];} + if (!is_null($ADAT['tolDt'])) { $keys[] = 'tolDt'; $pattern[] = "'%s'"; $v[]=$ADAT['tolDt'];} + if (!is_null($ADAT['igDt'])) { $keys[] = 'igDt'; $pattern[] = "'%s'"; $v[]=$ADAT['igDt'];} + + $q = "INSERT INTO koszi (".implode(',',$keys).") VALUES (".implode(',',$pattern).")"; + return db_query($q, array('modul'=>'naplo','fv'=>'koszi_ujKoszi','values'=>$v, 'result'=>'insert')); + + } + + function delKoszi($kosziIds) { + for ($i=0; $i'naplo','fv'=>'koszi_del','values'=>$v, 'result'=>'delete')); + } + } + + function kosziIgazolo($kosziId, $IDK,$tipus) { + +/* +| kosziId | int(10) unsigned | NO | PRI | NULL | | +| diakId | int(10) unsigned | NO | PRI | NULL | | +*/ + + if ($tipus=='Diak') $t = 'diak'; else $t='tanar'; + + for ($i=0; $i'naplo','fv'=>'koszi_ujKapcsolat','values'=>$v, 'result'=>'insert')); + } + + return; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/koszi.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/koszi.php new file mode 100644 index 00000000..0e6e9572 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/koszi.php @@ -0,0 +1,40 @@ +'naplo','fv'=>'koszi_ujKosziDiak','values'=>$v, 'result'=>'value')); + + if ($db>0) { + $_SESSION['alert'][] = 'info:koszi_dup'; + return false; + } + + + $q = "SELECT kosziPont FROM kosziPont WHERE kosziPontId=%u"; + $v = array($ADAT['kosziPontId']); + $pont = db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'koszi_ujKosziDiak','values'=>$v, 'result'=>'value')); + + + if (is_numeric($pont) && is_numeric($ADAT['kosziId']) && is_numeric($ADAT['diakId'])) { + $q = "INSERT INTO kosziDiak (kosziId,diakId,kosziPontId,pont) VALUES (%u,%u,%u,%u)"; + $v = array($ADAT['kosziId'],$ADAT['diakId'],$ADAT['kosziPontId'],$pont); + return db_query($q, array('modul'=>'naplo','fv'=>'koszi_ujKosziDiak','values'=>$v, 'result'=>'insert')); + } else { + return false; + } + + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/kosziAdmin.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/kosziAdmin.php new file mode 100644 index 00000000..50ba9981 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/koszi/kosziAdmin.php @@ -0,0 +1,82 @@ +'naplo','fv'=>'koszi_jovahagyhato','values'=>$v, 'result'=>'value')); + return ($r==1); + + } + + function kosziJovahagyhatoByTanarId($kosziId,$tanarId) { + + + $q = "SELECT count(*) AS c FROM kosziIgazoloTanar WHERE kosziId=%u AND tanarId=%u"; + $v = array($kosziId,$tanarId); + $r1 = db_query($q, array('modul'=>'naplo','fv'=>'koszi_jovahagyhato','values'=>$v, 'result'=>'value')); + + $q = "SELECT count(*) AS c FROM kosziIgazoloOf WHERE kosziId=%u AND tanarId=%u"; + $v = array($kosziId,$tanarId); + $r2 = db_query($q, array('modul'=>'naplo','fv'=>'koszi_jovahagyhato','values'=>$v, 'result'=>'value')); + + /* Ez sajnos jóval bonyolultabb lett v2.0: ilyen: szinkronizáld a share/koszi.php - ben levő függvénnyel, ami HASONLÓ */ + + $q = "SELECT count(*) AS c FROM kosziDiak + LEFT JOIN kosziIgazoloTanar USING (kosziId) + LEFT JOIN kosziIgazoloOf USING (kosziId) + LEFT JOIN koszi USING (kosziId) + LEFT JOIN ".__INTEZMENYDBNEV.".kosziEsemeny USING (kosziEsemenyId) + WHERE kosziDiak.kosziId=%u AND jovahagyasDt='0000-00-00 00:00:00' AND + ( + ( + (kosziIgazoloTanar.tanarId=%u AND kosziIgazoloOf.tanarId IS NULL) Or + (kosziIgazoloTanar.tanarId IS NULL AND kosziIgazoloOf.tanarId=%u) + ) OR ( + koszi.igazolo LIKE '%%osztályfőnök%%' AND + diakId IN ( + SELECT diakId FROM ".__INTEZMENYDBNEV.".osztalyTanar + LEFT JOIN ".__INTEZMENYDBNEV.".osztalyDiak USING (osztalyId) + WHERE tanarId=%u AND osztalyTanar.beDt<=NOW() AND (osztalyTanar.kiDt IS NULL OR osztalyTanar.kiDt>=NOW()) + ) + ) OR ( + koszi.igazolo LIKE '%%tanár%%' AND + diakId IN ( + SELECT diakId FROM ".__INTEZMENYDBNEV.".tankorTanar + LEFT JOIN ".__INTEZMENYDBNEV.".tankorDiak USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) + WHERE tanarId=%u AND ".__INTEZMENYDBNEV.".tankor.targyId = koszi.targyId + ) + ) + ) + "; + $v = array($kosziId, $tanarId, $tanarId,$tanarId,$tanarId,$tanarId); + $r3 = db_query($q, array('debug'=>false,'modul'=>'naplo','result'=>'value', 'values'=>$v)); + return ($r1==1 || $r2==1 || $r3==1); + + } + + + function kosziElutasit($kosziId,$diakId) { + + // delete helyett update elutasítva flag állítása? + + $q = "DELETE FROM kosziDiak WHERE kosziId=%u AND diakId=%u"; + $v = array($kosziId,$diakId); + db_query($q, array('modul'=>'naplo','fv'=>'koszi_torol','values'=>$v, 'result'=>'delete')); + + } + + function kosziJovahagy($kosziId,$diakId) { + $q = "UPDATE kosziDiak SET jovahagyasDt=NOW() WHERE kosziId=%u AND diakId=%u"; + $v = array($kosziId,$diakId); + db_query($q, array('modul'=>'naplo','fv'=>'koszi_jovahagy','values'=>$v, 'result'=>'update')); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/naplo.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/naplo.php new file mode 100644 index 00000000..e7923a72 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/naplo.php @@ -0,0 +1,12 @@ + 'getBeirasiAdatok', 'modul' => 'naplo', 'result' => 'value')); + } else return 0; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/beiskolazasiTerv.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/beiskolazasiTerv.php new file mode 100644 index 00000000..1fd6402e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/beiskolazasiTerv.php @@ -0,0 +1,64 @@ +'getBeiskolazasiTerv','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array($tanev))); + + } + + function beiskolazasNyomtatvanyKeszites($ADAT) { + + global $Honapok; + + // A sablonfile meghatározása + define('__TEMPLATE_DIR', _MAYOR_DIR.'/print/module-naplo/templates'); + $tmplFile = 'beiskolazasiTerv'; + + if (file_exists(__TEMPLATE_DIR.'/'.__INTEZMENY.'/'.$tmplFile.'.tmpl')) { + $templateFile = __TEMPLATE_DIR.'/'.__INTEZMENY.'/'.$tmplFile.'.tmpl'; + } elseif (file_exists(__TEMPLATE_DIR.'/default/'.$tmplFile.'.tmpl')) { + $templateFile = __TEMPLATE_DIR.'/default/'.$tmplFile.'.tmpl'; + } else { + $_SESSION['alert'][] = 'message:file_not_found:'.__TEMPLATE_DIR.'/default/'.$tmplFile.'.tmpl'; + return false; + } + + $Intezmeny = getIntezmenyByRovidnev(__INTEZMENY); + list($ev, $ho, $nap) = explode('-', $ADAT['tanulmanyiEgyseg']['igDt']); + $DATA = array( + 'file' => $ADAT['file'], + 'base' => array('nyomtatasDt' => date('Y.m.d'), 'nyomtatasDatumStr' => date('Y. m. d.'), + 'datumEv' => $ev, 'datumHonap' => $ho, 'datumNap' => $nap, 'hoNev' => kisbetus($Honapok[$ho-1]), + 'intezmenyNev' => $Intezmeny['nev'], 'intezmenyOMKod' => $Intezmeny['OMKod'], 'intezmenyCimIrsz' => $Intezmeny['cimIrsz'], + 'intezmenyCimHelyseg' => $Intezmeny['cimHelyseg'], 'intezmenyCimKozteruletNev' => $Intezmeny['cimKozteruletNev'], + 'intezmenyCimKozteruletJelleg' => $Intezmeny['cimKozteruletJelleg'], 'intezmenyCimHazszam' => $Intezmeny['cimHazszam'], + 'intezmenyTelefon' => $Intezmeny['telefon'], 'intezmenyHonlap' => $Intezmeny['honlap'], + 'intezmenyFax' => $Intezmeny['fax'], 'intezmenyEmail' => $Intezmeny['email'], + + 'tanevJele'=>$ADAT['tanev'].'/'.($ADAT['tanev']+1), 'tanev'=>$ADAT['tanev'], + + 'tanulmanyiEgyseg' => range(0, count($ADAT['tanulmanyiEgyseg'])-1), + + ), + 'tanulmanyiEgyseg' => $ADAT['tanulmanyiEgyseg'] + + ); + for ($i = 0; $i < count($ADAT['tanulmanyiEgyseg']); $i++) { + $TE = $ADAT['tanulmanyiEgyseg'][$i]; + $DATA['tanulmanyiEgyseg'][$i]['tanarNev'] = $ADAT['tanarok'][ $TE['tanarId'] ]['tanarNev']; + $DATA['tanulmanyiEgyseg'][$i]['tolDt'] = str_replace('-','. ',$TE['tolDt']).'.'; + $DATA['tanulmanyiEgyseg'][$i]['igDt'] = str_replace('-','. ',$TE['igDt']).'.'; + //$DATA['tanulmanyiEgyseg'][$i]['tanarBesorolas'] = $ADAT['tanarok'][ $TE['tanarId'] ]['besorolas']; + } + +//dump($ADAT); +//dump($DATA); +//return false; +//die(); + return template2file($templateFile, $DATA); + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/bizonyitvanyNyomtatas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/bizonyitvanyNyomtatas.php new file mode 100644 index 00000000..b4d254d2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/bizonyitvanyNyomtatas.php @@ -0,0 +1,164 @@ + diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/diakAdatlap.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/diakAdatlap.php new file mode 100644 index 00000000..46adec96 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/diakAdatlap.php @@ -0,0 +1,22 @@ + diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/diakTankorJelentkezes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/diakTankorJelentkezes.php new file mode 100644 index 00000000..7eb0807e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/diakTankorJelentkezes.php @@ -0,0 +1,336 @@ + $TB) { + for ($j = 0; $j < count($TB); $j++) { + $TID2B[$TB[$j]][] = $blokkId; + $TID2BN[$TB[$j]][] = $tankorBlokkok['blokkNevek'][$blokkId]; + } + } + $v = array(); + if (is_array($OSZTALYIDK) && count($OSZTALYIDK) > 0) { + $W = " AND osztalyId IN (".implode(',', array_fill(0, count($OSZTALYIDK), '%u')).")"; + $v = $OSZTALYIDK; + } + $q = "SELECT DISTINCT tankorId, targyId, kovetelmeny, min, max, tanev, szemeszter, oraszam, tankorNev + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) JOIN tankorOsztaly USING (tankorId) + WHERE tanev=%u and szemeszter=%u and tankor.felveheto =1".$W." ORDER BY tankorNev,tankor.tankorId"; + array_unshift($v, $tanev, $szemeszter); + $felvehetoTankorok = db_query($q,array('debug'=>false,'fv' => 'getValasztottTankorok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + for ($i = 0; $i < count($felvehetoTankorok); $i++) { + $_tankorId = $felvehetoTankorok[$i]['tankorId']; + if ($_tankorId != null) { + $fTankorok[$_tankorId] = $felvehetoTankorok[$i]; + $fTankorok[$_tankorId]['blokkIdk'] = $TID2B[$_tankorId]; + $fTankorok[$_tankorId]['blokkNevek'] = $TID2BN[$_tankorId]; + //$felvehetoTankorok[$_tankorid]['letszam'] = getTankorLetszam($felvehetoTankorok[$i]['tankorId'],$DT); + $fTankorok[$_tankorId]['tanarok'] = getTankorTanaraiByInterval($_tankorId, array('tolDt' => $DT['tolDt'], 'igDt' => $DT['igDt'], 'result' => 'nevsor')); + $FT[] = $_tankorId; + } + } + + if (is_array($FT) && count($FT) > 0) { + if (is_array($OSZTALYIDK) && count($OSZTALYIDK)>0) { + $W .= " AND osztalyDiak.beDt<='".$DT['tolDt']."' AND (osztalyDiak.kiDt IS NULL OR '".$DT['tolDt']."'<=osztalyDiak.kiDt)"; + $v = mayor_array_join($FT, $OSZTALYIDK); + } else { $v = $FT; } + $q = "SELECT tankorId,diakId FROM tankorDiak LEFT JOIN diak USING (diakId) LEFT JOIN osztalyDiak USING (diakId) + WHERE tankorId IN (".implode(',', array_fill(0, count($FT), '%u')).") $W + ORDER BY CONCAT_WS(' ',viseltCsaladinev,viseltUtonev)"; + $r = db_query($q,array('debug'=>false,'fv' => 'getValasztottTankorok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + for ($i = 0; $i < count($r); $i++) { + $felvett[$r[$i]['diakId']][] = $r[$i]['tankorId']; + } + } + + $ADAT['felveheto'] = $fTankorok; + $ADAT['felvett'] = $felvett; + return $ADAT; + } + + function texLevelGeneralasMasodikNyelvValasztas($ADAT) { + + $return = ''; + $return .= ' +\documentclass[8pt]{article} + +\usepackage[a5paper]{geometry} % A5-os méret +\usepackage[utf8]{inputenc} % UTF-8 kódolású forrás +\usepackage{t1enc} +\usepackage[magyar]{babel} % magyar elválasztási szabályok +\frenchspacing % a magyar tipográfiai szabályoknak megfelelő szóközök írásjelek után +\usepackage{booktabs} % táblázatok magasabb szintű formázása +\usepackage{fancyhdr} % Ritkítás +\pagestyle{fancy} +\def\mayor{% +\font\mayorfnt=cmsl4% +\font\Mayorfnt=cmsl6 +{\mayorfnt\lower0.5ex\hbox{\lower-0.5ex\hbox{Ma}\kern-0.3em\lower0.25ex\hbox{\Mayorfnt Y}\kern-0.2em\hbox{o}\lower0ex\hbox{R}}}} +\renewcommand{\footnotesize}{\fontsize{6pt}{8pt}\selectfont} +%\addtolength{\skip\footins}{2mm} +\addtolength{\textheight}{16mm} +\setlength{\footskip}{26pt} +\setlength{\headsep}{24pt} +\lhead{\tiny '.$ADAT['intezmeny']['nev'].'} +\rhead{\tiny 2. nyelv jelentkezés '.$ADAT['tanev'].'} +\cfoot{\tiny \copyright\mayor\ elektronikus napló - Nyomtatva: '.date('Y.m.d.').'} +\begin{document} +'; + $Tankorok = $tankorNev = $ADAT['valasztott']['felveheto']; + if (is_array($ADAT['valasztott']['felvett'])) foreach ($ADAT['valasztott']['felvett'] as $diakId => $tankorIds) { + $diakNev = $ADAT['diakAdat'][$diakId]['diakNev']; + $diakOsztaly = $ADAT['osztalyok'][ $ADAT['diakOsztaly'][$diakId][0] ]['osztalyJel']; + + $return .= ' +\begin{center} +{\large\bfseries J E L E N T K E Z É S}\\\\ +\small + +\vspace{12pt} + +A '.$ADAT['tanev'].'. szeptemberében induló\\\\ +második idegen nyelv képzésre + +\vspace{12pt} + +{\bfseries\normalsize '.$diakNev.'}\\\\ +'.$diakOsztaly.' osztály\\\\ +\end{center} + +\vspace{10pt} + +\footnotesize +A Városmajori Gimnázium Pedagógiai Programja szerint az iskola tanulói a 9-12. évfolyamon +(kötelező módon) két különböző idegen nyelvet tanulnak. Az első idegen nyelv az adott osztálynak, +ill. a nyelvi előkészítő osztály adott csoportjának már előzetesen meghatározott, azonban a második +nyelvet mindenki – az iskola lehetőségeinek figyelembevétele mellett – szabadon választhatja meg. +Amennyiben a választott idegen nyelvet elegendő számú diák jelölte meg, úgy lehetőség van a +nyelvi csoport indítására. (A csoportok évfolyamszintű bontásban kerülnek kialakításra.) A nyelvi +csoportok várható létszáma 12-18 fő közötti lesz. A 9. évfolyamtól a 12. évfolyam végéig ez a +tantárgy is ugyanolyan kötelező lesz, mint a többi tárgy. +nem lehet hiányozni róla és jegyet kell szerezni belőle.) + +A fentiek tudomásul vételével, az internetes jelentkezési felületen a '.$ADAT['tanev'].'/'.($ADAT['tanev']+1).' tanév +9. évfolyamos diákjai számára meghirdetett képzések közül általam választott 2. idegen nyelv: + +\vspace{16pt} + +\begin{tabular}{l|l|c|l} +Tankör neve & Blokk & Óraszám & Tanár \\\\ +\toprule +%%\hline +'; + + + + for ($i = 0; $i < count($tankorIds); $i++) { + $tankorId = $tankorIds[$i]; + $tankorNev = $Tankorok[$tankorId]['tankorNev']; + $oraszam = intval($Tankorok[$tankorId]['oraszam']); + if (is_array($Tankorok[$tankorId]['tanarok']) && count($Tankorok[$tankorId]['tanarok']) > 0) + $tanarNev = $Tankorok[$tankorId]['tanarok'][0]['tanarNev']; + else $tanarNev = '{\slshape n.a.}'; + if (is_array($Tankorok[$tankorId]['blokkNevek'])) $blokkNev = implode(', ', $Tankorok[$tankorId]['blokkNevek']); + else $blokkNev = ''; + $return .= '\vbox to 1.2em {}'.$tankorNev.' & '.$blokkNev.' & '.$oraszam.' & '.$tanarNev.' \\\\ +\hline'; + +//echo $tankorId.' '.$tankorNev.' '.$oraszam.':'.$blokkNev.'
'; +//echo $diakId.' '.$diakNev.' '.$diakOsztaly.'
'; +//echo '
';
+//var_dump($ADAT); die();
+            }
+
+            $return .= '
+%%\bottomrule
+\end{tabular}
+
+\vspace{16pt}
+
+
+Amennyiben a választott nyelv az angol vagy a német, úgy a megfelelő szó aláhúzásával kérjük 
+megadni, hogy az adott nyelvet kezdő vagy haladó szintről szeretné elkezdeni tanulni:
+
+\begin{center}
+\vspace{10pt}
+
+{
+\bfseries
+\begin{tabular}{ccc}
+kezdő szintet választom&\hspace{1cm}\ &haladó szintről szeretném kezdeni\\\\
+\end{tabular}
+}
+
+\vspace{10pt}
+
+(A haladó szintet választóknak egy szintfelmérő vizsgán kell részt venniük, ami alapján a nyelvi 
+csoportbesorolást elvégezzük.)
+
+\vspace{12pt}
+
+{\slshape Az aláírt jelentkezési lap osztályfőnöknél történő leadásának határideje:} {\bfseries '.$ADAT['leadasiHatarido'].'}
+
+\vspace{20pt}
+\begin{flushleft}
+{\scriptsize Budapest, '.$ADAT['tanev'].'. április}
+\end{flushleft}
+\vspace{20pt}\slshape\scriptsize
+\begin{tabular}{ccc}
+\rule{3.5cm}{0.1pt}&\hspace{3cm}\ &\rule{3.5cm}{0.1pt}\\\\
+tanuló&&szülő/gondviselő\\\\
+\end{tabular}
+
+\end{center}
+\newpage %%%%% új oldal %%%%%';
+
+
+        }
+
+	$return .= '
+\end{document}';
+
+
+	return $return;
+    }
+
+/* ---- eredeti ---- */
+
+    function texLevelGeneralas($ADAT) {
+
+	$return = '';
+	$return .= '
+\documentclass[8pt]{article}
+
+\usepackage[a5paper]{geometry} % A5-os méret
+\usepackage[utf8]{inputenc} % UTF-8 kódolású forrás
+\usepackage{t1enc}
+\usepackage[magyar]{babel} % magyar elválasztási szabályok
+\frenchspacing % a magyar tipográfiai szabályoknak megfelelő szóközök írásjelek után
+\usepackage{booktabs} % táblázatok magasabb szintű formázása
+\usepackage{fancyhdr} % Ritkítás
+\pagestyle{fancy}
+\def\mayor{%
+\font\mayorfnt=cmsl4%
+\font\Mayorfnt=cmsl6
+{\mayorfnt\lower0.5ex\hbox{\lower-0.5ex\hbox{Ma}\kern-0.3em\lower0.25ex\hbox{\Mayorfnt Y}\kern-0.2em\hbox{o}\lower0ex\hbox{R}}}}
+\renewcommand{\footnotesize}{\fontsize{6pt}{8pt}\selectfont}
+%\addtolength{\skip\footins}{2mm}
+\addtolength{\textheight}{16mm}
+\setlength{\footskip}{26pt}
+\setlength{\headsep}{24pt}
+\lhead{\tiny '.$ADAT['intezmeny']['nev'].'}
+\rhead{\tiny Fakultációs jelentkezés '.$ADAT['tanev'].'}
+\cfoot{\tiny \copyright\mayor\ elektronikus napló - Nyomtatva: '.date('Y.m.d.').'}
+\begin{document}
+';
+        $Tankorok = $tankorNev = $ADAT['valasztott']['felveheto'];
+        if (is_array($ADAT['valasztott']['felvett'])) foreach ($ADAT['valasztott']['felvett'] as $diakId => $tankorIds) {
+            $diakNev = $ADAT['diakAdat'][$diakId]['diakNev'];
+            $diakOsztaly = $ADAT['osztalyok'][ $ADAT['diakOsztaly'][$diakId][0] ]['osztalyJel'];
+
+	    $return .= '
+\begin{center}
+{\large\bfseries J E L E N T K E Z É S}\\\\
+\small
+
+\vspace{12pt}
+
+A '.$ADAT['tanev'].'. szeptemberében induló\\\\
+közép- és emeltszintű érettségire előkészítő képzésekre
+
+\vspace{12pt}
+
+{\bfseries\normalsize '.$diakNev.'}\\\\
+'.$diakOsztaly.' osztály\\\\
+
+\vspace{12pt}
+
+A '.$ADAT['tanev'].'/'.($ADAT['tanev']+1).' tanév 11. évfolyamos diákjai számára meghirdetett képzések közül
+–~az internetes jelentkezés adatai alapján~– 
+%–~az elektronikus adminisztrációs rendszer adatai alapján~–
+az alábbi képzéseket választottam: 
+
+\vspace{16pt}
+
+\begin{tabular}{l|l|c|l}
+Tankör neve & Blokk & Óraszám & Tanár \\\\ 
+\toprule
+\hline
+';
+
+
+
+            for ($i = 0; $i < count($tankorIds); $i++) {
+                $tankorId = $tankorIds[$i];
+                $tankorNev = $Tankorok[$tankorId]['tankorNev'];
+                $oraszam = intval($Tankorok[$tankorId]['oraszam']);
+		if (is_array($Tankorok[$tankorId]['tanarok']) && count($Tankorok[$tankorId]['tanarok']) > 0) 
+		    $tanarNev = $Tankorok[$tankorId]['tanarok'][0]['tanarNev'];
+		else $tanarNev = '{\slshape n.a.}';
+                if (is_array($Tankorok[$tankorId]['blokkNevek'])) $blokkNev = implode(', ', $Tankorok[$tankorId]['blokkNevek']);
+                else $blokkNev = '';
+		$return .= '\vbox to 1.2em {}'.$tankorNev.' & '.$blokkNev.' & '.$oraszam.' & '.$tanarNev.' \\\\ 
+\hline';
+
+//echo $tankorId.' '.$tankorNev.' '.$oraszam.':'.$blokkNev.'
'; +//echo $diakId.' '.$diakNev.' '.$diakOsztaly.'
'; +//echo '
';
+//var_dump($ADAT); die();
+            }
+
+            $return .= '
+\bottomrule
+\end{tabular}
+
+\vspace{16pt}
+
+Tudomásul veszem, hogy az általam választott, két tanévre meghirdetett tantárgyak a következő tanévben számomra kötelezőek lesznek, leadásukra csak a 
+11. osztályos követelmények teljesítése után lesz lehetőségem.\footnotemark[1]
+\footnotetext[1]{Az iskola belső szabályai szerint a 12. évfolyamban is meg kell maradjon legalább heti 4 óra választott képzés, továbbá más tankör 
+utólagos felvétele létszámkeretekhez, illetve a sikeres különbözeti vizsga letételéhez köthető.}
+
+\vspace{12pt}
+
+{\slshape Az aláírt jelentkezési lap osztályfőnöknél történő leadásának határideje:} {\bfseries '.$ADAT['leadasiHatarido'].'}
+
+\vspace{20pt}
+\begin{flushleft}
+{\scriptsize Budapest, '.$ADAT['tanev'].'. június}
+\end{flushleft}
+\vspace{20pt}\slshape\scriptsize
+\begin{tabular}{ccc}
+\rule{3.5cm}{0.1pt}&\hspace{3cm}\ &\rule{3.5cm}{0.1pt}\\\\
+tanuló&&szülő/gondviselő\\\\
+\end{tabular}
+
+\end{center}
+\newpage %%%%% új oldal %%%%%';
+
+
+        }
+
+	$return .= '
+\end{document}';
+
+
+	return $return;
+    }
+
+
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/ertesito.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/ertesito.php
new file mode 100644
index 00000000..5c1a5c97
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/ertesito.php
@@ -0,0 +1,101 @@
+ $ADAT['file'],
+            'base' => array('nyomtatasDt' => date('Y.m.d'), 'ev' => $ev, 'honap' => $ho, 'nap' => $nap, 'hoNev' => kisbetus($Honapok[$ho-1]),
+		'tanevKezdesEv' => $ADAT['szemeszterAdat']['tanev'], 'tanevZarasEv' => ($ADAT['szemeszterAdat']['tanev']+1), 
+		'szemeszter' => $ADAT['szemeszterAdat']['szemeszter'],
+                'intezmenyNev' => $ADAT['intezmeny']['nev'], 'intezmenyCimIrsz' => $ADAT['intezmeny']['cimIrsz'],
+                'intezmenyCimHelyseg' => $ADAT['intezmeny']['cimHelyseg'], 'intezmenyCimKozteruletNev' => $ADAT['intezmeny']['cimKozteruletNev'],
+                'intezmenyCimKozteruletJelleg' => $ADAT['intezmeny']['cimKozteruletJelleg'], 'intezmenyCimHazszam' => $ADAT['intezmeny']['cimHazszam'],
+                'intezmenyTelefon' => $ADAT['intezmeny']['telefon'], 'intezmenyHonlap' => $ADAT['intezmeny']['honlap'],
+                'intezmenyFax' => $ADAT['intezmeny']['fax'], 'intezmenyEmail' => $ADAT['intezmeny']['email'],
+                'diak' => array(), 'osztaly' => $ADAT['osztaly']['osztalyJel'],
+		'magatartas' => '', 'szorgalom' => '', 
+		'igazolt' => 0, 'igazolatlan' => 0, 'kesesIgazolatlan' => 0, 'kesesPercOsszeg' => 0, 
+		'gyakIgazolt' => 0, 'gyakIgazolatlan' => 0, 'gyakKesesIgazolatlan' => 0, 'gyakKesesPercOsszeg' => 0, 
+		'elmIgazolt' => 0, 'elmIgazolatlan' => 0, 'elmKesesIgazolatlan' => 0, 'elmKesesPercOsszeg' => 0, 
+		'mJel' => '', 'megjegyzes' => '',
+            ),
+            'diak' => $ADAT['diakok'],
+        );
+	for ($i = 0; $i < count($ADAT['diakIds']); $i++) if (isset($ADAT['jegyek'][ $ADAT['diakIds'][$i] ])) $DATA['base']['diak'][] = $ADAT['diakIds'][$i];
+	for ($i = 0; $i < count ($ADAT['targyak']); $i++) {
+	    $DATA['targy'][ $ADAT['targyak'][$i]['targyId'] ] = $ADAT['targyak'][$i];
+	}
+	if (is_array($ADAT['jegyek']) && count($ADAT['jegyek']) > 0) foreach ($ADAT['jegyek'] as $diakId => $dJegyek) {
+	    if (is_array($dJegyek) && count($dJegyek) > 0) { // Ha vanak egyáltalán jegyei...
+		foreach ($DATA['targy'] as $targyId => $tAdat) { // A helyes sorrend miatt kell ezen végigmenni
+		    if (is_array($dJegyek[$targyId])) { // van az adott tárgyból jegye
+			$tJegyek = $dJegyek[$targyId];
+			// Az utolsó jegyet írjuk csak ki
+			$jegy = $tJegyek[ count($tJegyek)-1 ];
+			if (in_array($targyId, $ADAT['szorgalomIds'])) {
+			    $DATA['diak'][$diakId]['szorgalom'] = $KOVETELMENY['szorgalom'][ $jegy['jegy'] ]['hivatalos'];
+			    $DATA['diak'][$diakId]['szorgMegjJel'] = nagybetus($jegy['megjegyzes'][0]);
+			} elseif (in_array($targyId, $ADAT['magatartasIds'])) {
+			    $DATA['diak'][$diakId]['magatartas'] = $KOVETELMENY['magatartás'][ $jegy['jegy'] ]['hivatalos'];
+			    $DATA['diak'][$diakId]['magMegjJel'] = nagybetus($jegy['megjegyzes'][0]);
+			} else {
+			    $DATA['diak'][$diakId]['targy'][$targyId] = $jegy;
+			    $DATA['diak'][$diakId]['targy'][$targyId]['jTipus'] = $jegy['jegyTipus'];
+			    $DATA['diak'][$diakId]['targy'][$targyId]['mJel'] = nagybetus($jegy['megjegyzes'][0]);
+			    $DATA['diak'][$diakId]['targy'][$targyId]['hivatalos'] = $KOVETELMENY[ $jegy['jegyTipus'] ][ $jegy['jegy'] ]['hivatalos'];
+			    $DATA['diak'][$diakId]['targy'][$targyId]['rovid'] = $KOVETELMENY[ $jegy['jegyTipus'] ][ $jegy['jegy'] ]['rovid'];
+			}
+		    }
+		}
+	    }
+	}
+//	foreach ($ADAT['hianyzas'] as $diakId => $dHianyzas) { - A kimaradó diákok bajt okoznak => az összes diákon végig kell menni!
+	foreach ($ADAT['diakIds'] as $key => $diakId) {
+		$dHianyzas = $ADAT['hianyzas'][$diakId];
+
+		$DATA['diak'][$diakId]['igazolt'] = $dHianyzas['igazolt'];
+		$DATA['diak'][$diakId]['kesesPercOsszeg'] = intval($dHianyzas['kesesPercOsszeg']);
+		$DATA['diak'][$diakId]['kesesIgazolatlan'] = floor($dHianyzas['kesesPercOsszeg']/45);
+		$DATA['diak'][$diakId]['osszesIgazolatlan'] = $dHianyzas['igazolatlan']; // Tartalmazza az összes hivatalos hiányzást! A késések percösszegéből adódóakat is!!
+		$DATA['diak'][$diakId]['igazolatlan'] = $dHianyzas['igazolatlan']-$DATA['diak'][$diakId]['kesesIgazolatlan']; 
+
+		$DATA['diak'][$diakId]['gyakIgazolt'] = intval($dHianyzas['gyakorlatIgazolt']);
+		$DATA['diak'][$diakId]['gyakIgazolatlan'] = intval($dHianyzas['gyakorlatIgazolatlan']);
+		$DATA['diak'][$diakId]['gyakKesesPercOsszeg'] = intval($dHianyzas['gyakorlatKesesPercOsszeg']);
+		$DATA['diak'][$diakId]['gyakKesesIgazolatlan'] = floor($dHianyzas['gyakorlatKesesPercOsszeg']/45);
+		$DATA['diak'][$diakId]['gyakOsszesIgazolatlan'] = $DATA['diak'][$diakId]['gyakIgazolatlan']+$DATA['diak'][$diakId]['gyakKesesIgazolatlan'];
+
+		$DATA['diak'][$diakId]['elmIgazolt'] = intval($dHianyzas['elmeletIgazolt']);
+		$DATA['diak'][$diakId]['elmIgazolatlan'] = intval($dHianyzas['elmeletIgazolatlan']);
+		$DATA['diak'][$diakId]['elmKesesPercOsszeg'] = intval($dHianyzas['elmeletKesesPercOsszeg']);
+		$DATA['diak'][$diakId]['elmKesesIgazolatlan'] = floor($dHianyzas['elmeletKesesPercOsszeg']/45);
+		$DATA['diak'][$diakId]['elmOsszesIgazolatlan'] = $DATA['diak'][$diakId]['elmIgazolatlan']+$DATA['diak'][$diakId]['elmKesesIgazolatlan'];
+
+	}
+//echo '
';
+//var_dump($DATA['base']['diak'], $ADAT['jegyek']);
+//echo '
'; +//die(); + + return template2file($templateFile, $DATA); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/haladasinaplo.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/haladasinaplo.php new file mode 100644 index 00000000..1577a367 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/haladasinaplo.php @@ -0,0 +1,139 @@ + 'tankorokNaploja', 'modul' => 'naplo', 'result' => 'keyvaluepair')); + + } + + function getNaploTankorei($osztalyId) { + + $q = "SELECT tankorId FROM tankorNaplo WHERE osztalyId=%u"; + return db_query($q, array('fv' => 'getNaploTankorei', 'modul' => 'naplo', 'result' => 'idonly', 'values' => array($osztalyId))); + + } + + function getNaploOrak(&$ADAT) { + + + $q = "SELECT * FROM ora WHERE tankorId IN (".implode(',', array_fill(0, count($ADAT['naploTankor']), '%u')).") + AND '%s'<=dt AND dt<='%s' ORDER BY dt,ora,tankorId"; + $v = mayor_array_join($ADAT['naploTankor'], array($ADAT['tanevAdat']['kezdesDt'], $ADAT['tanevAdat']['zarasDt'])); + $A = db_query($q, array('fv' => 'getNaploOrak', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + $Oraszam = $oraIds = array(); + for ($i = 0; $i < count($A); $i++) { + + $ADAT['orak'][ $A[$i]['dt'] ][ $A[$i]['ora'] ][] = $A[$i]; + $oraIds[] = $A[$i]['oraId']; $oraId2dt[ $A[$i]['oraId'] ] = array('dt' => $A[$i]['dt'], 'ora' => $A[$i]['ora']); + if ( + !in_array($A[$i]['tipus'], array('elmarad','elmarad máskor')) // Lehet olyan elmaradó óra, amihez van beírva tananyag... + && ( + !is_array($ADAT['tananyag'][ $A[$i]['dt'] ][ $A[$i]['tankorId'] ]) + || !in_array($A[$i]['leiras'], $ADAT['tananyag'][ $A[$i]['dt'] ][ $A[$i]['tankorId'] ]) + ) + ) $ADAT['tananyag'][ $A[$i]['dt'] ][ $A[$i]['tankorId'] ][] = $A[$i]['leiras']; + + if (defined('__ORASZAMOT_NOVELO_TIPUSOK')) { + $oraszamNoveloTipus = explode(',', __ORASZAMOT_NOVELO_TIPUSOK); + } else { + $_SESSION['alert'][] = 'info:missing_constant:__ORASZAMOT_NOVELO_TIPUSOK'; + $oraszamNoveloTipus = array('normál', 'normál máskor', 'helyettesítés', 'összevonás'); + } + if (in_array($A[$i]['tipus'], $oraszamNoveloTipus)) { + $ADAT['oraszam'][ $A[$i]['dt'] ][ $A[$i]['tankorId'] ][] = (++$Oraszam[ $A[$i]['tankorId'] ]); + } else { + $ADAT['oraszam'][ $A[$i]['dt'] ][ $A[$i]['tankorId'] ][] = '---'; + } + if (in_array($A[$i]['tipus'], array('helyettesítés', 'összevonás', 'felügyelet'))) { + $ADAT['helyettesites'][ $A[$i]['dt'] ][] = $A[$i]; + } + + } + $tmp = getOralatogatasByOraIds($oraIds, $SET = array('result' => 'assoc'));; + if (is_array($tmp)) foreach ($tmp as $oraId => $olAdat) { + $olAdat['ora'] = $oraId2dt[$oraId]['ora']; + $ADAT['oralatogatas'][ $oraId2dt[$oraId]['dt'] ][] = $olAdat; + } + } + + function getNaploHianyzasok(&$ADAT) { + + global $HianyzasJeloles; + + $q = "SELECT * FROM hianyzas WHERE '%s'
'getNaploHianyzas', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + for ($i = 0; $i < count($A); $i++) { + $diakId = $A[$i]['diakId']; + $dt = $A[$i]['dt']; + $ora = $A[$i]['ora']; + if (!is_array($ADAT['hianyzas'][$dt][$diakId])) { + $nev = $ADAT['diakAdat'][$diakId]['diakNev']; + if (mb_strlen($nev, 'UTF-8') > 20) { + if (mb_substr($nev,20,1) == ' ') { + $nev = mb_substr($nev, 0, 20, 'UTF-8'); + } else { + $nev = mb_substr($nev, 0, 20, 'UTF-8'); + $pos = mb_strrpos($nev, ' ', 0, 'UTF-8'); + if ($pos !== false) $nev = mb_substr($nev, 0, $pos, 'UTF-8'); + else $nev .= '.'; + } + } + $ADAT['hianyzas'][$dt][$diakId] = array('ora' => array(), 'diakNev' => $nev); + } + $ADAT['hianyzas'][$dt][$diakId]['ora'][$ora] = $HianyzasJeloles[$A[$i]['tipus']]; + if ($A[$i]['tipus'] == 'hiányzás') { + $ADAT['hianyzas'][$dt][$diakId]['összesen']++; + $ADAT['hianyzas'][$dt][$diakId][ $A[$i]['statusz'] ]++; + } + } + + } + + function tordel($szavak) { + + $sorok = array(); // A tárgyNev sorokra bontása + $maxHossz = 8; // egy sorba írható karakterek maximális száma + + for ($j = 0; $j < count($szavak); $j++) { + $szo = str_replace('--', '~-', $szavak[$j]); + $tagok = explode('-', $szo); + $sor = str_replace('~', '-', $tagok[0]); + for ($k = 1; $k < count($tagok); $k++) { + $tag = str_replace('~', '-', $tagok[$k]); + $tl = mb_strlen($tag, 'UTF-8'); + $sl = mb_strlen($sor,'UTF-8'); + $ct = count($tagok); + if ( + ( + $sl+$tl < $maxHossz // általában max $maxHossz karaktert engedünk meg + && !( + $k == ($ct - 2) // az utolsó előtti tag + && ($sl > 3) // a sor már elég hosszú + && ($tl + mb_strlen($targok[$k+1], 'UTF-8')) <= $maxHossz // és befér az utolsó sorba --> akkor hagyjuk a következő sorba + ) + ) + || ( + $sl+$tl == $maxHossz + && ($k == ($ct-1) || substr($tag,-1) == '-')) // szóvégén, vagy kötőjeles szó kötőjelénél nincs újabb kötőjel + ) { + $sor .= $tag; + } else { + if ($k < $ct && substr($sor, -1) != '-') $sorok[] = $sor.'-'; // ha nem az utolsó és nincs még kötőjel (kötőjeles szavak) + else $sorok[] = $sor; + $sor = $tag; + } + } + $sorok[] = $sor; + } + return $sorok; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/helyettesitesinaplo.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/helyettesitesinaplo.php new file mode 100644 index 00000000..88949802 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/helyettesitesinaplo.php @@ -0,0 +1,148 @@ + $filename, + 'base' => array( + 'intezmenyNev' => $Intezmeny['nev'], 'tanev' => __TANEV, 'nyDt' => date('Y.m.d'), + 'tolDt' => dateToString($tolDt), 'igDt' => dateToString($igDt), 'intezmenyHelyseg' => $Intezmeny['cimHelyseg'], + 'nyDatumStr' => dateToString(date('Y-m-d')) + ) + ); + for ($i = 0; $i < count($Helyettesitesek); $i++) { + $oraAdat = $Helyettesitesek[$i]; + if ($oraAdat['eredet'] == 'plusz') $oraAdat['tipus'] = $oraAdat['tipus'].' '.$oraAdat['eredet']; + unset($oraAdat['ki']); + unset($oraAdat['kit']); + $oraAdat['tankorNev'] = LaTeXSpecialChars($oraAdat['tankorNev']); + $DATA['hDt'][ $oraAdat['dt'] ]['helyettesites'][ $oraAdat['oraId'] ] = $oraAdat; + } + if (is_array($DATA['hDt']) && count($DATA['hDt'])>0) { + $DATA['base']['hDt'] = array_keys($DATA['hDt']); + return template2file($templateFile, $DATA); + } else { + $_SESSION['alert'][] = 'info:no_data'; + return false; + } + + + } + +/* + function naploGeneralasOld($filename, $tolDt, $igDt) { + + // Helyettesítések lekérdezése + $Helyettesitesek = getHelyettesitettOra($tolDt, $igDt); + $Intezmeny = getIntezmenyByRovidnev(__INTEZMENY); + + $TeX = '\documentclass[8pt]{article} +\usepackage[a4paper]{geometry} % A4-es méret +\usepackage[utf8]{inputenc} % UTF-8 kódolású forrás +\usepackage{t1enc} +\usepackage[magyar]{babel} % magyar elválasztási szabályok +\frenchspacing % a magyar tipográfiai szabályoknak megfelelő szóközök írásjelek után +\usepackage{booktabs} % táblázatok magasabb szintű formázása +\usepackage{longtable} % többoldalas táblázatok +\setlength\LTleft{-65pt} +\setlength\LTright{-65pt} +\usepackage{fancyhdr} % Fejléc és lábléc kezelés +\pagestyle{fancy} +\def\mayor{% +\font\mayorfnt=cmsl4% +\font\Mayorfnt=cmsl6 +{\mayorfnt\lower0.5ex\hbox{\lower-0.5ex\hbox{Ma}\kern-0.3em\lower0.25ex\hbox{\Mayorfnt Y}\kern-0.2em\hbox{o}\lower0ex\hbox{R}}}} +\renewcommand{\footnotesize}{\fontsize{6pt}{8pt}\selectfont} +%\addtolength{\skip\footins}{2mm} +%\addtolength{\textheight}{16mm} +%\addtolength{\textwidth}{30mm} +\setlength{\footskip}{26pt} +\setlength{\headsep}{24pt} +\lhead{\small '.$Intezmeny['nev'].'} +\rhead{\small Helyettesítési-napló '.__TANEV.'} +\lfoot{\scriptsize\copyright\mayor\ elektronikus napló - Nyomtatva: '.date('Y.m.d.').'} +\rfoot{\scriptsize\thepage . oldal} +\cfoot{} +\begin{document} +'; + + $TeX .= ' +\begin{center} +{\large\bfseries H E L Y E T T E S Í T É S E K}\\\\ + +\vspace{12pt} + +{\bfseries\normalsize '.dateToString($tolDt).' – '.dateToString($igDt).'}\\\\ + +\vspace{12pt} + +\scriptsize +\begin{longtable}{@{\extracolsep{\fill}}c|c|l|l|l|c} +Dátum & Óra & Ki & Kit & Tankör & Típus \\\\ +\toprule +\endfirsthead +Dátum & Óra & Ki & Kit & Tankör & Típus \\\\ +\toprule +\endhead +\bottomrule +\endfoot +\bottomrule +\endlastfoot +\hline +'; + + for ($i = 0; $i < count($Helyettesitesek); $i++) { + $oraAdat = $Helyettesitesek[$i]; + if ($oraAdat['eredet'] == 'plusz') $oraAdat['tipus'] = $oraAdat['tipus'].' '.$oraAdat['eredet']; + $TeX .= '\vbox to 1.2em {}'.$oraAdat['dt'].'&'.$oraAdat['ora'].'&'.$oraAdat['kiCn'].'&'.$oraAdat['kitCn'] + .'&'.$oraAdat['tankorNev'].'&'.$oraAdat['tipus'].'\\\\ '; + if ($Helyettesitesek[$i+1]['dt'] != $oraAdat['dt']) $TeX .= '\midrule'."\n"; + //else $TeX .= '\hline'; + + } + + $TeX .= ' +\end{longtable} + +\vspace{16pt} + +\begin{flushleft} +{\scriptsize '.$Intezmeny['cimHelyseg'].', '.dateToString(date('Y-m-d')).'} +\end{flushleft} +\vspace{20pt}\slshape\scriptsize +\begin{tabular}{ccc} +%\rule{3.5cm}{0.1pt} +\hspace{3.5cm}% +&\hspace{3cm}\ &\rule{3.5cm}{0.1pt}\\\\ +%tanuló +&&igazgató\\\\ +\end{tabular} + +\end{center} +'; + + + $TeX .= ' +\end{document}'; + + pdfLaTeX($TeX, $filename); // A longtable miatt többször kell fordítani + return pdfLaTeX($TeX, $filename); + + } +*/ + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/nyomtatas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/nyomtatas.php new file mode 100644 index 00000000..b91c18e8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/nyomtatas.php @@ -0,0 +1,89 @@ +'H', + 'késés'=>'k', + 'felszerelés hiány'=>'f', + 'egyenruha hiány'=>'e' + ); + + $targyCsoportTXT = array( + 'tanóra' => '', + 'fakultáció' => 'fakt.', + 'előfakultáció' => 'előfakt.', + 'szakkör' => 'szakk.' + ); + + $targyTXT = array( + 'angol nyelv' => 'Angol% nyelv', + 'biológia' => 'Bio-%lógia', + 'dráma' => 'Dráma', + 'ének-zene' => 'Ének%-zene', + 'fizika' => 'Fizika', + 'filozófia' => 'Filo-%zófia', + 'földrajz' => 'Föld-%rajz', + 'francia nyelv' => 'Francia% nyelv', + 'idegenvezetés' => 'Idegen-%vezetés', + 'japán nyelv' => 'Japán% nyelv', + 'kémia' => 'Kémia', + 'latin nyelv' => 'Latin% nyelv', + 'magyar' => 'Magyar', + 'magyar irodalom' => 'Magyar% irodalom', + 'magyar nyelv' => 'Magyar% nyelv', + 'matematika' => 'Mate-%matika', + 'művészettörténet' => 'Művészet-%történet', + 'német nyelv' => 'Német% nyelv', + 'olasz nyelv' => 'Olasz% nyelv', + 'rajz' => 'Rajz', + 'spanyol nyelv' => 'Spanyol% nyelv', + 'számítástechnika' => 'Számítás-%technika', + 'szociálpszichológia' => 'Szociál-%pszich.', + 'testnevelés' => 'Testne-%velés', + 'történelem' => 'Törté-%nelem', + 'zenetörténet' => 'Zene-%történet' + ); + + // Ezt az órarendnél, és az első lapon fogjuk használni :) + $targyTXT2 = array( + 'angol nyelv' => 'Angol', + 'biológia' => 'Biológia', + 'dráma' => 'Dráma', + 'ének-zene' => 'Ének', + 'fizika' => 'Fizika', + 'filozófia' => 'Filozófia', + 'földrajz' => 'Földrajz', + 'francia nyelv' => 'Francia', + 'idegenvezetés' => 'Idegenvezetés', + 'japán nyelv' => 'Japán', + 'kémia' => 'Kémia', + 'latin nyelv' => 'Latin', + 'magyar' => 'Magyar', + 'magyar irodalom' => 'Magyar irodalom', + 'magyar nyelv' => 'Magyar nyelv', + 'matematika' => 'Matematika', + 'művészettörténet' => 'Művészettörténet', + 'német nyelv' => 'Német', + 'olasz nyelv' => 'Olasz', + 'osztályfőnöki' => 'Osztályfőnöki', + 'rajz' => 'Rajz', + 'spanyol nyelv' => 'Spanyol', + 'számítástechnika' => 'Szám. tech.', + 'szociálpszichológia' => 'Szoc.pszich.', + 'testnevelés' => 'Testnevelés', + 'történelem' => 'Történelem', + 'zenetörténet' => 'Zenetörténet' + ); + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/osztalyozonaplo.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/osztalyozonaplo.php new file mode 100644 index 00000000..bdc16662 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/osztalyozonaplo.php @@ -0,0 +1,24 @@ + 'getDiakJegyek', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $ADAT['diakIds'])); + $RET = array(); + for ($i = 0; $i < count($r); $i++) { + /* Melyik félév is lehetett? */ + $_felev = (in_date_interval($r[$i]['dt'],$_TANEV['szemeszter'][1]['kezdesDt'],$_TANEV['szemeszter'][1]['zarasDt'])) ? 1:2; + + if ( + $ADAT['diakAdat'][ $r[$i]['diakId'] ]['osztalyDiak'][0]['kiDt'] == '' + || strtotime($r[$i]['dt']) <= strtotime($ADAT['diakAdat'][ $r[$i]['diakId'] ]['osztalyDiak'][0]['kiDt']) + ) + $RET[ $r[$i]['diakId'] ][ $r[$i]['targyId'] ][ $r[$i]['ho'] ][] = $r[$i]; + $RET[ $r[$i]['diakId'] ][ 'felevenkent' ][ $r[$i]['targyId'] ][ $_felev ][] = $r[$i]; + } + return $RET; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/sniEvVegiJegyzokonyv.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/sniEvVegiJegyzokonyv.php new file mode 100644 index 00000000..3ed53ae3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/sniEvVegiJegyzokonyv.php @@ -0,0 +1,48 @@ + $ADAT['file'], + 'base' => array('nyomtatasDt' => date('Y.m.d'), + 'tanev' => "$kEv-$zEv", +// 'ev' => $ev, 'honap' => $ho, 'nap' => $nap, 'hoNev' => kisbetus($Honapok[$ho-1]), + 'intezmenyNev' => $ADAT['intezmeny']['nev'], 'intezmenyCimIrsz' => $ADAT['intezmeny']['cimIrsz'], + 'intezmenyCimHelyseg' => $ADAT['intezmeny']['cimHelyseg'], 'intezmenyCimKozteruletNev' => $ADAT['intezmeny']['cimKozteruletNev'], + 'intezmenyCimKozteruletJelleg' => $ADAT['intezmeny']['cimKozteruletJelleg'], 'intezmenyCimHazszam' => $ADAT['intezmeny']['cimHazszam'], + 'intezmenyTelefon' => $ADAT['intezmeny']['telefon'], 'intezmenyHonlap' => $ADAT['intezmeny']['honlap'], + 'intezmenyFax' => $ADAT['intezmeny']['fax'], 'intezmenyEmail' => $ADAT['intezmeny']['email'], + 'diak' => $ADAT['sniDiakIds'], 'osztaly' => $ADAT['osztaly']['osztalyJel'], + 'tanarNev' => '', 'osztalyTanar' => array_keys($ADAT['osztalyTanar']), + ), + 'diak' => $ADAT['diakAdat'], + 'felelos' => $ADAT['tanarok'], + 'osztalyTanar' => $ADAT['osztalyTanar'], + ); + +//echo '
';
+//var_dump($ADAT['diakAdat']);
+//echo '
'; + + return template2file($templateFile, $DATA); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/sniHaviJegyzokonyv.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/sniHaviJegyzokonyv.php new file mode 100644 index 00000000..f9f182d0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/sniHaviJegyzokonyv.php @@ -0,0 +1,41 @@ + $ADAT['file'], + 'base' => array('nyomtatasDt' => date('Y.m.d'), + 'ev' => $ev, 'honap' => $ho, 'nap' => $nap, 'hoNev' => kisbetus($Honapok[$ho-1]), + 'intezmenyNev' => $ADAT['intezmeny']['nev'], 'intezmenyCimIrsz' => $ADAT['intezmeny']['cimIrsz'], + 'intezmenyCimHelyseg' => $ADAT['intezmeny']['cimHelyseg'], 'intezmenyCimKozteruletNev' => $ADAT['intezmeny']['cimKozteruletNev'], + 'intezmenyCimKozteruletJelleg' => $ADAT['intezmeny']['cimKozteruletJelleg'], 'intezmenyCimHazszam' => $ADAT['intezmeny']['cimHazszam'], + 'intezmenyTelefon' => $ADAT['intezmeny']['telefon'], 'intezmenyHonlap' => $ADAT['intezmeny']['honlap'], + 'intezmenyFax' => $ADAT['intezmeny']['fax'], 'intezmenyEmail' => $ADAT['intezmeny']['email'], + 'diak' => $ADAT['sniDiakIds'], 'osztaly' => $ADAT['osztaly']['osztalyJel'], + 'tanarNev' => '', 'osztalyTanar' => array_keys($ADAT['osztalyTanar']), + ), + 'diak' => $ADAT['diakAdat'], + 'felelos' => $ADAT['tanarok'], + 'osztalyTanar' => $ADAT['osztalyTanar'], + ); + + return template2file($templateFile, $DATA); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/szovegesErtekeles.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/szovegesErtekeles.php new file mode 100644 index 00000000..1b095a4e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/szovegesErtekeles.php @@ -0,0 +1,131 @@ + $ADAT['targySorrendNev'],'osztalyId' => $ADAT['osztalyId'])); $Targyak = array(); + for ($i = 0; $i < count($_Targyak); $i++) { + $Targyak[ $_Targyak[$i]['targyId'] ] = $_Targyak[$i]; + $Targyak[ $_Targyak[$i]['targyId'] ]['targyNev'] = nagybetus(mb_substr($_Targyak[$i]['targyNev'],0,1)).mb_substr($_Targyak[$i]['targyNev'],1); + } + unset($_Targyak); + + list($ev,$ho,$nap) = explode('-', $ADAT['dt']); + list($evf,$oszt) = explode('.', $ADAT['osztalyAdat']['osztalyJel']); + + $DATA = array( + 'file' => $ADAT['file'], + 'base' => array('nyomtatasDt' => date('Y.m.d'), 'ev' => $ev, 'honap' => $ho, 'nap' => $nap, 'hoNev' => kisbetus($Honapok[$ho-1]), + 'intezmenyNev' => $Intezmeny['nev'], 'intezmenyOMKod' => $Intezmeny['OMKod'], 'intezmenyCimIrsz' => $Intezmeny['cimIrsz'], + 'intezmenyCimHelyseg' => $Intezmeny['cimHelyseg'], 'intezmenyCimKozteruletNev' => $Intezmeny['cimKozteruletNev'], + 'intezmenyCimKozteruletJelleg' => $Intezmeny['cimKozteruletJelleg'], 'intezmenyCimHazszam' => $Intezmeny['cimHazszam'], + 'intezmenyTelefon' => $Intezmeny['telefon'], 'intezmenyHonlap' => $Intezmeny['honlap'], + 'intezmenyFax' => $Intezmeny['fax'], 'intezmenyEmail' => $Intezmeny['email'], + 'tanevJele' => substr($ADAT['tanevAdat']['kezdesDt'],0,4).'/'.substr($ADAT['tanevAdat']['zarasDt'],0,4), + 'felevi' => ($ADAT['szemeszter']['szemeszter'] == 1), + 'diak' => $ADAT['diakIds'], 'osztaly' => "$evf. ".nagybetus($oszt), + ), + 'diak' => $ADAT['diakAdat'], + 'targy' => $Targyak, + 'szempont' => array(), + 'minosites' => array(), + ); + unset($Intezmeny); + + foreach ($ADAT['hianyzas'] as $diakId => $dHianyzas) { + $DATA['diak'][$diakId]['igazolt'] = $dHianyzas['igazolt']; + $DATA['diak'][$diakId]['igazolatlan'] = $dHianyzas['igazolatlan']; + $DATA['diak'][$diakId]['kesesPercOsszeg'] = intval($dHianyzas['kesesPercOsszeg']); + $DATA['diak'][$diakId]['kesesIgazolatlan'] = floor($dHianyzas['kesesPercOsszeg']/45); + $DATA['diak'][$diakId]['osszesIgazolatlan'] = $DATA['diak'][$diakId]['igazolatlan']+$DATA['diak'][$diakId]['kesesIgazolatlan']; + + $DATA['diak'][$diakId]['gyakIgazolt'] = intval($dHianyzas['gyakorlatIgazolt']); + $DATA['diak'][$diakId]['gyakIgazolatlan'] = intval($dHianyzas['gyakorlatIgazolatlan']); + $DATA['diak'][$diakId]['gyakKesesPercOsszeg'] = intval($dHianyzas['gyakorlatKesesPercOsszeg']); + $DATA['diak'][$diakId]['gyakKesesIgazolatlan'] = floor($dHianyzas['gyakorlatKesesPercOsszeg']/45); + $DATA['diak'][$diakId]['gyakOsszesIgazolatlan'] = $DATA['diak'][$diakId]['gyakIgazolatlan']+$DATA['diak'][$diakId]['gyakKesesIgazolatlan']; + + $DATA['diak'][$diakId]['elmIgazolt'] = intval($dHianyzas['elmeletIgazolt']); + $DATA['diak'][$diakId]['elmIgazolatlan'] = intval($dHianyzas['elmeletIgazolatlan']); + $DATA['diak'][$diakId]['elmKesesPercOsszeg'] = intval($dHianyzas['elmeletKesesPercOsszeg']); + $DATA['diak'][$diakId]['elmKesesIgazolatlan'] = floor($dHianyzas['elmeletKesesPercOsszeg']/45); + $DATA['diak'][$diakId]['elmOsszesIgazolatlan'] = $DATA['diak'][$diakId]['elmIgazolatlan']+$DATA['diak'][$diakId]['elmKesesIgazolatlan']; + } + + + + if (strtotime($ADAT['dt']) < strtotime($ADAT['tanevAdat']['szemeszter'][1]['zarasDt'])) $DATA['base']['negyedev'] = 'az első'; + else $DATA['base']['negyedev'] = 'a harmadik'; + foreach ($Ertekeles as $diakId => $E) { + $DATA['diak'][$diakId]['targy'] = array(); + + // !!! Tesztelendő !!! // +# foreach ($E as $targyId => $eAdat) { + foreach ($Targyak as $targyId => $tAdat) { + if (is_array($E[$targyId])) { + $eAdat = $E[$targyId]; + } else { + continue; + } + // !!! Tesztelendő !!! // + if ( + ( + (is_array($eAdat['szovegesErtekeles']['minosites']) && count($eAdat['szovegesErtekeles']['minosites']) > 0) + || (is_array($eAdat['szovegesErtekeles']['egyediMinosites']) && count($eAdat['szovegesErtekeles']['egyediMinosites']) > 0) + ) + && $ADAT['tolDt'] <= $eAdat['szovegesErtekeles']['dt'] + ) { + + $DATA['diak'][$diakId]['targy'][$targyId] = $eAdat; // Ezt lehetne finomítani +//if ($targyId == 2) { +//echo '
';var_dump($ADAT['tolDt']);
+//var_dump($eAdat['szovegesErtekeles']['dt']);
+//}
+
+		    $DATA['diak'][$diakId]['targy'][$targyId]['szempont'] = $eAdat['szempontRendszer']['szempont'];
+                    $targyMinositesId = $eAdat['szovegesErtekeles']['minosites'][0]; // Ha egy tárgy egy minősítés kell (az első)
+		    foreach ($eAdat['szempontRendszer']['szempont'] as $szempontId => $szAdat) {
+			$DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['egyediMinosites'] = 
+				$eAdat['szovegesErtekeles']['egyediMinosites'][$szempontId]['egyediMinosites'];
+			$M = $eAdat['szempontRendszer']['minosites'][$szempontId];
+			$elsoValasztottKovetkezik = true;
+                	for ($i = 0; $i < count($M); $i++) {
+			    $DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['minosites'][ $M[$i]['minositesId'] ] 
+				= array('minosites' => $M[$i]['minosites']);
+			    if (in_array($M[$i]['minositesId'], $eAdat['szovegesErtekeles']['minosites'])) {
+				$DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['minosites'][$M[$i]['minositesId']]['valasztott'] = true;
+				$DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['minosites'][$M[$i]['minositesId']]['elsoValasztott'] = $elsoValasztottKovetkezik;
+				$DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['minosites'][$M[$i]['minositesId']]['tobbedikValasztott'] = (!$elsoValasztottKovetkezik);
+				$elsoValasztottKovetkezik = false;
+                    		if ($M[$i]['minositesId'] == $targyMinositesId) {
+                        	    $DATA['diak'][$diakId]['targy'][$targyId]['targyMinosites'] = $M[$i]['minosites']; // Ha tárgyanként egy minősítés kell (az első)
+                        	}
+                    	    }
+                	}
+		    }
+		}
+	    }
+	}
+
+	return template2file($templateFile, $DATA);
+
+    }
+
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tankorNaplohozRendeles.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tankorNaplohozRendeles.php
new file mode 100644
index 00000000..596cbcf9
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tankorNaplohozRendeles.php
@@ -0,0 +1,48 @@
+ 'tankorNaploInit/delete', 'modul' => 'naplo'));
+	}
+	// Kérdezzük le, hogy melyik osztályhoz nincs még bejegyzés
+	$q = "SELECT osztalyId FROM osztalyNaplo LEFT JOIN tankorNaplo USING (osztalyId) GROUP BY osztalyId HAVING COUNT(tankorId) = 0";
+	$osztalyIds = db_query($q, array('fv' => 'tankorNaploInit', 'modul' => 'naplo', 'result' => 'idonly'));
+	// Ezen osztályok hozzárendelése a csak hozzájuk tartozó tankörökhöz
+	if (is_array($osztalyIds) && count($osztalyIds) > 0) {
+    	    $q = "REPLACE INTO tankorNaplo (tankorId,osztalyId)
+                SELECT tankorId,osztalyId FROM ".__INTEZMENYDBNEV.".tankorOsztaly
+                WHERE osztalyId IN (".implode(',', $osztalyIds).")
+		AND tankorId IN (
+                    SELECT DISTINCT tankorId FROM ".__INTEZMENYDBNEV.".tankorSzemeszter WHERE tanev=".__TANEV."
+                ) GROUP BY tankorId HAVING COUNT(*)=1";
+    	    return db_query($q, array('fv' => 'tankorNaploInit', 'modul' => 'naplo'));
+	} else { return true; }
+
+    }
+
+    function tankorNaplohozRendeles($osztalyId, $T) {
+        $v = $V = array();
+        for ($i = 0; $i < count($T); $i++) {
+            list($tankorId, $naplo) = explode('/',$T[$i]);
+	    array_push($v, $tankorId, $naplo);
+            $V[] = "(%u, %u)";
+        }
+        if (count($V) > 0) {
+            $q = "DELETE FROM tankorNaplo WHERE osztalyId=%u";
+            db_query($q, array('fv' => 'tankorNaplohozRendeles', 'modul' => 'naplo', 'values' => array($osztalyId)));
+            $q = "REPLACE INTO tankorNaplo (tankorId,osztalyId) VALUES ".implode(',', $V);
+            db_query($q, array('fv' => 'tankorNaplohozRendeles', 'modul' => 'naplo', 'values' => $v));
+        }
+    }
+
+    function getTankorokNaploja() {
+
+	$q = "SELECT tankorId,osztalyId FROM tankorNaplo";
+        return db_query($q, array('fv' => 'tankorokNaploja', 'modul' => 'naplo', 'result' => 'keyvaluepair'));
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tex.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tex.php
new file mode 100644
index 00000000..ab2ca3c0
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tex.php
@@ -0,0 +1,1285 @@
+8?nagybetus($oJel):kisbetus($oJel)));
+            $return = '\footline{\ifodd\pageno\rightfootline\else\leftfootline\fi}
+\def\rightfootline{\hbox to \hsize{\copyright\ \mayor\ elektronikus napló -- Nyomtatva: '.date('Y.m.d').'.\hfil\folio}}
+\def\leftfootline{\hbox to \hsize{\folio\hfil '.$tanev.' -- '.$osztalySTR.', of.: '.$ofo.'}}';
+
+        } else {
+
+            $return = '\footline{\ifodd\pageno\rightfootline\else\leftfootline\fi}
+\def\rightfootline{\hbox to \hsize{\copyright\ \mayor\ elektronikus napló '.$tanev.'\hfil\folio}}
+\def\leftfootline{\hbox to \hsize{\folio\hfil Nyomtatva: '.date('Y.m.d.').'}}';
+
+        }
+        return $return;
+
+}
+
+function endTeXDocument() {
+
+    return '\bye';
+
+}
+
+// ======= Haladási ====== //
+
+    $HianyzasJeloles = array(
+        'hiányzás'=>'H',
+        'késés'=>'k',
+        'felszerelés hiány'=>'f',
+	'egyenruha hiány' => 'e'
+    );
+
+    function datumString($tanitasiNapOk) {
+        global $Honapok;
+        $tolStamp = strtotime($tanitasiNapOk[0]);
+        $igStamp = strtotime($tanitasiNapOk[2]);
+        $tolString = date('Y',$tolStamp) . '. '.$Honapok[intval(date('m',$tolStamp))-1].' '.date('j',$tolStamp).'.';
+        $igString = date('Y',$igStamp) . '. '.$Honapok[intval(date('m',$igStamp))-1].' '.date('j',$igStamp).'.';
+        $datumString = $tolString.' -- '.$igString;
+
+        return kisbetus($datumString);
+    }
+
+
+    $hoRomai = array('01'=>'I',
+                        '02' => 'II',
+                        '03' => 'III',
+                        '04' => 'IV',
+                        '05' => 'V',
+                        '06' => 'VI',
+                        '07' => 'VII',
+                        '08' => 'VIII',
+                        '09' => 'IX',
+                        '10' => 'X',
+                        '11' => 'XI',
+                        '12' => 'XII');
+
+    function datumRomai($dt) {
+	global $hoRomai;
+        list($ev,$honap,$nap) = explode('-',date('Y-m-j',strtotime($dt)));
+        return strtr($honap,$hoRomai).'.'.$nap.'.';
+    }
+
+
+    function putTeXOrarendParameterek($dt, $ADAT) {
+
+        $return = '';
+        for($ora = 1; $ora <= 8; $ora++) {
+	    $oraAdat = $ADAT['orak'][$dt][$ora];
+            $return .= '{';
+	    $targyNev = array();
+	    if (is_array($oraAdat)) for ($i = 0; $i < count($oraAdat); $i++) {
+		$targyId = $ADAT['tankorTargy'][ $oraAdat[$i]['tankorId'] ];
+		if ($ADAT['targyAdat'][$targyId]['targyRovidNev'] != '') {
+		    $tNev = $ADAT['targyAdat'][$targyId]['targyRovidNev'];
+		} else {
+		    $tNev = $ADAT['targyAdat'][$targyId]['targyNev'];
+		}
+		if (!in_array($tNev, $targyNev)) $targyNev[] = $tNev;
+	    }
+	    $return .= TeXSpecialChars(implode(', ', $targyNev));
+	    $return .= '}';
+        }
+
+	return $return;
+
+    }
+
+    function putTeXHaladasiOldalbeallitas() {
+
+        /* ELválasztás: szám < pretolerance(100) --> sikeres
+                        elválasztás
+                        sikertelenség !< tolerance(200)
+        */
+	return '%% Oldalbeállítás %%
+\\pretolerance=100
+\\tolerance=10000
+\\magnification=960
+\\vsize=26cm
+\\hsize=18.5cm
+\\hoffset=-1cm%% később generáljuk
+\\voffset=-1cm
+\\normal
+'; 
+    }
+
+    function putTeXFirstFootline($ADAT) {
+        return '\\footline{Nyomtatta: '.TeXSpecialChars($ADAT['intezmenyAdat']['nev']).' (OM: '.$ADAT['intezmenyAdat']['OMKod'].')'.' -- Látta: VMG 2003. X. 10. Sz. T.\\hfill}%'."\n";
+    }
+
+    function putTeXElolap($ADAT) {
+
+        global $targyTXT;
+
+	$return = '';
+	$dbSor = 0; 
+	for ($i=0; $i < count($ADAT['tankorokNaploElejere']); $i++) 
+	    $dbSor += count($ADAT['tankorokNaploElejere'][$i]['tanarok']);
+	$maxSorPerLap = 36;
+
+
+        $return .= putTeXFirstFootline($ADAT);
+
+	$sor = 0; $i = 0; // hanyadik tankörnél tartunk
+	while ($sor < $dbSor) {
+
+	    $lapSorai = 0;
+    	    $return .= '\\vbox to \\vsize{%%%%%%%%%%%%%%%%%%%%%%%';
+
+	    if ($sor == 0) $return .='
+\\vskip60pt%
+\\centerline{\\hbox to 120pt{\\hrulefill}}%
+\\centerline{az intézmény hosszú bélyegzője}%
+';
+	    $return .='\\hbox{\\vbox to 30pt{\\vfil\\hbox{\\centerline{'.TeXSpecialChars(nagybetus($ADAT['osztalyAdat']['osztalyJel']))
+.' osztályának HALADÁSI NAPLÓJA a '.$ADAT['tanev'].'/'.substr($ADAT['tanevAdat']['zarasDt'],0,4).' tanévre}}\\vfil}}%
+\\hbox{\\centerline{Osztályfőnök: '.$ADAT['osztalyAdat']['osztalyfonokNev'].'}}%
+%% egész lapos vbox vége... %%%%%%%%%%%%%%%%%%%%%%%
+%%ez a regi volt:\\vbox to 60pt{}%
+\\vfill%
+\\centerline{%
+\\vbox{\\hsize=300pt\\baselineskip=15pt';
+
+	    while (
+		$i < count($ADAT['tankorokNaploElejere'])
+		&& ($lapSorai + count($ADAT['tankorokNaploElejere'][$i]['tanarok'])) <= $maxSorPerLap
+	    ) {
+		$targyId = $ADAT['tankorokNaploElejere'][$i]['targyId'];
+        	$targyNev = $ADAT['targyAdat'][$targyId]['targyNev'];
+
+		$_tankorId = $ADAT['tankorokNaploElejere'][$i]['tankorId'];
+		$_osztalyId = $ADAT['tankorNaploja'][$_tankorId];
+		if ($_osztalyId!==null) {
+		    $naplojaban = TeXSpecialChars($ADAT['osztalyJele'][$_osztalyId]);
+            	    $return .= '\\hbox to 300pt{'.TeXSpecialChars($targyNev);
+	    	    if ($ADAT['targyAdat'][$targyId]['db'] > 1) {
+			$return .= ' '.(++$ADAT['targyAdat'][$targyId]['kiirtDb']).'. csoport';
+		    }
+		    if ($ADAT['osztalyId'] != $_osztalyId) $return .=' ('.$naplojaban.' naplójában)';
+        	    $return .= '\\quad\\dotfill\\quad ';
+		    // Egy tanár - az első - félrevezető, pontatlan
+        	    // $return .= $ADAT['tankorokNaploElejere'][$i]['tanarok'][0]['tanarNev']; //.' tanár';
+	    	    // -----------
+		    // több tanár egy sorban, vesszővel elválasztva - esetleg nem fér ki a sorban
+        	    //$return .= implode(', ', $ADAT['tankorokNaploElejere'][$i]['tanarok']); //.' tanár';
+		    // -----------
+		    // több tanár külön-külön sorban - esetleg nem fér ki az oldalra ($maxLap?)
+        	    $return .= implode("}%\n\\hbox to 300pt{\\hfill\\quad ", $ADAT['tankorokNaploElejere'][$i]['tanarok']); //.' tanár';
+        	    $return .= '}%'."\n";
+		}
+		$sor += count($ADAT['tankorokNaploElejere'][$i]['tanarok']);
+		$lapSorai += count($ADAT['tankorokNaploElejere'][$i]['tanarok']);
+		$i++;
+    	    }
+    	    $return .= '}%
+}% eocenterline%
+\\vfill%
+}';
+
+	    if ($sor < $dbSor) $return .= putTexUresLap();
+	} // while
+
+        return $return;
+
+    }
+
+
+
+
+
+
+    function putTeXTanuloTankorMatriX($ADAT) {
+
+	define('__MAXTANKOR',30);
+
+        $return .= '\\vbox to 20pt{\\vfil\\centerline{\\nagy A tanulók tankörbeosztása\\normal}\\vfil}%'."\n";
+
+$k = 0; // Hányadik tankörtől indulunk a táblázat elején
+$pageDb = 0;
+while ($k < count($ADAT['tankorok'])) {
+
+	$return .= '\\centerline{\\vbox{%'."\n";
+
+        $return .= '\\halign{\\vrule width2pt\\strut\\kicsi\\space\\noindent#\\hfill\\vrule width2pt';
+            for($i = $k; ($i < count($ADAT['tankorok'])) && ($i-$k<__MAXTANKOR); $i++) $return.= '&\\hbox to 10pt{\\hfil\kicsi#\\hfil}\\vrule';
+        $return .= ' width2pt\\cr%'."\n";
+        $return .='\\noalign{\\hrule height2pt}%'."\n";
+
+        $return .= '\\vbox to 180pt{\\hsize=100pt\\parindent=0pt\\vfill\\centerline{Tankör mátrix}\\vfill}';
+        for($i = $k; ($i < count($ADAT['tankorok'])) && ($i-$k<__MAXTANKOR); $i++) {
+            $return .= '&';
+            $return .= '\\setbox\\rotbox=\\hbox to 180pt{'. TeXSpecialChars( $ADAT['tankorok'][$i]['tankorNev'] ) .'\\hfill}';
+            $return .= '\\rotl\\rotbox';
+        }
+        $return .= '\\cr%'."\n";
+        $return .='\\noalign{\\hrule height2pt}%'."\n";
+
+        for ($j = 0; $j < count($ADAT['nevsor']); $j++){
+            $diakNev = $ADAT['nevsor'][$j]['diakNev'];
+            $diakId = $ADAT['nevsor'][$j]['diakId'];
+            $return .= $diakNev;
+            for($i = $k; ($i < count($ADAT['tankorok'])) && ($i-$k<__MAXTANKOR); $i++) {
+                $return.= '&';
+                if (in_array($ADAT['tankorok'][$i]['tankorId'], $ADAT['diakTankor'][$diakId])) $return.= 'x';
+            }
+            $return .='\\cr%'."\n";
+            $return .='\\noalign{\\hrule}%'."\n";
+        }
+        $return .='\\noalign{\\hrule height1.6pt}%'."\n";
+        $return .= '}}}\\hoffset=-0.8cm';
+
+	$k = $i;
+$pageDb++;
+}
+if (($pageDb % 2) == 0) $return .= putTeXUresLap(); // hogy ne csússzon el a páros/páratlan...
+        return $return;
+    }
+
+    function putTeXTanuloTankorMatriXOrig($ADAT) {
+
+        $return .= '\\vbox to 20pt{\\vfil\\centerline{\\nagy A tanulók tankörbeosztása\\normal}\\vfil}%
+\\centerline{\\vbox{%'."\n";
+
+        $return .= '\\halign{\\vrule width2pt\\strut\\kicsi\\space\\noindent#\\hfill\\vrule width2pt';
+            for($i = 0; $i < count($ADAT['tankorok']); $i++) $return.= '&\\hbox to 10pt{\\hfil\kicsi#\\hfil}\\vrule';
+        $return .= ' width2pt\\cr%'."\n";
+        $return .='\\noalign{\\hrule height2pt}%'."\n";
+
+        $return .= '\\vbox to 180pt{\\hsize=100pt\\parindent=0pt\\vfill\\centerline{Tankör mátrix}\\vfill}';
+        for($i = 0; $i < count($ADAT['tankorok']); $i++) {
+            $return .= '&';
+            $return .= '\\setbox\\rotbox=\\hbox to 180pt{'. TeXSpecialChars( $ADAT['tankorok'][$i]['tankorNev'] ) .'\\hfill}';
+            $return .= '\\rotl\\rotbox';
+        }
+        $return .= '\\cr%'."\n";
+        $return .='\\noalign{\\hrule height2pt}%'."\n";
+
+        for ($j = 0; $j < count($ADAT['nevsor']); $j++){
+            $diakNev = $ADAT['nevsor'][$j]['diakNev'];
+            $diakId = $ADAT['nevsor'][$j]['diakId'];
+            $return .= $diakNev;
+            for($i = 0; $i < count($ADAT['tankorok']); $i++) {
+                $return.= '&';
+                if (in_array($ADAT['tankorok'][$i]['tankorId'], $ADAT['diakTankor'][$diakId])) $return.= 'x';
+            }
+            $return .='\\cr%'."\n";
+            $return .='\\noalign{\\hrule}%'."\n";
+        }
+        $return .='\\noalign{\\hrule height1.6pt}%'."\n";
+        $return .= '}}}\\hoffset=-0.8cm';
+
+
+        return $return;
+    }
+
+
+
+
+    function putTeXAllandoFejlec() {
+
+$return='% ======================================================================= %
+% "Órán" táblázat (8.9pt?) 25.6pt
+\\def\\oran{\\vbox{\\halign{%
+\\vbox to 30pt{\\hsize=8.9pt\\vfill\\noindent\\hfil ##\\hfil\\vfill}\\vrule%
+&\\vbox to 30pt{\\hsize=8.9pt\\vfill\\noindent\\hfil ##\\hfil\\vfill}\\vrule%
+&\\vbox to 30pt{\\hsize=8.9pt\\vfill\\noindent\\hfil ##\\hfil\\vfill}\\vrule%
+&\\vbox to 30pt{\\hsize=8.9pt\\vfill\\noindent\\hfil ##\\hfil\\vfill}\\vrule%
+&\\vbox to 30pt{\\hsize=8.9pt\\vfill\\noindent\\hfil ##\\hfil\\vfill}\\vrule%
+&\\vbox to 30pt{\\hsize=8.9pt\\vfill\\noindent\\hfil ##\\hfil\\vfill}\\vrule%
+&\\vbox to 30pt{\\hsize=8.9pt\\vfill\\noindent\\hfil ##\\hfil\\vfill}\\vrule%
+&\\vbox to 30pt{\\hsize=8.9pt\\vfill\\noindent\\hfil ##\\hfil\\vfill}\\vrule width0.8pt%
+\\cr%
+% ----------------------------------------------------------------------- %
+1&2&3&4&5&6&7&8\\cr%
+\\noalign{\\hrule}%
+\\multispan8{\\vbox to 32pt{\\hsize=74pt\\vfill\\noindent\\hfil órán\\hfil\\vfill}\\vrule width 0.8pt}\\cr%
+}}}%
+% ======================================================================= %
+% "Mulasztott" órák táblázat
+\\def\\mulasztott{%
+\\setbox\\rotbox=\\hbox to 40pt{\\vbox to 14pt{\\vfil\\noindent\\space összesen\\vfil}}%
+\\vbox {%
+\\halign{##&\\hfil##\\hfil\\cr%
+\\oran&\\hbox{\\rotl\\rotbox}\\cr%
+\\noalign{\\hrule}%
+\\multispan2{\\strut\\hfil mulasztott\\hfil}\\cr%
+}}}
+% ======================================================================= %
+\\def\\igazolas{%
+\\setbox\\rotboxA=\\hbox to 60pt{\\vbox to 14pt{\\vfil\\noindent\\space igazolt\\vfil}}%
+\\setbox\\rotboxB=\\hbox to 60pt{\\vbox to 14pt{\\vfil\\noindent\\space igazolatlan\\vfil}}%
+\\lower3pt\\vbox{%
+\\halign{##&##\\cr%
+\\multispan2{\\strut\\space\\hfil Ebből\\hfil\\space}\\cr%
+\\noalign{\\hrule}%
+\\rotl\\rotboxA\\vrule&\\rotl\\rotboxB\\cr}}}
+% ======================================================================= %
+\\def\\hianyzasFejlec{%
+\\vbox{%
+\\halign{\\kozepen{2.4cm}{2.3cm}{##}\\vrule&##\\vrule width0.8pt&##\\cr%
+\\vbox{\\centerline{A hiányzó} \\centerline{tanuló neve}}%
+&\\mulasztott&\\igazolas\\cr}}}
+'; return $return;
+
+    }
+    /* ------------------------------------------------------------------------------------- */
+
+    /* ----- Haladási napló baloldalán a napi órarend. ------------------------------------- */
+    function putTeXOrarendMacro() {
+
+$return='% ====ORERDND MAKRÓ========================================================= %
+\\def\\orarend#1#2#3#4#5#6#7#8{%
+\\lower-3pt\\vbox to 160pt{%
+\\baselineskip=10pt%
+\\hsize=82.5pt%
+\\hbox{\\vbox to 20.4pt{\\vfil\\leftskip=3pt\\noindent\\raggedright#1\\vfil}}%
+\\hrule width82.5pt%
+\\hbox{\\vbox to 20.4pt{\\vfil\\leftskip=3pt\\noindent\\raggedright#2\\vfil}}%
+\\hrule width82.5pt%
+\\hbox{\\vbox to 20.4pt{\\vfil\\leftskip=3pt\\noindent\\raggedright#3\\vfil}}%
+\\hrule width82.5pt%
+\\hbox{\\vbox to 20.4pt{\\vfil\\leftskip=3pt\\noindent\\raggedright#4\\vfil}}%
+\\hrule width82.5pt%
+\\hbox{\\vbox to 20.4pt{\\vfil\\leftskip=3pt\\noindent\\raggedright#5\\vfil}}%
+\\hrule width82.5pt%
+\\hbox{\\vbox to 20.4pt{\\vfil\\leftskip=3pt\\noindent\\raggedright#6\\vfil}}%
+\\hrule width82.5pt%
+\\hbox{\\vbox to 20.4pt{\\vfil\\leftskip=3pt\\noindent\\raggedright#7\\vfil}}%
+\\hrule width82.5pt%
+\\hbox{\\vbox to 20.4pt{\\vfil\\leftskip=3pt\\noindent\\raggedright#8\\vfil}}%
+}}%
+'; return $return;
+
+    } // end of putTeXOrarendMacro()
+    /* ------------------------------------------------------------------------------------- */
+
+    /* ------------------------------------------------------------------------------------- */
+    function putTeXHianyzasAlTablazat($napiHianyzas) {
+
+$return='% ======================================================================= %
+\\lower3pt\\vbox to 166pt{\\noindent{\\halign{%
+\\lower-2pt\\hbox to 2.4cm{\\hfil\\kicsi#\\hfill}\\vrule%
+&\\vbox to 10pt{\\hsize=8.9pt\\vfill\\noindent\\hfil #\\hfil\\vfill}\\vrule%
+&\\vbox to 10pt{\\hsize=8.9pt\\vfill\\noindent\\hfil #\\hfil\\vfill}\\vrule%
+&\\vbox to 10pt{\\hsize=8.9pt\\vfill\\noindent\\hfil #\\hfil\\vfill}\\vrule%
+&\\vbox to 10pt{\\hsize=8.9pt\\vfill\\noindent\\hfil #\\hfil\\vfill}\\vrule%
+&\\vbox to 10pt{\\hsize=8.9pt\\vfill\\noindent\\hfil #\\hfil\\vfill}\\vrule%
+&\\vbox to 10pt{\\hsize=8.9pt\\vfill\\noindent\\hfil #\\hfil\\vfill}\\vrule%
+&\\vbox to 10pt{\\hsize=8.9pt\\vfill\\noindent\\hfil #\\hfil\\vfill}\\vrule%
+&\\vbox to 10pt{\\hsize=8.9pt\\vfill\\noindent\\hfil #\\hfil\\vfill}\\vrule width0.8pt%
+&\\lower-2pt\\hbox to 14pt{\\hfil#\\hfil}\\vrule width0.8pt%
+&\\lower-2pt\\hbox to 14pt{\\hfil#\\hfil}\\vrule%
+&\\lower-2pt\\hbox to 14pt{\\hfil#\\hfil}\\cr%
+% -----------------------------------------
+';
+    $i = 0; // Kiírt hiányzók száma (max 16)
+    if (is_array($napiHianyzas)) { 
+	foreach ($napiHianyzas as $diakId => $H) {
+	    if ($i > 15) break;
+    	    if ($i != 0) $return .= '\\noalign{\\hrule}';
+    	    $return .= $H['diakNev'];
+    	    for ($j = 1; $j <= 8; $j++) $return .= '&'.$H['ora'][$j];
+    	    $return .= '&'.$H['összesen'].'&'.$H['igazolt'].'&'.$H['igazolatlan'].'\\cr';
+	    $i++; 
+	}
+    }
+    // Üres sorok
+    for ($i;$i<=15; $i++) {
+        if ($i != 0) $return .= '\\noalign{\\hrule}';
+        $return .= '&&&&&&&&&&&\\cr';
+    }
+$return .= '}}}%
+'; return $return;
+
+
+    } // end of putTeXHianyzasAlTablazat($DATA)
+    /* ------------------------------------------------------------------------------------- */
+
+    function putTargyFejlec($lap, $ADAT) {
+
+	$return = '';
+
+	if ($lap > 0) {
+
+    	    $return='%% PAGE '.($lap+1).' %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%'."\n";
+	    if ($lap == 2) 
+		$return .= '\\vbox to 20pt{\\vfil\\centerline{\\nagy'.datumString($ADAT['tanitasiNapOk']).'\\normal}\\vfil}'."\n";
+	    else
+		$return .= '\\vbox to 20pt{\\vfil\\centerline{\\nagy '.date('W',strtotime($ADAT['tanitasiNapOk'][1])).'. hét\\normal}\\vfil}'."\n";
+	    $return .= '\\halign{%
+\\vrule width2pt%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width0.8pt&%
+\\hbox to 34pt{#}\\vrule width2pt\\cr%
+% -------------------------------------------------------------- %
+\\noalign{\\hrule height2pt}%
+%%+++ EZ ITT NEM JÓ ÁM MINDIG Hö... \\vbox to 75pt{}%
+';
+
+	}
+$foglalt = 0;
+for ($i = 0; $i < count($ADAT['targyFejlec'][$lap]); $i++) {
+    $targyId = $ADAT['targyFejlec'][$lap][$i]['targyId'];
+    $db = $ADAT['targyFejlec'][$lap][$i]['db'];
+    $sorsz = $ADAT['targyFejlec'][$lap][$i]['sorsz'];
+    $tAdat = $ADAT['targyAdat'][$targyId];
+
+    $tordeltTargyNev = $ADAT['targyAdat'][$targyId]['tordeltTargyNev'];
+    $targyNev = $ADAT['targyAdat'][$targyId]['targyNev'];
+
+    $foglalt += $db;
+    
+    if ($db == 1) {
+	if (count($tordeltTargyNev) < 5) $return .= '\\vbox to 72pt{}\\tetejen{34pt}{41.2pt}{\\vbox{';
+	else $return .= '\\vbox to 72pt{}\\kozepen{34pt}{72pt}{\\vbox{';
+    	for ($j = 0; $j < count($tordeltTargyNev); $j++) $return .= '\\centerline{'.TeXSpecialChars($tordeltTargyNev[$j]).'}';
+        $return .= '}}&';
+    } else {
+	$return .= '\\multispan{'.$db.'}{';
+	if ($lap != 0 && $foglalt == $db) $return .= '\\vrule width2pt\\vbox to 72pt{}';
+	//$return .= '\\ennes{'.TeXSpecialChars($targyNev).'}{'.$db.'}';
+	$return .= '\\emmes{'.TeXSpecialChars($targyNev).'}{'.$db.'}{'.$sorsz.'}';
+	if ($foglalt == $ADAT['helyek'][$lap]) $return .= '\\vrule width2pt}&';
+	else $return .= '\\vrule width0.8pt}&';
+    }
+}
+for ($i = $foglalt; $i < $ADAT['helyek'][$lap]; $i++) {
+    $return .= '\\tetejen{34pt}{41.2pt}{\\vbox{';
+    $return .= '\\centerline{}';
+    $return .= '}}&';
+}
+return substr($return,0,-1)."\\cr%\n";
+
+    }
+
+/* -------------------------------------- */
+
+    function putOraleiras($lap, $ADAT) {
+	$tol = 0;
+	for ($tLap = 0; $tLap < $lap; $tLap++) $tol += $ADAT['helyek'][$tLap];
+	$ig = $tol + $ADAT['helyek'][$lap];
+
+$return = '';
+$return .= '% ------------------------------------------------------------- %
+\\noalign{\\hrule height2pt}%
+';
+
+    for ($i = 0; $i < 3; $i++) {
+
+	$dt = $ADAT['tanitasiNapOk'][$i];
+        if (count($ADAT['orak'][$dt]) > 0) {
+            for ($j = $tol; $j < $ig; $j++) {
+		$tankorId = $ADAT['oszlopTankore'][$j];
+		if (is_array($ADAT['oraszam'][$dt][$tankorId])) {
+		    if (is_numeric($ADAT['oraszam'][$dt][$tankorId][0]))
+			$oraszam1 = $ADAT['oraszam'][$dt][$tankorId][0].'.';
+		    else $oraszam1='---';
+		    if (is_numeric($ADAT['oraszam'][$dt][$tankorId][ (count($ADAT['oraszam'][$dt][$tankorId])-1) ]))
+			$oraszam2 = $ADAT['oraszam'][$dt][$tankorId][ (count($ADAT['oraszam'][$dt][$tankorId])-1) ].'.';
+		    else $oraszam2='---';
+		} else { $oraszam1 = $oraszam2 = ''; }
+		if (is_array($ADAT['tananyag'][$dt][$tankorId])) $leiras = TeXSpecialChars(implode(' ', $ADAT['tananyag'][$dt][$tankorId]));
+		else $leiras = '';
+                // $dupla_orszam_formátum = \\vbox{\\hsize=20pt\\centerline{134.} \\centerline{135.}}
+                if ($oraszam1 == $oraszam2) {
+                    $return .= '\\tananyag{'.$leiras.'}{'.$oraszam1.'}';
+                } else {
+                    $return .= '\\tananyag{'.$leiras.'}{\\vbox{\\hsize=20pt\\centerline{'.$oraszam1.'} \\centerline{'.$oraszam2.'}}}';
+                }
+		if ($j < $ig - 1) $return .= '&';
+            }
+            $return .= '\\cr\\noalign{\\hrule height2pt}';
+        } else {
+            $return .= '\\multispan{15}{\\vrule width2pt\\vbox to 166pt{}\\hfil\\vrule width2pt}\\cr\\noalign{\\hrule height2pt}';
+        }
+    }
+
+
+    $return .= '% ------------------------------------------------------------- %
+\\multispan{15}{%
+\\vrule width2pt\\megjegyzes{Látogatások és egyéb}{észrevételek}%
+';
+	return $return;
+    }
+
+    /* ------------------------------------------------------------------------------------- */
+    function putTeXPage1($ADAT) {
+        global $aHetNapjai;
+$return='
+%%%%%%%%%%%%%%%%%%% PAGE 1 %%%%%%%%%%%%%%%%%%%%%%%
+\\vbox to 20pt{\\vfil\\centerline{\\nagy'.datumString($ADAT['tanitasiNapOk']).'\\normal}\\vfil}
+\\halign{%
+\\hbox to 22pt{\\hfil#}%
+&\\vrule width0.8pt\\hbox to 82.5pt{#}\\vrule width0.8pt%
+&#\\vrule width0.8pt&\\hbox to 34pt{#}\\vrule width0.8pt%
+&\\hbox to 34pt{#}\\vrule width0.8pt%
+&\\hbox to 34pt{#}\\vrule width0.8pt%
+&\\hbox to 34pt{#}\\vrule width0.8pt%
+&\\hbox to 34pt{#}\\vrule width0.8pt%
+&\\hbox to 34pt{#}\\vrule width2pt\\cr%
+% -------------------------------------------------------------- %
+\\noalign{\\hrule height2pt}%
+%xetex%\\vrule width2pt\\tanitasi&\\kozepen{82.5pt}{70pt}{Tant\\\'argy}&\\hianyzasFejlec&%
+\\vrule width2pt\\tanitasi&\\kozepen{82.5pt}{70pt}{Tantárgy}&\\hianyzasFejlec&%
+% -------------------------------------------------------------- %
+';
+
+
+$lap = 0;
+$return .= putTargyFejlec($lap, $ADAT);
+
+$return .= '% ------------------------------------------------------------- %
+\\noalign{\\hrule height2pt}%
+';
+
+    for ($i = 0; $i <= 2; $i++) {
+                            // ---------------------------------- Mintanap...
+	$dt = $ADAT['tanitasiNapOk'][$i];
+        if (count($ADAT['orak'][$dt]) > 0) {
+            $return .= '\\datum{'.
+            getTanitasiNapSzama($dt, $ADAT['munkatervId']).'}{'.
+            datumRomai($dt).'}{'.
+            $aHetNapjai[(date('w',strtotime($dt))-1)].'}&\\orarend'.
+            putTeXOrarendParameterek($dt, $ADAT).'&'.
+            putTeXHianyzasAlTablazat($ADAT['hianyzas'][$dt]);
+            for ($j = 0; $j < 6; $j++) {
+		$tankorId = $ADAT['oszlopTankore'][$j];
+		if (is_array($ADAT['oraszam'][$dt][$tankorId])) {
+		    if (is_numeric($ADAT['oraszam'][$dt][$tankorId][0]))
+			$oraszam1 = $ADAT['oraszam'][$dt][$tankorId][0].'.';
+		    else $oraszam1 = '---';
+		    if (is_numeric($ADAT['oraszam'][$dt][$tankorId][ (count($ADAT['oraszam'][$dt][$tankorId])-1) ]))
+			$oraszam2 = $ADAT['oraszam'][$dt][$tankorId][ (count($ADAT['oraszam'][$dt][$tankorId])-1) ].'.';
+		    else $oraszam2='---';
+		} else { $oraszam1 = $oraszam2 = ''; }
+		if (is_array($ADAT['tananyag'][$dt][$tankorId])) $leiras = TeXSpecialChars(implode(' ', $ADAT['tananyag'][$dt][$tankorId]));
+		else $leiras = '';
+                // $dupla_orszam_formátum = \\vbox{\\hsize=20pt\\centerline{134.} \\centerline{135.}}
+                if ($oraszam1 == $oraszam2) {
+                    $return .= '&\\tananyag{'.$leiras.'}{'.$oraszam1.'}';
+                } else {
+                    $return .= '&\\tananyag{'.$leiras.'}{\\vbox{\\hsize=20pt\\centerline{'.$oraszam1.'} \\centerline{'.$oraszam2.'}}}';
+                }
+            }
+            $return .= '\\cr\\noalign{\\hrule height2pt}';
+        } elseif ($ADAT['napok'][$dt][0]['tipus'] == 'speciális tanítási nap') {
+            $return .= '\\datum{'.
+	    getTanitasiNapSzama($dt, $ADAT['munkatervId']).'}{'.
+	    datumRomai($dt).'}{'.
+	    $aHetNapjai[(date('w',strtotime($dt))-1)]
+		.'}&\\multispan{8}{\\vrule width0.8pt\\vbox to 160pt{'
+		.'\\line{}\\centerline{'.$ADAT['napok'][$dt][0]['tipus'].'}\\line{}\\centerline{'.$ADAT['napok'][$dt][0]['megjegyzes'].'}'
+		.'}\\hfil\\vrule width2pt}\\cr\\noalign{\\hrule height2pt}';
+        } else {
+            $return .= '\\datum{}{'.datumRomai($ADAT['tanitasiNapOk'][$i] ).'}{'.$aHetNapjai[(date('w',strtotime($ADAT['tanitasiNapOk'][$i]))-1)]
+		.'}&\\multispan{8}{\\vrule width0.8pt\\vbox to 160pt{}\\hfil\\vrule width2pt}\\cr\\noalign{\\hrule height2pt}';
+        }
+    }
+
+                            // ---------------------------------- Mintanap VÉGE
+$return .= '% ------------------------------------------------------------- %
+\\vrule width2pt\\megjegyzes{Mulasztott órák és}{későn jövés igazolása}%
+&\\multispan8{';
+
+    for ($i = 0; $i <= 2; $i++) {
+
+	// Kell ez?
+        //$return .= '\\vrule width0.8pt\\quad\\vbox to 85pt{\\hsize=140pt\\hbox{'.  $aHetNapjai[(date('w',strtotime($ADAT['tanitasiNapOk'][$i]))-1)]  .':}';
+        //$return .= '\\vfill}\\hfil';
+
+	$dt = $ADAT['tanitasiNapOk'][$i];
+        $pluszHIANYZASOK = array();
+
+            $return .= '\\vrule width0.8pt';
+            $return .= '\\vbox to 85pt{\\baselineskip=10pt\\leftskip=3pt\\hsize=159pt';
+                $return .= '\\par{\\noindent '.$aHetNapjai[(date('w',strtotime($ADAT['tanitasiNapOk'][$i]))-1)].':}';
+
+                if (count($ADAT['hianyzas'][$dt]) > 16) {
+		    $napiHianyzas = $ADAT['hianyzas'][$dt];
+		    $h = 0;
+		    foreach ($napiHianyzas as $diakId => $H) {
+			if ($h > 15) {
+                    	    $return .= '\\par{'.$H['diakNev'];
+                        if (intval($H['összesen']) != 0) {
+                            $return .= ' '.intval($H['összesen'])
+                                .'('.intval($H['igazolt']).')';
+                            // Hiányzó hiányzásai, késései felsorolás
+                            for ($k = 1; $k <= 8; $k++) { // itt k=8 a maximális óraszám!
+                                if (isset($H['ora'][$k])) {
+                                    $pluszHIANYZASOK[ $H['ora'][$k] ] .= $k.'.';
+                                }
+                            }
+                            while (list($key,$val) = each($pluszHIANYZASOK)) {
+                                $return .= ' '.$key.':'.$val;
+                            }
+                        } else { // nem hiányzott, csak késett
+                            $return .= ' késett:';
+                            for ($k = 1; $k <= 8; $k++) { // itt k=8 a maximális óraszám!
+                                if (isset($H['ora'][$k])) {
+                                    $return .= ' '.$k.'.';
+                                }
+                            }
+                        }
+                        $return .= '}'; // ez a vége a \par{} - nak.
+			}
+			$h++;
+                    }
+                }
+            $return .= '\\vfill}';
+    }
+
+
+$return .='\\vrule width2pt%
+}\\cr% multispan
+\\noalign{\\hrule height2pt}%
+}\\hoffset=-1cm
+';
+	return $return;
+
+
+    } // end of putTeXElsoOldal()
+    /* ------------------------------------------------------------------------------------- */
+
+   /* ------------------------------------------------------------------------------------- */
+    function putTeXPage2($ADAT) {
+
+        global $aHetNapjai;
+
+	$lap = 1; 
+	$return .= putTargyFejlec($lap, $ADAT);
+	$return .= putOraleiras($lap, $ADAT);
+
+        for ($i = 0; $i < 3; $i++) {
+	    $dt = $ADAT['tanitasiNapOk'][$i];
+            $return .= '\\vrule width0.8pt';
+            $return .= '\\vbox to 85pt{\\leftskip=3pt\\hsize=120pt';
+                $return .= '\\par{\\noindent '.$aHetNapjai[(date('w',strtotime($dt))-1)].':}\\parindent=15pt';
+                for ($k = 0; $k < count($ADAT['helyettesites'][$dt]); $k++) 
+		    $return .= '\\item{'.$ADAT['helyettesites'][$dt][$k]['ora'].'.}{'
+			.$ADAT['helyettesites'][$dt][$k]['tipus'].' \\dolt '
+			.$ADAT['tanarok'][ $ADAT['helyettesites'][$dt][$k]['ki'] ]['tanarNev'].'}';
+                for ($k = 0; $k < count($ADAT['oralatogatas'][$dt]); $k++) {
+		    $return .= '\\item{'.$ADAT['oralatogatas'][$dt][$k]['ora'].'.}{'
+			.'óralátogatás \\dolt ';
+		    $tNev = array();
+		    foreach ($ADAT['oralatogatas'][$dt][$k]['tanarIds'] as $tanarId) 
+			$tNev[] = $ADAT['tanarok'][$tanarId]['tanarNev'];
+		    $return .= implode(', ', $tNev).'}';
+		}
+            $return .= '\\vfill}';
+        }
+
+        $return .= '\\vrule width0.8pt';
+        $return .= '\\vbox to 85pt{\\parindent=0pt\\leftskip=3pt\\hsize=120pt';
+        $return .= '\\par{Osztályfőnöki óra:}';
+	$oraszam1 = $oraszam2 = '';
+        for ($i = 0; $i < 3; $i++) {
+	    $dt = $ADAT['tanitasiNapOk'][$i];
+            if ($ADAT['tananyag'][$dt][ $ADAT['ofoTankorId'] ] != '') $return .= '\\par{'.
+		    TeXSpecialChars(implode('; ', array_unique($ADAT['tananyag'][$dt][ $ADAT['ofoTankorId'] ]))).'}';
+
+	    // óraszám
+	    if (is_array($ADAT['oraszam'][$dt][ $ADAT['ofoTankorId'] ])) {
+		if (is_numeric($ADAT['oraszam'][$dt][ $ADAT['ofoTankorId'] ][0]))
+		    $oraszam1 = $ADAT['oraszam'][$dt][ $ADAT['ofoTankorId'] ][0].'.'; 
+		else $oraszam1 = '---';
+		if (is_numeric($ADAT['oraszam'][$dt][ $ADAT['ofoTankorId'] ][ (count($ADAT['oraszam'][$dt][ $ADAT['ofoTankorId'] ])-1) ])) 
+		    $oraszam2 = $ADAT['oraszam'][$dt][ $ADAT['ofoTankorId'] ][ (count($ADAT['oraszam'][$dt][ $ADAT['ofoTankorId'] ])-1) ].'.';
+		else $oraszam2 = '---';
+	    }
+
+        }
+        $return .= '\\vfill';
+        $return .= '\\hbox to 138pt{\\hfill\\lower3pt\\oraszam{';
+
+        if ($oraszam1 == $oraszam2) $return .= $oraszam1;
+        else $return .= '\\vbox{\\hsize=20pt\\centerline{'.$oraszam1.'} \\centerline{'.$oraszam2.'}}';
+
+        $return .= '}}';
+        $return .= '}%end of vbox'."\n";
+        $return .= '\\vrule width2pt';
+
+	$return .= '}\\cr% multispan
+\\noalign{\\hrule height2pt}%
+}\\hoffset=-0.4cm';
+
+	return $return;
+    }
+    /* ------------------------------------------------------------------------------------- */
+
+
+   /* ------------------------------------------------------------------------------------- */
+    function putTeXPage34($ADAT) {
+
+        global $aHetNapjai;
+
+	$lap = 2;
+	$return .= putTargyFejlec($lap, $ADAT);
+	$return .= putOraleiras($lap, $ADAT);
+	for ($i = 0; $i < 3; $i++) {
+	    $dt = $ADAT['tanitasiNapOk'][$i];
+            $return .= '\\vrule width0.8pt';
+            $return .= '\\vbox to 85pt{\\leftskip=3pt\\hsize=120pt';
+                $return .= '\\par{\\noindent '.$aHetNapjai[(date('w',strtotime($dt))-1)].':}\\parindent=15pt';
+            $return .= '\\vfill}';
+        }
+
+        $return .= '\\vrule width0.8pt';
+        $return .= '\\vbox to 85pt{\\parindent=0pt\\leftskip=3pt\\hsize=120pt';
+        $return .= '\\vfill';
+        $return .= '\\hbox to 138pt{\\hfill';
+        $return .= '}';
+        $return .= '}%end of vbox'."\n";
+        $return .= '\\vrule width2pt';
+
+	$return .= '}\\cr% multispan
+\\noalign{\\hrule height2pt}%
+}\\hoffset=-1cm';
+
+	$return .= putTeXLapdobas();
+
+	$lap = 3;
+	$return .= putTargyFejlec($lap, $ADAT);
+	$return .= putOraleiras($lap, $ADAT);
+        for ($i = 0; $i < 3; $i++) {
+	    $dt = $ADAT['tanitasiNapOk'][$i];
+            $return .= '\\vrule width0.8pt';
+            $return .= '\\vbox to 85pt{\\leftskip=3pt\\hsize=120pt';
+                $return .= '\\par{\\noindent '.$aHetNapjai[(date('w',strtotime($dt))-1)].':}\\parindent=15pt';
+            $return .= '\\vfill}';
+        }
+
+        $return .= '\\vrule width0.8pt';
+        $return .= '\\vbox to 85pt{\\parindent=0pt\\leftskip=3pt\\hsize=120pt';
+        $return .= '\\vfill';
+        $return .= '\\hbox to 138pt{\\hfill';
+        $return .= '}';
+        $return .= '}%end of vbox'."\n";
+        $return .= '\\vrule width2pt';
+
+	$return .= '}\\cr% multispan
+\\noalign{\\hrule height2pt}%
+}\\hoffset=-0.4cm';
+
+
+	return $return;
+    }
+    /* ------------------------------------------------------------------------------------- */
+
+
+
+
+
+
+// ======= Osztályozó ======= //
+
+function putTeXOsztalyozoOldalbeallitas() {
+
+    return '%% Oldalbeállítás %%
+\pretolerance=10000
+\tolerance=100
+\magnification=960
+\vsize=27.7cm
+\hsize=19cm
+\voffset=-1.54cm
+\hoffset=-1.27cm';
+
+}
+
+function putTeXOsztalyozoFejlec($sorszam, $diakNev, $szuletesiHely, $szuletesiIdo) {
+
+    global $Honapok;
+
+    $ev = substr($szuletesiIdo, 0, 4);
+    $ho = kisbetus($Honapok[ intval(substr($szuletesiIdo, 5, 2))-1 ]);
+    $nap = intval(substr($szuletesiIdo, -2));
+    if ($szuletesiHely == '') $szuletesiHely = 'n.a.';
+
+    $return .= '%--Osztályozó napló egy diák fejléce--'.$sorszam.'
+\ifodd\pageno\hoffset=-0,64cm\else\hoffset=-1,64cm\fi
+\hbox to\hsize{\nagy '.$sorszam.'. '.$diakNev.'\hfil '.$szuletesiHely.", $ev. $ho $nap.".'}%
+\medskip';
+
+    return $return;
+
+}
+
+function putTeXOsztalyozoAllandoFejlec($Ho) {
+    global $hoRomai;
+    foreach ($Ho as $k=>$v) {
+	$rHo[$k] = $hoRomai[$v].'.';
+    }
+
+
+    $return .= '
+\halign{';
+
+    if (__OSZTALYOZONAPLO_JEGYEK_FELEVENTE === true) {
+	$return .= '\hbox to 194.8pt{\strut\hfil #\hfil}\vrule width1.2pt&';
+	$return .= '\hbox to 194.8pt{\strut\hfil #\hfil}\vrule width1.2pt\cr%'."\n";
+	$return .= 'I.&II.\cr%'."\n";
+	$txt = 'félévben nyert érdemjegy';
+	$return .= '\noalign{\hrule height0.8pt}%
+\multispan{2}{\vbox to 25pt{\hsize=390.8pt\vfil\hbox to 390.8pt{\hfil '.$txt.'\hfil}\vfil}\vrule width1.2pt}\cr%
+}%
+';
+    } else {
+	for($i=1; $i<=10; $i++) $return .= '\hbox to 38pt{\strut\hfil #\hfil}\vrule width1.2pt&';
+	$return = substr($return,0,-1);
+	$return .= '\cr% 10 darab'."\n";
+	// Ha a hónapokat írnánk ki?
+	$return .= implode('&', $rHo).'\cr%'."\n";
+	$txt = 'hónapban nyert érdemjegy';
+// Vagy tíz "témakört"..
+    //1.&2.&3.&4.&5.&6.&7.&8.&9.&10.\cr%
+//    $return .= '1.';
+//    for ($i = 1; $i < count($Ho); $i++) $return .= '&'.($i+1).'.';
+//    $return .= '\cr%'."\n";
+//    $txt = 'szakaszból (témakörből) nyert érdemjegy';
+    $return .= '\noalign{\hrule height0.8pt}%
+\multispan{10}{\vbox to 25pt{\hsize=390.8pt\vfil\hbox to 390.8pt{\hfil '.$txt.'\hfil}\vfil}\vrule width1.2pt}\cr%
+}%
+';
+
+    }
+
+    return $return;
+
+}
+
+function putTeXOsztalyozoJegyek($diakId, $ADAT, $start = 0) {
+/*
+    $sorszam - hány tárgy sora lett kiírva
+    $i - Hányadik tárgynál tartunk az osztály tárgyai között
+    $start - honnan indul a $i
+*/
+    global $KOVETELMENY, $_TANEV;
+
+// csúnya megoldás, de nincs jobb ötletem:
+    global $iGlobal;
+
+    $return .= '%%%% Osztalyozó jegyek %%%%'."\n";
+//    $return .= '\halign{\vrule width2pt\hbox to 85pt{\vbox to 30pt{\hsize=85pt\vfil{\ #}\vfil}\hfill}\vrule width1.2pt&'; // Tárgy oszlopa - balra igazított
+    $return .= '\halign{\vrule width2pt\hbox to 85pt{\hglue 5pt plus 0pt minus 0pt \vbox to 30pt{\hsize=80pt\vfil{#}\vfil}\hfill}\vrule width1.2pt&'; // Tárgy oszlopa - balra igazított
+
+    if (__OSZTALYOZONAPLO_JEGYEK_FELEVENTE === true) {
+	for ($i = 0; $i < 2; $i++) { // A hónapok
+    	    $return .= '\hbox to 194.8pt{\hfil\vbox to 30pt{\hsize=186.8pt{\baselineskip=9pt\vfil#\vfil}}\hfil}\vrule width1.2pt&'; // középre igazított
+	}
+    } else {
+	for ($i = 0; $i < count($ADAT['honapok']); $i++) { // A hónapok
+    	    $return .= '\hbox to 38pt{\hfil\vbox to 30pt{\hsize=30pt{\baselineskip=9pt\vfil#\vfil}}\hfil}\vrule width1.2pt&'; // középre igazított
+	}
+    }
+    $return .= '\hbox to 28pt{\vbox to 30pt{\hsize=28pt\vfil\hfil{\nagyss #}\hfil\vfil}}\vrule&%
+\hbox to 28pt{\vbox to 30pt{\hsize=28pt\vfil\hfil{\nagyss #}\hfil\vfil}}\vrule width2pt\cr%
+%%%% Formátum sor vége %%%%
+\noalign{\hrule height2pt}%
+%%%% Tárgy fejlécsora %%%%
+\omit{\vrule width2pt\hbox to 85pt{\vbox to 25pt{\hsize=85pt\vfil{\hfil Tantárgy\vfil}\vfil}\hfill}\vrule width1.2pt}&%
+%%%% Hónapok fejlécsora %%%%'."\n";
+if (__OSZTALYOZONAPLO_JEGYEK_FELEVENTE === true) $return .= '\multispan{2}{\lower3pt\vbox{'.putTeXOsztalyozoAllandoFejlec($ADAT['honapok']).'}}&%'."\n";
+else $return .= '\multispan{10}{\lower3pt\vbox{'.putTeXOsztalyozoAllandoFejlec($ADAT['honapok']).'}}&%'."\n";
+$return .= '%%%% Zárójegy fejlécsora %%%%
+\multispan2{\vbox{%
+\halign{\hbox to 28pt{\space\lower3pt\vbox to 25pt{\hsize=22pt\vfil\baselineskip=0pt #\vfil}\space}\vrule&%
+\hbox to 28pt{\space\lower3pt\vbox to 25pt{\hsize=22pt\vfil\baselineskip=0pt #\vfil}\space}%
+\cr%
+\multispan2{\strut\hfil Osztályzata\hfil}\cr%
+\noalign{\hrule height 0.8pt}%
+félév- kor&év végén\cr%
+}%
+}\vrule width2pt}\cr%
+%%%%%%%% Fejléc vége %%%%%%%%
+\noalign{\hrule height1.2pt}%
+';
+
+## =====================================================
+# Tárgynév formálása, és a 10 hónapban külön a rublikák
+    $sorszam = 0;
+    for ($i = $start; ($i < count($ADAT['targyak']) && $sorszam < 20); $i++) {
+
+	$targyId = $ADAT['targyak'][$i]['targyId'];
+	$targyNev = $ADAT['targyak'][$i]['targyNev'];
+	// A hosszabb nevek esetén az első szóköz nem nyújtható - de ezt most az elválaszott alak kiiktatja 
+	// if ($pos = strpos($targyNev, ' ')) $targyNev = substr($targyNev, 0, $pos).'\hglue 1ex plus 0pt minus 0pt '.substr($targyNev, $pos+1);
+        if (
+            (
+		//---------IDE ÍRJ
+		//is_array($ADAT['jegyek'][$diakId][$targyId])
+		in_array($targyId,$ADAT['diakTargy'][$diakId])
+		|| is_array($ADAT['zaroJegy'][1][$diakId][$targyId])
+		|| is_array($ADAT['zaroJegy'][2][$diakId][$targyId])
+	    )
+	    && ($targyId != $ADAT['targyak']['magatartasId'])
+	    && ($targyId != $ADAT['targyak']['szorgalomId'])
+            && ($targyNev != 'osztályfőnöki')
+            && ($targyNev != 'magatartás')
+            && ($targyNev != 'szorgalom')
+        ) {
+            $sorszam++;
+	    // $return .= $targyNev;
+	    $return .= $ADAT['targyak'][$i]['elvalasztott'];
+            $return .= '&';
+
+	    if (__OSZTALYOZONAPLO_JEGYEK_FELEVENTE !== true) {
+	      for ($k = 0; $k < count($ADAT['honapok']); $k++) {
+            	$ho = $ADAT['honapok'][$k];
+            	for($j = 0; $j < count($ADAT['jegyek'][$diakId][$targyId][$ho]); $j++) {
+		    $_jegy = $ADAT['jegyek'][$diakId][$targyId][$ho][$j]['jegy'];
+		    $_jegyTipus = $ADAT['jegyek'][$diakId][$targyId][$ho][$j]['jegyTipus'];
+		    $return .= TeXSpecialChars($KOVETELMENY[$_jegyTipus][$_jegy]['rovid']).' ';
+            	}
+		$return .= '&';
+    	      }
+	    } else { /* Ha félévenként! */
+              for ($felev=1; $felev<=2; $felev++) {
+		for ($j=0; $j0) $return .= ' ';
+        	    if ($zaroJegyek[$zji]['jegy'] != 0) $return .= TeXSpecialChars(
+			$KOVETELMENY[ $zaroJegyek[$zji]['jegyTipus'] ][ $zaroJegyek[$zji]['jegy'] ]['rovid']
+		    );
+        	    $return .= TeXSpecialChars(nagybetus(substr(
+			$zaroJegyek[$zji]['megjegyzes'],0,1
+		    )));
+
+		}
+	    } // ha még tagja félévkor az osztálynak
+
+            $return .= '&';
+
+	    if (
+		strtotime($ADAT['diakAdat'][$diakId]['osztalyDiak'][0]['kiDt']) == ''
+		|| strtotime($_TANEV['szemeszter'][2]['zarasDt']) <= strtotime($ADAT['diakAdat'][$diakId]['osztalyDiak'][0]['kiDt'])
+	    ) {
+		$zaroJegyek=$ADAT['zaroJegy'][2][$diakId][$targyId];
+		for ($zji=0; $zji0) $return .= ' ';
+        	    if ($zaroJegyek[$zji]['jegy'] != 0) $return .= TeXSpecialChars(
+			$KOVETELMENY[ $zaroJegyek[$zji]['jegyTipus'] ][ $zaroJegyek[$zji]['jegy'] ]['rovid']
+		    );
+        	    $return .= TeXSpecialChars(nagybetus(substr(
+			$zaroJegyek[$zji]['megjegyzes'],0,1
+		    )));
+		}
+	    } // ha még tagja év végén az osztálynak
+            $return .= '\cr%
+\noalign{\hrule height0.8pt}%
+';
+        }
+    }
+
+
+    for($j = $sorszam; $j < 20; $j++) {
+	if (__OSZTALYOZONAPLO_JEGYEK_FELEVENTE === true) $return .= '&&&&\cr';
+        else $return .= str_repeat('&', 2+count($ADAT['honapok'])).'\cr';
+// 	$return .= '0&1&2&3&4&5&6&7&8&9&10&11&12\cr';
+        $return .= '\noalign{\hrule height0.8pt}';
+    }
+
+    $return .= '}';
+
+    $iGlobal = $i;
+
+    return $return;
+}
+
+function putTeXOsztalyozoAdatok($diakId, $ADAT) {
+
+    global $KOVETELMENY;
+
+    $return .= '\halign{\vrule width2.0pt\hbox to 398.6pt{\vbox to 80pt{\hsize=398.6pt#}}\vrule width1.2pt&%
+\hbox to 135.2pt{#}\vrule width2pt\cr%
+\noalign{\hrule height1.2pt}%
+\quad\vbox{\vbox to 8pt{}%
+\settabs\+ Oktatási azonosító\quad&\quad Itt egy nagyon hosszzú név \quad&\quad Törvényes képviselő:\ &\quad adatsor3 \cr
+\+ Oktatási azonosító:&'.
+$ADAT['diakAdat'][$diakId]['oId']
+.'&Törzslapszám:&'.
+TeXSpecialChars($ADAT['diakAdat'][$diakId]['torzslapszam'])
+#.'&Törvényes képviselő:&'.
+#str_replace(',',', ',$ADAT['diakAdat'][$diakId]['torvenyesKepviselo'])
+.'\cr%
+\+ Anyja neve:&'.
+# Ha van leánykori neve, akkor azt írjuk ki, különben a viselt nevet
+(($ADAT['szulok'][ $ADAT['diakAdat'][$diakId]['anyaId'] ]['szuleteskoriCsaladinev']!='')?trim(
+    $ADAT['szulok'][ $ADAT['diakAdat'][$diakId]['anyaId'] ]['szuleteskoriCsaladinev'].' '.
+    $ADAT['szulok'][ $ADAT['diakAdat'][$diakId]['anyaId'] ]['szuleteskoriUtonev']
+):$ADAT['szulok'][ $ADAT['diakAdat'][$diakId]['anyaId'] ]['szuloNev'])
+.'&TAJ:&'.
+implode('-', str_split($ADAT['diakAdat'][$diakId]['tajSzam'],3))
+.'\cr%';
+    $return .= '
+\+ '
+.'Apa neve:&'.
+$ADAT['szulok'][ $ADAT['diakAdat'][$diakId]['apaId'] ]['szuloNev']
+.'&Telefonszám:&'.
+implode(
+    ', ',
+  array_unique( 
+    array_diff(
+	array($ADAT['szulok'][ $ADAT['diakAdat'][$diakId]['anyaId'] ]['telefon'],$ADAT['szulok'][ $ADAT['diakAdat'][$diakId]['apaId'] ]['telefon']),
+	array(null,'')
+    )
+  )
+)
+.'\cr%';
+    $return .= '
+\+ Gondviselő neve:&'.
+$ADAT['szulok'][ $ADAT['diakAdat'][$diakId]['gondviseloId'] ]['szuloNev']
+.'&Törvényes képviselő:&'.
+str_replace(',',', ',$ADAT['diakAdat'][$diakId]['torvenyesKepviselo'])
+.'\cr%';
+$return .= '
+\+ Tanuló lakcíme:&'.TeXSpecialChars($ADAT['diakAdat'][$diakId]['lakhelyIrsz'].' '
+    .$ADAT['diakAdat'][$diakId]['lakhelyHelyseg'].', '
+    .$ADAT['diakAdat'][$diakId]['lakhelyKozteruletNev'].' '
+    .$ADAT['diakAdat'][$diakId]['lakhelyKozteruletJelleg'].' '
+    .$ADAT['diakAdat'][$diakId]['lakhelyHazszam'].' '
+    .$ADAT['diakAdat'][$diakId]['lakhelyEmelet'].' '
+    .$ADAT['diakAdat'][$diakId]['lakhelyAjto'].' ')
+    .'\cr%';
+if ($ADAT['diakAdat'][$diakId]['gondozasiSzam'] != '' || $ADAT['diakAdat'][$diakId]['fogyatekossag'] != '') {
+    $return .= '
+\+ Felmentés:&'.
+str_replace(',',', ',$ADAT['diakAdat'][$diakId]['fogyatekossag']).' ('.TeXSpecialChars($ADAT['diakAdat'][$diakId]['gondozasiSzam']).')'
+.'\cr%';
+}
+
+    $return .= '
+}&%---------------------------------
+\lower3pt\vbox{%
+\halign{\hbox to 77.6pt{\vbox to 19.3pt{\hsize=77.6pt\vfil\space#\vfil}}&%
+\vrule\hbox to 28pt{\vbox to 19.3pt{\hsize=28pt\vfil{\nagyss\hfil#\hfil}\vfil}}\vrule&%
+\hbox to 28pt{\vbox to 19.3pt{\hsize=28pt\vfil{\nagyss\hfil#\hfil}\vfil}}\cr%
+\quad Magatartás&';
+$return .= $KOVETELMENY[ $ADAT['zaroJegy'][1][$diakId][ $ADAT['targyak']['magatartasId'] ][0]['jegyTipus'] 
+		][ 	 $ADAT['zaroJegy'][1][$diakId][ $ADAT['targyak']['magatartasId'] ][0]['jegy'] ]['rovid'];
+$return .= '&';
+$return .= $KOVETELMENY[ $ADAT['zaroJegy'][2][$diakId][ $ADAT['targyak']['magatartasId'] ][0]['jegyTipus'] 
+	        ][       $ADAT['zaroJegy'][2][$diakId][ $ADAT['targyak']['magatartasId'] ][0]['jegy'] ]['rovid'];
+$return .= '\cr%
+\noalign{\hrule}%
+\quad Szorgalom&';
+$return .= $KOVETELMENY[ $ADAT['zaroJegy'][1][$diakId][ $ADAT['targyak']['szorgalomId'] ][0]['jegyTipus'] 
+	        ][       $ADAT['zaroJegy'][1][$diakId][ $ADAT['targyak']['szorgalomId'] ][0]['jegy'] ]['rovid'];
+$return .= '&';
+$return .= $KOVETELMENY[ $ADAT['zaroJegy'][2][$diakId][ $ADAT['targyak']['szorgalomId'] ][0]['jegyTipus'] 
+	        ][       $ADAT['zaroJegy'][2][$diakId][ $ADAT['targyak']['szorgalomId'] ][0]['jegy'] ]['rovid'];
+$return .= '\cr%
+\noalign{\hrule height1.2pt}%
+\omit\vbox to 42.4pt{\hsize=77.6pt{%======================
+\halign{\hbox to 30.4pt{\space\vbox to 20.8pt{\hsize=28.4pt\vfil#\vfil}}\vrule&%
+\hbox to 46.4pt{\hbox to 2pt{}\vbox to 20.8pt{\hsize=40.4pt#}}\cr%
+igazolt&\vfil mulasztott\cr%
+\noalign{\hrule width 30.4pt}%
+\baselineskip9pt igazo\-latlan&órák száma\cr%
+}%
+%===========================
+}}&%~~~~~~~~~~~~~~~~
+\omit\vrule\vbox{\halign{\vbox to 20.8pt{\hsize=28pt\vfil\hfil{\nagyss #}\hfil\vfil}\cr%
+'.intval($ADAT['hianyzas'][1][$diakId]['igazolt']).'\cr%
+\noalign{\hrule}%
+'.intval($ADAT['hianyzas'][1][$diakId]['igazolatlan']+floor($ADAT['hianyzas'][1][$diakId]['kesesPercOsszeg']/45)).'\cr%
+}}\vrule%
+%~~~~~~~~~~~~~~~~~~~
+&%~~~~~~~~~~~~~~~~~~
+\omit\vbox{\halign{\vbox to 20.8pt{\hsize=28pt\vfil\hfil{\nagyss #}\hfil\vfil}\cr%
+'.intval($ADAT['hianyzas'][2][$diakId]['igazolt']).'\cr%
+\noalign{\hrule}%
+'.intval($ADAT['hianyzas'][2][$diakId]['igazolatlan']+floor($ADAT['hianyzas'][2][$diakId]['kesesPercOsszeg']/45)).'\cr%
+}}%
+%~~~~~~~~~~~~~~~~~~~
+\cr%
+}%
+}%
+%-----------------------------------
+\cr%
+\noalign{\hrule height2pt}%
+}';
+    return $return;
+
+}
+
+function putTeXTanarLista($ADAT, $lapDobasok) {
+
+    $TANAROK = $ADAT['tanarok'];
+
+    $return = '';
+    $dbTanar = count($TANAROK);
+    $maxTanarperlap = 24;
+    $maxLap = ceil($dbTanar / $maxTanarperlap);
+
+    if ($lapDobasok%2==1) $return .= putTexUresLap();
+
+    for ($lap=0; $lap<$maxLap; $lap++) {
+	if ($maxLap>1) $extStr = ' '.$maxLap.'/'.($lap+1);
+
+	$return .= '\vbox to 32pt{}\centerline{\nagy Aláíróív'.$extStr.'}%'."\n";  //\bigskip
+	$return .= '\vfill'."\n";
+	$return .= '\centerline{Ezt a haladási naplót '.$ADAT['tanitasiNapokSzama'].' tanítási nappal lezártam.}'."\n";
+	$return .= '\centerline{Ezt az osztályozó naplót '.count($ADAT['diakIds']);
+	$return .= ' beírt tanulóval lezártam.}'."\n";
+
+	$return .= '\vfill'."\n";
+	for ($i = 0 + $lap*($maxTanarperlap); $i < $dbTanar && ($maxLap==1 || ($maxLap>=2 && $i<($lap+1)*$maxTanarperlap)); $i=$i+2) {
+    	    $return .= '\line{\hfill'.
+                        '\vbox to 45pt{\hsize=150pt\vfil'.
+                                '\hbox to 150pt{\dotfill}'.
+                                '\hbox to 150pt{\hfil '.$TANAROK[$i].'\hfil}'.
+                        '}';
+    	    if ($TANAROK[$i+1] != '' && $i+1<($lap+1)*$maxTanarperlap) {
+        	$return .=  '\hbox to 80pt{}'.
+                        '\vbox to 45pt{\hsize=150pt\vfil'.
+                                '\hbox to 150pt{\dotfill}'.
+                                '\hbox to 150pt{\hfil '.$TANAROK[$i+1].'\hfil}'.
+                        '}';
+    	    }
+    	    $return .= '\hfill}';
+	}
+	$return .= '\vfill'."\n";
+
+	$return .= putTeXUresLap();
+
+    }
+
+    return $return;
+}
+
+/* Páratlan mayTanarperlap-pal nem jó!!
+
+function putTeXTanarLista($ADAT, $lapDobasok) {
+
+// Gutbrod András
+
+  $TANAROK = $ADAT['tanarok'];
+
+// teszteléshez...
+$TANAROK = array(
+    'Tanár 01', 'Tanár 02', 'Tanár 03', 'Tanár 04', 'Tanár 05', 'Tanár 06', 'Tanár 07', 'Tanár 08', 'Tanár 09', 'Tanár 10',
+    'Tanár 11', 'Tanár 12', 'Tanár 13', 'Tanár 14', 'Tanár 15', 'Tanár 16', 'Tanár 17', 'Tanár 18', 'Tanár 19', 'Tanár 20',
+    'Tanár 21', 'Tanár 22', 'Tanár 23', 'Tanár 24', 'Tanár 25', 'Tanár 26', 'Tanár 27', 'Tanár 28', 'Tanár 29', 'Tanár 30',
+    'Tanár 31', 'Tanár 32', 'Tanár 33', 'Tanár 34', 'Tanár 35', 'Tanár 36', 'Tanár 37', 'Tanár 38', 'Tanár 39', 'Tanár 40',
+    'Tanár 41', 'Tanár 42', 'Tanár 43', 'Tanár 44', 'Tanár 45', 'Tanár 46', 'Tanár 47', 'Tanár 48', 'Tanár 49', 'Tanár 50', 'Tanár 51'
+);
+
+
+    $return = '';
+    $dbTanar = count($TANAROK);
+    $maxTanarperlap = 23;
+    $maxLap = ceil($dbTanar / $maxTanarperlap);
+    $lap = 1;
+
+    if ($lapDobasok%2==1) $return .= putTexUresLap();
+
+  for ($i=0; $i<$dbTanar; $i++) {
+
+    // lap teteje?
+    if ($i % $maxTanarperlap == 0) {
+
+       if ($maxLap>1) $extStr = ' '.$maxLap.'/'.($lap);
+
+       $return .= '\vbox to 32pt{}\centerline{\nagy Aláíróív'.$extStr.'}%'."\n";
+       $return .= '\vfill'."\n";
+       $return .= '\centerline{Ezt a haladási naplót '.$ADAT['tanitasiNapokSzama'].' tanítási nappal lezártam.}'."\n";
+       $return .= '\centerline{Ezt az osztályozó naplót '.count($ADAT['diakIds']);
+       $return .= ' beírt tanulóval lezártam.}'."\n";
+       $return .= '\vfill'."\n";
+
+    }
+
+    if ($i % 2 == 0) {
+
+        $return .= '\line{\hfill'.
+                        '\vbox to 45pt{\hsize=150pt\vfil'.
+                                '\hbox to 150pt{\dotfill}'.
+                                '\hbox to 150pt{\hfil '.$TANAROK[$i].'\hfil}'.
+                        '}';
+
+        // utolsó?
+        if (($i+1) == $dbTanar) {
+           $return .= '\hfill}';
+        }
+
+    } else {
+
+        $return .=  '\hbox to 80pt{}'.
+                        '\vbox to 45pt{\hsize=150pt\vfil'.
+                                '\hbox to 150pt{\dotfill}'.
+                                '\hbox to 150pt{\hfil '.$TANAROK[$i].'\hfil}'.
+                        '}';
+        $return .= '\hfill}';
+
+    }
+
+    // lap alja?
+    if ((($i+1) % $maxTanarperlap) == 0) {
+
+       $return .= '\vfill'."\n";
+       $return .= putTeXUresLap();
+       $lap = $lap+1;
+
+    } else {
+
+       // Nem lap alja és utolsó.
+       if (($i+1) == $dbTanar) {
+
+          $return .= '\vfill'."\n";
+          $return .= putTeXUresLap();
+
+       }
+    }
+  }
+
+  return $return;
+
+}
+
+*/
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/torzslap.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/torzslap.php
new file mode 100644
index 00000000..4ae32d4b
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/torzslap.php
@@ -0,0 +1,199 @@
+ $ADAT['targySorrendNev'],'osztalyId' => $ADAT['osztalyId'])); $Targyak = array();
+	for ($i = 0; $i < count($_Targyak); $i++) {
+	    $Targyak[ $_Targyak[$i]['targyId'] ] = $_Targyak[$i];
+	    $Targyak[ $_Targyak[$i]['targyId'] ]['targyNev'] = nagybetus(mb_substr($_Targyak[$i]['targyNev'],0,1)).mb_substr($_Targyak[$i]['targyNev'],1);
+	}
+	unset($_Targyak);
+
+	list($ev,$ho,$nap) = explode('-', $ADAT['dt']);
+	list($evf,$oszt) = explode('.', $ADAT['osztalyAdat']['osztalyJel']);
+	
+	$DATA = array(
+	    'file' => $ADAT['file'],
+	    'base' => array('nyomtatasDt' => date('Y.m.d'), 'datumEv' => $ev, 'datumHonap' => $ho, 'datumNap' => $nap, 'hoNev' => kisbetus($Honapok[$ho-1]),
+		'intezmenyNev' => $Intezmeny['nev'], 'intezmenyOMKod' => $Intezmeny['OMKod'], 'intezmenyCimIrsz' => $Intezmeny['cimIrsz'], 
+		'intezmenyCimHelyseg' => $Intezmeny['cimHelyseg'], 'intezmenyCimKozteruletNev' => $Intezmeny['cimKozteruletNev'],
+		'intezmenyCimKozteruletJelleg' => $Intezmeny['cimKozteruletJelleg'], 'intezmenyCimHazszam' => $Intezmeny['cimHazszam'],
+		'intezmenyTelefon' => $Intezmeny['telefon'], 'intezmenyHonlap' => $Intezmeny['honlap'],
+		'intezmenyFax' => $Intezmeny['fax'], 'intezmenyEmail' => $Intezmeny['email'],
+		'tanevJele' => substr($ADAT['szemeszter']['tanevAdat']['kezdesDt'],0,4).'/'.substr($ADAT['szemeszter']['tanevAdat']['zarasDt'],2,2),
+		'felevi' => ($ADAT['szemeszter']['szemeszter'] == 1),
+		'diak' => $ADAT['diakIds'], 'osztaly' => "$evf. ".nagybetus($oszt),
+		'szovegesErtekeles' => false,
+	    ),
+	    'diak' => $ADAT['diakAdat'],
+	    'targy' => $Targyak,
+	    'szempont' => array(),
+	    'minosites' => array(),
+	);
+
+	unset($Intezmeny);
+	// Az osztályzatokhoz tartozó tárgyak (lesznek szöveges értékeléshez tartozók is....)
+	for ($i = 0; $i < count ($ADAT['targyak']); $i++) {
+            $DATA['osztalyzatTargy'][ $ADAT['targyak'][$i]['targyId'] ] = $ADAT['targyak'][$i];
+        }
+        if (is_array($ADAT['jegyek']) && count($ADAT['jegyek']) > 0) foreach ($ADAT['jegyek'] as $diakId => $dJegyek) {
+            if (is_array($dJegyek) && count($dJegyek) > 0) { // Ha vanak egyáltalán jegyei...
+                foreach ($DATA['osztalyzatTargy'] as $targyId => $tAdat) { // A helyes sorrend miatt kell ezen végigmenni
+                    if (is_array($dJegyek[$targyId])) { // van az adott tárgyból jegye
+			$targyNev = kisbetus($Targyak[$targyId]['targyNev']);
+                        $tJegyek = $dJegyek[$targyId];
+                        // Az utolsó jegyet írjuk csak ki
+                        $jegy = $tJegyek[ count($tJegyek)-1 ];
+                        if (in_array($targyId, $ADAT['szorgalomIds'])) {
+                            $DATA['diak'][$diakId]['szorgalom'] = $KOVETELMENY['szorgalom'][ $jegy['jegy'] ]['hivatalos'];
+                            $DATA['diak'][$diakId]['szorgMegjJel'] = nagybetus($jegy['megjegyzes'][0]);
+                        } elseif (in_array($targyId, $ADAT['magatartasIds'])) {
+                            $DATA['diak'][$diakId]['magatartas'] = $KOVETELMENY['magatartás'][ $jegy['jegy'] ]['hivatalos'];
+                            $DATA['diak'][$diakId]['magMegjJel'] = nagybetus($jegy['megjegyzes'][0]);
+                        } else {
+                            $DATA['diak'][$diakId]['osztalyzatTargy'][$targyId] = $jegy;
+                            $DATA['diak'][$diakId]['osztalyzatTargy'][$targyId]['jTipus'] = $jegy['jegyTipus'];
+                            $DATA['diak'][$diakId]['osztalyzatTargy'][$targyId]['mJel'] = nagybetus($jegy['megjegyzes'][0]);
+                            $DATA['diak'][$diakId]['osztalyzatTargy'][$targyId]['hivatalos'] = $KOVETELMENY[ $jegy['jegyTipus'] ][ $jegy['jegy'] ]['hivatalos'];
+			    if ($jegy['megjegyzes'] == 'dicséret') { // csak dicséreteket rakunk be - év végén nincs más
+				$DATA['diak'][$diakId]['bejegyzesek'] .= str_replace('%1%', $targyNev, $bizonyitvanyJegyzetek['dicséret'])."\n\n";
+			    }
+                            $DATA['diak'][$diakId]['osztalyzatTargy'][$targyId]['evesOraszam'] = $ADAT['targyOraszam'][$diakId][$targyId]['evesOraszam'];
+                        }
+                    }
+                }
+            }
+        }
+
+	$DATA['diak'][$diakId]['feljegyzesek'] = $DATA['diak'][$diakId]['zaroZaradek'] = $DATA['diak'][$diakId]['zaradekok'] = '';
+	if (is_array($ADAT['diakZaradekok'])) {
+	    foreach ($ADAT['diakZaradekok'] as $diakId => $dZaradekok) {
+		if (count($dZaradekok) > 0) {
+		    foreach ($dZaradekok as $idx => $zAdat) {
+			if (in_array($zAdat['zaradekIndex'], array_values($ZaradekIndex['törzslap feljegyzés']))) {
+			    $DATA['diak'][$diakId]['feljegyzesek'] .= '['.$zAdat['sorszam'].'] '.$zAdat['szoveg'].' ('.dateToString($zAdat['dt']).')';
+			} elseif (
+			    in_array($zAdat['zaradekIndex'], array_values($ZaradekIndex['konferencia']))
+			    || in_array($zAdat['zaradekIndex'], array_values($ZaradekIndex['konferencia bukás']))
+			) {
+			    $DATA['diak'][$diakId]['zaroZaradek'] .= '['.$zAdat['sorszam'].'] '.$zAdat['szoveg'].' ('.dateToString($zAdat['dt']).')'."\n\n";
+			} else {
+			    $DATA['diak'][$diakId]['zaradekok'] .= '['.$zAdat['sorszam'].'] '.$zAdat['szoveg'].' ('.dateToString($zAdat['dt']).')'."\n\n";
+			}
+		    }
+		}
+	    }
+	}
+	if (is_array($ADAT['diakBejegyzesek'])) {
+	    foreach ($ADAT['diakBejegyzesek'] as $diakId => $dBejegyzesek) {
+		if (is_null($DATA['diak'][$diakId]['bejegyzesek'])) $DATA['diak'][$diakId]['bejegyzesek'] = '';
+		if (count($dBejegyzesek)>0) {
+		    foreach ($dBejegyzesek as $idx => $bAdat) {
+			$DATA['diak'][$diakId]['bejegyzesek'] .= $bAdat['szoveg']."\n\n";
+		    }
+		}
+	    }
+	}
+	if (is_array($ADAT['diakAdat'])) {
+	    foreach ($ADAT['diakAdat'] as $diakId => $dAdat) { // alapértelmezések
+		if ($DATA['diak'][$diakId]['feljegyzesek'] == '') $DATA['diak'][$diakId]['feljegyzesek'] = '\ ';
+		foreach (array('igazolt','igazolatlan','kesesPercOsszeg','kesesIgazolatlan','osszesIgazolatlan',
+			'gyakIgazolt','gyakIgazolatlan','gyakKesesPercOsszeg','gyakKesesIgazolatlan','gyakOsszesIgazolatlan',
+			'elmIgazolt','elmIgazolatlan','elmKesesPercOsszeg','elmKesesIgazolatlan','elmOsszesIgazolatlan') as $_k) {
+		    $DATA['diak'][$diakId][$_k] = 0;
+		}
+	    }
+	}
+	if (is_array($ADAT['hianyzas'])) {
+    	    foreach ($ADAT['hianyzas'] as $diakId => $dHianyzas) {
+                $DATA['diak'][$diakId]['igazolt'] = intval($dHianyzas['igazolt']);
+                $DATA['diak'][$diakId]['igazolatlan'] = intval($dHianyzas['igazolatlan']);
+                $DATA['diak'][$diakId]['kesesPercOsszeg'] = intval($dHianyzas['kesesPercOsszeg']);
+                $DATA['diak'][$diakId]['kesesIgazolatlan'] = floor($dHianyzas['kesesPercOsszeg']/45);
+                $DATA['diak'][$diakId]['osszesIgazolatlan'] = intval($DATA['diak'][$diakId]['igazolatlan']+$DATA['diak'][$diakId]['kesesIgazolatlan']);
+
+                $DATA['diak'][$diakId]['gyakIgazolt'] = intval($dHianyzas['gyakorlatIgazolt']);
+                $DATA['diak'][$diakId]['gyakIgazolatlan'] = intval($dHianyzas['gyakorlatIgazolatlan']);
+                $DATA['diak'][$diakId]['gyakKesesPercOsszeg'] = intval($dHianyzas['gyakorlatKesesPercOsszeg']);
+                $DATA['diak'][$diakId]['gyakKesesIgazolatlan'] = floor($dHianyzas['gyakorlatKesesPercOsszeg']/45);
+                $DATA['diak'][$diakId]['gyakOsszesIgazolatlan'] = intval($DATA['diak'][$diakId]['gyakIgazolatlan']+$DATA['diak'][$diakId]['gyakKesesIgazolatlan']);
+
+                $DATA['diak'][$diakId]['elmIgazolt'] = intval($dHianyzas['elmeletIgazolt']);
+                $DATA['diak'][$diakId]['elmIgazolatlan'] = intval($dHianyzas['elmeletIgazolatlan']);
+                $DATA['diak'][$diakId]['elmKesesPercOsszeg'] = intval($dHianyzas['elmeletKesesPercOsszeg']);
+                $DATA['diak'][$diakId]['elmKesesIgazolatlan'] = floor($dHianyzas['elmeletKesesPercOsszeg']/45);
+                $DATA['diak'][$diakId]['elmOsszesIgazolatlan'] = intval($DATA['diak'][$diakId]['elmIgazolatlan']+$DATA['diak'][$diakId]['elmKesesIgazolatlan']);
+    	    }
+	}
+	// van egyáltalán tanév adat?
+	if (strtotime($ADAT['dt']) < strtotime($ADAT['tanevAdat']['szemeszter'][1]['zarasDt'])) $DATA['base']['negyedev'] = 'az első';
+	else $DATA['base']['negyedev'] = 'a harmadik';
+	foreach ($Ertekeles as $diakId => $E) {
+	    $DATA['diak'][$diakId]['targy'] = array();
+
+	    // !!! Tesztelendő !!! //
+#	    foreach ($E as $targyId => $eAdat) {
+	    foreach ($Targyak as $targyId => $tAdat) {
+		if (is_array($E[$targyId])) {
+		    $eAdat = $E[$targyId];
+		    $DATA['base']['szovegesErtekeles'] = true;
+		} else {
+		    continue;
+		}
+	    // !!! Tesztelendő !!! //
+		if (
+		    is_array($eAdat['szovegesErtekeles']['minosites']) 
+		    && count($eAdat['szovegesErtekeles']['minosites']) > 0
+		    && $ADAT['tolDt'] <= $eAdat['szovegesErtekeles']['dt']
+		) {
+
+		    $DATA['diak'][$diakId]['targy'][$targyId] = $eAdat; // Ezt lehetne finomítani
+
+		    $DATA['diak'][$diakId]['targy'][$targyId]['szempont'] = $eAdat['szempontRendszer']['szempont'];
+                    $targyMinositesId = $eAdat['szovegesErtekeles']['minosites'][0]; // Ha egy tárgy egy minősítés kell (az első)
+		    foreach ($eAdat['szempontRendszer']['szempont'] as $szempontId => $szAdat) {
+			$DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['egyediMinosites'] = 
+				$eAdat['szovegesErtekeles']['egyediMinosites'][$szempontId]['egyediMinosites'];
+			$M = $eAdat['szempontRendszer']['minosites'][$szempontId];
+			$elsoValasztottKovetkezik = true;
+                	for ($i = 0; $i < count($M); $i++) {
+			    $DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['minosites'][ $M[$i]['minositesId'] ] 
+				= array('minosites' => $M[$i]['minosites']);
+			    if (in_array($M[$i]['minositesId'], $eAdat['szovegesErtekeles']['minosites'])) {
+				$DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['minosites'][$M[$i]['minositesId']]['valasztott'] = true;
+				$DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['minosites'][$M[$i]['minositesId']]['elsoValasztott'] = $elsoValasztottKovetkezik;
+				$DATA['diak'][$diakId]['targy'][$targyId]['szempont'][$szempontId]['minosites'][$M[$i]['minositesId']]['tobbedikValasztott'] = (!$elsoValasztottKovetkezik);
+				$elsoValasztottKovetkezik = false;
+                    		if ($M[$i]['minositesId'] == $targyMinositesId) {
+                        	    $DATA['diak'][$diakId]['targy'][$targyId]['targyMinosites'] = $M[$i]['minosites']; // Ha tárgyanként egy minősítés kell (az első)
+                        	}
+                    	    }
+                	}
+		    }
+		}
+	    }
+	}
+
+	return template2file($templateFile, $DATA);
+
+    }
+
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tovabbkepzesHatarozat.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tovabbkepzesHatarozat.php
new file mode 100644
index 00000000..024fbe94
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/tovabbkepzesHatarozat.php
@@ -0,0 +1,60 @@
+false,'fv'=>'getTanulmanyiEgyseg','modul'=>'naplo_intezmeny','result'=>'record','values'=>array($tovabbkepzesId, $tanarId, $tanev)));
+
+    }
+
+    function tovabbkepzesNyomtatvanyKeszites($ADAT) {
+
+	global $Honapok;
+
+	// A sablonfile meghatározása
+        define('__TEMPLATE_DIR', _MAYOR_DIR.'/print/module-naplo/templates');
+        $tmplFile = 'tovabbkepzesHatarozat';
+
+        if (file_exists(__TEMPLATE_DIR.'/'.__INTEZMENY.'/'.$tmplFile.'.tmpl')) {
+            $templateFile = __TEMPLATE_DIR.'/'.__INTEZMENY.'/'.$tmplFile.'.tmpl';
+        } elseif (file_exists(__TEMPLATE_DIR.'/default/'.$tmplFile.'.tmpl')) {
+            $templateFile = __TEMPLATE_DIR.'/default/'.$tmplFile.'.tmpl';
+        } else {
+            $_SESSION['alert'][] = 'message:file_not_found:'.__TEMPLATE_DIR.'/default/'.$tmplFile.'.tmpl';
+            return false;
+        }
+
+	$Intezmeny = getIntezmenyByRovidnev(__INTEZMENY);
+	list($ev, $ho, $nap) = explode('-', $ADAT['tanulmanyiEgyseg']['igDt']);
+	$DATA = array(
+            'file' => $ADAT['file'],
+            'base' => array('nyomtatasDt' => date('Y.m.d'), 'nyomtatasDatumStr' => date('Y. m. d.'), 
+		'datumEv' => $ev, 'datumHonap' => $ho, 'datumNap' => $nap, 'hoNev' => kisbetus($Honapok[$ho-1]),
+                'intezmenyNev' => $Intezmeny['nev'], 'intezmenyOMKod' => $Intezmeny['OMKod'], 'intezmenyCimIrsz' => $Intezmeny['cimIrsz'],
+                'intezmenyCimHelyseg' => $Intezmeny['cimHelyseg'], 'intezmenyCimKozteruletNev' => $Intezmeny['cimKozteruletNev'],
+                'intezmenyCimKozteruletJelleg' => $Intezmeny['cimKozteruletJelleg'], 'intezmenyCimHazszam' => $Intezmeny['cimHazszam'],
+                'intezmenyTelefon' => $Intezmeny['telefon'], 'intezmenyHonlap' => $Intezmeny['honlap'],
+                'intezmenyFax' => $Intezmeny['fax'], 'intezmenyEmail' => $Intezmeny['email'],
+
+		'tanev'=>$ADAT['tanulmanyiEgyseg']['tanev'], 'reszosszeg'=>$ADAT['tanulmanyiEgyseg']['reszosszeg'], 'tamogatas'=>$ADAT['tanulmanyiEgyseg']['tamogatas'], 
+		'tovabbkepzesStatusz'=>$ADAT['tanulmanyiEgyseg']['tovabbkepzesStatusz'], 'megjegyzes'=>$ADAT['tanulmanyiEgyseg']['megjegyzes'], 'tovabbkepzesNev'=>$ADAT['tanulmanyiEgyseg']['tovabbkepzesNev'], 
+		'oraszam'=>$ADAT['tanulmanyiEgyseg']['oraszam'], 'akkreditalt'=>$ADAT['tanulmanyiEgyseg']['akkreditalt'], 'tovIntRovidNev'=>$ADAT['tanulmanyiEgyseg']['intezmenyRovidNev'],
+		'tovIntNev'=>$ADAT['tanulmanyiEgyseg']['intezmenyNev'], 'tovIntCim'=>$ADAT['tanulmanyiEgyseg']['intezmenyCim'],
+		'tolDt'=>str_replace('-','. ',$ADAT['tanulmanyiEgyseg']['tolDt']).'.', 'igDt'=>str_replace('-','. ',$ADAT['tanulmanyiEgyseg']['igDt']).'.',
+
+		'tanarNev' => $ADAT['tanarAdat']['tanarNev'], 'szuletesiHely' => $ADAT['tanarAdat']['szuletesiHely'], 'szuletesiIdo' => $ADAT['tanarAdat']['szuletesiIdo'],
+		'hetiMunkaora' => $ADAT['tanarAdat']['hetiMunkaora'], 'statusz' => $ADAT['tanarAdat']['statusz'], 'hetiKotelezoOraszam' => $ADAT['tanarAdat']['hetiKotelezoOraszam'], 
+		'besorolas' => $ADAT['tanarAdat']['besorolas'],
+            ),
+
+	);
+
+//dump($ADAT);
+//dump($DATA);
+//die();
+	return template2file($templateFile, $DATA);
+    }
+
+?>
\ No newline at end of file
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/zaradekok.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/zaradekok.php
new file mode 100644
index 00000000..50501765
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/nyomtatas/zaradekok.php
@@ -0,0 +1,63 @@
+ $ADAT['file'],
+            'base' => array('nyomtatasDt' => date('Y.m.d'), 
+                'intezmenyNev' => $ADAT['intezmeny']['nev'], 'intezmenyCimIrsz' => $ADAT['intezmeny']['cimIrsz'],
+                'intezmenyCimHelyseg' => $ADAT['intezmeny']['cimHelyseg'], 'intezmenyCimKozteruletNev' => $ADAT['intezmeny']['cimKozteruletNev'],
+                'intezmenyCimKozteruletJelleg' => $ADAT['intezmeny']['cimKozteruletJelleg'], 'intezmenyCimHazszam' => $ADAT['intezmeny']['cimHazszam'],
+                'intezmenyTelefon' => $ADAT['intezmeny']['telefon'], 'intezmenyHonlap' => $ADAT['intezmeny']['honlap'],
+                'intezmenyFax' => $ADAT['intezmeny']['fax'], 'intezmenyEmail' => $ADAT['intezmeny']['email'],
+                'osztalyJele' => $evf.'/'.nagybetus($oszt), 'tanevJele' => $ADAT['tanev'].'/'.$zEv,
+            ),
+        );
+
+	for ($i = 0; $i < count($ADAT['diakIds']); $i++) 
+	    $DATA['diak'][ $ADAT['diakIds'][$i] ] = array('diakNev' => $ADAT['diak'][ $ADAT['diakIds'][$i] ]['diakNev']);
+	foreach ($ADAT['zaradek'] as $diakId => $dZaradek) {
+	    for ($i = 0; $i < count($dZaradek); $i++) {
+		$DATA['diak'][$diakId]['zaradek'][ $dZaradek[$i]['zaradekId'] ] = $dZaradek[$i]['zaradekId'];
+		$DATA['zaradek'][ $dZaradek[$i]['zaradekId'] ] = $dZaradek[$i];
+	    }
+	}
+	foreach ($ADAT['bejegyzes'] as $diakId => $dBejegyzes) {
+	    for ($i = 0; $i < count($dBejegyzes); $i++) {
+		$DATA['diak'][$diakId]['bejegyzes'][ $dBejegyzes[$i]['bejegyzesId'] ] = $dBejegyzes[$i]['bejegyzesId'];
+		$DATA['bejegyzes'][ $dBejegyzes[$i]['bejegyzesId'] ] = $dBejegyzes[$i];
+		// A "bejegyzes" név már foglalt ezért át kell nevezni a bejegyzesTipusNev-et...
+		$DATA['bejegyzes'][ $dBejegyzes[$i]['bejegyzesId'] ]['szovFokozat'] = $dBejegyzes[$i]['bejegyzesTipusNev'];
+	    }
+	}
+	$DATA['base']['diak'] = array();
+	for ($i = 0; $i < count($ADAT['diakIds']); $i++) {
+	    if (
+		is_array($DATA['diak'][ $ADAT['diakIds'][$i] ]['bejegyzes']) 
+		|| is_array($DATA['diak'][ $ADAT['diakIds'][$i] ]['zaradek'])
+	    ) $DATA['base']['diak'][] = $ADAT['diakIds'][$i];
+	}
+
+        return template2file($templateFile, $DATA);
+
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/ascExport.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/ascExport.php
new file mode 100644
index 00000000..a1affa40
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/ascExport.php
@@ -0,0 +1,437 @@
+ $tanev));
+	$Osztalyok = getOsztalyok($tanev);
+	// Nem tudható, hogy mely termekben lesz óra - ez intézménytől függő - exportáljuk mind...
+	$Termek = getTermek(array('tipus'=>
+	    array()
+//	    array('tanterem','szaktanterem','osztályterem','labor','gépterem','tornaterem','tornaszoba','fejlesztőszoba','tanműhely','előadó','könyvtár','díszterem','egyéb') 
+	)); $teremIds = array();
+	for ($i = 0; $i < count($Termek); $i++) $teremIds[] = $Termek[$i]['teremId'];
+	$Targyak = getTargyak();
+	$Diakok = getDiakok(array('tanev' => $tanev)); $diakIds = array();
+	for ($i = 0; $i < count($Diakok); $i++) $diakIds[] = $Diakok[$i]['diakId'];
+	$diakokOsztalyai = getDiakokOsztalyai($diakIds, array('tanev' => $tanev, 'tolDt' => $ADAT['dt'], 'igDt' => $ADAT['dt']));
+	foreach ($ADAT['bontas'] as $bontasId => $bontas) {
+	    $bontasTomb = explode('+',$bontas);
+	    for ($i = 0; $i < count($bontasTomb); $i++) {
+		$Bontas[$bontasId][ $bontasTomb[$i] ]++;
+	    }
+	}
+	if (isset($ADAT['exportalandoHet'])) $Orarend = getOrarendByDt($ADAT['dt'], array($ADAT['exportalandoHet']), $ADAT['tanev']);
+	else $Orarend = array();
+	// Tárgyak bontása
+	if ($ADAT['targyBontas']) {
+	    if (defined('__ASC_BONTANDO_TARGYAK')) $bontandoTargyak = explode(',', __ASC_BONTANDO_TARGYAK);
+	}
+
+	for ($i = 0; $i < count($ADAT['tankorok']); $i++) {
+	    $tankorId = $ADAT['tankorok'][$i]['tankorId'];	    
+	    $ADAT['tankorok'][$i]['osztaly'] = getTankorOsztalyaiByTanev($tankorId, $tanev, array('tagokAlapjan' => true, 'result' => 'id'));
+	    $ADAT['tankorok'][$i]['tanar'] = getTankorTanaraiByInterval($tankorId, array('tanev' => $tanev, 'result' => 'csakId'));
+	    $tmpDiakok = getTankorDiakjaiByInterval($tankorId, $tanev);
+	    $ADAT['tankorok'][$i]['diakIds'] = $tmpDiakok['idk'];
+	    // Tárgyak bontása
+	    if ($ADAT['targyBontas']) {
+		$targyId = $ADAT['tankorok'][$i]['tankorAdat'][$tankorId][0]['targyId'];
+		if (!is_array($bontandoTargyak) || in_array($targyId, $bontandoTargyak)) {
+		    $tankorNev = $ADAT['tankorok'][$i]['tankorAdat'][$tankorId][0]['tankorNev'];
+		    $csoportJel = substr($tankorNev, strrpos($tankorNev, ' ')+1);
+		    if (!is_array($ADAT['alTargyak'][$targyId])) $ADAT['alTargyak'][$targyId] = array($csoportJel);
+		    elseif (!in_array($csoportJel, $ADAT['alTargyak'][$targyId])) $ADAT['alTargyak'][$targyId][] = $csoportJel;
+		    $ADAT['tankorok'][$i]['tankorAdat'][$tankorId][0]['targyId'] = $targyId.':'.$csoportJel;
+		}
+	    }
+
+	}
+
+
+	// Blokkok tanárai / diákjai / osztályai - és a blokk jelenlegi óráinak meghatározása
+	$ADAT['blokkOra'] = array();
+	$ADAT['tankorBlokkOra'] = array();
+	if (is_array($ADAT['tankorBlokk']['exportOraszam'])) 
+	foreach ($ADAT['tankorBlokk']['exportOraszam'] as $bId => $oraszam) if ($oraszam > 0) { // blokkonként
+
+	    $ADAT['blokkTanarok'][$bId] = $ADAT['blokkDiakok'][$bId] = $ADAT['blokkOsztalyok'][$bId] = array();
+	    for ($i = 0; $i < count($ADAT['tankorBlokk']['idk'][$bId]); $i++) { // az érintett tankörökön végigmenve
+		$tankorId = $ADAT['tankorBlokk']['idk'][$bId][$i];
+		$TA = $ADAT['tankorok'][ $ADAT['tankorIndex'][$tankorId] ];
+		// tanárok
+		for ($j = 0; $j < count($TA['tanar']); $j++) // elvileg nem lehet ütközés, hiszen blokk!!
+		    if (!in_array($TA['tanar'][$j], $ADAT['blokkTanarok'][$bId])) {
+			$ADAT['blokkTanarok'][$bId][] = $TA['tanar'][$j];
+		    } else {
+			$_SESSION['alert'][] = 'message:utkozes:blokk='.$bId.';tanarId='.$TA['tanar'][$j];
+			$return = false;
+		    }
+		for ($j = 0; $j < count($TA['diakIds']); $j++) // elvileg nem lehet ütközés, hiszen blokk!!
+		    if (!in_array($TA['diakIds'][$j], $ADAT['blokkDiakok'][$bId])) {
+			$ADAT['blokkDiakok'][$bId][] = $TA['diakIds'][$j];
+		    } else {
+			$_SESSION['alert'][] = 'message:utkozes:blokk='.$bId.';diakId='.$TA['diakIds'][$j];
+			$return = false;
+		    }
+		for ($j = 0; $j < count($TA['osztaly']); $j++) // Itt lehet ütközés
+		    if (!in_array($TA['osztaly'][$j], $ADAT['blokkOsztalyok'][$bId])) $ADAT['blokkOsztalyok'][$bId][] = $TA['osztaly'][$j];
+	    }
+
+	    // A blokk jelenlegi óráinak lekérdezése
+	    if (isset($ADAT['exportalandoHet'])) {
+		$q = "SELECT het, nap, ora 
+			FROM `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId, osztalyJel, targyJel)
+			WHERE tolDt<='%s' AND '%s'<=igDt 
+			AND het=%u
+			AND tankorId IN (".implode(',', array_fill(0, count($ADAT['tankorBlokk']['idk'][$bId]), '%u')).")
+			GROUP BY het, nap, ora HAVING COUNT(*)=".count($ADAT['tankorBlokk']['idk'][$bId]);
+		$v = mayor_array_join(array($ADAT['tanevDb'], $ADAT['tanevDb'], $ADAT['dt'], $ADAT['dt'], $ADAT['exportalandoHet']), $ADAT['tankorBlokk']['idk'][$bId]);
+		$ret = db_query($q, array('fv' => 'blokkOrai', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v));
+		if ($oraszam > count($ret)) {
+		    $_SESSION['alert'][] = 'message:wrong_data:A beállított blokk óraszámnál kevesebb van az órarendben:'.$bId.':'.$oraszam.'/'.count($ret);
+//		    $return = false;
+		} else {
+		    $db = $i = 0; 
+		    while ($i < count($ret) && $db < $oraszam) {
+			// Ellenőrizzük, hogy az összes tankörnek szabad-e még az adott órája
+			$szabad = true;
+			for ($j = 0; $j < count($ADAT['tankorBlokk']['idk'][$bId]); $j++) {
+			    $tankorId = $ADAT['tankorBlokk']['idk'][$bId][$j];
+			    if ($ADAT['tankorBlokkOra'][$tankorId][ $ret[$i]['het'] ][ $ret[$i]['nap'] ][ $ret[$i]['ora'] ]) {
+				$szabad = false;
+				break;
+			    }
+			}
+			if ($szabad) {
+			    // Lekérdezzük az érintett termeket
+			    $q = "SELECT DISTINCT teremId FROM `%s`.orarendiOra 
+				    LEFT JOIN `%s`.orarendiOraTankor USING (tanarId, osztalyJel, targyJel)
+				    WHERE tolDt<='%s' AND '%s'<=igDt AND het=%u
+				    AND tankorId IN (".implode(',', array_fill(0, count($ADAT['tankorBlokk']['idk'][$bId]), '%u')).")
+				    AND het=%u AND nap=%u AND ora=%u";
+			    $v = mayor_array_join(
+				array($ADAT['tanevDb'], $ADAT['tanevDb'], $ADAT['dt'], $ADAT['dt'], $ADAT['exportalandoHet']), 
+				$ADAT['tankorBlokk']['idk'][$bId],
+				array($ret[$i]['het'], $ret[$i]['nap'], $ret[$i]['ora'])
+			    );
+			    $ret[$i]['teremIds'] = db_query($q, array('fv' => 'blokkTermei', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v));
+			    // Ha szabad, akkor a blokk számára lefoglaljuk
+			    $ADAT['blokkOra'][$bId][] = $ret[$i];
+
+			    // Ha szabad, akkor minden tankör számára lefoglaljuk
+			    for ($j = 0; $j < count($ADAT['tankorBlokk']['idk'][$bId]); $j++) {
+				$tankorId = $ADAT['tankorBlokk']['idk'][$bId][$j];
+				$ADAT['tankorBlokkOra'][$tankorId][ $ret[$i]['het'] ][ $ret[$i]['nap'] ][ $ret[$i]['ora'] ] = true;
+			    }
+			    $db++;
+			}
+			$i++;
+		    }
+		    if ($db < $oraszam) {
+			$_SESSION['alert'][] = 'message:wrong_data:Az órarendben csak'.$db.' órát sikerült lefoglalni ('.$oraszam.' helyett) - blokkId='.$bId;
+//			$return = false;
+		    }
+		}
+	    }
+	}
+
+	$xml = ''."\r\n";
+
+
+	// Tanárok
+	$xml .= '   '."\r\n";
+	for ($i = 0; $i < count($Tanarok); $i++) {
+	    $xml .= '      '."\r\n";
+	}
+	$xml .= '   '."\r\n";
+	// Osztályok
+	$xml .= '   '."\r\n";
+	for ($i = 0; $i < count($Osztalyok); $i++) {
+	    $xml .= '      '."\r\n";
+	}
+	$xml .= '   '."\r\n";
+	if ($ADAT['szeminariumkent']) {
+	    // Diákok
+	    $xml .= '   '."\r\n";
+	    for ($i = 0; $i < count($Diakok); $i++) {
+		$xml .= '      '."\r\n";
+	    }
+	    $xml .= '   '."\r\n";
+	    $studentidsStr = ',studentids';
+	}
+	// Tárgyak
+	$xml .= '   '."\r\n";
+	if (is_array($ADAT['tankorBlokk']['exportOraszam'])) 
+	foreach ($ADAT['tankorBlokk']['exportOraszam'] as $bId => $oraszam) { // blokkok - mint tárgyak
+	    if ($oraszam > 0) $xml .= '      '."\r\n";	    
+	}
+	for ($i = 0; $i < count($Targyak); $i++) { // igazi tárgyak
+	    $xml .= '      '."\r\n";
+	    // Tárgyak bontása
+	    if (is_array($ADAT['alTargyak'][ $Targyak[$i]['targyId'] ])) {
+		foreach ($ADAT['alTargyak'][ $Targyak[$i]['targyId'] ] as $index => $alTargyId) {
+		    $xml .= '      '."\r\n";
+		}
+	    }
+	}
+	$xml .= '   '."\r\n";
+	// Termek
+	$xml .= '   '."\r\n";
+	for ($i = 0; $i < count($Termek); $i++) {
+	    $xml .= '      '."\r\n";
+	}
+	$xml .= '   '."\r\n";
+	// Órák
+	$xml .= '   '."\r\n";
+	// blokk --> lesson
+	if (is_array($ADAT['tankorBlokk']['exportOraszam'])) foreach ($ADAT['tankorBlokk']['exportOraszam'] as $bId => $oraszam) if ($oraszam > 0) {
+	    $tankorIds = $ADAT['tankorBlokk']['idk'][$bId];
+	    $bNev = $ADAT['tankorBlokk']['blokkNevek'][$bId];
+	    $subjectid = 'b'.$bId;
+	    if (
+		!isset($ADAT['exportalandoHet']) // Csak akkor exportálunk bontott órákat, ha meglevő órarendet nem
+		&& is_array($Bontas['b-'.$bId]) && count($Bontas['b-'.$bId]) > 0
+	    ) {
+		foreach ($Bontas['b-'.$bId] as $periodsPerCard => $db) {
+		    $xml .= '      '."\r\n";    
+		}
+	    } elseif ($oraszam > ($egeszoraszam = floor($oraszam))) {
+		if ($egeszoraszam > 0) {
+		    // Ha tört szám az export óraszám, akkor két lessont gyártunk: egyet az egész óraszámhoz, egyet a törthöz...
+		    $xml .= '      '."\r\n";    
+		}
+		// tört
+		$xml .= '      '."\r\n";    
+
+	    } else {
+		$xml .= '      '."\r\n";    
+	    }
+	}
+	// tankor --> lesson
+	for ($i = 0; $i < count($ADAT['tankorok']); $i++) {
+	    $TA = $ADAT['tankorok'][$i];
+	    $tankorId = $TA['tankorId'];
+	    if (count($TA['diakIds']) >= 0) {
+		if (
+		    !isset($ADAT['exportalandoHet']) // Csak akkor exportálunk bontott órákat, ha meglevő órarendet nem
+		    && is_array($Bontas['t-'.$tankorId]) && count($Bontas['t-'.$tankorId]) > 0
+		) {
+		    foreach ($Bontas['t-'.$tankorId] as $periodsPerCard => $db) {
+			$xml .= '      '."\r\n";    
+		    }
+		} elseif ($TA['hetiOraszam'] > ($egeszoraszam = floor($TA['hetiOraszam']))) {
+		    if ($egeszoraszam > 0) {
+			// Ha tört szám az export óraszám, akkor két lessont gyártunk: egyet az egész óraszámhoz, egyet a törthöz...
+			$xml .= '      '."\r\n";
+		    }
+		    $xml .= '      '."\r\n";
+
+		} else {
+		    $xml .= '      '."\r\n";
+		}
+	    }
+	}
+	$xml .= '   '."\r\n";
+
+	if (isset($ADAT['exportalandoHet'])) {
+	    // jelenleg betöltött órák
+	    $xml .= '   '."\r\n";
+	    for ($i = 0; $i < count($Orarend); $i++) {
+		$tankorId = $Orarend[$i]['tankorId'];
+		if ($ADAT['tankorBlokkOra'][$tankorId][ $Orarend[$i]['het'] ][ $Orarend[$i]['nap'] ][ $Orarend[$i]['ora'] ]!==true) {
+		    $lessonId = 't-'.$tankorId;
+		    $TA = $ADAT['tankorok'][ $ADAT['tankorIndex'][$tankorId] ];
+		    if (is_array($TA)) // A szakkörök például nincsenek benne alap esetben...
+			$xml .= '      '."\r\n";
+		}
+	    }
+	    // A blokk órák kiírása
+	    if (is_array($ADAT['blokkOra'])) foreach ($ADAT['blokkOra'] as $bId => $Orak) {
+		$tankorIds = $ADAT['tankorBlokk']['idk'][$bId];
+		$lessonId = 'b-'.implode('_', $tankorIds);
+		for ($i = 0; $i < count($Orak); $i++) {
+		    $xml .= '      '."\r\n";
+		}
+	    }
+	    $xml .= '   '."\r\n";
+	}
+
+	$xml .= ''."\r\n";
+
+	fputs($fp, mb_convert_encoding($xml, 'ISO-8859-2', 'UTF-8'));
+	fclose($fp);
+
+	return $return;
+
+    }
+
+    function blokkOraszamRogzites($blokkAdat, $tanevDb) {
+
+	if (is_array($blokkAdat)) foreach ($blokkAdat as $bId => $bOraszam) {
+	    $q = "UPDATE `%s`.blokk SET exportOraszam = %f WHERE blokkId = %u";
+	    $v = array($tanevDb, $bOraszam, $bId);
+	    $r = db_query($q, array('fv' => 'blokkOraszamRogzites', 'modul' => 'naplo', 'values' => $v));
+	}
+
+    }
+
+    function ascBontasLekerdezes($tanevDb) {
+
+	$v = array($tanevDb);
+	// A szükséges tábla létrehozása - ha netán nem létezne
+        $q = "CREATE TABLE IF NOT EXISTS `%s`._ascOraBontas (
+	  tipus ENUM('blokk','tankör') NOT NULL DEFAULT 'tankör',
+	  id INT UNSIGNED NOT NULL,
+	  bontas VARCHAR(32),
+	  PRIMARY KEY (tipus, id)
+	) ENGINE InnoDb";
+        db_query($q, array('fv' => 'ascBontasLekerdezes/createTable', 'modul' => 'naplo', 'values' => $v));
+
+        $return = array();
+        $q = "SELECT CONCAT(LEFT(tipus,1),'-',id) AS bontasId,bontas FROM `%s`._ascOraBontas";
+        $ret = db_query($q, array('fv' => 'bontás lekérdezés', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'bontasId', 'values' => $v));
+        if ($ret !== false) foreach ($ret as $bontasId => $bAdat) $return[$bontasId] = $bAdat['bontas'];
+        return $return;
+    }
+
+    function ascBontasModositas($ADAT) {
+
+
+	$tipusStr = array('t' => 'tankör', 'b' => 'blokk');
+
+        // Törlések elvégzése ($ADAT['bontas'] tömb)
+            if (is_array($_POST['torlendoBontas']) && count($_POST['torlendoBontas']) > 0) {
+                for ($i = 0; $i < count($_POST['torlendoBontas']); $i++) {
+                    $bontasId = readVariable($_POST['torlendoBontas'][$i], 'emptystringnull', null, array_keys($ADAT['bontas']));
+                    if (isset($bontasId)) unset($ADAT['bontas'][$bontasId]);
+                }
+            }
+        // Új bontás felvétele
+            $bontasId = readVariable($_POST['bontasId'], 'emptystringnull', null);
+            if (isset($bontasId)) {
+                list($tipus, $id) = explode('-', $bontasId);
+                if ($tipus == 't') $oraszam = $ADAT['tankorok'][ $ADAT['tankorIndex'][$id] ]['hetiOraszam'];
+                elseif ($tipus == 'b') $oraszam = $ADAT['tankorBlokk']['exportOraszam'][$id];
+                $oraBontas = readVariable($_POST['oraBontas'], 'emptystringnull', '1');
+                eval('$bontottOraszam='.$oraBontas.';');
+                if ($bontottOraszam > $oraszam) {
+                    $_SESSION['alert'][] = 'message:wrong_data:'."$tipus-$id - óraszám=$oraszam < $oraBontas=bontott óraszám";
+                } else {
+                    if ($bontottOraszam < $oraszam) $oraBontas .= str_repeat('+1', $oraszam-$bontottOraszam);
+                    $ADAT['bontas']["$tipus-$id"] = $oraBontas;
+                }
+            }
+
+        // A bontások kiírása
+            $q = "DELETE FROM `%s`._ascOraBontas";
+            db_query($q, array('fv' => 'ascExport/bontásokTörlése', 'modul' => 'naplo', 'values' => array($ADAT['tanevDb'])));
+            $v = array($ADAT['tanevDb']); $V = array();
+            foreach ($ADAT['bontas'] as $bontasId => $bontas) {
+                list($tipus, $id) = explode('-', $bontasId);
+                $V[] = "('%s', %u, '%s')";
+                array_push($v, $tipusStr[$tipus], $id, $bontas);
+            }
+            if (count($V) > 0) {
+                $q = "INSERT INTO `%s`._ascOraBontas (tipus, id, bontas) VALUES ".implode(',', $V);
+                db_query($q, array('fv' => 'ascExport/bontásokRögzítése', 'modul' => 'naplo', 'values' => $v));
+            }
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-Microsoft Excel XML.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-Microsoft Excel XML.php
new file mode 100644
index 00000000..bcadf3fb
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-Microsoft Excel XML.php	
@@ -0,0 +1,147 @@
+ tanarId konverzióhoz lekérdezzük a tanárok adatait.
+	require_once('include/modules/naplo/share/tanar.php');
+	$Tanarok = getTanarok(array('tanev' => __TANEV, 'result' => 'assoc'));
+	foreach ($Tanarok as $tanarId => $tanarAdat) $Tanar[ $tanarAdat['tanarNev'] ] = $tanarId;
+	// A terem --> teremId konverzióhoz lekérdezzük a terem adatokat
+	require_once('include/modules/naplo/share/terem.php');
+	$Termek = getTermek();
+	for ($i = 0; $i < count($Termek); $i++) {
+	    $TeremByLeiras[ $Termek[$i]['leiras'] ] = $Termek[$i]['teremId'];
+	    $TeremById[ $Termek[$i]['teremId'] ] = $Termek[$i]['teremId'];
+	}
+
+	$dom = DOMDocument::load( $ADAT['fileName'] );
+	if (!$dom) {
+	    $_SESSION['alert'][] = 'message:file:'.$ADAT['fileName'];
+	    return false;
+	}
+
+	$worksheets = $dom->getElementsByTagName( 'Worksheet' );
+	foreach ($worksheets as $worksheet) {
+	    $TMP = array();
+	    $name = $worksheet->getAttribute( 'ss:Name' );
+	    $rows = $worksheet->getElementsByTagName( 'Row' );
+	    $r = 0;
+	    foreach ($rows as $row) {
+		    $s = 0;
+		    $cells = $row->getElementsByTagName( 'Cell' );
+		    foreach( $cells as $cell ) { 
+			// Összevont cellák esetén a cellatartalmat ismételjük
+			$span = $cell->getAttribute( 'ss:MergeAcross' );
+			for ($i = 0; $i <= $span; $i++) {
+			    $TMP[$r][$s] = $cell->nodeValue;
+    			    $s++;
+			}
+		    }
+		    $r++;
+	    }
+	    if (strstr($name, 'sszesített terem')) $TEREM = $TMP;
+	    elseif (strstr($name, 'anárok összesített')) $TANAR = $TMP;
+	}
+//	var_dump($TEREM);
+
+
+	// Az első sor a napok neveit tartalmazza
+	$Napok = $TANAR[0];
+	for ($i = 0; $i < count($Napok); $i++)
+	    if ($Napok[$i] == 'Hétfő') $Napok[$i] = 1;
+	    elseif ($Napok[$i] == 'Kedd') $Napok[$i] = 2;
+	    elseif ($Napok[$i] == 'Szerda') $Napok[$i] = 3;
+	    elseif ($Napok[$i] == 'Csütörtök') $Napok[$i] = 4;
+	    elseif ($Napok[$i] == 'Péntek') $Napok[$i] = 5;
+	    elseif ($Napok[$i] == 'Szombat') $Napok[$i] = 6;
+	    elseif ($Napok[$i] == 'Vasárnap') $Napok[$i] = 7;
+	// A második sor az adott napon belüli óraszámot adja
+	$oraszamok = $TANAR[1];
+
+	// A termeket tartalmazó munkalap feldolgozása
+	$s = 2;
+	while ($s < count($TEREM)) {
+
+	    // Két sor egy terem órarendjét tartalmazza
+	    $S1 = $TEREM[$s];
+	    $S2 = $TEREM[$s+1];
+	    $s += 2;
+	    // Az első sor első mezője a terem neve
+	    $terem = $S1[0];
+	    // A második cellátol jönnek az órák - első sor a tárgy, második az osztály
+	    for ($i = 1; $i < count($S1); $i++) {
+		if ($Napok[$i] != 0) $nap = $Napok[$i];
+		if ($S1[$i] != '') {
+
+		    $ora = $oraszamok[$i];
+		    $targy = $S1[$i];
+		    $osztaly = $S2[$i];
+		    if ($TeremByLeiras[ $terem ] != '') {
+			$TeremRend[$nap][$ora][$osztaly][$targy] = $TeremByLeiras[ $terem ];
+		    } elseif ($TeremById[ $terem ] != '') {
+			$TeremRend[$nap][$ora][$osztaly][$targy] = $TeremById[ $terem ];
+		    } else {
+			$TeremRend[$nap][$ora][$osztaly][$targy] = $terem;
+			$_SESSION['alert'][] = 'message:wrong_data:terem='.$terem;
+			$return = false;
+		    }
+
+		}
+
+	    }
+	}
+
+	// A tanár-órarendet tartalmazó munkalap feldolgozása
+	$s = 2;
+	while ($s < count($TANAR)) {
+
+	    // Két sor egy tanár órarendjét tartalmazza
+	    $S1 = $TANAR[$s];
+	    $S2 = $TANAR[$s+1];
+	    $s += 2;
+	    // Az első sor első mezője a tanár neve
+	    if ($S1[0] != '') {
+		if ($Tanar[ $S1[0] ] != '') {	
+		    $tanar = $Tanar[ $S1[0] ];
+		} else {
+		    $tanar = $S1[0];
+		    $_SESSION['alert'][] = 'message:wrong_data:tanarNev='.$tanar;
+		    $return = false;
+		}
+		// A második cellátol jönnek az órák - első sor a tárgy, második az osztály
+		for ($i = 1; $i < count($S1); $i++) {
+		    if ($Napok[$i] != 0) $nap = $Napok[$i];
+		    if ($S1[$i] != '') {
+
+			$ora = $oraszamok[$i];
+			$targy = $S1[$i];
+			$osztaly = $S2[$i];
+
+			$OrarendiOra[] = array(
+			    $ADAT['orarendiHet'],$nap,$ora,$tanar,$osztaly,$targy,$TeremRend[$nap][$ora][$osztaly][$targy],$ADAT['tolDt'],$ADAT['igDt']
+			);
+		    }
+		}
+	    }
+	}
+
+	return $return;
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-RoPaSoft.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-RoPaSoft.php
new file mode 100644
index 00000000..39e8d457
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-RoPaSoft.php
@@ -0,0 +1,80 @@
+ __TANEV, 'result' => 'assoc'));
+	foreach ($Tanarok as $tanarId => $tanarAdat) $Tanar[ $tanarAdat['tanarNev'] ] = $tanarId;
+
+	$fp = fopen($ADAT['fileName'], 'r');
+	if (!$fp) return false;
+
+	// Az első sor a napok neveit tartalmazza
+	$Napok = explode('	', chop(fgets($fp, 1024)));
+	for ($i = 0; $i < count($Napok); $i++)
+	    if ($Napok[$i] == 'Hétfő') $Napok[$i] = 1;
+	    elseif ($Napok[$i] == 'Kedd') $Napok[$i] = 2;
+	    elseif ($Napok[$i] == 'Szerda') $Napok[$i] = 3;
+	    elseif ($Napok[$i] == 'Csütörtök') $Napok[$i] = 4;
+	    elseif ($Napok[$i] == 'Péntek') $Napok[$i] = 5;
+	    elseif ($Napok[$i] == 'Szombat') $Napok[$i] = 6;
+	    elseif ($Napok[$i] == 'Vasárnap') $Napok[$i] = 7;
+	// A második sor az adott napon belöli óraszámot adja
+	$oraszamok = explode('	', chop(fgets($fp, 1024)));
+	$return = true;
+	while ($sor = fgets($fp, 1024)) {
+
+	    // Két sor egy tanár órarendjét tartalmazza
+	    $S1 = explode('	', chop($sor));
+	    $S2 = explode('	', chop(fgets($fp, 1024)));
+	    // Az első sor első mezője a tanár neve
+	    if ($Tanar[ $S1[0] ] != '') {
+		$tanar = $Tanar[ $S1[0] ];
+	    } else {
+		$_SESSION['alert'][] = 'message:wrong_data:tanarNev='.$S1[0]; // hiányzó vagy hibás tanárnév esetén nem tudjuk betölteni az órarendet
+		$return = false;
+		$tanar = $S1[0] . ' / ' . $Tanar[ $S1[0] ];
+	    }
+	    // A második cellátol jönnek az órák - első sor a tárgy, második az osztály
+	    for ($i = 1; $i < count($S1); $i++) {
+		if ($Napok[$i] != 0) $nap = $Napok[$i];
+		if ($S1[$i] != '') {
+
+		    $ora = $oraszamok[$i];
+		    $targy = $S1[$i];
+		    $osztaly = $S2[$i];
+
+		    // és hol a teremId????
+		    $OrarendiOra[] = array(
+			$ADAT['orarendiHet'],$nap,$ora,$tanar,$osztaly,$targy,$ADAT['tolDt'],$ADAT['igDt']
+		    );
+
+		}
+
+	    }
+
+	}
+
+	fclose($fp);
+	return $return;
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables Ctrl-Shift-E.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables Ctrl-Shift-E.php
new file mode 100644
index 00000000..01e14858
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables Ctrl-Shift-E.php	
@@ -0,0 +1,112 @@
+ __TANEV, 'result' => 'assoc'));
+dump($Tanarok);
+        foreach ($Tanarok as $tanarId => $tanarAdat) $Tanar[ $tanarAdat['tanarNev'] ] = $tanarId;
+
+
+        $fp = fopen($ADAT['fileName'], 'r');
+        if (!$fp) return false;
+
+	// Az első sor üres - eldobjuk 
+	$sor = fgets($fp, 1024);
+	// A második sor mezőneveket tartalmaz - eldobjuk
+	$sor = fgets($fp, 1024);
+	$ok = true; $OrarendiOra = array();
+	// Az adatsorok feldolgozása
+	$kulcs2index = $kulcsDb = array();
+	while ($sor = fgets($fp, 1024)) {
+
+	    $rec = explode('	', chop($sor));
+
+	    $het = $ADAT['orarendiHet'];
+	    $nap = $rec[1];
+	    $ora = $rec[2];
+	    $tanarNev = explode(',', mb_convert_encoding($rec[10],'UTF-8','ISO-8859-2')); // konvetál és szétvág!
+	    $tanarIds = array();
+	    foreach ($tanarNev as $tNev) {
+		if ($tNev == 'Ernst') $tNev = 'Ernst, Mader';
+		if ($tNev == ' Mader') continue;
+		if (!isset($Tanar[$tNev])) {
+		    $_SESSION['alert'][] = 'message:wrong_data:Hiányzó azonosító (tanár név='.$tNev.')';
+		    $ok = false;
+		}
+		$tanarIds[] = $Tanar[$tNev];
+	    }
+	    $oJelek = explode(',', $rec[4]);
+	    if (count($oJelek) > 1) $osztalyJel = $oJelek[0].'...'; 	// Nem fér ki több, csak jelezzük, hogy volt még...
+	    else $osztalyJel = $oJelek[0];				// nem érdemes szétvágni, mert nem feleltethető meg...
+	    $targyJel = mb_convert_encoding($rec[6],'UTF-8','ISO-8859-2'); //.$rec[12];
+	    $teremIds = explode(',',$rec[9]); // szétvág
+	    $tolDt = $ADAT['tolDt'];
+	    $igDt = $ADAT['igDt'];
+
+	    // Többhetes órarend esetén egy tanárnak lehet több bejegyzése is ugyanarra az időpontra. Ekkor valahogy ki kell választani a megfelelőt.
+	    // Egy adott kulcs első előfordulásakor a rekordot elmentjük és indexét is rögzítjük. Többedig előfordulás esetén csak azt rögzítjük,
+	    // hogy hanyadik előfordulás volt egész addig, amíg a megadott órarendiHét számadik előfordulásig nem jutunk. Ekkor felülírjuk a korábbi rekordot.
+	    // blokkok szétbontása több rekordra
+	    // TODO: Ha egy blokk egyik tagja ütközik csak, akkor valójában az összesnek adott heti bejegyzéssé kellene változnia.
+    	    for ($i = 0; $i < count($tanarIds); $i++) {
+		
+		$tanarId = $tanarIds[$i];
+		$teremId = ($teremIds[$i]==0)?'NULL':$teremIds[$i]; // a 0 érték nem lehet teremId
+		$kulcsDb["$het-$nap-$ora-$tanarId"]++;
+		if (!isset($kulcs2index["$het-$nap-$ora-$tanarId"])) {
+            	    $OrarendiOra[] = array(
+                	$het,$nap,$ora,$tanarId,$osztalyJel,$targyJel,$teremId,$tolDt,$igDt
+            	    );
+		    $kulcs2index["$het-$nap-$ora-$tanarId"] = count($OrarendiOra)-1;
+		} else {
+		    if ($het == $kulcsDb["$het-$nap-$ora-$tanarId"]) {
+			$OrarendiOra[ $kulcs2index["$het-$nap-$ora-$tanarId"] ] = array(
+                	    $het,$nap,$ora,$tanarId,$osztalyJel,$targyJel,$teremId,$tolDt,$igDt
+            		);
+		    }
+
+		}
+	    }
+	}
+
+	fclose($fp);
+	return $ok;
+
+    }
+
+
+?>
diff --git "a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML (tank\303\266r n\303\251lk\303\274l).php" "b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML (tank\303\266r n\303\251lk\303\274l).php"
new file mode 100644
index 00000000..87d7982c
--- /dev/null
+++ "b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML (tank\303\266r n\303\251lk\303\274l).php"	
@@ -0,0 +1,188 @@
+ 0) $xmlStr = mb_convert_encoding(fread($fp, $size), 'UTF-8', 'ISO-8859-2');
+        fclose($fp);
+	// A loadXML( $xmlStr );
+	if (!$dom) {
+	    $_SESSION['alert'][] = 'message:wrong_data:Hibás XML file='.$ADAT['fileName'];
+	    return false;
+	}
+
+	// A targyJel mező hosszának lekérdezése (32)
+	$q = "SHOW FIELDS FROM `%s`.orarendiOraTankor LIKE 'targyJel'";
+	$ret = db_query($q, array('fv' => 'loadFile/targyJel típusa', 'modul' => 'naplo', 'result' => 'record', 'values' => array($ADAT['tanevDb'])));
+	$targyJelHossz = intval(substr($ret['Type'], 8, -1));
+
+	// Tanárok - MaYoR
+        $cTanar = array(); $Tanarok = getTanarok();
+        for ($i = 0; $i < count($Tanarok); $i++) $cTanar[ $Tanarok[$i]['tanarId'] ] = $Tanarok[$i];
+
+
+	// ====================== Alapadatok lekérdezése az XML-ből =========================== //
+
+	$teachers = $dom->getElementsByTagName( 'teacher' );
+	foreach ($teachers as $teacher) {
+	    $id = $teacher->getAttribute( 'id' );
+	    $ascTanar[$id]['name'] = $teacher->getAttribute( 'name' );
+	    $ascTanar[$id]['short'] = $teacher->getAttribute( 'short' );
+	    if (!is_array($cTanar[$id])) {
+		$_SESSION['alert'][] = 'message:Hibás tanár ID!:'.$id.':'.$ascTanar[$id]['name'].':'.$ascTanar[$id]['short'];
+	    }
+	}
+	$classes = $dom->getElementsByTagName( 'class' );
+	foreach ($classes as $class) {
+	    $id = $class->getAttribute( 'id' );
+	    $name = $class->getAttribute( 'name' );
+	    $ascOsztaly[$id] = $name;
+	}
+	$subjects = $dom->getElementsByTagName( 'subject' );
+	foreach ($subjects as $subject) {
+	    $id = $subject->getAttribute( 'id' );
+	    $name = $subject->getAttribute( 'name' );
+	    $short = $subject->getAttribute( 'short' );
+	    $ascTargy[$id] = array('name' => $name, 'short' => $short);
+	}
+	$classrooms = $dom->getElementsByTagName( 'classroom' );
+	foreach ($classrooms as $classroom) {
+	    $id = $classroom->getAttribute( 'id' );
+	    $name = $classroom->getAttribute( 'name' );
+	    $short = $classroom->getAttribute( 'name' );
+	    $ascTerem[$id] = array('name' => $name, 'short' => $short);
+	}
+
+	//  =============== Lesson tábla feldolgozása ======================== //
+	// két hetes órarend --> egy hét
+	$kihagyandoWeek = ($ADAT['orarendiHet'] == 1) ? '01':'10';
+	$lessons = $dom->getElementsByTagName( 'lesson' );
+	foreach ($lessons as $lesson) {
+	    $id = $lesson->getAttribute( 'id' );
+	    $weeks = $lesson->getAttribute( 'weeks' );
+	    if ($weeks === $kihagyandoWeek) $kihagyandoLesson[$id] = true;
+	}
+/*
+	//  =============== Lesson tábla feldolgozása ======================== //
+
+	$OrarendiOraTankor = array();
+	$lessons = $dom->getElementsByTagName( 'lesson' );
+	foreach ($lessons as $lesson) {
+	    $id = $lesson->getAttribute( 'id' );
+	    $name = $lesson->getAttribute( 'name' );
+	    $periodspercard = $lesson->getAttribute( 'periodspercard' );
+	    $periodsperweek = $lesson->getAttribute( 'periodsperweek' );
+	    $subjectid = $lesson->getAttribute( 'subjectid' );
+	    $classids = $lesson->getAttribute( 'classids' );
+	    $teacherids = $lesson->getAttribute( 'teacherids' );
+
+	    $ascLesson[$id] = array(
+		'lessonid' => $id,
+		'name' => $name,
+		'periodspercard' => $periodspercard,
+		'periodsperweek' => $periodsperweek,
+		'subjectid' => $subjectid,
+		'classids' => $classids,
+		'teacherids' => $teacherids,
+	    );
+
+	    list($jel, $ids) = explode('-', $id);
+	    $tankorIds = explode('_', $ids);
+	    $tanarIds = explode(',', $teacherids);
+	    $osztalyIds = explode(',', $classids);
+//	    $targyJel = $subjectid;
+	    $targyJel = substr($id, 0, $targyJelHossz);
+	    for ($i = 0; $i < count($tankorIds); $i++) { // feltételezzük, hogy a tanárok és tankörök sorrendje megfelel egymásnak!
+		$tankorId = $tankorIds[$i];
+		if (!is_array($tankorOrarendiOra[$tankorId])) $tankorOrarendiOra[$tankorId] = array();
+		$tanarId = $mayorTankor[$tankorId]['tanar'][0];
+		if (!isset($tanarId)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hiányzó tanár hozzárendelés:tankorId=$tankorId - tanarId NINCS! - teacherids=$teacherids - lessonid=$id";
+		    $return = $ADAT['force'];
+		    continue;
+		} elseif(!in_array($tanarId, $tanarIds)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hibás tanár hozzárendelés:tankorId=$tankorId - tanarId=$tanarId - teacherids=$teacherids - lessonid=$id";
+		    $return = $ADAT['force'];
+		    continue;
+		}
+		$osztalyId = $mayorTankor[$tankorId]['osztaly'][0];
+		if (!in_array($osztalyId, $osztalyIds)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hibás osztály hozzárendelés:tankorId=$tankorId - osztalyId=$osztalyId - classids=$classids";
+		    $return = $ADAT['force'];
+		    if (!$return) continue;
+		}
+		if (!in_array("$tanarId:$osztalyId:$targyJel", $tankorOrarendiOra[$tankorId])) {
+		    $tankorOrarendiOra[$tankorId][] = "$tanarId:$osztalyId:$targyJel";
+		    $OrarendiOraTankor[] = array(
+			$tanarId, $osztalyId, $targyJel, $tankorId
+		    );
+		}
+	    }
+
+	} // foreach - lesson
+*/
+	// Kártyák feldolgozása
+	$cards = $dom->getElementsByTagName( 'card' );
+	if (count($cards)==0) $_SESSION['alert'][] = '::nincsenek kártyák az adott xml file-ban';
+	foreach ($cards as $card) {
+
+	    $lessonid = $card->getAttribute( 'lessonid' );
+	    if ($kihagyandoLesson[$lessonid]) continue;
+	    $classids = explode(',', ($card->getAttribute( 'classids' )));
+	    $subjectids = explode(',', ($card->getAttribute( 'subjectids' )));
+	    $teacherids = explode(',', ($card->getAttribute( 'teacherids' )));
+	    $classroomids = explode(',', ($card->getAttribute( 'classroomids' )));
+	    $day = ($card->getAttribute( 'day' ));
+	    $period = $card->getAttribute( 'period' );
+	    $periodspercard = $card->getAttribute( 'durationperiods' );
+
+	    $weeks = $card->getAttribute( 'weeks' );
+	    if ($weeks === $kihagyandoWeek) continue;
+
+	    if ($periodspercard == 0) $periodspercard = 1;
+
+	    for ($j = 0; $j < $periodspercard; $j++) {
+		foreach ($teacherids as $i => $tanarId) {
+			if (count($subjectids) == count($teacherids)) $targyJel = $ascTargy[ $subjectids[$i] ]['short'];
+			else $targyJel = $ascTargy[ $subjectids[0] ]['short']; // Csak az első subjectid-t vesszük figyelembe
+
+			if (count($classroomids) == count($teacherids)) $teremId = readVariable($classroomids[$i],'numeric unsigned','NULL');
+			else $teremId = readVariable($classroomids[0],'numeric unsigned','NULL'); // feltételezzük, hogy a tanárok és termek sorrendje megfelel
+
+			if (count($classids) == count($teacherids)) $osztalyJel = $ascOsztaly[ $classids[$i] ];
+			else $osztalyJel = $ascOsztaly[ $classids[0] ];
+
+			$OrarendiOra[] = array(
+			    $ADAT['orarendiHet'],$day,intval($period+$j),$tanarId,$osztalyJel,$targyJel,$teremId,$ADAT['tolDt'],$ADAT['igDt']
+			);			
+		}
+	    }
+
+	}
+
+	return $return;
+
+    }
+
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML update.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML update.php
new file mode 100644
index 00000000..07d06798
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML update.php	
@@ -0,0 +1,241 @@
+ 0) $xmlStr = mb_convert_encoding(fread($fp, $size), 'UTF-8', 'ISO-8859-2');
+        fclose($fp);
+	// A loadXML( $xmlStr );
+	if (!$dom) {
+	    $_SESSION['alert'][] = 'message:wrong_data:Hibás XML file='.$ADAT['fileName'];
+	    return false;
+	}
+
+	// Tankörök adatainak lekérdezése
+        $Tankorok = getTankorok(array("tanev=$tanev"));
+	$mayorTankor = array();
+        for ($i = 0; $i < count($Tankorok); $i++) {
+	    $tankorId = $Tankorok[$i]['tankorId'];
+            $Tankorok[$i]['osztaly'] = getTankorOsztalyaiByTanev($tankorId, $tanev, array('tagokAlapjan' => true, 'result' => 'id'));
+//            $Tankorok[$i]['tanar'] = getTankorTanaraiByInterval($tankorId, array('tanev' => $tanev, 'result' => 'csakId'));
+    	    $Tankorok[$i]['tanar'] = getTankorTanaraiByInterval(
+                $tankorId, array('tanev' => $tanev, 'tolDt' => $ADAT['tolDt'], 'igDt' => $ADAT['igDt'], 'result' => 'csakId')
+            );
+if ($tankorId == 104) {
+var_dump($Tankorok[$i]['tanar']);
+}
+	    $mayorTankor[$tankorId] = $Tankorok[$i];
+	}
+var_dump($ADAT['tolDt']);
+var_dump($ADAT['igDt']);
+	unset($Tankorok);
+
+	// A targyJel mező hosszának lekérdezése (32)
+        $q = "SHOW FIELDS FROM `%s`.orarendiOraTankor LIKE 'targyJel'";
+        $ret = db_query($q, array('fv' => 'loadFile/targyJel típusa', 'modul' => 'naplo', 'result' => 'record', 'values' => array($ADAT['tanevDb'])));
+	$targyJelHossz = intval(substr($ret['Type'], 8, -1));
+
+	// A már felvett orarendiOraTankor bejegyzések lekérdezése
+	$ret = getOrarendiOraTankor($tanev);
+	$tankorOrarendiOra = array();
+	for ($i = 0; $i < count($ret); $i++) {
+	    $kulcs = $ret[$i]['tanarId'].':'.$ret[$i]['osztalyJel'].':'.$ret[$i]['targyJel'];
+	    $tankorOrarendiOra[ $ret[$i]['tankorId'] ][] = $kulcs;
+	}
+
+
+	// ====================== Alapadatok lekérdezése az XML-ből =========================== //
+
+	$teachers = $dom->getElementsByTagName( 'teacher' );
+	foreach ($teachers as $teacher) {
+	    $id = $teacher->getAttribute( 'id' );
+	    $name = $teacher->getAttribute( 'name' );
+	    $ascTanar[$id] = $name;
+	}
+	$classes = $dom->getElementsByTagName( 'class' );
+	foreach ($classes as $class) {
+	    $id = $class->getAttribute( 'id' );
+	    $name = $class->getAttribute( 'name' );
+	    $ascOsztaly[$id] = $name;
+	}
+	$subjects = $dom->getElementsByTagName( 'subject' );
+	foreach ($subjects as $subject) {
+	    $id = $subject->getAttribute( 'id' );
+	    $name = $subject->getAttribute( 'name' );
+	    $short = $subject->getAttribute( 'short' );
+	    if (substr($id,0,1) == 'b') $ascBlokkTargy[substr($id, 1)] = $name;
+	    else $ascTargy[$id] = array('name' => $name, 'short' => $short);
+	}
+	$classrooms = $dom->getElementsByTagName( 'classroom' );
+	foreach ($classrooms as $classroom) {
+	    $id = $classroom->getAttribute( 'id' );
+	    $name = $classroom->getAttribute( 'name' );
+	    $ascTerem[$id] = $name;
+	}
+
+	//  =============== Lesson tábla feldolgozása ======================== //
+
+	$OrarendiOraTankor = array();
+	$lessons = $dom->getElementsByTagName( 'lesson' );
+	foreach ($lessons as $lesson) {
+	    $id = $lesson->getAttribute( 'id' );
+	    $name = $lesson->getAttribute( 'name' );
+	    $periodspercard = $lesson->getAttribute( 'periodspercard' );
+	    $periodsperweek = $lesson->getAttribute( 'periodsperweek' );
+	    $subjectid = $lesson->getAttribute( 'subjectid' );
+	    $classids = $lesson->getAttribute( 'classids' );
+	    $teacherids = $lesson->getAttribute( 'teacherids' );
+
+	    $ascLesson[$id] = array(
+		'lessonid' => $id,
+		'name' => $name,
+		'periodspercard' => $periodspercard,
+		'periodsperweek' => $periodsperweek,
+		'subjectid' => $subjectid,
+		'classids' => $classids,
+		'teacherids' => $teacherids,
+	    );
+
+	    list($jel, $ids) = explode('-', $id);
+	    $tankorIds = explode('_', $ids);
+	    $tanarIds = explode(',', $teacherids);
+	    $osztalyIds = explode(',', $classids);
+//	    $targyJel = $subjectid;
+	    $targyJel = substr($id, 0, $targyJelHossz);
+	    for ($i = 0; $i < count($tankorIds); $i++) { // feltételezzük, hogy a tanárok és tankörök sorrendje megfelel egymásnak!
+		$tankorId = $tankorIds[$i];
+		if (!is_array($tankorOrarendiOra[$tankorId])) $tankorOrarendiOra[$tankorId] = array();
+		$tanarId = $mayorTankor[$tankorId]['tanar'][0];
+		if (!isset($tanarId)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hiányzó tanár hozzárendelés:tankorId=$tankorId - tanarId NINCS! - teacherids=$teacherids - lessonid=$id";
+		    $return = $ADAT['force'];
+		    continue;
+		} elseif(!in_array($tanarId, $tanarIds)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hibás tanár hozzárendelés:tankorId=$tankorId - tanarId=$tanarId - teacherids=$teacherids - lessonid=$id";
+		    $return = $ADAT['force'];
+		    continue;
+		}
+		$osztalyId = $mayorTankor[$tankorId]['osztaly'][0];
+		if (!in_array($osztalyId, $osztalyIds)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hibás osztály hozzárendelés:tankorId=$tankorId - osztalyId=$osztalyId - classids=$classids";
+		    $return = $ADAT['force'];
+		    continue;
+		}
+		if (!in_array("$tanarId:$osztalyId:$targyJel", $tankorOrarendiOra[$tankorId])) {
+		    $tankorOrarendiOra[$tankorId][] = "$tanarId:$osztalyId:$targyJel";
+		    $OrarendiOraTankor[] = array(
+			$tanarId, $osztalyId, $targyJel, $tankorId
+		    );
+		}
+	    }
+
+	} // foreach - lesson
+
+	// Kártyák feldolgozása
+	$cards = $dom->getElementsByTagName( 'card' );
+	foreach ($cards as $card) {
+	    $lessonid = $card->getAttribute( 'lessonid' );
+//	    $periodspercard = $lAdat['periodspercard'];
+	    $periodspercard = $card->getAttribute( 'durationperiods' );
+	    $day = ($card->getAttribute( 'day' ));
+	    $period = $card->getAttribute( 'period' );
+	    $classroomids = explode(',', ($card->getAttribute( 'classroomids' )));
+	    $tanarIds = explode(',', $ascLesson[$lessonid]['teacherids']);
+
+	    list($jel, $ids) = explode('-', $lessonid);
+	    if (substr($jel,0,1) == 't') $tipus = 'tankor';
+	    elseif (substr($jel,0,1) == 'b') $tipus = 'blokk';
+	    else {
+		$_SESSION['alert'][] = "message:wrong_data:Hibás lesson:lessonid=$lessonid";
+		$return = $ADAT['force'];
+		if ($ADAT['force']) { // felvesszük az órarendi óra bejegyzést - még tankörhöz kell majd rendelni
+		    $osztalyIds = explode(',', $ascLesson[$lessonid]['classids']);
+		    foreach ($tanarIds as $i => $tanarId) {
+//			$targyJel = substr($lessonid, 0, $targyJelHossz);
+			$targyJel = $ascTargy[ $ascLesson[$lessonid]['subjectid'] ]['short'].'-'.$lessonid;
+			$teremId = readVariable($classroomids[$i],'numeric unsigned','NULL'); // feltételezzük, hogy a tanárok és termek sorrendje megfelel
+			if (count($osztalyIds) == count($tanarIds)) $osztalyJel = $ascOsztaly[ $osztalyIds[$i] ];
+			else $osztalyJel = $ascOsztaly[ $osztalyIds[0] ];
+			$OrarendiOra[] = array(
+			    $ADAT['orarendiHet'],$day,intval($period),$tanarId,$osztalyJel,$targyJel,$teremId,$ADAT['tolDt'],$ADAT['igDt']
+			);			
+		    }
+		}
+		continue;
+	    }
+//	    $oraszam = intval(substr($jel, 1, 1));
+	    $oraszam = $periodspercard;
+	    if ($oraszam == 0) $oraszam = 1;
+//	    if ($oraszam != $periodspercard) $_SESSION['alert'][] = "message:wrong_data:Óraszám=$oraszam - periodspercard=$periodspercard";
+	    $tankorIds = explode('_', $ids);
+//	    $targyJel = $ascLesson[$lessonid]['subjectid'];
+	    $targyJel = substr($lessonid, 0, $targyJelHossz);
+	    for ($i = 0; $i < count($tankorIds); $i++) {
+
+		$tankorId = $tankorIds[$i];
+		$tanarId = readVariable($mayorTankor[$tankorId]['tanar'][0], 'numeric unsigned', null);
+		list($index) = array_keys($tanarIds, $tanarId);
+		$osztalyId = readVariable($mayorTankor[$tankorId]['osztaly'][0], 'numeric unsigned', null);
+		$teremId = readVariable($classroomids[$index],'numeric unsigned','NULL'); // feltételezzük, hogy a tankor-ök és termek sorrendje megfelel
+		for ($j = 0; $j < $oraszam; $j++) {
+		    if (isset($tanarId) && isset($osztalyId)) {
+
+$q = "SELECT teremId FROM `%s`._orarendiOra WHERE het=%u AND nap=%u AND ora=%u AND tanarId=%u AND osztalyJel='%s' AND targyJel='%s' AND tolDt<='%s' AND '%s' <= igDt";
+$v = array($ADAT['tanevDb'], $ADAT['orarendiHet'], $day, intval($period+$j), $tanarId, $osztalyId, $targyJel, $ADAT['tolDt'], $ADAT['tolDt']);
+$ret = db_query($q, array('fv' => 'terem update', 'modul' => 'naplo', 'result' => 'value', 'values' => $v));
+if ($ret != '') {
+    $teremId = $ret;
+}
+else {
+    $teremId = 'NULL';
+}
+			$OrarendiOra[] = array(
+			    $ADAT['orarendiHet'],$day,intval($period+$j),$tanarId,$osztalyId,$targyJel,$teremId,$ADAT['tolDt'],$ADAT['igDt']
+			);
+		    }
+		}
+	    }
+
+	}
+
+	return $return;
+
+    }
+
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML.php
new file mode 100644
index 00000000..e4f2fde6
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-aSc Timetables XML.php	
@@ -0,0 +1,217 @@
+ 0) $xmlStr = mb_convert_encoding(fread($fp, $size), 'UTF-8', 'ISO-8859-2');
+        fclose($fp);
+	// A loadXML( $xmlStr );
+	if (!$dom) {
+	    $_SESSION['alert'][] = 'message:wrong_data:Hibás XML file='.$ADAT['fileName'];
+	    return false;
+	}
+
+	// Tankörök adatainak lekérdezése
+        $Tankorok = getTankorok(array("tanev=$tanev"));
+	$mayorTankor = array();
+        for ($i = 0; $i < count($Tankorok); $i++) {
+	    $tankorId = $Tankorok[$i]['tankorId'];
+            $Tankorok[$i]['osztaly'] = getTankorOsztalyaiByTanev($tankorId, $tanev, array('tagokAlapjan' => true, 'result' => 'id'));
+//            $Tankorok[$i]['tanar'] = getTankorTanaraiByInterval($tankorId, array('tanev' => $tanev, 'result' => 'csakId'));
+    	    $Tankorok[$i]['tanar'] = getTankorTanaraiByInterval(
+                $tankorId, array('tanev' => $tanev, 'tolDt' => $ADAT['tolDt'], 'igDt' => $ADAT['igDt'], 'result' => 'csakId')
+            );
+
+	    $mayorTankor[$tankorId] = $Tankorok[$i];
+	}
+	unset($Tankorok);
+
+	// A targyJel mező hosszának lekérdezése (32)
+        $q = "SHOW FIELDS FROM `%s`.orarendiOraTankor LIKE 'targyJel'";
+        $ret = db_query($q, array('fv' => 'loadFile/targyJel típusa', 'modul' => 'naplo', 'result' => 'record', 'values' => array($ADAT['tanevDb'])));
+        $targyJelHossz = intval(substr($ret['Type'], 8, -1));
+	// A már felvett orarendiOraTankor bejegyzések lekérdezése
+	$ret = getOrarendiOraTankor($tanev);
+	$tankorOrarendiOra = array();
+	for ($i = 0; $i < count($ret); $i++) {
+	    $kulcs = $ret[$i]['tanarId'].':'.$ret[$i]['osztalyJel'].':'.$ret[$i]['targyJel'];
+	    $tankorOrarendiOra[ $ret[$i]['tankorId'] ][] = $kulcs;
+	}
+
+
+	// ====================== Alapadatok lekérdezése az XML-ből =========================== //
+
+	$teachers = $dom->getElementsByTagName( 'teacher' );
+	foreach ($teachers as $teacher) {
+	    $id = $teacher->getAttribute( 'id' );
+	    $name = $teacher->getAttribute( 'name' );
+	    $ascTanar[$id] = $name;
+	}
+	$classes = $dom->getElementsByTagName( 'class' );
+	foreach ($classes as $class) {
+	    $id = $class->getAttribute( 'id' );
+	    $name = $class->getAttribute( 'name' );
+	    $ascOsztaly[$id] = $name;
+	}
+	$subjects = $dom->getElementsByTagName( 'subject' );
+	foreach ($subjects as $subject) {
+	    $id = $subject->getAttribute( 'id' );
+	    $name = $subject->getAttribute( 'name' );
+	    $short = $subject->getAttribute( 'short' );
+	    if (substr($id,0,1) == 'b') $ascBlokkTargy[substr($id, 1)] = $name;
+	    else $ascTargy[$id] = array('name' => $name, 'short' => $short);
+	}
+	$classrooms = $dom->getElementsByTagName( 'classroom' );
+	foreach ($classrooms as $classroom) {
+	    $id = $classroom->getAttribute( 'id' );
+	    $name = $classroom->getAttribute( 'name' );
+	    $ascTerem[$id] = $name;
+	}
+
+	//  =============== Lesson tábla feldolgozása ======================== //
+
+	$OrarendiOraTankor = array();
+	$lessons = $dom->getElementsByTagName( 'lesson' );
+	foreach ($lessons as $lesson) {
+	    $id = $lesson->getAttribute( 'id' );
+	    $name = $lesson->getAttribute( 'name' );
+	    $periodspercard = $lesson->getAttribute( 'periodspercard' );
+	    $periodsperweek = $lesson->getAttribute( 'periodsperweek' );
+	    $subjectid = $lesson->getAttribute( 'subjectid' );
+	    $classids = $lesson->getAttribute( 'classids' );
+	    $teacherids = $lesson->getAttribute( 'teacherids' );
+
+	    $ascLesson[$id] = array(
+		'lessonid' => $id,
+		'name' => $name,
+		'periodspercard' => $periodspercard,
+		'periodsperweek' => $periodsperweek,
+		'subjectid' => $subjectid,
+		'classids' => $classids,
+		'teacherids' => $teacherids,
+	    );
+
+	    list($jel, $ids) = explode('-', $id);
+	    $tankorIds = explode('_', $ids);
+	    $tanarIds = explode(',', $teacherids);
+	    $osztalyIds = explode(',', $classids);
+//	    $targyJel = $subjectid;
+	    $targyJel = substr($id, 0, $targyJelHossz);
+	    for ($i = 0; $i < count($tankorIds); $i++) { // feltételezzük, hogy a tanárok és tankörök sorrendje megfelel egymásnak!
+		$tankorId = $tankorIds[$i];
+		if (!is_array($tankorOrarendiOra[$tankorId])) $tankorOrarendiOra[$tankorId] = array();
+		$tanarId = $mayorTankor[$tankorId]['tanar'][0];
+		if (!isset($tanarId)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hiányzó tanár hozzárendelés:tankorId=$tankorId - tanarId NINCS! - teacherids=$teacherids - lessonid=$id";
+		    $return = $ADAT['force'];
+		    continue;
+		} elseif(!in_array($tanarId, $tanarIds)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hibás tanár hozzárendelés:tankorId=$tankorId - tanarId=$tanarId - teacherids=$teacherids - lessonid=$id";
+		    $return = $ADAT['force'];
+		    continue;
+		}
+		$osztalyId = $mayorTankor[$tankorId]['osztaly'][0];
+		if (!in_array($osztalyId, $osztalyIds)) {
+		    $_SESSION['alert'][] = "message:wrong_data:Hibás osztály hozzárendelés:tankorId=$tankorId - osztalyId=$osztalyId - classids=$classids";
+		    $return = $ADAT['force'];
+		    if (!$return) continue;
+		}
+		if (!in_array("$tanarId:$osztalyId:$targyJel", $tankorOrarendiOra[$tankorId])) {
+		    $tankorOrarendiOra[$tankorId][] = "$tanarId:$osztalyId:$targyJel";
+		    $OrarendiOraTankor[] = array(
+			$tanarId, $osztalyId, $targyJel, $tankorId
+		    );
+		}
+	    }
+
+	} // foreach - lesson
+
+	// Kártyák feldolgozása
+	$cards = $dom->getElementsByTagName( 'card' );
+	if (count($cards)==0) $_SESSION['alert'][] = '::nincsenek kártyák az adott xml file-ban';
+	foreach ($cards as $card) {
+	    $lessonid = $card->getAttribute( 'lessonid' );
+//	    $periodspercard = $lAdat['periodspercard'];
+	    $periodspercard = $card->getAttribute( 'durationperiods' );
+	    $day = ($card->getAttribute( 'day' ));
+	    // Ha nem az adott hétre vonatkozó bejegyzés, akkor ugorjunk...
+	    $weeks = ($card->getAttribute( 'weeks' ));
+	    if ($weeks != "" && $weeks !== "1" && substr($weeks,($ADAT['orarendiHet']-1),1) != "1") continue;
+	    $period = $card->getAttribute( 'period' );
+	    $classroomids = explode(',', ($card->getAttribute( 'classroomids' )));
+	    $tanarIds = explode(',', $ascLesson[$lessonid]['teacherids']);
+
+	    list($jel, $ids) = explode('-', $lessonid);
+	    if (substr($jel,0,1) == 't') $tipus = 'tankor';
+	    elseif (substr($jel,0,1) == 'b') $tipus = 'blokk';
+	    else {
+		$_SESSION['alert'][] = "message:wrong_data:Hibás lesson:lessonid=$lessonid";
+		$return = $ADAT['force'];
+		if ($ADAT['force']) { // felvesszük az órarendi óra bejegyzést - még tankörhöz kell majd rendelni
+		    $osztalyIds = explode(',', $ascLesson[$lessonid]['classids']);
+		    foreach ($tanarIds as $i => $tanarId) {
+//			$targyJel = substr($lessonid, 0, $targyJelHossz);
+			$targyJel = $ascTargy[ $ascLesson[$lessonid]['subjectid'] ]['short'].'-'.$lessonid;
+			$teremId = readVariable($classroomids[$i],'numeric unsigned','NULL'); // feltételezzük, hogy a tanárok és termek sorrendje megfelel
+			if (count($osztalyIds) == count($tanarIds)) $osztalyJel = $ascOsztaly[ $osztalyIds[$i] ];
+			else $osztalyJel = $ascOsztaly[ $osztalyIds[0] ];
+			$OrarendiOra[] = array(
+			    $ADAT['orarendiHet'],$day,intval($period),$tanarId,$osztalyJel,$targyJel,$teremId,$ADAT['tolDt'],$ADAT['igDt']
+			);			
+		    }
+		}
+		continue;
+	    }
+//	    $oraszam = intval(substr($jel, 1, 1));
+	    $oraszam = $periodspercard;
+	    if ($oraszam == 0) $oraszam = 1;
+//	    if ($oraszam != $periodspercard) $_SESSION['alert'][] = "message:wrong_data:Óraszám=$oraszam - periodspercard=$periodspercard";
+	    $tankorIds = explode('_', $ids);
+//	    $targyJel = $ascLesson[$lessonid]['subjectid'];
+	    $targyJel = substr($lessonid, 0, $targyJelHossz);
+	    for ($i = 0; $i < count($tankorIds); $i++) {
+
+		$tankorId = $tankorIds[$i];
+		$tanarId = readVariable($mayorTankor[$tankorId]['tanar'][0], 'numeric unsigned', null);
+		list($index) = array_keys($tanarIds, $tanarId);
+		$osztalyId = readVariable($mayorTankor[$tankorId]['osztaly'][0], 'numeric unsigned', null);
+		$teremId = readVariable($classroomids[$index],'numeric unsigned','NULL'); // feltételezzük, hogy a tankor-ök és termek sorrendje megfelel
+		for ($j = 0; $j < $oraszam; $j++) {
+		    if (isset($tanarId) && isset($osztalyId)) {
+			$OrarendiOra[] = array(
+			    $ADAT['orarendiHet'],$day,intval($period+$j),$tanarId,$osztalyId,$targyJel,$teremId,$ADAT['tolDt'],$ADAT['igDt']
+			);
+		    }  else {
+			$_SESSION['alert'][] = "message:wrong_data:Hiányzótanár vagy osztály:lessonid=$lessonid; day=$day; period=$period; tanarId=$tanarId; osztalyId=$osztalyId";
+		    }
+		}
+	    }
+
+	}
+
+	return $return;
+
+    }
+
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-csv.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-csv.php
new file mode 100644
index 00000000..511e3ee4
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-csv.php
@@ -0,0 +1,79 @@
+ __TANEV, 'result' => 'assoc'));
+	foreach ($Tanarok as $tanarId => $tanarAdat) $Tanar[ $tanarAdat['tanarNev'] ] = $tanarId;
+
+	$fp = fopen($ADAT['fileName'], 'r');
+	if (!$fp) return false;
+
+	// Az első sor a napok neveit tartalmazza
+	$Napok = explode('	', chop(fgets($fp, 1024)));
+	for ($i = 0; $i < count($Napok); $i++)
+	    if ($Napok[$i] == 'Hétfő') $Napok[$i] = 1;
+	    elseif ($Napok[$i] == 'Kedd') $Napok[$i] = 2;
+	    elseif ($Napok[$i] == 'Szerda') $Napok[$i] = 3;
+	    elseif ($Napok[$i] == 'Csütörtök') $Napok[$i] = 4;
+	    elseif ($Napok[$i] == 'Péntek') $Napok[$i] = 5;
+	    elseif ($Napok[$i] == 'Szombat') $Napok[$i] = 6;
+	    elseif ($Napok[$i] == 'Vasárnap') $Napok[$i] = 7;
+	// A második sor az adott napon belöli óraszámot adja
+	$oraszamok = explode('	', chop(fgets($fp, 1024)));
+	$return = true;
+	while ($sor = fgets($fp, 1024)) {
+
+	    // Két sor egy tanár órarendjét tartalmazza
+	    $S1 = explode('	', chop($sor));
+	    $S2 = explode('	', chop(fgets($fp, 1024)));
+	    // Az első sor első mezője a tanár neve
+	    if ($Tanar[ $S1[0] ] != '') {
+		$tanar = $Tanar[ $S1[0] ];
+	    } else {
+		$_SESSION['alert'][] = 'message:wrong_data:tanarNev='.$S1[0]; // hiányzó vagy hibás tanárnév esetén nem tudjuk betölteni az órarendet
+		$return = false;
+		$tanar = $S1[0] . ' / ' . $Tanar[ $S1[0] ];
+	    }
+	    // A második cellátol jönnek az órák - első sor a tárgy, második az osztály
+	    for ($i = 1; $i < count($S1); $i++) {
+		if ($Napok[$i] != 0) $nap = $Napok[$i];
+		if ($S1[$i] != '') {
+
+		    $ora = $oraszamok[$i];
+		    $targy = $S1[$i];
+		    $osztaly = $S2[$i];
+
+		    $OrarendiOra[] = array(
+			$ADAT['orarendiHet'],$nap,$ora,$tanar,$osztaly,$targy,$ADAT['tolDt'],$ADAT['igDt']
+		    );
+
+		}
+
+	    }
+
+	}
+
+	fclose($fp);
+	return $return;
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-default.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-default.php
new file mode 100644
index 00000000..a78939df
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-default.php
@@ -0,0 +1,33 @@
+
diff --git "a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-eKr\303\251ta import.php" "b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-eKr\303\251ta import.php"
new file mode 100644
index 00000000..cac44633
--- /dev/null
+++ "b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/convert-eKr\303\251ta import.php"	
@@ -0,0 +1,128 @@
+ 1, ..., vasárnap --> 7 alakra
+	4. Óra (az adott napon belül)	- pozitív egész szám			- --> ora
+	5. Osztály			- az osztály jele vagy üres		- --> osztalyJel (első része)
+	6. Csoport			- a csoport jele a Krétában		- --> osztalyJel (második része)
+	7. Tantárgy			- a tárgy hivatalos neve		- --> targyJel
+	8. Tanár			- a tanár neve				- konvertáljuk tanarId-vé
+	9. Helyiség			- terem száma/neve			- konvertáljuk teremId-vé
+	0. -- üres --			- üres oszlop				- eldobjuk
+	1. Szabad			- üres oszlop				- eldobjuk
+    */
+
+    require_once('include/modules/naplo/share/tanar.php');
+
+    $vanErvenyesseg = false;
+
+    function terem2teremId($terem) { // -- TODO kretaNev
+	if ($terem == 'könyvtár') return 12;
+	else if ($terem == 'fonotéka') return 13;
+	else if ($terem == 'studió') return 14;
+	else if ($terem == 'tornaterem 1.') return 26;
+	else if ($terem == 'tornaterem 2.') return 27;
+	else if ($terem == 'konditerem') return 29;
+	else if ($terem == 'szuterén') return 401;
+	else if ($terem == 'klub') return 402;
+	else if ($terem == 'díszterem') return 601;
+	else return intval($terem);
+    }
+
+    function loadFile($ADAT) {
+
+        global $OrarendiOra;
+
+        $OrarendiOra = array();
+
+	$Napok = array('hétfő'=>1, 'kedd'=>2, 'szerda'=>3, 'csütörtök'=>4, 'péntek'=>5, 'szombat'=>6, 'vasárnap'=>7);
+        $Tanarok = getTanarok(array('tanev' => __TANEV, 'result' => 'assoc', 'extraAttrs' => 'kretaNev'));
+
+        foreach ($Tanarok as $tanarId => $tanarAdat) {
+	    if ($tanarAdat['tanarNev']!='') $Tanar[ $tanarAdat['tanarNev'] ] = $tanarId;
+	    if ($tanarAdat['kretaNev']!='') $Tanar[ $tanarAdat['kretaNev'] ] = $tanarId;
+	}
+	/* VMG további HACK!!! --TODO */
+	$Tanar['Pintér László (1961. 03. 14.)'] = $Tanar['Pintér László'];
+	$Tanar['Pintér László (1975. 02. 25.)'] = $Tanar['Pintér László Sp'];
+	$Tanar['Balkayné Kalló Ágnes Zsófia'] = $Tanar['Balkayné Kalló Ágnes'];
+	$Tanar['Füredi-Szabó Tünde Erzsébet'] = $Tanar['Füredi-Szabó Tünde'];
+	$Tanar['Jäger Csaba Miklós'] = $Tanar['Jäger Csaba'];
+	$Tanar['dr Bándi Irisz Réka'] = $Tanar['Dr. Bándi Írisz Réka'];
+	$Tanar['Nagyné Hodula Andrea Éva'] = $Tanar['Nagyné Hodula Andrea'];
+	$Tanar['Gondi Ferenc Lászlóné'] = $Tanar['Gondi Ferencné'];
+	$Tanar['dr Jánossyné dr Solt Anna Mária'] = $Tanar['Dr Jánossyné Dr. Solt Anna'];
+	$Tanar['Mészárosné Romhányi Margit Mária'] = $Tanar['Mészárosné Romhányi Margit'];
+	$Tanar['Jenes Béla Tibor'] = $Tanar['Jenes Béla'];
+	$Tanar['Csapody Barbara Mária'] = $Tanar['Csapody Barbara'];
+	$Tanar['dr Szabóné Karácsonyi Virág'] = $Tanar['dr. Szabóné Karácsonyi Virág'];
+	$Tanar['dr Kas Géza Imre'] = $Tanar['Dr. Kas Géza Imre'];
+	
+
+        $fp = fopen($ADAT['fileName'], 'r');
+        if (!$fp) return false;
+
+	// Az első  mezőneveket tartalmaz - eldobjuk
+	$sor = fgets($fp, 1024);
+	$ok = true; $OrarendiOra = array();
+	// Az adatsorok feldolgozása
+	$kulcs2index = $kulcsDb = array();
+	while ($sor = fgets($fp, 1024)) {
+
+	    $rec = explode('	', chop($sor));
+	    if (!$vanErvenyesseg) array_unshift($rec, "", "");
+
+	    $nap = $Napok[$rec[3]];
+	    $ora = $rec[4];
+	    if (!isset($Tanar[$rec[8]])) {
+		    $_SESSION['alert'][] = 'message:wrong_data:Hiányzó azonosító (tanár név='.$rec[8].')';
+		    $ok = false;
+	    } else {
+		$tanarId = $Tanar[$rec[8]];
+	    }
+	    $osztalyJel = $rec[5].$rec[6];
+	    $targyJel = $rec[7];
+	    $teremId = terem2teremId($rec[9]); 
+	    $tolDt = $ADAT['tolDt'];
+	    $igDt = $ADAT['igDt'];
+
+	    if ($rec[2] == 'A hét') {
+		$het = 1;
+            	$OrarendiOra[] = array( $het,$nap,$ora,$tanarId,$osztalyJel,$targyJel,$teremId,$tolDt,$igDt );
+	    } elseif ($rec[2] == 'B hét') {
+		$het = 2;
+            	$OrarendiOra[] = array( $het,$nap,$ora,$tanarId,$osztalyJel,$targyJel,$teremId,$tolDt,$igDt );
+	    } elseif ($rec[2] == 'Minden héten') {
+		$het = 1;
+            	$OrarendiOra[] = array( $het,$nap,$ora,$tanarId,$osztalyJel,$targyJel,$teremId,$tolDt,$igDt );
+		$het = 2;
+            	$OrarendiOra[] = array( $het,$nap,$ora,$tanarId,$osztalyJel,$targyJel,$teremId,$tolDt,$igDt );
+	    }
+
+
+	}
+
+	fclose($fp);
+	return $ok;
+
+    }
+
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendBetolto.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendBetolto.php
new file mode 100644
index 00000000..4a870b78
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendBetolto.php
@@ -0,0 +1,82 @@
+ 'orarendBetoltes'));
+            db_start_trans($lr);
+	    if ($ADAT['lezaras']) {
+                // tol-ig között töröljük az adott hét órarendi bejegyzéseit
+                $q = "DELETE FROM `%s`.orarendiOra WHERE het=%u AND '%s'<=tolDt AND igDt<='%s'";
+		$v = array($ADAT['tanevDb'], $ADAT['orarendiHet'], $ADAT['tolDt'], $ADAT['igDt']);
+                $ok = $ok && db_query($q, array('fv' => 'orarendBetoltes/közti törlés', 'modul' => 'naplo', 'values' => $v), $lr);
+                // A keresztülnyúlókat ketté kell vágni
+                $q = "INSERT INTO `%s`.orarendiOra
+                        SELECT het,nap,ora,tanarId,osztalyJel,targyJel,teremId,'%s' + INTERVAL 1 DAY AS tolDt,igDt
+                        FROM `%s`.orarendiOra WHERE het=%u AND tolDt<'%s' AND igDt>'%s'";
+		$v = array($ADAT['tanevDb'], $ADAT['igDt'], $ADAT['tanevDb'], $ADAT['orarendiHet'], $ADAT['tolDt'], $ADAT['igDt']);
+                $ok = $ok && db_query($q, array('fv' => 'orarendBetoltes/keresztülnyúló kettévágása', 'modul' => 'naplo', 'values' => $v), $lr);
+                // a "balról" benyúlóakat tolDt-ig levágjuk
+                $q = "UPDATE `%s`.orarendiOra SET igDt='%s' - INTERVAL 1 DAY WHERE tolDt<'%s' AND '%s'<=igDt";
+		$v = array($ADAT['tanevDb'], $ADAT['tolDt'], $ADAT['tolDt'], $ADAT['tolDt']);
+                $ok = $ok && db_query($q, array('fv' => 'orarendBetoltes/balról levág', 'modul' => 'naplo', 'values' => $v), $lr);
+                // a "jobbról" benyúlóakat igDt-től levágjuk
+                $q = "UPDATE `%s`.orarendiOra SET tolDt='%s' + INTERVAL 1 DAY WHERE '%s' 'orarendBetoltes/jobbról levág', 'modul' => 'naplo', 'values' => $v), $lr);
+	    }
+
+            // felvesszük az új bejegyzéseket
+            $v = $V = array();
+            for ($i = 0; $i < count($OrarendiOra); $i++) {
+                if ($OrarendiOra[$i][3] != 'NULL') {
+		    // Nem hibás, de jobb lenne a %s-t csak sztring-ekre hasznáni, a NULL-ra nem...
+		    if ($OrarendiOra[$i][6] == '') $OrarendiOra[$i][6] = 'NULL';
+		    if ($OrarendiOra[$i][6] == 'NULL')
+			$q =  "INSERT INTO `%s`.orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt)
+                		    VALUES (%u, %u, %u, %u, '%s', '%s', %s, '%s', '%s')";
+		    else 
+			$q = "INSERT INTO `%s`.orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt)
+                		    VALUES (%u, %u, %u, %u, '%s', '%s', %u, '%s', '%s')";
+		    $v = mayor_array_join(array($ADAT['tanevDb']), $OrarendiOra[$i]);
+        	    $ok = $ok && db_query($q, array('fv' => 'orarendBetoltes/orarendiOra beszúrás #'.$i, 'modul' => 'naplo', 'values' => $v), $lr);
+		}
+	    }
+/*
+            $v = $V = array();
+            for ($i = 0; $i < count($OrarendiOra); $i++)
+                if ($OrarendiOra[$i][3] != 'NULL') {
+		    // Nem hibás, de jobb lenne a %s-t csak sztring-ekre hasznáni, a NULL-ra nem...
+		    if ($OrarendiOra[$i][6] == 'NULL') $V[] = "(%u, %u, %u, %u, '%s', '%s', %s, '%s', '%s')";
+		    else $V[] = "(%u, %u, %u, %u, '%s', '%s', %u, '%s', '%s')";
+		    $v = array_merge($v, $OrarendiOra[$i]);
+		}
+            $q = "INSERT INTO `%s`.orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt)
+                    VALUES ".implode(',', $V);
+	    array_unshift($v, $ADAT['tanevDb']);
+            $ok = $ok && db_query($q, array('fv' => 'orarendBetoltes/orarendiOra beszúrás', 'modul' => 'naplo', 'values' => $v), $lr);
+*/
+            // orarendiOraTankor tábla feltöltése
+            if (is_array($OrarendiOraTankor) && count($OrarendiOraTankor) > 0) {
+                $v = $V = array();
+                for ($i = 0; $i < count($OrarendiOraTankor); $i++) {
+                    $V[] = "(%u, '%s', '%s', %u)";
+		    $v = mayor_array_join($v, $OrarendiOraTankor[$i]);
+		}
+		array_unshift($v, $ADAT['tanevDb']);
+                $q = "INSERT INTO `%s`.orarendiOraTankor (tanarId, osztalyJel, targyJel, tankorId) VALUES ".implode(',', $V);
+                $ok = $ok && db_query($q, array('fv' => 'orarendBetoltes/orarendiOraTankor beszúrás', 'modul' => 'naplo', 'values' => $v), $lr);
+            }
+
+            if ($ok) {
+                db_commit($lr);
+                $_SESSION['alert'][] = 'info:success';
+            } else {
+                db_rollback($lr);
+            }
+        db_close($lr);
+	return $ok;
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendEllenorzes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendEllenorzes.php
new file mode 100644
index 00000000..43639165
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendEllenorzes.php
@@ -0,0 +1,70 @@
+ 'checkOrarendiOraTankor', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v));
+
+    }
+
+    function checkTankorOraszam($ADAT) {
+
+
+	$return = array();
+
+	if (!is_array($ADAT['orarendiHetek']) || count($ADAT['orarendiHetek']) == 0) {
+	    $_SESSION['alert'][] = 'message:wrong_data:checkTankorOraszam:orarendiHetek';
+	    return $return;
+	}
+
+	$tanevDb = tanevDbNev(__INTEZMENY, $ADAT['tanev']);
+	$hetDb = count($ADAT['orarendiHetek']);
+	$q = "SELECT tankorId,COUNT(*)/$hetDb AS hetiOraszam FROM `%s`.orarendiOraTankor 
+		LEFT JOIN `%s`.orarendiOra USING (tanarId,osztalyJel,targyJel) 
+		WHERE tolDt <= '%s' AND '%s' <= igDt GROUP BY tankorId";
+	$v = array($tanevDb, $tanevDb, $ADAT['dt'], $ADAT['dt']);
+	$ret = db_query($q, array('fv' => 'checkTankorOraszam', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $v));
+
+	for ($i = 0; $i < count($ADAT['tankorok']); $i++) {
+
+	    $A = $ADAT['tankorok'][$i]; $tankorId = $A['tankorId'];
+	    if ($A['hetiOraszam'] != $ret[$tankorId]['hetiOraszam']) $return[] = array(
+		'tankorId' => $tankorId,
+		'tankorNev' => $A['tankorNev'],
+		'tankorHetiOraszam' => number_format(floatval($A['hetiOraszam']), 2, ',', ''),
+		'orarendHetiOraszam' => number_format(floatval($ret[$tankorId]['hetiOraszam']), 2, ',', '')
+	    );
+	}
+
+	return $return;
+
+    }
+
+    function checkHianyzoTermek($ADAT) {
+
+	$tanevDb = tanevDbNev(__INTEZMENY, $ADAT['tanev']);
+	$q = "SELECT het,nap,ora,TRIM(CONCAT_WS(' ',viseltNevElotag,viseltCsaladinev,viseltUtonev)) AS tanarNev,osztalyNaplo.osztalyJel,targyJel
+		FROM `%s`.orarendiOra LEFT JOIN ".__INTEZMENYDBNEV.".tanar USING (tanarId)
+		LEFT JOIN `%s`.osztalyNaplo ON osztalyId=orarendiOra.osztalyJel 
+		WHERE teremId IS NULL AND tolDt <= '%s' AND '%s' <= igDt
+		ORDER BY tanarNev, osztalyNaplo.osztalyJel";
+	$v = array($tanevDb, $tanevDb, $ADAT['dt'], $ADAT['dt']);
+	return db_query($q, array('fv' => 'checkHianyzoTermek', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v));
+
+    }
+
+    function checkTeremUtkozes($ADAT) {
+
+	$q = "SELECT het,nap,ora,teremId,COUNT(*) AS db FROM `%s`.orarendiOra 
+		WHERE teremId IS NOT NULL AND tolDt <= '%s' AND '%s' <= igDt
+		GROUP BY het,nap,ora,teremId HAVING db>1";
+	$v = array(tanevDbNev(__INTEZMENY, $ADAT['tanev']), $ADAT['dt'], $ADAT['dt']);
+	return db_query($q, array('fv' => 'checkTeremUtkozes', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v));
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendModosito.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendModosito.php
new file mode 100644
index 00000000..991eb0c5
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendModosito.php
@@ -0,0 +1,309 @@
+=dt
+			HAVING nap.dt IS NULL";
+
+            return db_query($q, array('fv' => 'getHibasOrak', 'modul' => 'naplo', 'result' => 'indexed'), $lr);
+    }
+
+    function checkHaladasi($SET = array('tolDt'=>null,'igDt'=>null)) {
+	$q = "SELECT dt,count(*) as db FROM ora WHERE dt BETWEEN '%s' AND '%s' GROUP BY dt";
+	$v = array($SET['tolDt'],$SET['igDt']);
+	return db_query($q, array('fv' => 'checkHaladasi', 'modul' => 'naplo', 'result' => 'assoc','keyfield'=>'dt','values'=>$v));
+    }
+
+   function orarendiOraTankorFelvesz($ADAT) { // ez egy másolata az orarendiOraTankorAssoc() függvénynek...
+
+        $lr = db_connect('naplo');
+/*
+        foreach( array_unique($_POST['ORARENDKULCSOK']) as $_k => $_v) {
+            list($_tanarId,$_osztalyJel,$_targyJel) = explode('%',$_v);
+            $q = "DELETE FROM orarendiOraTankor WHERE tanarId=%u AND osztalyJel='%s' AND targyJel='%s'";
+            $v = array($_tanarId, $_osztalyJel, $_targyJel);
+            db_query($q, array('fv' => 'orarendiOraTankorAssoc', 'modul' => 'naplo', 'values' => $v), $lr);
+        }
+*/
+
+//        for ($i = 0; $i < count($ADAT); $i++) {
+	    $_tanarId = $ADAT['tanarId'];
+	    $_osztalyJel = $ADAT['osztalyJel'];
+	    $_targyJel = $ADAT['targyJel'];
+	    $_tankorId = $ADAT['tankorId'];
+                if (!is_null($_tanarId)) {
+                    // bugfix 152->153. Muszáj kitörölni, mert előtte már lehet hogy egy másik tankörhöz rögzítettük ugyanazt a kulcsot... ????
+                    // ez így persze egy sor felesleges query.
+                    $q = "DELETE FROM orarendiOraTankor WHERE tanarId=%u AND osztalyJel='%s' AND targyJel='%s'";
+                    $v = array($_tanarId, $_osztalyJel, $_targyJel);
+                    $db = db_query($q, array('fv' => 'orarendTankor', 'modul' => 'naplo', 'result' => 'affected rows', 'values' => $v), $lr);
+                    $q = "REPLACE INTO orarendiOraTankor (tanarId,osztalyJel,targyJel,tankorId) VALUES (%u, '%s', '%s', %u)";
+                    $v = array($_tanarId, $_osztalyJel, $_targyJel, $_tankorId);
+                    db_query($q, array('fv' => 'orarendTankor', 'modul' => 'naplo', 'values' => $v), $lr);
+                }
+//        }
+        db_close($lr);
+
+    }
+
+    function orarendiOraTorol($ADAT) {
+
+            //$q = "DELETE FROM orarendiOra WHERE tanarId=%u AND osztalyJel='%s' AND targyJel='%s' AND tolDt='%s'";
+            //$v = array($ADAT['tanarId'], $ADAT['osztalyJel'], $ADAT['targyJel'], $ADAT['tolDt']);
+            $q = "DELETE FROM orarendiOra WHERE het=%u AND nap=%u AND ora=%u AND tanarId=%u AND tolDt='%s'";
+            $v = array($ADAT['het'],$ADAT['nap'], $ADAT['ora'], $ADAT['tanarId'], $ADAT['tolDt']);
+            db_query($q, array('fv' => 'orarendiOraTorol', 'modul' => 'naplo', 'values' => $v), $lr);
+
+    }
+
+    function getFelvehetoBlokk($ADAT) {
+
+	$RET = array();
+	if (count($ADAT['tankorIds']) > 0) {
+	    $q = "SELECT DISTINCT blokkId, blokkNev FROM tankorBlokk LEFT JOIN blokk USING (blokkId) WHERE tankorId IN (".implode(',',$ADAT['tankorIds']).")";
+	    $RET = db_query($q, array('fv'=>'getFelvehetoBlokkok', 'modul' => 'naplo', 'result' => 'indexed'));
+	}
+	return $RET;
+
+    }
+
+    function teremModosit($ADAT) {
+	if ($ADAT['tolDt']=='' || $ADAT['igDt']=='') return false;
+	$ok = true;
+	$lr = db_connect('naplo');
+	db_start_trans($lr);
+
+	if (is_null($ADAT['teremId'])) {
+	    $v = array($ADAT['het'], $ADAT['nap'], $ADAT['ora'], $ADAT['tanarId'], $ADAT['tolDt'], $ADAT['igDt']);
+	    $q = "UPDATE orarendiOra SET teremId = NULL WHERE het=%u AND nap=%u AND ora=%u AND tanarId=%u AND tolDt<='%s' AND '%s'<=igDt";
+	    $r = db_query($q, array('fv'=>'teremModosit', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr);
+	} else {
+
+	// Ellenőrizzük hogy foglalt-e...
+	    $v = array($ADAT['het'], $ADAT['nap'], $ADAT['ora'], $ADAT['teremId'], $ADAT['tolDt'], $ADAT['igDt']);
+	    $q = "SELECT * FROM orarendiOra WHERE het=%u AND nap=%u AND ora=%u AND teremId=%u AND tolDt<='%s' AND '%s'<=igDt";
+	    $r = db_query($q, array('fv'=>'teremModosit', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v, 'rollback' => true), $lr);
+	    if (count($r)>0) {
+        	// ez a terem foglalt ... mi legyen?
+		$_SESSION['alert'][] = 'info:nem_szabadTerem:'.$ADAT['teremId'];
+		db_rollback($lr); db_close($lr);
+		return false;
+	    }
+	// Van ilyen bejegyzés???
+	    $v = array($ADAT['het'], $ADAT['nap'], $ADAT['ora'], $ADAT['tanarId'], $ADAT['igDt'], $ADAT['tolDt']);
+//	    $q = "SELECT * FROM orarendiOra WHERE het=%u AND nap=%u AND ora=%u AND tanarId=%u AND tolDt<='%s' AND '%s'<=igDt";
+	    $q = "SELECT * FROM orarendiOra WHERE het=%u AND nap=%u AND ora=%u AND tanarId=%u";
+	    $ret = db_query($q, array('fv'=>'teremModosit', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v, 'rollback' => true), $lr);
+	    if ($ret===false) { $_SESSION['alert'][] = 'info:nincs_bejegyzes:'; db_rollback($lr); db_close($lr); return false; } 
+	// - -- --- ---- -----
+	    for ($i=0; $i'teremModosit','modul'=>'naplo','values'=>$v, 'rollback'=>true), $lr);
+		    if ($r===false) $ok=false;
+		}
+	    }
+	}
+
+	if ($ok) db_commit($lr); else db_rollback($lr);
+	db_close($lr);
+
+
+    }
+
+    function pluszBlokkFelvesz($ADAT) {
+
+	$lr = db_connect('naplo');
+	db_start_trans($lr);
+
+	$TANKORIDK = getTankorokByBlokkId(array($ADAT['blokkId']));
+	for ($i=0; $i $ADAT['tolDt'], 'igDt' => $ADAT['igDt']));
+	    $A['tanarId'] = $A['tanarIdk'][0]['tanarId']; // az elsőt vegyük alapul ha több van
+	    if ($A['tanarId']>0) {
+		$ok = pluszOraFelvesz($A, $lr);
+		dump($A);
+	    }else{
+		$_SESSION['alert'][]= 'info:ennek a tankörnek nincs ('.serialize($A['tankorId']).') tanára az adott intervallumban';
+	    }
+	    if ($ok === false) break;
+	}
+
+	if ($ok) db_commit($lr); else db_rollback($lr);
+	db_close($lr);
+
+    }
+
+
+
+    function pluszOraFelvesz($ADAT, $olr='') {
+
+	if ($ADAT['tolDt']=='' || $ADAT['igDt']=='') return false;
+
+	// kell egyáltalán ellenőrizni az ütközéseket?
+	// Ha a felveendő órán nem kötelező a jelenlét, nem érdekel minket az egész!
+	$TA = getTankorAdat($ADAT['tankorId']);
+
+	$ok = true;
+	if ($olr=='') {
+	    $lr = db_connect('naplo');
+	    db_start_trans($lr);
+	} else {
+	    $lr = $olr;
+	}
+
+	// Csak akkor ellenőrizzük, ha tényleg kell - persze értelmetlen állapot is előidézhető így...
+	if ($TA[$ADAT['tankorId']][0]['jelenlet'] != 'nem kötelező') {
+	    // ütközések ellenőrzése
+	    // az adott tanárnak lett-e közben azon a helyen órája?
+
+	    // -- tanarLukasOrajae();
+
+	    // a diákok ütköznek-e? (jelenlét és felmentés vizsgálata
+	    $DIAKOK = getTankorDiakjaiByInterval($ADAT['tankorId'], __TANEV, $ADAT['tolDt'], $ADAT['igDt'], $lr);
+	    for ($i=0; $i'pluszOraFelvesz-check','modul'=>'naplo', 'result'=>'indexed', 'values'=> $v), $lr);
+		    for ($n=0; $n='%s' or tankorDiak.kiDt IS NULL))
+				LEFT JOIN ".__INTEZMENYDBNEV.".tankorDiakFelmentes ON (tankorDiakFelmentes.felmentesTipus='óralátogatás alól' AND orarendiOraTankor.tankorId = tankorDiak.tankorId AND tankorDiakFelmentes.diakId=%u AND tankorDiakFelmentes.beDt<='%s' AND (tankorDiakFelmentes.kiDt>='%s' or tankorDiakFelmentes.kiDt IS NULL))
+				LEFT JOIN ".__INTEZMENYDBNEV.".tankorTipus USING (tankorTipusId)
+				WHERE tankorTipus.jelenlet='kötelező' AND tolDt<='%s' AND igDt>='%s' AND orarendiOra.het=%u AND orarendiOra.nap=%u AND orarendiOra.ora=%u 
+				AND tankorDiak.tankorId IS NOT NULL AND tankorDiakFelmentes.tankorId IS NULL";
+			$v = array($_diakId,$dt,$dt, $_diakId, $dt, $dt,$dt,$dt,$ADAT['het'],$ADAT['nap'],$ADAT['ora']);
+			$UTKOZIK = db_query($q, array('fv'=>'pluszOraFelvesz-pre','modul'=>'naplo','result'=>'indexed', 'values'=> $v), $lr);
+			// és jelezzük a hibát!
+			// megj: ennél azért szofisztikáltabb is lehetne a hibajelentő függvény...
+			if (count($UTKOZIK)>0) {
+                    	    // sajnos ütközés van, nem vehetjük fel:
+			    $ok = false;
+			    if (is_null($_DA[$_diakId])) {
+				$_DA[$_diakId] = getDiakAdatById($_diakId,null,$lr); // csak akkor, ha le kell kérdezni
+				$db_utkozes++;
+			    }
+			    $_U = array();
+                            for ($u=0; $u'pluszOraFelvesz','modul'=>'naplo','result'=>'record', 'values'=> array($ADAT['tanarId'],$ADAT['tankorId'])), $lr);
+	    if ($record===false || $record['targyJel']=='' || $record['osztalyJel']=='') {
+		$record=array(); // reset
+		$record['targyJel'] = 'm-'.$ADAT['tankorId'];
+		$record['osztalyJel'] = 'm-'.$ADAT['tanarId'];
+		$q = "REPLACE INTO orarendiOraTankor (tanarId,osztalyJel,targyJel,tankorId) VALUES (%u,'%s','%s',%u)";
+		$r = db_query($q, array('fv'=>'pluszOraFelvesz/b','modul'=>'naplo','values'=> array($ADAT['tanarId'],$record['osztalyJel'],$record['targyJel'],$ADAT['tankorId'])), $lr);
+		if ($r===false) $ok = false;
+	    } // különben van megfelelő bejegyzésünk
+	    if ($ADAT['teremId']=='') $ADAT['teremId'] = "null";
+	    else $ADAT['teremId'] = intval($ADAT['teremId']);
+	    if ($ok===true) {
+		// Nem hibás, de jobb lenne a %s-t csak sztring-ekre használni, NULL-t valahogy másképp kezelni.
+		$q = "INSERT INTO orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt) VALUES (%u,%u,%u,%u,'%s','%s',%s,'%s','%s')";
+		$v = array($ADAT['het'],$ADAT['nap'],$ADAT['ora'],$ADAT['tanarId'],$record['osztalyJel'],$record['targyJel'],$ADAT['teremId'],$ADAT['tolDt'],$ADAT['igDt']);
+		$r = db_query($q, array('fv'=>'pluszOraFelvesz/c','modul'=>'naplo','values'=>$v), $lr);
+		if ($r===false) $ok = false;
+	    }
+	    if ($ok===true && $ADAT['haladasiModositando']!=0) {
+		// ciklus $ADAT['tolDt'],$ADAT['igDt'] között, órarend
+		$q = "SELECT DISTINCT dt,count(ora.oraId) AS db FROM nap LEFT JOIN ora USING (dt) WHERE nap.tipus='tanítási nap' AND orarendiHet=%u AND dt>='%s' AND dt<='%s' AND (WEEKDAY(dt)+1)=%u GROUP BY dt HAVING db>0 ORDER BY dt";
+		$v = array($ADAT['het'],$ADAT['tolDt'],$ADAT['igDt'],$ADAT['nap']);
+		$NAP = db_query($q, array('fv'=>'pluszOraFelvesz/ora','modul'=>'naplo','values'=>$v,'result'=>'indexed'), $lr);
+		for ($i=0; $i$_dt,
+                            'ora'=>$ADAT['ora'],
+                            'ki'=> $ADAT['tanarId'],
+                            'tipus'=>'normál',
+			    'tankorId'=>$ADAT['tankorId'],
+                            'eredet'=>'órarend',
+                            'leiras'=>'',
+                            'feladatTipusId'=>null,
+                            'munkaido'=>'lekötött'),
+        	    $lr); // az ütközést nem kezeljük külön. Ha van, akkor is tovább mehetünk
+		}
+	    }
+	} else {
+    	    if (is_array($_RESZLET) && count($_RESZLET)>0)
+		$_SESSION['alert'][] = 'info:utkozes:'.$db_utkozes.':'.$ADAT['het'].':'.$ADAT['nap'].':'.$ADAT['ora'].':'.implode(' *** ',$_RESZLET);
+	}
+	if ($olr=='') {
+	    if ($ok) db_commit($lr); else db_rollback($lr);
+	    db_close($lr);
+	} else {
+	    return $ok;
+	}
+    }
+
+    function orarendiOraLezar($ADAT) {
+
+	$lr = db_connect('naplo', array('fv' => 'orarendiOraLezar'));
+	db_start_trans($lr);
+
+	    // Az érintett órarendi bejegyzés lekérdezése
+	    $v = array($ADAT['het'], $ADAT['nap'], $ADAT['ora'], $ADAT['tanarId'], $ADAT['dt'], $ADAT['dt'], $ADAT['kulcsTolDt']);
+	    $q = "SELECT * FROM orarendiOra WHERE het=%u AND nap=%u AND ora=%u AND tanarId=%u AND tolDt<='%s' AND '%s'<=igDt AND tolDt='%s'";
+	    $ret = db_query($q, array('fv'=>'orarendiOraLezar', 'modul' => 'naplo', 'result' => 'record', 'values' => $v, 'rollback' => true), $lr);
+	    if ($ret===false) { db_close($lr); return false; } 
+	    if (count($ret)>0 && $ret['teremId'] == '') $ret['teremId'] = 'NULL';	    
+
+	    // Az érintett bejegyzés törlése
+	    $q = "DELETE FROM orarendiOra WHERE het=%u AND nap=%u AND ora=%u AND tanarId=%u AND tolDt<='%s' AND '%s'<=igDt AND tolDt='%s'";
+	    $r = db_query($q, array('fv'=>'orarendiOraLezar', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr);
+	    if ($r===false) { db_close($lr); return false; }
+
+	    // A bejegyzés tolDt előtti részének visszarakása - ha van egyáltalán
+	    if (strtotime($ret['tolDt']) < strtotime($ADAT['tolDt'])) {
+		$igDt = date('Y-m-d', strtotime('-1 day', strtotime($ADAT['tolDt'])));
+		$q = "INSERT INTO orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt) VALUES
+		(".$ret['het'].",".$ret['nap'].",".$ret['ora'].",".$ret['tanarId'].",
+		'".$ret['osztalyJel']."','".$ret['targyJel']."',".$ret['teremId'].",'".$ret['tolDt']."','".$igDt."')";
+		$r = db_query($q, array('fv'=>'orarendiOraLezar', 'modul' => 'naplo', 'rollback' => true), $lr);
+		if (!$r) { db_close($lr); return false; }
+	    }
+
+	    // A bejegyzés igDt utáni részének visszarakása - itt esetleg lehet ütközés!
+	    if (strtotime($ret['igDt']) > strtotime($ADAT['igDt'])) {
+		$tolDt = date('Y-m-d', strtotime('+1 day', strtotime($ADAT['igDt'])));
+		$q = "INSERT INTO orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt) VALUES
+		(".$ret['het'].",".$ret['nap'].",".$ret['ora'].",".$ret['tanarId'].",
+		'".$ret['osztalyJel']."','".$ret['targyJel']."',".$ret['teremId'].",'".$tolDt."','".$ret['igDt']."')";
+		$r = db_query($q, array('fv'=>'orarendiOraLezar', 'modul' => 'naplo', 'rollback' => true), $lr);
+		if (!$r) { db_close($lr); return false; }
+	    }
+
+	db_commit($lr);
+	db_close($lr);
+	return true;
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendTankor.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendTankor.php
new file mode 100644
index 00000000..212dbb07
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendTankor.php
@@ -0,0 +1,33 @@
+ $_v) {
+            list($_tanarId,$_osztalyJel,$_targyJel) = explode('%',$_v);
+            $q = "DELETE FROM orarendiOraTankor WHERE tanarId=%u AND osztalyJel='%s' AND targyJel='%s'";
+	    $v = array($_tanarId, $_osztalyJel, $_targyJel);
+            db_query($q, array('fv' => 'orarendiOraTankorAssoc', 'modul' => 'naplo', 'values' => $v), $lr);
+        }
+
+        for ($i = 0; $i < count($_POST['ORARENDKEY']); $i++) {
+            if ($_POST['ORARENDKEY'][$i]!='') {
+                list($_tanarId,$_osztalyJel,$_targyJel,$_tankorId) = explode('%',$_POST['ORARENDKEY'][$i]);
+                if (!is_null($_tanarId)) {
+                    // bugfix 152->153. Muszáj kitörölni, mert előtte már lehet hogy egy másik tankörhöz rögzítettük ugyanazt a kulcsot... ????
+                    // ez így persze egy sor felesleges query.
+                    $q = "DELETE FROM orarendiOraTankor WHERE tanarId=%u AND osztalyJel='%s' AND targyJel='%s'";
+		    $v = array($_tanarId, $_osztalyJel, $_targyJel);
+                    $db = db_query($q, array('fv' => 'orarendTankor', 'modul' => 'naplo', 'result' => 'affected rows', 'values' => $v), $lr);
+                    $q = "REPLACE INTO orarendiOraTankor (tanarId,osztalyJel,targyJel,tankorId) VALUES (%u, '%s', '%s', %u)";
+		    $v = array($_tanarId, $_osztalyJel, $_targyJel, $_tankorId);
+                    db_query($q, array('fv' => 'orarendTankor', 'modul' => 'naplo', 'values' => $v), $lr);
+                }
+            }
+        }
+        db_close($lr);
+
+    }
+
+?>
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendTeremModositas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendTeremModositas.php
new file mode 100644
index 00000000..62a2de0c
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/orarendTeremModositas.php
@@ -0,0 +1,3 @@
+
diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/tanarOrarend.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/tanarOrarend.php
new file mode 100644
index 00000000..b008e880
--- /dev/null
+++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/orarend/tanarOrarend.php
@@ -0,0 +1,222 @@
+='%s' AND het=%u ORDER BY nap,ora";
+	$v = array($felev, $dt, $dt, $orarendiHet);
+	$A = db_query($q, array('fv' => 'getTanarOrarend', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'tanarId', 'values' => $v ));
+
+	if (is_array($A)) foreach ($A as $tanarId => $tOrak) {
+	    for ($i = 0; $i < count($tOrak); $i++) {
+		$nap = $tOrak[$i]['nap'];
+		$ora = $tOrak[$i]['ora'];
+		$ret[$tanarId][$nap][$ora] = $tOrak[$i];
+	    }
+	}
+	return $ret;
+
+    }
+
+    // Ezzel a fügvénnyel jó Excelben, de nem jó OpenOffice-ban
+    function OrarendFileGeneralasXLS($Tanarok, $Orak) {
+
+	$fp = fopen(_TANARORARENDFILE.'.xls', 'w');
+	if (!$fp) {
+	    $_SESSION['alert'][] = 'message:wrong_data:OrarendFileGeneralas:file:'._TANARORARENDFILE;
+	    return false;
+	}
+
+	$napiMinOra = getMinOra();
+	$napiMaxOra = getMaxOra();
+
+	fputs($fp, ''."\r\n");
+	fputs($fp, ''."\r\n");
+	fputs($fp, ''."\r\n");
+	fputs($fp, ''."\r\n");
+
+        for ($i = 0; $i < count($Tanarok); $i++) {
+
+            $tanarId = $Tanarok[$i]['tanarId'];
+            $tanarNev = $Tanarok[$i]['tanarNev'];
+
+            $sor = "  \r\n    $tanarNev\r\n";
+            for ($nap = 1; $nap < 6; $nap++) {
+                for ($ora = $napiMinOra; $ora <= $napiMaxOra; $ora++) {
+                    $Ora = $Orak[$tanarId][$nap][$ora];
+                    $sor .= '    '.$Ora['osztalyJel']." ".$Ora['targyJel'].''."\r\n";
+                }
+            }
+            $sor .= "    $tanarNev\r\n  \r\n";
+
+	    fputs($fp, $sor);
+        }
+
+	fputs($fp, '
'."\r\n"); + fputs($fp, '
'."\r\n"); + fputs($fp, '
'."\r\n"); + + fclose($fp); + return true; + + } + + + // Ha ezt rakom be, akkor OpenOffice-szal jó, Excellel csak akkor, ha előbb lementem + function OrarendFileGeneralasCSV($Tanarok, $Orak) { + + $fp = fopen(_TANARORARENDFILE.'.csv', 'w'); + if (!$fp) { + $_SESSION['alert'][] = 'message:wrong_data:OrarendFileGeneralas:file:'._TANARORARENDFILE; + return false; + } + $napiMaxOra = getMaxOra(); + $napiMinOra = getMinOra(); + + $sor = "Tanár"; + for ($nap = 1; $nap < 6; $nap++) { + for ($ora = $napiMinOra; $ora <= $napiMaxOra; $ora++) { + $sor .= ";$nap./$ora."; + } + } + $sor .= ";Tanár\n"; + fputs($fp, $sor); + + for ($i = 0; $i < count($Tanarok); $i++) { + + $tanarId = $Tanarok[$i]['tanarId']; + $tanarNev = $Tanarok[$i]['tanarNev']; + + $sor = "$tanarNev;"; + for ($nap = 1; $nap < 6; $nap++) { + for ($ora = $napiMinOra; $ora <= $napiMaxOra; $ora++) { + $Ora = $Orak[$tanarId][$nap][$ora]; + $sor .= $Ora['tankorNev']." ".$Ora['tankorId'].';'; +// $sor .= $Ora['osztalyJel']." ".$Ora['targyJel'].';'; + } + } + $sor .= "$tanarNev\n"; + + fputs($fp, $sor); + } + + fclose($fp); + return true; + + } + + // Ha ezt rakom be, akkor OpenOffice-szal jó, Excellel csak akkor, ha előbb lementem + function OrarendFileGeneralasTXT($Tanarok, $Orak) { + + $fp = fopen(_TANARORARENDFILE.'.txt', 'w'); + if (!$fp) { + $_SESSION['alert'][] = 'message:wrong_data:OrarendFileGeneralas:file:'._TANARORARENDFILE; + return false; + } + $napiMaxOra = getMaxOra(); + $napiMinOra = getMinOra(); + + $sor = "Tanár"; + for ($nap = 1; $nap < 6; $nap++) { + for ($ora = $napiMinOra; $ora <= $napiMaxOra; $ora++) { + $sor .= " $nap./$ora."; + } + } + $sor .= " Tanár\n"; + fputs($fp, $sor); + + for ($i = 0; $i < count($Tanarok); $i++) { + + $tanarId = $Tanarok[$i]['tanarId']; + $tanarNev = $Tanarok[$i]['tanarNev']; + + $sor = "$tanarNev "; + for ($nap = 1; $nap < 6; $nap++) { + for ($ora = $napiMinOra; $ora <= $napiMaxOra; $ora++) { + $Ora = $Orak[$tanarId][$nap][$ora]; + $sor .= $Ora['tankorNev']." ".$Ora['tankorId'].' '; +// $sor .= $Ora['osztalyJel']." ".$Ora['targyJel'].' '; + } + } + $sor .= "$tanarNev\n"; + + fputs($fp, $sor); + } + + fclose($fp); + return true; + + } + + + function OrarendFileGeneralasHTML($Tanarok, $Orak) { + + $fp = fopen(_TANARORARENDFILE.'.html', 'w'); + if (!$fp) { + $_SESSION['alert'][] = 'message:wrong_data:OrarendFileGeneralas:file:'._TANARORARENDFILE; + return false; + } + $napiMaxOra = getMaxOra(); + $napiMinOra = getMinOra(); + + fputs($fp, ' + + + + + + Tanár órarend + + + +'); + + fputs($fp,''."\n"); + + $sor = ""; + for ($nap = 1; $nap < 6; $nap++) { + for ($ora = $napiMinOra; $ora <= $napiMaxOra; $ora++) { + $sor .= ""; + } + } + $sor .= "\n"; + fputs($fp, $sor); + + for ($i = 0; $i < count($Tanarok); $i++) { + + fputs($fp, ''."\n"); + + $tanarId = $Tanarok[$i]['tanarId']; + $tanarNev = $Tanarok[$i]['tanarNev']; + fputs($fp, ''."\n"); + for ($nap = 1; $nap < 6; $nap++) { + for ($ora = $napiMinOra; $ora <= $napiMaxOra; $ora++) { + $Ora = $Orak[$tanarId][$nap][$ora]; + $sor = ''."\n"; + fputs($fp, $sor); + } + } + fputs($fp, ''."\n"); + fputs($fp, ''."\n"); + } + fputs($fp, '
Tanár$nap./$ora.Tanár
'.$tanarNev.''.$Ora['tankorNev']." ".$Ora['tankorId'].' - '.$Ora['teremId'].''.$tanarNev.'
'."\n"); + + fclose($fp); + return true; + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/bizonyitvany.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/bizonyitvany.php new file mode 100644 index 00000000..1df529a4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/bizonyitvany.php @@ -0,0 +1,134 @@ + '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/mayor-naplo/www/include/modules/naplo/osztalyozo/diak.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/diak.php new file mode 100644 index 00000000..be285f8b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/diak.php @@ -0,0 +1,106 @@ +'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/mayor-naplo/www/include/modules/naplo/osztalyozo/dolgozat.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/dolgozat.php new file mode 100644 index 00000000..136a1dbd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/dolgozat.php @@ -0,0 +1,116 @@ + '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/mayor-naplo/www/include/modules/naplo/osztalyozo/stat.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/stat.php new file mode 100644 index 00000000..26f1dbfd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/stat.php @@ -0,0 +1,247 @@ + 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 '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; $iarray('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/mayor-naplo/www/include/modules/naplo/osztalyozo/szempontRendszer.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/szempontRendszer.php new file mode 100644 index 00000000..e2b750f9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/szempontRendszer.php @@ -0,0 +1,56 @@ + '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/mayor-naplo/www/include/modules/naplo/osztalyozo/szovegesErtekeles.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/szovegesErtekeles.php new file mode 100644 index 00000000..803056a7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/szovegesErtekeles.php @@ -0,0 +1,67 @@ + '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/mayor-naplo/www/include/modules/naplo/osztalyozo/tankor.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/tankor.php new file mode 100644 index 00000000..8cc06915 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/tankor.php @@ -0,0 +1,205 @@ + 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/mayor-naplo/www/include/modules/naplo/osztalyozo/targySorrend.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/targySorrend.php new file mode 100644 index 00000000..c634641a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/targySorrend.php @@ -0,0 +1,55 @@ + '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/mayor-naplo/www/include/modules/naplo/osztalyozo/vizsga.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/vizsga.php new file mode 100644 index 00000000..9849255d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/osztalyozo/vizsga.php @@ -0,0 +1,138 @@ + '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)); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bejegyzes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bejegyzes.php new file mode 100644 index 00000000..08ddfee0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bejegyzes.php @@ -0,0 +1,65 @@ + 'getBejegyzesTipusById','modul'=>'naplo_intezmeny','values'=>array($btId),'result'=>'record')); + } + + function getDarabBejegyzes($ADAT) { + + $q = "SELECT COUNT(*) FROM bejegyzes WHERE beirasDt>='%s' AND diakId=%u"; + return db_query($q, array('fv' => 'getDarabBejegyzes', 'modul' => 'naplo', 'result' => 'value', 'values' => array($ADAT['tolDt'], $ADAT['diakId']))); + + } + + function getDiakBejegyzesekByTanev($diakId, $tanev) { + + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + + $q = "SELECT * FROM `%s`.bejegyzes LEFT JOIN `%s`.`bejegyzesTipus` USING (`bejegyzesTipusId`) WHERE diakId=%u ORDER BY beirasDt"; + $v = array($tanevDb, __INTEZMENYDBNEV, $diakId); + $ret = db_query($q, array( + 'fv' => 'getDiakBejegyzesekByTanev', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v + )); + for ($i = 0; $i < count($ret); $i++) + if ($ret[$i]['tanarId'] != '') $ret[$i]['tanarNev'] = getTanarNevById($ret[$i]['tanarId']); + + return $ret; + + } + + function getBejegyzesTipusokByJogosult($jogosult, $SET = array('tipus' => array('fegyelmi','dicséret','üzenet'), 'hianyzas' => false, 'dt' => null)) { + + if (!is_array($jogosult) || count($jogosult) == 0) return false; + $dt = isset($SET['dt'])?$SET['dt']:date('Y-m-d'); + + $W = array(); + foreach ($jogosult as $j) $W[] = "jogosult LIKE '%%$j%%'"; + + if ($SET['hianyzas'] === true) $WH = "AND hianyzasDb > 0 "; + + $q = "SELECT * FROM bejegyzesTipus WHERE (".implode(' OR ', $W).") ".$WH."AND tipus IN ('".implode("','", $SET['tipus'])."') + AND tolDt<='%s' AND (igDt IS NULL OR '%s'<=igDt) + ORDER BY tipus,fokozat"; + $v = array($dt, $dt); + return db_query($q, array('fv' => 'getBejegyzesTipusokByJogosult', 'modul' => 'naplo_intezmeny', 'result' => 'indexed','values' => $v)); + + } + + function getTorzslapBejegyzesByDiakIds($diakIds, $SET = array('tanev'=>__TANEV)) { + + if (!is_array($diakIds)) $diakIds = array($diakIds); + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + if ($tanev == __TANEV) { global $_TANEV; $TA = $_TANEV; } + else { $TA = getTanevAdat($tanev); } + + $q = "SELECT * FROM `%s`.`bejegyzes` WHERE `referenciaDt`='%s' AND `diakId` IN ('".implode("','", array_fill(0, count($diakIds), '%u'))."') ORDER BY `beirasDt`"; + $v = $diakIds; array_unshift($v, tanevDbNev(__INTEZMENY, $tanev), $TA['zarasDt']); + $ret = db_query($q, array( + 'fv' => 'getTorzslapBejegyzesByDiakIds', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield'=>'diakId', 'values' => $v + )); + + return $ret; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bejegyzesModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bejegyzesModifier.php new file mode 100644 index 00000000..dd5bb05c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bejegyzesModifier.php @@ -0,0 +1,40 @@ + 'ujBejegyzes', 'modul' => 'naplo', 'result' => 'insert', 'values' => $v)); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bontas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bontas.php new file mode 100644 index 00000000..1053eb84 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/bontas.php @@ -0,0 +1,72 @@ +'bontasTankor/bt','modul'=>'naplo','values'=>$v), $lr); + $ok = $ok && ($r !== false); + } + + // is_resource mysqli esetén nem jó (object) + if (!$olr) { + if (!$ok) db_rollback($lr, 'tankörnév hozzárendelés'); + db_close($lr); + } + + return $ok; + } + + function getBontasAdat($bontasId) { + + $q = "select * from kepzesTargyBontas where bontasId=%u"; + $ret = db_query($q, array('fv'=>'getBontasAdat/1','modul'=>'naplo','result'=>'record','values'=>array($bontasId))); + + $q = "select * from bontasTankor where bontasId=%u order by tankorId"; + $ret['tankor-oraszam'] = db_query($q, array('fv'=>'getBontasAdat/2','modul'=>'naplo','result'=>'indexed','values'=>array($bontasId))); + + $ret['hetiOraszam'] = 0; + if (is_array($ret['tankor-oraszam'])) foreach ($ret['tankor-oraszam'] as $index => $toAdat) $ret['hetiOraszam'] += $toAdat['hetiOraszam']; + + return $ret; + } + + function osztalyBontasKeszE($osztalyId) { + + // Az osztályhoz rendelt képzések óraterveinek óraszámai + $q1 = "select kepzesOratervId, hetiOraszam from osztalyNaplo left join ".__INTEZMENYDBNEV.".kepzesOsztaly using (osztalyId) + left join ".__INTEZMENYDBNEV.".kepzesOraterv using (kepzesId) + where osztalyId=%u and osztalyNaplo.evfolyamJel=kepzesOraterv.evfolyamJel"; + // Az osztályhoz rendelt bontások óraszámai + $q2 = "select kepzesOratervId, sum(hetiOraszam) as hetiOraszam from kepzesTargyBontas left join bontasTankor using (bontasId) + where osztalyId=%u group by bontasId"; + $v = array($osztalyId, $osztalyId); + // Az óratervet lefedik-e a bontások + $q12 = "select count(oraterv.kepzesOratervId) from + (".$q1.") as oraterv + left join (".$q2.") as bontas + using (kepzesOratervId, hetiOraszam) + where bontas.kepzesOratervId is null"; + // A bontások óraszámai teljesek-e + $q21 = "select count(bontas.kepzesOratervId) from + (".$q2.") as bontas + left join (".$q1.") as oraterv + using (kepzesOratervId, hetiOraszam) + where oraterv.kepzesOratervId is null"; + + return ( + db_query($q12, array('fv'=>'osztalyBontasKeszE/12','modul'=>'naplo','result'=>'value','values'=>$v)) + + db_query($q21, array('fv'=>'osztalyBontasKeszE/21','modul'=>'naplo','result'=>'value','values'=>$v)) + == 0 + ); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/diak.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/diak.php new file mode 100644 index 00000000..94623979 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/diak.php @@ -0,0 +1,647 @@ + __TANEV)) { + + global $_TANEV; + + // tanév adatai + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + if ($tanev != __TANEV) $tanevAdat = getTanevAdat($tanev, $lr); + else $tanevAdat = $_TANEV; + + // ez volt eredetileg: + /*$q = "SELECT diakId FROM osztalyDiak LEFT JOIN osztaly USING (osztalyId) + WHERE beDt <= '%s' AND (kiDt IS NULL OR '%s' <= kiDt) + GROUP BY diakId HAVING MAX(vegzoTanev) = %u";*/ + // le kell kéredezni a megadott tanévben végzős OSZTÁLYOK diákjait, kivéve azokat, akik később végzős osztályok tagjai + $q = "SELECT diakId FROM osztalyDiak LEFT JOIN osztaly USING (osztalyId) + WHERE beDt <= '%s' AND (kiDt IS NULL OR '%s' <= kiDt) + AND diakId NOT IN ( + SELECT diakId FROM osztalyDiak LEFT JOIN osztaly USING (osztalyId) WHERE vegzoTanev>%u + ) + GROUP BY diakId HAVING MAX(vegzoTanev) = %u"; + return db_query($q, array('fv' => 'getVegzosDiakok', 'modul' => 'naplo_intezmeny', 'values' => array($tanevAdat['zarasDt'], $tanevAdat['zarasDt'],$tanev, $tanev), 'result' => 'idonly')); + } + + function getDiakokOld($SET = array('osztalyId' => null, 'tanev' => __TANEV, 'tolDt' => null, 'igDt' => null, 'override' => false, 'statusz' => null, 'result'=>''), $olr = null) { + + global $_TANEV; + + if ($SET['csakId']===true || $SET['result'] == 'csakId') $SET['result'] = 'idonly'; + $osztalyId = readVariable($SET['osztalyId'], 'numeric unsigned', null); + $tolDt = readVariable($SET['tolDt'], 'datetime', null); + $igDt = readVariable($SET['igDt'], 'datetime', null); + // Az adott tanév elejének és végének lekérdezése + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + initTolIgDt($tanev, $tolDt, $igDt, $SET['override']); + + if ($tanev != __TANEV) $tanevAdat = getTanevAdat($tanev, $lr); + else $tanevAdat = $_TANEV; + + $KIBEDT = "beDt <= '%2\$s' AND (kiDt IS NULL OR '%3\$s' <= kiDt) AND "; + + // A lekérdezendő diákok státusza + if (!is_array($SET['statusz']) || count($SET['statusz']) == 0) { + if ($tanevAdat['statusz'] == 'aktív') { + $Statusz = array('jogviszonyban van','magántanuló','vendégtanuló'); + } else { + $Statusz = array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva'); + // ebben az esetben kit érdekel a diák kilépésének ideje??? + $KIBEDT = ''; $v = array(); + } + } else { + $Statusz = readVariable($SET['statusz'], 'enum', null, + array('felvételt nyert','jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + ); + } + + // Intézményi adatbázis neve + $intezmenyDb = intezmenyDbNev(__INTEZMENY); +/* + Szerintem ez nem jó így. + 1. a tol-igDt alapján a diakJogviszony táblát kellene néznünk - közben volt-e jogviszonyban, vagy magántanulóként. + 2. A having végén a jogviszony miért is? + +*/ + if (!isset($osztalyId)) { + if ($SET['result'] == 'idonly') $mezok = 'diakId'; + else $mezok = "diakId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS diakNev, + statusz, MAX(osztaly.vegzoTanev) AS maxVegzoTanev"; + $q = "SELECT $mezok + FROM %2\$s.diak + LEFT JOIN %2\$s.osztalyDiak USING (diakId) + LEFT JOIN %2\$s.osztaly USING (osztalyId) + WHERE diak.kezdoTanev <= %u + AND statusz IN ('".implode("','", $Statusz)."') + GROUP BY diakId + HAVING %1\$u <= maxVegzoTanev OR maxVegzoTanev IS NULL OR statusz IN ('jogviszonyban van','magántanuló') + ORDER BY viseltCsaladiNev,viseltUtonev"; + $v = array($tanev, $intezmenyDb); + } else { + if ($SET['result'] == 'idonly') $mezok = 'diakId'; + else $mezok = "osztalyDiak.diakId, TRIM(CONCAT_WS(' ', viseltNevElotag, viseltCsaladinev, viseltUtonev)) AS diakNev, + statusz, DATE_FORMAT(beDt,'%%Y-%%m-%%d') AS beDt, DATE_FORMAT(kiDt,'%%Y-%%m-%%d') AS kiDt"; + $q = "SELECT $mezok + FROM %1\$s.osztalyDiak LEFT JOIN %1\$s.diak USING (diakId) + WHERE $KIBEDT + osztalyDiak.osztalyId=%4\$u + AND statusz IN ('".implode("','", $Statusz)."') + ORDER BY ViseltCsaladiNev,ViseltUtonev"; + $v = array($intezmenyDb, $igDt, $tolDt, $osztalyId); + + } + + if ($SET['result'] == 'idonly') + return db_query($q, array('fv' => 'getDiakok', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'idonly'), $olr); + elseif ($SET['result'] == 'assoc') + return db_query($q, array('fv' => 'getDiakok', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'diakId', 'values' => $v), $olr); + else + return db_query($q, array('fv' => 'getDiakok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $olr); + + } + + function getDiakok($SET = array('osztalyId' => null, 'tanev' => __TANEV, 'tolDt' => null, 'igDt' => null, 'override' => false, 'statusz' => null, 'result'=>'', 'extraAttrs'=>''), $olr = null) { + + global $_TANEV; + + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed','assoc','idonly','keyvaluepair')); + $osztalyId = readVariable($SET['osztalyId'], 'id', null); + if (!is_null($osztalyId) && !is_array($osztalyId)) $osztalyId = array($osztalyId); // ha csak egy érték, legyen tömb + $tolDt = readVariable($SET['tolDt'], 'datetime', null); + $igDt = readVariable($SET['igDt'], 'datetime', null); + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + initTolIgDt($tanev, $tolDt, $igDt, $SET['override']); + if ($tanev != __TANEV) $tanevAdat = getTanevAdat($tanev, $lr); + else $tanevAdat = $_TANEV; + + $extraAttrs = ($SET['extraAttrs']!='') ? ','.$SET['extraAttrs'] : ''; + + // A lekérdezendő diákok státusza + if (!is_array($SET['statusz']) || count($SET['statusz']) == 0) { + if ($tanevAdat['statusz'] == 'aktív') { + $Statusz = array('jogviszonyban van','magántanuló','vendégtanuló'); + } else { + $Statusz = array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva'); + } + } else { + $Statusz = readVariable($SET['statusz'], 'enum', null, + array('felvételt nyert','jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + ); + } + + // jogviszony szerinti lekérdezés - szóbajövő diakId-k + // Ez MySQL 5.1.41 alatt (Ubuntu) működött, de 5.0.32-vel (Debian Etch?) nem +/* $q = "SELECT diakId FROM diakJogviszony AS dj1 WHERE statusz IN ('".implode("','", $Statusz)."') AND dt <= '%s' + GROUP BY diakId + HAVING (SELECT COUNT(*) FROM diakJogviszony AS dj2 WHERE diakId = dj1.diakId AND MAX(dj1.dt) < dt AND dt <= '%s') = 0"; +*/ + // Ez működik 5.0.32-vel is + $q = "SELECT diakId FROM diakJogviszony WHERE dt <= '%s' GROUP BY diakId HAVING + MAX(IF(statusz IN ('".implode("','", $Statusz)."'),dt,'0000-00-00')) > + MAX(IF(statusz NOT IN ('".implode("','", $Statusz)."') AND dt <= '%s',dt,'0000-00-00'))"; + $v = array($igDt, $tolDt); + $diakIds = db_query($q, array('fv' => 'getDiakok', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'idonly')); + if (!is_array($diakIds)) return false; // hiba + if (count($diakIds) == 0) return array(); // nincs ilyen diák + // A felvételt nyert státuszú diák ebben a listában nem szerepel + if (in_array('felvételt nyert', $Statusz)) { + $FNY_WHERE = " OR statusz = 'felvételt nyert' "; + } + // Névsor + if (!isset($osztalyId)) { + $q = "SELECT diakId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS diakNev, statusz AS aktualisStatusz + $extraAttrs + FROM diak + WHERE diak.kezdoTanev <= %u AND (diakId IN (".implode(",", $diakIds).") $FNY_WHERE ) + ORDER BY viseltCsaladiNev,viseltUtonev"; + $v = array($tanev, $intezmenyDb); + } else { + + if ($tanev!='') + $qNs = ", diakNaploSorszam(osztalyDiak.diakId,$tanev,osztalyDiak.osztalyId) AS diakNaploSorszam"; + else + $qNs = ''; + + $q = "SELECT DISTINCT osztalyDiak.diakId, TRIM(CONCAT_WS(' ', viseltNevElotag, viseltCsaladinev, viseltUtonev)) AS diakNev, statusz AS aktualisStatusz + $qNs $extraAttrs + FROM osztalyDiak LEFT JOIN diak USING (diakId) + WHERE beDt <= '%s' AND (kiDt IS NULL OR '%s' <= kiDt) AND + osztalyDiak.osztalyId IN (". implode(',', $osztalyId) .") + AND (diakId IN (".implode(",", $diakIds).") $FNY_WHERE ) + ORDER BY ViseltCsaladiNev,ViseltUtonev"; + $v = array($igDt, $tolDt); + } + + return db_query($q, array('fv' => 'getDiakok', 'modul' => 'naplo_intezmeny', 'result' => $result, 'keyfield' => 'diakId', 'values' => $v), $olr); + + } + + + + function getDiakokByOsztalyId($IDs, $SET = array('tanev' => __TANEV, 'tolDt' => null, 'igDt' => null, 'result' => '', 'statusz' => array('jogviszonyban van','magántanuló'))) { + //////////////////////////////////////////////////////////////// + // !!! Ez a függvény csak a diák aktuális státuszát nézi! !!! // + //////////////////////////////////////////////////////////////// + if (!is_array($IDs) || count($IDs) == 0) return false; + + if ($SET['result']=='assoc' || $SET['result']=='multiassoc') $SET['result'] = 'multiassoc'; + else $SET['result'] = 'indexed'; + + if ($SET['tanev']!='') $tanev = $SET['tanev']; else $tanev=__TANEV; + // Az adott tanév elejének és végének lekérdezése + if ($tanev != __TANEV) $tanevAdat = getTanevAdat($tanev, $lr); + else { global $_TANEV; $tanevAdat = $_TANEV; } + +// $tanevKezdes = $tanevAdat['kezdesDt']; $tanevZaras = $tanevAdat['zarasDt']; $time = time(); + $tolDt = readVariable($SET['tolDt'], 'date', $tanevAdat['kezdesDt']); + $igDt = readVariable($SET['igDt'], 'date', $tanevAdat['zarasDt']); + + if (!is_array($SET['statusz']) || count($SET['statusz']) == 0) + if ($tanevAdat['statusz'] == 'aktív') $SET['statusz'] = array('jogviszonyban van','magántanuló'); + else $SET['statusz'] = array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva'); + // Intézményi adatbázis neve + $intezmenyDb = intezmenyDbNev(__INTEZMENY); + $RESULT = false; + + $q = "SELECT osztalyDiak.diakId AS diakId, TRIM(CONCAT_WS(' ', viseltNevElotag, viseltCsaladinev, viseltUtonev)) AS diakNev, + osztalyId, DATE_FORMAT(beDt,'%%Y-%%m-%%d') AS beDt, DATE_FORMAT(kiDt,'%%Y-%%m-%%d') AS kiDt + FROM `%s`.osztalyDiak LEFT JOIN `%s`.diak USING (diakId) + WHERE beDt <= '%s' + AND (kiDt IS NULL OR kiDt >= '%s') + AND osztalyDiak.osztalyId IN (".implode(',', array_fill(0, count($IDs), '%u')).") + AND statusz IN ('".implode("','", $SET['statusz'])."') + ORDER BY ViseltCsaladiNev,ViseltUtonev"; +// array_unshift($IDs, $intezmenyDb, $intezmenyDb, $tanevZaras, $tanevKezdes); + array_unshift($IDs, $intezmenyDb, $intezmenyDb, $igDt, $tolDt); + return db_query($q, array('result' => $SET['result'], 'fv' => 'getDiakokByOsztalyId', 'modul' => 'naplo_intezmeny', 'values' => $IDs, 'keyfield' => 'osztalyId')); + + + } + + /* + Az előző függvény hiányosságait kiküszöbölő függvény, ami a diakJogviszony táblát is figyelembeveszi + + $SET['tanev'|'tolDt'|'igDt'|'statusz'|'statuszonkent'] + + return[ diakId ][ 'diakId'|'diakNev' ] + return[ diakId ][ 'osztalyDiak' ][][ 'beDt'|'kiDt' ] -- DESC !! + return[ diakId ][ 'statusz' ][][ 'statusz'|'dt' ] -- DESC !! + return['jogviszonyban van'|...|'jogviszonya lezárva'][] + + */ + + /* EZ ETTŐL MÉG GLOBAL SCOPE!!!! Kéretik normális nevet adni neki!!!*/ + function _tmp11($value) { return array('beDt' => $value['beDt'], 'kiDt' => $value['kiDt']); } + function _tmp22($value) { return array('statusz' => $value['statusz'], 'dt' => $value['dt']); } + + function getDiakokByOsztaly($osztalyId, $SET = array()) { + + global $_TANEV; + + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + if ($tanev != __TANEV) $_TA = getTanevAdat($tanev, $lr); + else $_TA = $_TANEV; + + $orderBy = ($SET['orderBy']=='naploSorszam') ? " ORDER BY diakNaploSorszam(osztalyDiak.diakId,$tanev,osztalyDiak.osztalyId) " : "ORDER BY ViseltCsaladiNev, ViseltUtonev, beDt DESC"; + $tolDt = readVariable($SET['tolDt'], 'datetime', $_TA['kezdesDt']); + $igDt = readVariable($SET['igDt'], 'datetime', $_TA['zarasDt']); + initTolIgDt($tanev, $tolDt, $igDt); + $statusz = readVariable($SET['statusz'], 'enum', null, array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva')); + if (!is_array($statusz) || count($statusz) == 0) $statusz = array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva'); + $statuszonkent = readVariable($SET['statuszonkent'],'bool',true); + $felveteltNyertEkkel = readVariable($SET['felveteltNyertEkkel'],'bool',false); + $intezmenyDb = intezmenyDbNev(__INTEZMENY); + + // Az összes diák lekérdezése (esetleg lehet majd bent többször is az osztályban!) + $q = "SELECT osztalyDiak.diakId AS diakId, TRIM(CONCAT_WS(' ', viseltNevElotag, viseltCsaladinev, viseltUtonev)) AS diakNev, + osztalyId, DATE_FORMAT(beDt,'%%Y-%%m-%%d') AS beDt, DATE_FORMAT(kiDt,'%%Y-%%m-%%d') AS kiDt, statusz AS aktualisStatusz + FROM `%s`.osztalyDiak LEFT JOIN `%s`.diak USING (diakId) + WHERE beDt <= '%s' AND (kiDt IS NULL OR kiDt >= '%s') + AND osztalyDiak.osztalyId=%u ".$orderBy; + $v = array($intezmenyDb, $intezmenyDb, $igDt, $tolDt, $osztalyId); + $ret1 = db_query($q, array('result' => 'multiassoc', 'keyfield' => 'diakId', 'fv' => 'getDiakokByOsztaly', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + if (is_array($ret1) && count($ret1)>0) $diakIds = array_keys($ret1); + else $diakIds = array(); + + if ($statuszonkent) $return = array('jogviszonyban van' => array(), 'magántanuló' => array(), 'vendégtanuló' => array(), 'jogviszonya felfüggesztve' => array(), 'jogviszonya lezárva' => array(), 'felvételt nyert'=>array()); + else $return = array(); + + // Ha nincs tagja az osztálynak még/már + if (!is_array($diakIds) || count($diakIds) == 0) return $return; + + // Jogviszonyadatok lekérdezése + $q = "SELECT * FROM diakJogviszony WHERE diakId IN (".implode(', ', array_fill(0, count($diakIds), '%u')).") AND dt <='$igDt' ORDER BY diakId, dt DESC"; + array_push($diakIds, $igDt); + $ret2 = db_query($q, array('result' => 'multiassoc', 'keyfield' => 'diakId', 'fv' => 'getDiakokByOsztaly', 'modul' => 'naplo_intezmeny', 'values' => $diakIds )); + /* --TODO, ellenőrizni ret1 és ret2-t! + Warning: array_map() [function.array-map]: Argument #2 should be an array in /var/mayor/www/include/modules/naplo/share/diak.php on line 187 + Warning: Cannot modify header information - headers already sent by (output started at /var/mayor/www/include/modules/naplo/share/diak.php:187) in /var/mayor/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php on line 124 + */ + if (is_array($ret1)) { + foreach ($ret1 as $diakId => $stat) { + $_felveteltNyert = ($stat[0]['aktualisStatusz']=='felvételt nyert')?true:false; + // Szűrés a státuszra + // Ha az utolsó státusz jó, akkor ok (order by dt desc) + $i = 0; + if ($felveteltNyertEkkel===true) // ha a paraméter listában nincs felvételt nyert felsorolva, akkor miért engedjük meg? Nem értem. + $ok = in_array($ret2[$diakId][$i]['statusz'], $statusz) || $_felveteltNyert; + else + $ok = in_array($ret2[$diakId][$i]['statusz'], $statusz); + // addig megyünk visszafele, amíg + // - nem $ok (még nem találtunk megfelelő státuszt) + // - van még statusz bejegyzés + // - az aktuális bejegyzés dátuma > tolDt (az előtte lévők nem érvényesek a megadott időszakra) + while (!$ok && strtotime($ret2[$diakId][$i]['dt'])>strtotime($tolDt) && $i < count($ret2[$diakId])-1) { + $i++; + $ok = in_array($ret2[$diakId][$i]['statusz'], $statusz); + } + if ($ok) { // Ha az adott időszakban volt a megadott státuszok valamelyikében + $return[$diakId] = array('diakId' => $ret1[$diakId][0]['diakId'], 'diakNev' => $ret1[$diakId][0]['diakNev']); + $return[$diakId]['osztalyDiak'] = @array_map('_tmp11', $ret1[$diakId]); + if ($_felveteltNyert) + $return[$diakId]['statusz'][] = array('statusz'=>'felvételt nyert'); + else + $return[$diakId]['statusz'] = @array_map('_tmp22', $ret2[$diakId]); + if ($statuszonkent) { + for ($i = 0; $i < count($return[$diakId]['statusz']); $i++) { + if (!in_array($diakId, $return[ $return[$diakId]['statusz'][$i]['statusz'] ])) $return[ $return[$diakId]['statusz'][$i]['statusz'] ][] = $diakId; + if (strtotime($tolDt) >= strtotime($return[$diakId]['statusz'][$i]['dt'])) break; + } + } + } + } + } + return $return; + + } + + function getDiakokById($IDs, $olr = '') { + // Visszaadjuk a statusz-t is, de dátum nélkül ez nem túl értelemes... de a diakSelect-ben kell... + if (!is_array($IDs) || count($IDs) == 0) return false; + $q = "SELECT diakId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS diakNev, statusz, statusz as aktualisStatusz + FROM ".__INTEZMENYDBNEV.".diak WHERE diakId IN (".implode(',',$IDs).") ORDER BY viseltcsaladinev,viseltutonev"; + return db_query($q, array('keyfield' => 'diakId', 'result' => 'assoc', 'fv' => 'getDiakokById', 'modul' => 'naplo_intezmeny')); + } + + function getDiakNevById($diakId) { + $q = "SELECT TRIM(CONCAT_WS(' ', viseltNevElotag, viseltCsaladiNev, viseltUtonev)) AS diakNev + FROM `".__INTEZMENYDBNEV."`.`diak` WHERE diakId=%u"; + return db_query($q, array('fv' => 'getDiakNevById', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($diakId))); + } + + function getDiakMindenOsztaly($diakId) { + + $q = "SELECT * FROM osztalyDiak WHERE diakId=%u"; + $osztalyIds = db_query($q, array('fv'=>'getDiakMindenOsztaly', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($diakId))); + + return $osztalyIds; + } + function getDiakOsztalya($diakId, $SET= array('tanev'=>__TANEV,'tolDt'=>'','igDt'=>'', 'result'=>''), $olr='') { + + global $_TANEV; + //$tolDt = $SET['tolDt']; $igDt=$SET['igDt']; + $osztalyId = array(); + + // Az adott tanév elejének és végének lekérdezése + if ($SET['tanev']=='') $SET['tanev'] = __TANEV; + $tanev = $SET['tanev']; + if ($tanev != __TANEV) $tanevAdat = getTanevAdat($tanev, $olr); + else $tanevAdat = $_TANEV; + + $tolDt = $SET['tolDt']; $igDt=$SET['igDt']; $tanev = $SET['tanev']; + if ($tolDt==$igDt && $tolDt=='') { + $tolDt = $tanevAdat['kezdesDt']; $igDt = $tanevAdat['zarasDt']; + } else { + initTolIgDt($tanev, $tolDt, $igDt); + } + + if ($diakId != '') { + + if ($SET['result']=='csakid' || $SET['result']=='idonly') { + $q = "SELECT DISTINCT osztalyId FROM osztalyDiak WHERE beDt <= '%s' AND (kiDt IS NULL OR kiDt >= '%s') AND diakId=%u ORDER BY beDt DESC"; + $osztalyId = db_query($q, array('fv' => 'getDiakOsztalya1', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($igDt, $tolDt, $diakId)), $olr); + } elseif ($tanevAdat['statusz'] != 'tervezett') { + $q = "SELECT osztalyId, osztalyJel, beDt, kiDt, diakNaploSorszam(diakId,%u,osztalyId) AS naploSorszam + FROM osztalyDiak LEFT JOIN ".tanevDbNev(__INTEZMENY, $tanev).".osztalyNaplo USING (osztalyId) + WHERE diakId=%u + AND beDt <= '%s' + AND (kiDt IS NULL OR kiDt >= '%s') + ORDER BY beDt DESC"; + $osztalyId = db_query($q, array('fv' => 'getDiakOsztalya2', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tanev,$diakId,$igDt, $tolDt)),$olr); + } else { + $q = "SELECT DISTINCT osztalyId FROM osztalyDiak WHERE beDt <= '%s' + AND (kiDt IS NULL OR kiDt >= '%s') AND diakId=%u ORDER BY beDt DESC"; + $osztalyId = db_query($q, array('fv'=>'getDiakOsztalya3', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($igDt, $tolDt, $diakId)),$olr); // biztos ilyen formátumot vársz??? + } + } + + return $osztalyId; + } + + function getDiakokOsztalyai($diakIds, $SET = array('tanev' => __TANEV, 'tolDt' => null, 'igDt' => null, 'result'=>null), $olr='') { + + global $_TANEV; + + $tolDt = $SET['tolDt']; + $igDt=$SET['igDt']; + if ($SET['tanev']=='') $tanev=__TANEV; else $tanev = $SET['tanev']; + initTolIgDt($tanev, $tolDt, $igDt); + + $RESULT = array(); + if (is_array($diakIds) && count($diakIds)>0) { + if ($SET['result']==='csakId') { + $FIELDS = 'DISTINCT `osztalyId`'; + $result = 'idonly'; + } else { + $FIELDS = '`diakId`, `osztalyId`'; + $result = 'indexed'; + } + $q = "SELECT $FIELDS + FROM osztalyDiak LEFT JOIN diak USING (diakId) WHERE beDt <= '%s' + AND (kiDt IS NULL OR kiDt >= '%s') + AND diakId IN (". implode(',', array_fill(0, count($diakIds), '%u')) .") "; + array_unshift($diakIds, $igDt, $tolDt); + $R = db_query($q, array('fv' => 'getDiakokOsztalyai', 'result' => $result, 'modul' => 'naplo_intezmeny', 'values' => $diakIds)); + if ($SET['result']!=='csakId') { + for ($i = 0; $i < count($R); $i++) { + $RESULT[$R[$i]['diakId']][] = $R[$i]['osztalyId']; + } + } else { + $RESULT = $R; + } + } + return $RESULT; + } + function getDiakAdatById($diakIds, $SET = array('result'=>'indexed', 'keyfield'=>''), $olr='') { + + if ($olr=='') $lr = db_connect('naplo'); + else $lr=$olr; + + if (!is_array($diakIds)) { $diakIds = array($diakIds); $result = 'record'; } + else { + if ($SET['result']!='') $result = $SET['result']; + else $result = 'indexed'; + } + + //$q = "SELECT * FROM ".__INTEZMENYDBNEV.".diak WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).")"; + $q = "SELECT diak.*, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS diakNev, TIMESTAMPDIFF(YEAR, diak.szuletesiIdo, CURDATE()) AS diakEletkor, dj.dt AS jogviszonyDt, dj.statusz AS jogviszonyStatusz + FROM ".__INTEZMENYDBNEV.".diak LEFT JOIN ".__INTEZMENYDBNEV.".diakJogviszony AS dj + ON diak.diakId=dj.diakId AND dj.dt=(SELECT MAX(dt) FROM ".__INTEZMENYDBNEV.".diakJogviszony WHERE dt<=CURDATE() AND diakId=dj.diakId) + WHERE diak.diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).")"; + + $r = db_query($q, array('fv' => 'getDiakAdatById', 'modul' => 'naplo_intezmeny', 'result' => $result, 'keyfield'=>$SET['keyfield'],'values' => $diakIds), $lr); + + if ($olr=='') db_close($lr); + return $r; + } + + function getDiakBySzulDt($md) + { + if ($md == '') $md = date('m-d'); + $q = "SELECT diakId FROM diak WHERE szuletesiIdo like '%%-%s' AND jogviszonyVege is NULL"; // credits: Neumayer Béla + $diakIds = db_query($q, array('fv' => 'getDiakBySzulDt', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($md))); + if (count($diakIds)>0) { + $RET['diak'] = getDiakAdatById($diakIds); + $RET['diakOsztaly'] = getDiakokOsztalyai($diakIds); + } else { + $RET = false; + } + return $RET; + } + + function diakVegzosE($diakId, $SET = array('tanev' => __TANEV, 'dt' => null)) { + + global $_TANEV; + + // tanév adatai + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + $dt = readVariable($SET['dt'], 'datetime', date('Y-m-d')); + + $q = "SELECT MAX(vegzoTanev) FROM osztalyDiak LEFT JOIN osztaly USING (osztalyId) + WHERE diakId=%u AND beDt<='%s' AND (kiDt IS NULL OR '%s'<=kiDt)"; + $maxVegzoTanev = db_query($q, array('fv' => 'diakVegzosE', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($diakId, $dt, $dt))); + + return ($tanev == $maxVegzoTanev); + } + + + function getDiakJogviszony($diakId) { + + $v = array($diakId); + $q = "SELECT statusz,dt FROM diakJogviszony WHERE diakId=%u ORDER BY dt"; + $ret = db_query($q, array('fv' => 'getDiakJogviszony', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + return $ret; + + } + + function getDiakJogviszonyByDt($diakId, $dt) { // dt előtt és után vagy egyenlőt adja vissza, ezért dt - nek lennie kellene... + + $v = array($diakId, $dt); + + $q = "SELECT statusz FROM diak WHERE diakId=%u"; + $ret['aktualis'] = db_query($q, array('fv' => 'getDiakJogviszonyByDt', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($diakId))); + if ($ret['aktualis']=='felvételt nyert') { /* Ha felvételt nyert, nincs bejegyzése a diakJogviszony táblába */ + $ret['elotte'] = $ret['aktualis']; // ==felvételt nyert + } else { + $q = "SELECT statusz FROM diakJogviszony WHERE diakId=%u AND dt<'%s' ORDER BY dt DESC LIMIT 1"; + $ret['elotte'] = db_query($q, array('fv' => 'getDiakJogviszonyByDt', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + } + /* Az utána statuszt lekérdezem, hisz lehet hogy a jövőbe már be van állítva */ + $q = "SELECT statusz FROM diakJogviszony WHERE diakId=%u AND dt>='%s' ORDER BY dt LIMIT 1"; + $ret['utana'] = db_query($q, array('fv' => 'getDiakJogviszonyByDt', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + + return $ret; + + } + + function getDiakJogviszonyByDts($diakIds, $dts, $olr='') { + // lekérdezzük az adott diák/diákok megadott dátum(ok) szerinti jogviszonyait - pl Osztályozónapló + $ret = array(); + if (is_array($diakIds) && is_array($dts)) { + foreach ($diakIds as $diakId) { + foreach ($dts as $dt) { + $q = "SELECT diakId, dt, statusz FROM diakJogviszony WHERE diakId=%u AND dt <= '%s' ORDER BY dt DESC LIMIT 1"; + $ret[$diakId][$dt] = db_query($q, array('fv' => 'getDiakJogviszonyByDts', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($diakId, $dt)), $olr); + } + } + } + return $ret; + } + + function getDiakAdatkezeles($diakId, $filter = null) { + + if (is_numeric($diakId)) { + + $v = array($diakId); + if (is_array($filter)) { + foreach ($filter as $kulcs => $ertek) { + $W[] = " AND kulcs = '%s'"; + $W[] = " AND ertek = '%s'"; + $v[] = $kulcs; + $v[] = $ertek; + } + } else $W = ''; + + $q = "SELECT * FROM diakAdatkezeles WHERE diakId = %u".implode(' ',$W); + $r = db_query($q, array('fv' => 'getDiakAdatkezeles', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield'=>'kulcs', 'values' => $v)); + + return $r; + + } else { + return false; + } + + } + + + function getDiakTorzslapszam($diakId, $osztalyId, $SET = array('osztalyJellel' => true, 'tanev'=>__TANEV)) { + /* + * Ha van a diak táblában törzslapszám, akkor azt adjuk vissza, ha nincs akkor a diakTorzslapszam tábla megfelelő értékét, vagy ennek hiányában false null értéket. + * Nem használt függvény (még) + */ + + $q = "SELECT torzslapszam FROM diak WHERE diakId=%u"; + $v = array($diakId); + $r = db_query($q, array('fv'=>'getDiakTorzslapszam/diak', 'modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + + if ($r && !is_null($r)) return $r; + + $q = "SELECT torzslapszam FROM diakTorzslapszam WHERE diakId=%u AND osztalyId=%u"; + $v = array($diakId, $osztalyId); + $r = db_query($q, array('fv'=>'getDiakTorzslapszam/osztaly', 'modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + + if ($SET['osztalyJellel']) { + $q = "select concat('/',kezdoTanev, '-', vegzoTanev+1,'/',jel) from osztaly where osztalyId = %u"; + $v = array($osztalyId); + $r .= db_query($q, array('fv'=>'getDiakTorzslapszam/osztalyJel', 'modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + } + + return $r; + } + + + function getDiakokTorzslapszamaByOsztalyId($osztalyId, $SET = array('osztalyJellel' => true, 'tanev'=>__TANEV)) { + /* + * Ha van a diak táblában törzslapszám, akkor azt adjuk vissza, ha nincs akkor a diakTorzslapszam tábla megfelelő értékét, vagy ennek hiányában false null értéket. + * Nem használt függvény (még) + */ + + // kérdezzük le az osztály valaha volt összes tagját: + $q = "SELECT count(diakId) FROM osztalyDiak WHERE osztalyId=%u"; + $v = array($osztalyId); + $db = db_query($q, array('fv'=>'getDiakokTorzslapszama/osztalyTagok', 'modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + + // Ha nincsenek tagok + if ($db == 0) return false; + + // OsztalyJel lekérdezése + if ($SET['osztalyJellel']) { + $q = "select concat('/',kezdoTanev, '-', vegzoTanev+1,'/',jel) from osztaly where osztalyId = %u"; + $v = array($osztalyId); + $osztalyStr = db_query($q, array('fv'=>'getDiakokTorzslapszama/osztalyJel', 'modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + } else { + $osztalyStr = ''; + } + // Törzslapszámok lekérdezése + $q = "select diakId, ifnull(diak.torzslapszam, concat(diakTorzslapszam.torzslapszam,'%s')) as torzslapszam + from diak left join diakTorzslapszam using(diakId) + where osztalyId=%u + and diakId in (select diakId from osztalyDiak where osztalyId=%u) + order by torzslapszam"; + $v = array($osztalyStr, $osztalyId, $osztalyId); + $r = db_query($q, array('fv'=>'getDiakokTorzslapszama/osztaly', 'modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$v)); + + return $r; + } + + function getDiakNaploSorszam($diakId,$tanev,$osztalyId) { + $q = "SELECT diakNaploSorszam(%u,%u,%u)"; + $v = array($diakId,$tanev,$osztalyId); + return db_query($q, array('fv'=>'getDiakNaploSorszam', 'modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + } + + + function getDiakNyelvvizsga($diakId) { + $q = "SELECT * FROM diakNyelvvizsga WHERE diakId=%u"; + $v = array($diakId); + return db_query($q, array('fv'=>'getDiaknyelvvizsga', 'modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + } + + function diakNyelvvizsgaFelvesz($ADAT) { + $q = "INSERT INTO diakNyelvvizsga (diakId,targyId,vizsgaSzint,vizsgaTipus,vizsgaDt,vizsgaIntezmeny,vizsgaBizonyitvanySzam) + VALUES (%u,%u,'%s', '%s', '%s', '%s', '%s')"; + $v = array($ADAT['diakId'],$ADAT['targyId'],$ADAT['vizsgaSzint'],$ADAT['vizsgaTipus'],$ADAT['vizsgaDt'],$ADAT['vizsgaIntezmeny'],$ADAT['vizsgaBizonyitvanySzam']); + return db_query($q, array('fv'=>'diakNyelvvizsgaFelvesz', 'modul'=>'naplo_intezmeny','result'=>'record','values'=>$v)); + } + function diakNyelvvizsgaTorol($ADAT) { + if (count($ADAT)>0) { + $q = "DELETE FROM diakNyelvvizsga WHERE nyelvvizsgaId IN (".implode(',',$ADAT).") "; + return db_query($q, array('fv'=>'diakNyelvvizsgaTorol', 'modul'=>'naplo_intezmeny','values'=>$v)); + } + } + + function getNyelvvizsgak($SET) { + if ($SET['igDt']=='') { + $SET['igDt'] = date('Y-m-d', strtotime('+365 days',strtotime($SET['tolDt']))); + $q = "SELECT * FROM diakNyelvvizsga WHERE vizsgaDt>='%s' AND vizsgaDt<'%s'"; + $v = array($SET['tolDt'],$SET['igDt']); + } elseif ($SET['igDt']!='' && $SET['tolDt']=='') { + $q = "SELECT * FROM diakNyelvvizsga WHERE vizsgaDt<'%s'"; + $v = array($SET['igDt']); + } else { + $q = "SELECT * FROM diakNyelvvizsga"; + $v = array(); + } + + return $r = db_query($q, array('fv'=>'getDiaknyelvvizsga', 'modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/diakModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/diakModifier.php new file mode 100644 index 00000000..34a4a2c5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/diakModifier.php @@ -0,0 +1,344 @@ + lásd: base/rights: checkDiakStatusz() +// if (strtotime($ADAT['jogviszonyValtasDt']) > time()) { // jövőbeni statusz nem állítható be! +// $_SESSION['alert'][] = 'message:wrong_data:diakJogviszonyValtas:jogviszonyValtasDt='.$ADAT['jogviszonyValtasDt'].':Jövőbeli állapotváltást nem rögzítünk!'; +// return false; +// } + + // A megelőző és következő jogviszony státusz lekérdezése + $DJ = getDiakJogviszonyByDt($ADAT['diakId'], $ADAT['jogviszonyValtasDt']); + if (!isset($DJ['elotte'])) { // Kell legyen megelőző - amúgy ujDiak kellene + $_SESSION['alert'][] = 'message:wrong_data:diakJogviszonyValtas:Nincs kezdeti státusz - hiba történt a diák adatainak rögzítésekor?'; + return false; + } + + if ($DJ['elotte'] == 'felvételt nyert' && $ADAT['ujStatusz'] != 'jogviszonyban van') { // felvett először iratkozzon be + $_SESSION['alert'][] = 'message:wrong_data:'.$ADAT['ujStatusz'].':diakJogviszonyValtas:beiratkozáskor csak "jogviszonyban van" státuszba kerülhet a diák!'; + return false; + } + + if ($ADAT['ujStatusz'] == $DJ['elotte']) return true; // nincs mit tenni + + if (isset($DJ['utana'])) { // a következő jogviszonyváltás már rögzítve van... nem piszkálhatunk az intervallum közbe! + $_SESSION['alert'][] = 'message:wrong_data:diakJogviszonyValtas:már van rögzítve státuszváltás a megadott dátum után!:'.$DJ['utana']; + return false; + } + + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + + // A diák osztályai a változás napján + $osztalyIds = getDiakOsztalya($ADAT['diakId'], array('tanev' => $ADAT['tanev'], 'tolDt' => $ADAT['jogviszonyValtasDt'], 'igDt' => $ADAT['jogviszonyValtasDt'], 'result' => 'idonly')); + // A változás idején (vagy utána közvetlenül) érvényes szemeszter adatok + $szAdat = getSzemeszterByDt($ADAT['jogviszonyValtasDt'], 1); + switch ($ADAT['ujStatusz']) { + case 'jogviszonyban van': + if ($DJ['elotte'] == 'felvételt nyert') { // beiratkozás + + // diak tábla módosítása - jogviszonyKezdete + $q = "UPDATE diak SET statusz='jogviszonyban van',jogviszonyKezdete='%s',kezdoTanev=IFNULL(kezdoTanev,%u),kezdoSzemeszter=IFNULL(kezdoSzemeszter,%u) WHERE diakId=%u"; + $v = array($ADAT['jogviszonyValtasDt'], $szAdat['tanev'], $szAdat['szemeszter'], $ADAT['diakId']); + $r = db_query($q, array('fv' => 'diakJogviszonyValtas', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + if ($r===false) { db_rollback($lr, 'diak.jogviszonyKezdete - fail');db_close($lr);return false; } + + // Záradékolás - felvétel/beiratkozás + $In = getIntezmenyByRovidnev(__INTEZMENY); + $osztalyStr = array(); + if ($zaradekOsztallyal = (is_array($osztalyIds) && count($osztalyIds) > 0)) { + foreach ($osztalyIds as $key => $osztalyId) { + $osztalyAdat[$osztalyId] = getOsztalyAdat($osztalyId, $ADAT['tanev']); + $osztalyStr[] = $osztalyAdat[$osztalyId]['kezdoTanev'].'-'.($osztalyAdat[$osztalyId]['vegzoTanev']+1).'/'.$osztalyAdat[$osztalyId]['jel']; + } + } + $Z = array( + 'csere' => array( + '%iskola címe%' => $In['nev'].' ('.$In['cimIrsz'].' '.$In['cimHelyseg'].', '.$In['cimKozteruletNev'].' '.$In['cimKozteruletJelleg'].' '.$In['cimHazszam'].'.)', + '%osztály%' => implode(', ', $osztalyStr), + '%határozat száma%' => $ADAT['hatarozat'], + ), + 'zaradekIndex' => ($zaradekOsztallyal?$ZaradekIndex['jogviszony megnyitás']['felvétel osztályba'] : $ZaradekIndex['jogviszony megnyitás']['felvétel']) + ); + } + break; + case 'vendégtanuló': + break; + case 'magántanuló': + $Z = array('zaradekIndex' => $ZaradekIndex['jogviszony változás']['magántanuló']); + break; + case 'jogviszonya felfüggesztve': + $Z = array( +//20110610 'zaradekIndex' => $ADAT['zaradek']['felfüggesztés'], + 'zaradekIndex' => $ZaradekIndex['jogviszony változás']['felfüggesztés'], + 'csere' => array('%ok%' => $ADAT['felfuggesztesOk'], '%igDt%' => $ADAT['felfuggesztesIgDt']) + ); + break; + case 'jogviszonya lezárva': +/* Ezt előrébb vizsgáljuk + if (isset($DJ['utana'])) { // lezárás után nem lehet jogviszonybejegzés + $_SESSION['alert'][] = 'message:wrong_data:diakJogviszonyValtas:bejegyzett jogviszony változás előtt a jogviszony nem zárható le:'.$DJ['utana']; + db_rollback($lr); + db_close($lr); + return false; + } +*/ + + // diak tábla módosítása - jogviszonyVege + $q = "UPDATE diak SET jogviszonyVege='%s' WHERE diakId=%u"; + $v = array($ADAT['jogviszonyValtasDt'], $ADAT['diakId']); + $r = db_query($q, array('fv' => 'diakJogviszonyValtas', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + + if ($r===false) { db_rollback($lr, 'diak.jogviszonyVege - fail');db_close($lr);return false; } + + // Osztályokból kivétel (Ez a tankörökből is kiveszi, ellenőrzi a jegyeket, hiányzásokat is a tanévekben) + foreach ($osztalyIds as $key => $osztalyId) { + $r = osztalyDiakTorol(array('osztalyId' => $osztalyId, 'diakId' => $ADAT['diakId'], 'tolDt' => $ADAT['jogviszonyValtasDt']), $lr); + if ($r===false) { db_rollback($lr, 'osztalyDiakTorol - fail');db_close($lr);return false; } + } + // Ha netán van olyan tankörtagsága, ami nem osztályhoz kötődik, akkor azt itt törölni kellene!!!! Például: vendégtanuló... + // akkor lejjebb töröljük + + // záradékolás + $Z = array( + 'zaradekIndex' => $ADAT['lezarasZaradekIndex'], + 'csere' => array('%igazolatlan órák száma%' => $ADAT['lezarasIgazolatlanOrakSzama'], '%iskola%' => $ADAT['lezarasIskola']) + ); + break; + + default: + $_SESSION['alert'][] = 'message:wrong_data:új statusz='.$ADAT['ujStatusz'].':diakJogviszonyValtas'; + db_rollback($lr, 'új statusz - wrong'); + db_close($lr); + return false; + break; + } + + // diakJogviszony tábla - bejegyzés + $q = "INSERT INTO diakJogviszony (diakId, statusz, dt) VALUES (%u, '%s', '%s')"; + $v = array($ADAT['diakId'], $ADAT['ujStatusz'], $ADAT['jogviszonyValtasDt']); + $r = db_query($q, array('fv' => 'diakJogviszonyValtas', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + if ($r===false) { db_rollback($lr, 'diakJogviszony - fail');db_close($lr);return false; } + + // Tankörökből való kiléptetés (lezárás esetén már megtörtént) + if ($ADAT['ujStatusz'] == 'jogviszonya felfüggesztve' || $ADAT['ujStatusz'] == 'jogviszonya lezárva') { + $tankorIds = getTankorByDiakId($ADAT['diakId'], $ADAT['tanev'], array('tolDt' => $ADAT['jogviszonyValtasDt'], 'override' => 'true', 'result' => 'idonly'), $lr); + if (is_array($tankorIds) && count($tankorIds) > 0) + $r = tankorDiakTorol(array( + 'diakId' => $ADAT['diakId'], 'utkozes' => 'torles', 'tankorIds' => $tankorIds, 'MIN_CONTROL' => false, 'tolDt' => $ADAT['jogviszonyValtasDt'] + ), $lr); + if ($r===false) { db_rollback($lr, 'tankorDiakTorol - fail');db_close($lr);return false; } + } elseif ($ADAT['ujStatusz'] == 'magántanuló') { + $tolDt = $ADAT['jogviszonyValtasDt']; + //törlés + $TH = $TJ = array(); + $HSUM = $JSUM = array(); + // A tol-ig dátumok által érintett aktív tanévek lekérdezése + $aktivTanevek = getTanevekByDtInterval($ADAT['jogviszonyValtasDt'], date('Y-m-d'), array('aktív')); + // Az érintett tanéveken végigmenve + foreach ($aktivTanevek as $key => $tanev) { + $TANKORIDS = getTankorByDiakId($ADAT['diakId'], $ADAT['tanev'], array('tolDt' => $tolDt, 'result' => 'idonly'), $lr); + if (is_array($TANKORIDS) && count($TANKORIDS) > 0) { + for ($i = 0; $i < count($TANKORIDS); $i++) { + $H = tankorDiakHianyzasIdk($ADAT['diakId'], $TANKORIDS[$i], $tanev, $tolDt, null); // tol-ig-et a függvény initTolIgDt hívással kapja + $J = tankorDiakJegyIdk(array('diakId'=>$ADAT['diakId'], 'tankorIds'=>$TANKORIDS[$i], 'tanev'=>$tanev, 'tolDt'=>$tolDt, 'igDt'=>null)); + if (is_array($H)) $HSUM = array_merge($HSUM,$H); + if (is_array($J)) $JSUM = array_merge($JSUM,$J); + } + // hiányzások és jegyek törlése... + $r = hianyzasTorles($HSUM, $tanev, $lr); + if ($r!==false) $r = jegyTorles($JSUM, null, $tanev, $lr); // különben úgyis rollback van + } + } + if ($r===false) { db_rollback($lr, 'hianyzasTorles/jegyTorles - fail');db_close($lr);return false; } + } + // Záradék rögzítés - ha van + if (isset($Z['zaradekIndex'])) { + $Z['diakId'] = $ADAT['diakId']; + $Z['iktatoszam'] = $ADAT['iktatoszam']; + $Z['dt'] = $ADAT['jogviszonyValtasDt']; + $r = zaradekRogzites($Z,$lr); + if ($r===false) { db_rollback($lr, 'zaradekRogzites - fail');db_close($lr);return false; } + } + // Ha ez az utolsó jogviszony állapot, akkor a diak tábla is módosítandó! + + db_commit($lr); + db_close($lr); + + checkDiakStatusz(); + + return true; + + } + + + function ujDiak($ADAT) { + + global $ZaradekIndex; + + $NOTNULL = array('viseltNevElotag','viseltCsaladinev','viseltUtonev','szuleteskoriNevElotag','szuleteskoriCsaladinev','szuleteskoriUtonev'); + +/* + $ADAT mezői: + jogviszonyKezdete - záradékolás és diakJogviszony miatt + osztalyId - Osztálybalépéshez (csak ha jogviszonyKezdete a dátum + felvetelTipus - beiratkozásra vár(statusz:felvételt nyert)|vendégtanuló(statusz:vendégtanuló)|más(statusz:jogviszonyban van) + zaradek - típusonként + osztaly - kezdoTanev/zaroTanev/jel + + hatarozat - iskolaváltás esetén + tabelFields - A diak tábla mezői - ez alapján engedélyezett a módosítás + intezmeny - Az intézmény adatai +*/ + if (is_array($ADAT['tableFields']))$FIELDS = $ADAT['tableFields']; + else $FIELDS = getTableFields('diak'); + if ($ADAT['felvetelTipus'] == 'beiratkozásra vár') { + $statusz = 'felvételt nyert'; + unset($ADAT['jogviszonyKezdete']); + } elseif ($ADAT['felvetelTipus'] == 'vendégtanuló') { + $statusz='vendégtanuló'; + unset($ADAT['osztalyId']); + } else + $statusz = 'jogviszonyban van'; + + foreach($ADAT as $attr => $value) { + if (array_key_exists($attr,$FIELDS) && !in_array($attr, array('action','diakId'))) { + $A[] = "$attr"; + if ($value=='' && !in_array($attr, $NOTNULL)) { + $P[]='null'; + } else { + $V[] = $value; + $P[] = "'%s'"; + } + } + } + $q = "INSERT INTO diak (statusz,".implode(',', $A).") VALUES ('".$statusz."',".implode(',',$P).')'; + $diakId = db_query($q, array('fv' => 'ujDiak', 'modul'=>'naplo_intezmeny', 'result' => 'insert', 'values' => $V)); + if ($diakId) { + if ($statusz == 'jogviszonyban van' || $statusz == 'vendégtanuló') { + // diakJogviszony tábla + $q = "INSERT INTO diakJogviszony (diakId, statusz, dt) VALUES (%u, '%s', '%s')"; + db_query($q, array('fv' => 'ujDiak/diakJogviszony', 'modul' => 'naplo_intezmeny', 'values' => array($diakId, $statusz, $ADAT['jogviszonyKezdete']))); + } // Ha csak felvételt nyert, akkor nincs jogviszony információ + // osztályba rakás + if (isset($ADAT['osztalyId'])) { + $q = "INSERT INTO osztalyDiak (osztalyId, diakId, beDt) VALUES (%u, %u, '%s')"; + db_query($q, array('fv' => 'ujDiak/osztalyDiak', 'modul' => 'naplo_intezmeny', 'values' => array($ADAT['osztalyId'], $diakId, $ADAT['jogviszonyKezdete']))); + } + // záradékolás + if (isset($ADAT['zaradek'][ $ADAT['felvetelTipus'] ])) { // A felvételt nyert típus nem záradékolandó + if (is_array($ADAT['intezmeny'])) $In = $ADAT['intezmeny']; + else $In = getIntezmenyByRovidnev(__INTEZMENY); + $Z = array( + 'diakId' => $diakId, + 'dt' => $ADAT['jogviszonyKezdete'], + 'csere' => array( + '%iskola címe%' => $In['nev'].' ('.$In['cimIrsz'].' '.$In['cimHelyseg'].', '.$In['cimKozteruletNev'].' '.$In['cimKozteruletJelleg'].' '.$In['cimHazszam'].'.)', + '%osztály%' => $ADAT['osztaly']['kezdoTanev'].'-'.($ADAT['osztaly']['vegzoTanev']+1).'/'.$ADAT['osztaly']['jel'], + '%határozat száma%' => $ADAT['hatarozat'], + ), + 'zaradekIndex' => $ADAT['zaradek'][ $ADAT['felvetelTipus'] ] + ); + zaradekRogzites($Z); + } + } + return $diakId; + + } + + function diakHozottHianyzas($ADAT) { + + if ($ADAT['diakId']!='') { + if ($ADAT['hozottHianyzasIgazolt']!=0) { + $q = "INSERT INTO `hianyzasHozott` (`diakId`,`statusz`,`dbHianyzas`,`dt`) VALUES (%u,'%s',%u,NOW())"; + $v = array($ADAT['diakId'],'igazolt',$ADAT['hozottHianyzasIgazolt']); + $result = db_query($q, array('fv' => 'diakAdatModositas', 'modul' => 'naplo', 'values' => $v)); + } + if ($ADAT['hozottHianyzasIgazolatlan']!=0) { + $q = "INSERT INTO `hianyzasHozott` (`diakId`,`statusz`,`dbHianyzas`,`dt`) VALUES (%u,'%s',%u,NOW())"; + $v = array($ADAT['diakId'],'igazolatlan',$ADAT['hozottHianyzasIgazolatlan']); + $result = db_query($q, array('fv' => 'diakAdatModositas', 'modul' => 'naplo', 'values' => $v)); + } + } + return $result; + } + + function diakAdatModositas($ADAT) { + + $FIELDS = getTableFields('diak'); + $NOTNULL = array('viseltNevElotag','viseltCsaladinev','viseltUtonev','szuleteskoriNevElotag','szuleteskoriCsaladinev','szuleteskoriUtonev'); + + $v = array(); + foreach($ADAT as $attr => $value) { + if (array_key_exists($attr,$FIELDS) && !in_array($attr, array('action','diakId'))) { + if ($value=='' && !in_array($attr, $NOTNULL)) { + $value='null'; + } else { + array_push($v, $value); + $value = "'%s'"; + } + $T[] = "$attr=$value"; + } + } + array_push($v, $ADAT['diakId']); + $q = "UPDATE diak SET ".implode(',', $T)." WHERE diakId=%u"; + return db_query($q, array('fv' => 'diakAdatModositas', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + } + + function diakJogviszonyBejegyzesTorles($ADAT) { + + $q = "DELETE FROM `diakJogviszony` WHERE `diakId`=%u AND `statusz`='%s' AND `dt`='%s'"; + $v = array($ADAT['diakId'], $ADAT['statusz'], $ADAT['dt']); + db_query($q, array('fv' => 'diakJogviszonyBejegyzesTorles/diakJogviszony', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + $q = "DELETE FROM `zaradek` WHERE `diakId` = %u AND `zaradekId` = %u"; + $v = array($ADAT['diakId'], $ADAT['zaradekId']); + db_query($q, array('fv' => 'diakJogviszonyBejegyzesTorles/zaradek', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + } + + function diakAdatkezelesModositas($ADAT) { + + $q = "INSERT IGNORE INTO diakAdatkezeles (diakId,kulcs,ertek) VALUES (%u,'%s','%s')"; + $v = array($ADAT['diakId'], $ADAT['kulcs'], $ADAT['ertek']); + return db_query($q, array('fv' => 'diakAdatkezelesModositas', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + } + + function diakTorol($ADAT) { + + $q = "DELETE FROM diak WHERE statusz='felvételt nyert' AND diakId=%u"; + $v = array($ADAT['diakId']); + return db_query($q, array('fv' => 'diakTorol', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/dolgozat.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/dolgozat.php new file mode 100644 index 00000000..d02ad19e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/dolgozat.php @@ -0,0 +1,154 @@ + array(...), + 'tervezett' => array(...), + $tankorId => array( + 'bejelentés'=> ..., + 'tervezett' => array($dt => array(...)), + 'megjegyzés' => ..., + 'tankör' => array(array('id','leírás'), ...) + ) + ) + + function ujDolgozat($tanarId, $tankorId, $olr = '') + +*/ + + // --------------------------------------------------------- // + + function checkTankorDolgozata($tankorId, $dolgozatId, $olr = '') { + + + if ($dolgozatId == 'uj') { + // Az új dolgozat csak ez után lesz létrehozva (jegybeírás) + return true; + } else { + // ellenőrizzük, hogy a megadott dolgozatId valóban egy ehhez a tankörhöz tartozó did-e. + $q = "SELECT COUNT(dolgozatId) FROM dolgozat LEFT JOIN tankorDolgozat USING (dolgozatId) + WHERE dolgozat.dolgozatId = %u AND tankorId = %u"; + $v = array($dolgozatId, $tankorId); + return (1 == db_query($q, array('fv' => 'checkTankorDolgozata', 'modul' => 'naplo', 'values' => $v, 'result' => 'value'), $olr)); + } + + } + + // --------------------------------------------------------- // + + function getTankorDolgozatok($tankorId, $csakTervezett = false, $tolDt = null, $igDt = null, $olr = null) { + + $return = array(); + + initTolIgDt(__TANEV, $tolDt, $igDt); + $tankorIds = array(); + if (!is_array($tankorId) && $tankorId != '') $tankorIds = array($tankorId); + elseif (is_array($tankorId[0])) for ($i = 0; $i < count($tankorId); $i++) $tankorIds[] = $tankorId[$i]['tankorId']; + elseif (is_array($tankorId)) $tankorIds = $tankorId; + else return false; + + if (count($tankorIds) > 0) { + $v = $tankorIds; + if ($csakTervezett) { + $q = "SELECT * FROM dolgozat LEFT JOIN tankorDolgozat USING (dolgozatId) + WHERE tankorDolgozat.tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND '%s' <= tervezettDt AND tervezettDt <= '%s' + ORDER BY tervezettDt, bejelentesDt"; + array_push($v, $tolDt, $igDt); + } else { + $q = "SELECT * FROM dolgozat LEFT JOIN tankorDolgozat USING (dolgozatId) + WHERE tankorDolgozat.tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + ORDER BY tervezettDt, bejelentesDt"; + } + $return = db_query($q, array('fv' => 'getTankorDolgozatok', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'dolgozatId', 'values' => $v), $olr); + $dolgozatIds = $tervezett = array(); + foreach ($return as $dolgozatId => $dolgozatAdat) { + $dolgozatIds[] = $dolgozatId; + if ($dolgozatAdat['tervezettDt'] != '') $tervezett[$dolgozatAdat['tervezettDt']][] = $dolgozatId; + } + $return['dolgozatIds'] = $dolgozatIds; + $return['tervezett'] = $tervezett; + if (count($dolgozatIds) > 0) { + $q = "SELECT DISTINCT dolgozatId, tankorId, tankorNev + FROM tankorDolgozat LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + WHERE tanev=".__TANEV." + AND dolgozatId IN (".implode(',', array_fill(0, count($dolgozatIds), '%u')).")"; + $Tankorok = db_query($q, array('fv' => 'getTankorDolgozatok', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'dolgozatId', 'values' => $dolgozatIds), $olr); + foreach ($Tankorok as $dolgozatId => $dolgozatTankorei) { + $return[$dolgozatId]['tankor'] = $dolgozatTankorei; + } + } + } + return $return; + + } + + function getDolgozatAdat($dolgozatId, $olr = null) { + + if ($dolgozatId=='') return false; + $lr = (!is_resource($olr)) ? db_connect('naplo') : $olr; + $q = "SELECT * FROM dolgozat WHERE dolgozatId = %u"; + $v = array($dolgozatId); + $RET = db_query($q, array('fv' => 'getDolgozatAdat', 'modul' => 'naplo', 'result' => 'record', 'values' => $v), $lr); + $dt = $RET['bejelentesDt']; + $q = "SELECT tankorId FROM tankorDolgozat WHERE dolgozatId = %u"; + $v = array($dolgozatId); + $r = db_query($q, array('fv' => 'getDolgozatAdat', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v), $lr); + for ($i=0; $i $tanev, + 'tolDt' => $dt, + 'igDt' => $dt, + 'result' => 'idonly', + 'datumKenyszeritessel' => true + ) + ); + $RET['tankorok'][] = $_TA[$_tankorId]; + } + + $q = "SELECT avg(jegy) AS atlag, count(jegyId) AS db FROM jegy WHERE dolgozatId = %u"; + $v = array($dolgozatId); + $RET['jegyStatisztika'] = db_query($q, array('fv' => 'getDolgozatAdat', 'modul' => 'naplo', 'result' => 'record', 'values' => $v), $lr); + + if (!is_resource($olr)) db_close($lr); + + return $RET; + } + + function ujDolgozat($tanarId, $tankorId, $olr = null) { + + $q = "INSERT INTO dolgozat (bejelentesDt, dolgozatNev, modositasDt) VALUES (now(),'%s',now())"; + $v = array( 'Dolgozat '.date('Y-m-d H:i:s') ); + $dolgozatId = db_query($q, array('fv' => 'ujDolgozat/1', 'modul' => 'naplo', 'result' => 'insert', 'values'=>$v), $olr); + + $q = "INSERT INTO tankorDolgozat (dolgozatId, tankorId) VALUES (%u, %u)"; + $v = array($dolgozatId, $tankorId); + db_query($q, array('fv' => 'ujDolgozat/2', 'modul' => 'naplo', 'result' => 'insert', 'values' => $v), $olr); + + return $dolgozatId; + + } + + function dolgozatModositas($dolgozatId, $dolgozatNev, $tervezettDt) { + + if (intval($dolgozatId)==0) return false; + if ($tervezettDt=='') return false; + if ($dolgozatNev!='') { + $q = "UPDATE dolgozat SET dolgozatNev='%s', tervezettDt='%s', modositasDt=now() WHERE dolgozatId=%u"; + $v = array($dolgozatNev, $tervezettDt, $dolgozatId); + } else { + $q = "UPDATE dolgozat SET tervezettDt='%s', modositasDt=now() WHERE dolgozatId=%u"; + $v = array($tervezettDt, $dolgozatId); + } + return db_query($q, array('fv' => 'dolgozatModositas', 'modul' => 'naplo', 'values' => $v)); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/ertekeles.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/ertekeles.php new file mode 100644 index 00000000..6d9b3cf2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/ertekeles.php @@ -0,0 +1,60 @@ + 0, // semmi + 1 => 2, // szóbeli osztályfőnöki figyelmeztetés + 2 => 3, // osztályfőnöki figyelmeztetés + 3 => 4, // osztályfőnöki intő + 4 => 5, // osztályfőnöki rovó + 5 => 6, // igazgatói figyelmeztető (szülő értesítése) + 6 => 0, // semmi + 7 => 7, // igazgatói intő + 8 => 0, // semmi + 9 => 8, // igazgatói rovó + 10 => 0, // igazgatói rovó + 11 => 9 // fegyelmi eljárás + ); + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/esemeny.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/esemeny.php new file mode 100644 index 00000000..ab68f99b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/esemeny.php @@ -0,0 +1,216 @@ +'ujEsemeny','modul'=>'naplo','values'=>$v,'result'=>'insert')); + // Ha tanár veszi fel, akkor őt rögtön rendeljük hozzá! + if (is_numeric($esemenyId) && __TANAR) { + $q = "INSERT INTO esemenyTanar (esemenyId, tanarId) VALUES (%u,%u)"; + $v = array($esemenyId, __USERTANARID); + db_query($q, array('fv'=>'ujEsemenyModositas/insTanar','modul'=>'naplo','values'=>$v)); + } + return $esemenyId; + } + + function getEsemenyAdat($esemenyId) { + $v = array($esemenyId); + $q = "SELECT * FROM esemeny WHERE esemenyId=%u"; + $ret = db_query($q, array('fv'=>'getEsemenyAdat','modul'=>'naplo','values'=>$v,'result'=>'record')); + $q = "SELECT osztalyId FROM esemenyOsztaly WHERE esemenyId=%u"; + $ret['osztalyIds'] = db_query($q, array('fv'=>'getEsemenyAdat/osztaly','modul'=>'naplo','values'=>$v,'result'=>'idonly')); + $q = "SELECT tanarId FROM esemenyTanar WHERE esemenyId=%u"; + $ret['tanarIds'] = db_query($q, array('fv'=>'getEsemenyAdat/tanar','modul'=>'naplo','values'=>$v,'result'=>'idonly')); + $q = "SELECT esemenyDiak.*, TRIM(CONCAT_WS(' ', viseltNevElotag, viseltCsaladinev, viseltUtonev)) AS diakNev + FROM esemenyDiak LEFT JOIN ".__INTEZMENYDBNEV.".diak USING (diakId) WHERE esemenyId=%u ORDER BY diakNev"; + $ret['diakok'] = db_query($q, array('fv'=>'getEsemenyAdat/diak','modul'=>'naplo','values'=>$v,'result'=>'indexed')); + $ret['diakIds'] = array(); + if (is_array($ret['diakok'])) foreach ($ret['diakok'] as $dAdat) $ret['diakIds'][] = $dAdat['diakId']; + + return $ret; + } + + function esemenyModositas($ADAT) { + + $lr = db_connect('naplo'); + db_start_trans($lr); + + // osztály-hozzárendelések törlése + $q = "DELETE FROM esemenyOsztaly WHERE esemenyId=%u"; + $v = array($ADAT['esemenyId']); + $ok = db_query($q, array('fv'=>'esemenyModositas/delOsztaly','modul'=>'naplo','values'=>$v), $lr); + // TODO: diák-hozzárendelés alapján kiegészítendő az osztalyid-k listája! + if (is_array($ADAT['esemenyOsztaly']) && count($ADAT['esemenyOsztaly'])>0) { + // osztály-hozzárendelések felvétele + $q = "INSERT INTO esemenyOsztaly (esemenyId, osztalyId) VALUES (".implode('),(', array_fill(0, count($ADAT['esemenyOsztaly']), '%u,%u')).")"; + $v = array(); + foreach ($ADAT['esemenyOsztaly'] as $osztalyId) { $v[] = $ADAT['esemenyId']; $v[] = $osztalyId; } + $ok = $ok && db_query($q, array('fv'=>'esemenyModositas/insOsztaly','modul'=>'naplo','values'=>$v), $lr); + } + + // tanár-hozzárendelések törlése + $q = "DELETE FROM esemenyTanar WHERE esemenyId=%u"; + $v = array($ADAT['esemenyId']); + $ok = $ok && db_query($q, array('fv'=>'esemenyModositas/delTanar','modul'=>'naplo','values'=>$v), $lr); + if (is_array($ADAT['esemenyTanar']) && count($ADAT['esemenyTanar'])>0) { + // tanár-hozzárendelések felvétele + $q = "INSERT INTO esemenyTanar (esemenyId, tanarId) VALUES (".implode('),(', array_fill(0, count($ADAT['esemenyTanar']), '%u,%u')).")"; + $v = array(); + foreach ($ADAT['esemenyTanar'] as $tanarId) { $v[] = $ADAT['esemenyId']; $v[] = $tanarId; } + $ok = $ok && db_query($q, array('fv'=>'esemenyModositas/insTanar','modul'=>'naplo','values'=>$v), $lr); + } + + // esemeny alapadatainak módosítása + $q = "UPDATE esemeny SET esemenyRovidnev='%s', esemenyNev='%s', esemenyKategoria='%s', esemenyLeiras='%s', + jelentkezesTolDt='%s', jelentkezesIgDt='%s', max=%u, min=%u + WHERE esemenyId=%u"; + $v = array( + $ADAT['esemenyRovidnev'], $ADAT['esemenyNev'], $ADAT['esemenyKategoria'], $ADAT['esemenyLeiras'], + $ADAT['jelentkezesTolDt'], $ADAT['jelentkezesIgDt'], $ADAT['max'], $ADAT['min'], + $ADAT['esemenyId'], + ); + $ok = $ok && db_query($q, array('fv'=>'esemenyModositas/mod','modul'=>'naplo','values'=>$v), $lr); + + if ($ok) db_commit($lr); + else db_rollback($lr); + + db_close($lr); + + return $ok; + + + } + + function getEsemenyLista() { + + $q = "SELECT * FROM esemeny ORDER BY esemenyRovidnev"; + return db_query($q, array('fv'=>'getEsemenyLista','modul'=>'naplo','values'=>array(),'result'=>'indexed')); + + } + + function esemenyTorles($esemenyId) { + + $lr = db_connect('naplo'); + db_start_trans($lr); + + // tanár-hozzárendelések törlése + $q = "DELETE FROM esemenyTanar WHERE esemenyId=%u"; + $v = array($esemenyId); + $ok = db_query($q, array('fv'=>'esemenyTorles/delTanar','modul'=>'naplo','values'=>$v), $lr); + + // diák-hozzárendelések törlése + $q = "DELETE FROM esemenyDiak WHERE esemenyId=%u"; + $v = array($esemenyId); + $ok = $ok && db_query($q, array('fv'=>'esemenyTorles/delDiak','modul'=>'naplo','values'=>$v), $lr); + + // osztály-hozzárendelések törlése + $q = "DELETE FROM esemenyOsztaly WHERE esemenyId=%u"; + $v = array($esemenyId); + $ok = $ok && db_query($q, array('fv'=>'esemenyTorles/delOsztaly','modul'=>'naplo','values'=>$v), $lr); + + // az esemeny törlése + $q = "DELETE FROM esemeny WHERE esemenyId=%u"; + $v = array($esemenyId); + $ok = $ok && db_query($q, array('fv'=>'esemenyTorles/delEsemeny','modul'=>'naplo','values'=>$v), $lr); + + if ($ok) db_commit($lr); + else db_rollback($lr); + + db_close($lr); + + return $ok; + + } + + function getAktualisEsemenyByOsztaly($osztalyIds) { + + $q = "SELECT * FROM esemeny LEFT JOIN esemenyOsztaly USING (esemenyId) WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).")"; + $ret = db_query($q, array('fv'=>'getAktualisEsemenyByOsztaly','modul'=>'naplo','values'=>$osztalyIds, 'result'=>'indexed')); + + for ($i=0; $i'getAktualisEsemenyByOsztaly/letszam','modul'=>'naplo','values'=>array($ret[$i]['esemenyId']), 'result'=>'value')); + } + + return $ret; + } + + function getValasztottEsemenyek($diakId, $SET = array('esemenyIds' => null)) { + + $q = "SELECT esemenyId FROM esemeny LEFT JOIN esemenyDiak USING (esemenyId) WHERE diakId=%u"; + $v = array($diakId); + if (is_array($SET['esemenyIds'])) { + $q .= " AND esemenyId IN (".implode(',', array_fill(0, count($SET['esemenyIds']), '%u')).")"; + foreach ($SET['esemenyIds'] as $eId) $v[] = $eId; + } + return db_query($q, array('fv'=>'getValasztottEsemenyek','modul'=>'naplo','values'=>$v, 'result'=>'idonly')); + } + + function getJovahagyottEsemenyek($diakId, $SET = array('esemenyIds' => null)) { + + $q = "SELECT esemenyId FROM esemeny LEFT JOIN esemenyDiak USING (esemenyId) WHERE diakId=%u AND jovahagyasDt!='0000-00-00 00:00:00'"; + $v = array($diakId); + if (is_array($SET['esemenyIds'])) { + $q .= " AND esemenyId IN (".implode(',', array_fill(0, count($SET['esemenyIds']), '%u')).")"; + foreach ($SET['esemenyIds'] as $eId) $v[] = $eId; + } + return db_query($q, array('fv'=>'getJovahagyottEsemenyek','modul'=>'naplo','values'=>$v, 'result'=>'idonly')); + } + + function esemenyJelentkezes($diakId, $esemenyId) { + + $lr = db_connect('naplo'); + db_start_trans($lr); + + // A max lekérdezése + $q = "SELECT max, COUNT(diakId) AS count FROM esemeny LEFT JOIN esemenyDiak USING (esemenyId) WHERE esemenyId=%u GROUP BY max"; + $v = array($esemenyId); + $ret = db_query($q, array('fv'=>'esemenyJelentkezes/max,count','modul'=>'naplo','values'=>$v,'result'=>'record'), $lr); + + if ($ret['count'] < $ret['max']) { + $q = "INSERT INTO esemenyDiak (diakId, esemenyId, jelentkezesDt, jovahagyasDt) VALUES (%u, %u, NOW(), '0000-00-00 00:00:00')"; + $v = array($diakId, $esemenyId); + $ok = db_query($q, array('fv'=>'esemenyJelentkezes','modul'=>'naplo','values'=>$v), $lr); + } else { + $ok = false; + $_SESSION['alert'][] = 'message:wrong_data:Maximális létszám = '.$ret['max']; + } + + if ($ok) db_commit($lr); + else db_rollback($lr); + + db_close($lr); + + return $ok; + } + + function esemenyLeadas($diakId, $esemenyId) { + + $q = "DELETE FROM esemenyDiak WHERE diakId=%u AND esemenyId=%u"; + $v = array($diakId, $esemenyId); + return db_query($q, array('fv'=>'esemenyLeadas','modul'=>'naplo','values'=>$v)); + + + } + + function jelentkezesJovahagyas($diakId, $esemenyId) { + + $q = "UPDATE esemenyDiak SET jovahagyasDt=NOW() WHERE diakId=%u AND esemenyId=%u"; + $v = array($diakId, $esemenyId); + return db_query($q, array('fv'=>'jelentkezesJovahagyas','modul'=>'naplo','values'=>$v)); + + } + + function jelentkezesElutasitas($diakId, $esemenyId) { + + $q = "UPDATE esemenyDiak SET jovahagyasDt='0000-00-00 00:00:00' WHERE diakId=%u AND esemenyId=%u"; + $v = array($diakId, $esemenyId); + return db_query($q, array('fv'=>'jelentkezesElutasitas','modul'=>'naplo','values'=>$v)); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/file.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/file.php new file mode 100644 index 00000000..197ed498 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/file.php @@ -0,0 +1,662 @@ + _ATTR_DIAKID, + 'oid' => _ATTR_OID, + 'diakigazolvanyszam' => _ATTR_IGAZOLVANYSZAM, + 'viseltnevelotag' => _ATTR_VNE, + 'viseltcsaladinev' => _ATTR_VCSN, + 'viseltutonev' => _ATTR_VUN, + 'szuleteskorinevelotag' => _ATTR_SZNE, + 'szuleteskoricsaladinev' => _ATTR_SZCSN, + 'szuleteskoriutonev' => _ATTR_SZUN, + 'szuletesihely' => _ATTR_SZH, + 'szuletesiido' => _ATTR_SZI, + 'anyanevelotag' => _ATTR_ANE, + 'anyacsaladinev' => _ATTR_ACSN, + 'anyautoneve' => _ATTR_AUN, + 'kezdotanev' => _ATTR_KEZDO_TANEV, + 'kezdoszemeszter' => _ATTR_KEZDO_SZEMESZTER, + 'vegzotanev' => _ATTR_VEGZO_TANEV, + 'vegzoszemeszter' => _ATTR_VEGZO_SZEMESZTER, + 'adoazonosito' => _ATTR_ADOAZONOSITO, + 'allampolgarsag' => _ATTR_ALLAMPOLGARSAG, + 'anyaid' => _ATTR_ANYAID, + 'apaid' => _ATTR_APAID, + 'gondviseloid' => _ATTR_GONDVISELOID, + 'neveloid' => _ATTR_NEVELOID, + 'diaknaplosorszam' => _ATTR_DIAKNAPLOSORSZAM, + 'elozoiskolaomkod' => _ATTR_ELOZOISKOLAOMKOD, + 'email' => _ATTR_EMAIL, + 'fogyatekossag' => _ATTR_FOGYATEKOSSAG, + 'gondozasiszam' => _ATTR_GONDOZASISZAM, + 'jogviszonykezdete' => _ATTR_JOGVISZONYKEZDETE, + 'jogviszonyvege' => _ATTR_JOGVISZONYVEGE, + + 'lakhelyorszag' => _ATTR_LAKHELY_ORSZAG, + 'lakhelyirsz' => _ATTR_LAKHELY_IRSZ, + 'lakhelyhelyseg' => _ATTR_LAKHELY_HELYSEG, + 'lakhelykozteruletnev' => _ATTR_LAKHELY_KOZTERULETNEV, + 'lakhelykozteruletjelleg' => _ATTR_LAKHELY_KOZTERULETJELLEG, + 'lakhelyhazszam' => _ATTR_LAKHELY_HAZSZAM, + 'lakhelyemelet' => _ATTR_LAKHELY_EMELET, + 'lakhelyajto' => _ATTR_LAKHELY_AJTO, + + 'tartorszag' => _ATTR_TART_ORSZAG, + 'tartirsz' => _ATTR_TART_IRSZ, + 'tarthelyseg' => _ATTR_TART_HELYSEG, + 'tartkozteruletnev' => _ATTR_TART_KOZTERULETNEV, + 'tartkozteruletjelleg' => _ATTR_TART_KOZTERULETJELLEG, + 'tarthazszam' => _ATTR_TART_HAZSZAM, + 'tartemelet' => _ATTR_TART_EMELET, + 'tartajto' => _ATTR_TART_AJTO, + + 'tajszam' => _ATTR_TAJSZAM, + 'osztalyjel' => _ATTR_OSZTALYJEL, + 'penzugyistatusz' => _ATTR_PENZUGYISTATUSZ, + 'szemelyiigazolvanyszam' => _ATTR_SZEMELYIIGAZOLVANYSZAM, + 'szocialishelyzet' => _ATTR_SZOCIALISHELYZET, + 'statusz' => _ATTR_STATUSZ, + 'tartozkodasiokiratszam' => _ATTR_TARTOZKODASIOKIRATSZAM, + 'torvenyeskepviselo' => _ATTR_TORVENYESKEPVISELO, + 'telefon' => _ATTR_TELEFON, + 'mobil' => _ATTR_MOBIL, + 'nem' => _ATTR_NEM, + 'lakohelyijellemzo' => _ATTR_LAKOHELYIJELLEMZO, + 'megjegyzes' => _ATTR_MEGJEGYZES, + ); + + function readUpdateFile($fileName, $mezo_elvalaszto = ' ') { + + + $ADATOK = array(); + if ($fp = @fopen($fileName,'r')) { + // Az első 50 sor beolvasása - minta a mező-hozzárendeléshez + $i=0; + while (($sor = fgets($fp,1024)) and ($i<50)) { + $ADATOK[$i] = explode($mezo_elvalaszto,chop($sor)); + $i++; + } + fclose($fp); + } else { + $_SESSION['alert'][] = 'message:file_open_error:'.$fileName; + } + + return $ADATOK; + } +/* + * Lekérdezi egy adatbázis (naplo_intezmeny, naplo (tanév)) egy adott táblájának mezőit. + * Ha szükséges ezek listáját kiegészíti az extraAttrs tömbben felsorolt mezőkkel. + * A mezőnevekhez nyelvi konstansokat rendelhetünk ($Attrs tömb és lang/.../share/file.php) + */ + function getTableFields($table, $db = 'naplo_intezmeny', $extraAttrs = array(), $SET = array('withType' => false)) { + + global $Attrs; + + $return = $type = $name = array(); + $q = "SHOW FIELDS FROM `%s`"; + $r = db_query($q, array('fv' => 'getTableFields','modul' => $db, 'result' => 'indexed', 'values' => array($table))); + for ($i = 0; $i < count($r); $i++) { + if ($SET['withType']) { + if (substr($r[$i]['Type'],0,7) == 'varchar') $type[ $r[$i]['Field'] ] = 'string'; + elseif (substr($r[$i]['Type'],0,4) == 'enum') $type[ $r[$i]['Field'] ] = 'enum'; + elseif (substr($r[$i]['Type'],0,4) == 'date') $type[ $r[$i]['Field'] ] = 'date'; + elseif (strpos($r[$i]['Type'],'int(') !== false) $type[ $r[$i]['Field'] ] = 'int'; + else $type[ $r[$i]['Field'] ] = 'string'; + } + if ($Attrs[kisbetus($r[$i]['Field'])] != '') $name[$r[$i]['Field']] = $Attrs[kisbetus($r[$i]['Field'])]; + else $name[$r[$i]['Field']] = $r[$i]['Field']; + } + for ($i = 0; $i < count($extraAttrs); $i++) { + if (!isset($name[$extraAttrs[$i]])) { + if ($Attrs[kisbetus($extraAttrs[$i])] != '') $name[$extraAttrs[$i]] = $Attrs[kisbetus($extraAttrs[$i])]; + else $name[$extraAttrs[$i]] = $extraAttrs[$i]; + } + } + ksort($name); + + if ($SET['withType']) return array('names' => $name, 'types' => $type); + return $name; + + } + + + function getEnumField($modul, $table, $field) { + + $table = '`'.str_replace('.','`.`',$table).'`'; + $q = "SHOW FIELDS FROM %s LIKE '%s'"; + $v = array($table, $field); + $field = db_query($q, array('fv' => 'getEnumField', 'modul' => $modul, 'result' => 'record', 'values' => $v)); + $enum = substr($field['Type'], 6, -2); + $values = explode("','", $enum); + + return $values; + } + + function getSetField($modul, $table, $field) { + + $table = '`'.str_replace('.','`.`',$table).'`'; + $q = "SHOW FIELDS FROM %s LIKE '%s'"; + $v = array($table, $field); + $field = db_query($q, array('fv' => 'getSetField', 'modul' => $modul, 'result' => 'record', 'values' => $v)); + $set = substr($field['Type'], 5, -2); + $values = explode("','", $set); + + return $values; + } + + + function updateTable($table, $file, $MEZO_LISTA, $KULCS_MEZOK, $mezo_elvalaszto = ' ', $rovatfej = false, $db = 'naplo_intezmeny') { + + + if (!file_exists($file)) { + $_SESSION['alert'][] = 'message:file_not_found:updateTable:'.$file; + return false; + } + + if (!is_array($MEZO_LISTA)) { + $_SESSION['alert'][] = 'message:wrong_data:updateTable:MEZO_LISTA'; + return false; + } + + if (!is_array($KULCS_MEZOK)) { + $_SESSION['alert'][] = 'message:wrong_data:updateTable: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:updateTable:'.$file; + return false; + } + + $lr = db_connect($db, array('fv' => 'updateTable')); + if (!$lr) { + $_SESSION['alert'][] = 'message:db_connect_failure:updateTable'; + fclose($fp); + return false; + } + db_start_trans($lr); + + // Az első sor kihagyása + if ($rovatfej) $sor = fgets($fp,1024); + while ($sor = fgets($fp,1024)) { + + $insertValues = $insertPatterns = array(); + $adatSor = explode($mezo_elvalaszto,chop($sor)); + $update = false; + + // keresési feltétel összerakása + $where = $v = $vw = array(); + for ($i = 0; $i < count($KULCS_MEZOK); $i++) { + if ($adatSor[$KULCS_MEZOK[$i]] != '') { + $where[] = "`%s`='%s'"; + array_push($vw, $MEZO_LISTA[$KULCS_MEZOK[$i]], $adatSor[$KULCS_MEZOK[$i]]); + } + } + $num = 0; + if (count($where) != 0) { + $q = 'SELECT COUNT(*) FROM `%s` WHERE '.implode(' AND ', $where); + array_unshift($vw, $table); + $num = db_query($q, array('fv' => 'updateTable', 'values' => $vw, 'result' => 'value', 'modul' => $db), $lr); + } + if ($num == 1 && _SKIP_ON_DUP === true) { $_SESSION['alert'][] = 'info:_SKIP_ON_DUP:'.serialize($sor); continue; } + if ($num == 1) { // update + $v = $vw; + array_shift($v); //$table kivétele + $UPDATE = array(); + for ($i = 0; $i < count($MEZO_LISTA); $i++) { + if ( + $MEZO_LISTA[$i] != '' + and $adatSor[$i] != '' + and !in_array($i,$KULCS_MEZOK) + ) { + if ($adatSor[$i] == '\N') { + array_unshift($UPDATE, "`%s`=NULL"); + array_unshift($v, $MEZO_LISTA[$i]); + } else { + array_unshift($UPDATE, "`%s`='%s'"); + array_unshift($v, $MEZO_LISTA[$i], $adatSor[$i]); + } + } + } + if (count($UPDATE) > 0) { + array_unshift($v, $table); + $q = 'UPDATE `%s` SET '.implode(',',$UPDATE).' WHERE '.implode(' AND ', $where); + $r = db_query($q, array('fv' => 'updateTable/update', 'values' => $v, 'modul' => $db, 'rollback' => true), $lr); + if (!$r) { + db_close($lr); + return false; + } + } + } elseif ($num == 0) { // insert + for ($i = 0; $i < count($MEZO_LISTA); $i++) { + if ($MEZO_LISTA[$i] != '') { + if ($adatSor[$i] == '\N') { + $insertValues[] = 'NULL'; + $insertPatterns[] = '%s'; + } else { + $insertValues[] = $adatSor[$i]; + $insertPatterns[] = "'%s'"; + } + } + } + $q = 'INSERT INTO `%s` ('.implode(',', array_fill(0, count($attrList), '%s')).') + VALUES ('.implode(',', $insertPatterns).')'; + $v = mayor_array_join(array($table), $attrList, $insertValues); + $r = db_query($q, array('fv' => 'updateTable/insert', 'modul' => $db, 'values' => $v, 'rollback' => true), $lr); + if (!$r) { + db_close($lr); + return false; + } + } else { + $_SESSION['alert'][] = 'message:wrong_data:updateTable:több illeszkedő rekord is van, túl laza a kulcs feltétel (' + .call_user_func_array('sprintf', array_merge(array('%s tábla, '.implode(' AND ',$where)), $vw)).')'; + db_rollback($lr); + db_close($lr); + return false; + } + } // while + db_commit($lr); + db_close($lr); + + fclose($fp); + + } + + function generatePDF($outputFile, $outputDir, $str, $booklet=false) { + + + // A szöveg file-ba írása + if (!$fp = fopen($outputDir.'/'.$outputFile.'-u8.tex', 'w')) { + $_SESSION['alert'][] = 'message:file_open_failure:generatePDF:'.$outputDir.'/'.$outputFile.'-u8.tex'; + return false; + } + if (!fwrite($fp, $str)) { + $_SESSION['alert'][] = 'message:file_write_failure:generatePDF:'.$outputDir.'/'.$outputFile.'-u8.tex'; + return false; + } + fclose($fp); + if (__NYOMTATAS_XETEX===true) { + $ret = exec('cd '.$outputDir.'; cat < '.$outputFile.'.tex +%\font\kicsi=ecrm0500 +%\font\nagy=ecbx1200 +%\font\vastag=ecsx0800 +%\font\nagyss=ecsx1200 +%\font\normal=ecss0800 +%\font\dolt=ecsi0800 + +\font\kicsi="Linux Libertine O" at 5pt +\font\nagy="Linux Libertine O/B" at 12pt +\font\nagyss="Arial/B" at 12pt +\font\normal="Linux Biolinum O" at 8pt +\font\dolt="Linux Biolinum O/I" at 8pt +\normal + +EOF +'); + $ret = exec('cd '.$outputDir.'; cat '.$outputFile.'-u8.tex >> '.$outputFile.'.tex'); + $ret = exec('cd '.$outputDir.'; xetex -fmt '._MAYOR_DIR.'/print/module-naplo/xetex/mayor-xetex '.$outputFile.'.tex'); +#ex -fmt '._MAYOR_DIR.'/print/module-naplo/tex/mayor '.$outputFile.'.tex'); + } else { + // utf8 --> cork (t1) + $ret = exec('cd '.$outputDir.'; cat '.$outputFile.'-u8.tex | recode u8..T1 > '.$outputFile.'.tex'); + // DVI, PS, PFD generálás (a rotate miatt nem megy a pdftex közvetlenül :o( + $ret = exec('cd '.$outputDir.'; tex -fmt '._MAYOR_DIR.'/print/module-naplo/tex/mayor '.$outputFile.'.tex'); + if ($ret === false) { $_SESSION['alert'][] = 'message:futási_hiba:generatePDF:tex'; return false; } +# LOG $ret = exec('cd '.$outputDir.'; dvips '.$outputFile.'.dvi 2>&1 | tee -a /tmp/x.log '); + $ret = exec('HOME=/tmp && export HOME && cd '.$outputDir.'; dvips '.$outputFile.'.dvi '); + if ($ret === false) { $_SESSION['alert'][] = 'message:futási_hiba:generatePDF:ps'; return false; } + $ret = exec('cd '.$outputDir.'; ps2pdf -sPAPERSIZE=a4 -dAutoRotatePages=/None '.$outputFile.'.ps'); + if (strpos($ret, 'error') !== false) { $_SESSION['alert'][] = 'message:futási_hiba:generatePDF:pdf'; return false; } + + } + if ($booklet) { + $ret = exec('cd '.$outputDir.'; mv '.$outputFile.'.pdf '.$outputFile.'-A4.pdf; pdfbook --short-edge --outfile '.$outputFile.'.pdf '.$outputFile.'-A4.pdf'); + } + return true; + } + + function generateXLS($fileName, $Table, $title) { + + global $policy, $page, $sub, $f; + + if (dirname($fileName) == '.') $fileName = _DOWNLOADDIR."/$policy/$page/$sub/$f/$fileName"; + $fp = fopen($fileName, 'w'); + if (!$fp) { + $_SESSION['alert'][] = 'message:file_open_failure:'.$fileName; + return false; + } + + fputs($fp, ''."\r\n"); + fputs($fp, ''."\r\n"); + fputs($fp, ' '."\r\n" + .' '."\r\n" + .' '."\r\n" + ."\r\n".' '."\r\n"); + + fputs($fp, ''."\r\n"); + fputs($fp, ''."\r\n"); + + for ($i = 0; $i < count($Table); $i++) { + fputs($fp, ' '."\r\n"); + foreach ($Table[$i] as $index => $value) { + if (is_numeric($value)) + fputs($fp, " ".$value."\r\n"); + elseif (strtotime($value)) + if (strlen($value) > 10) { + fputs($fp, " ".str_replace(' ','T',$value).'.000'."\r\n"); + } else { + fputs($fp, " ".$value.'T08:40:00.000'."\r\n"); + } + else + fputs($fp, " ".$value."\r\n"); + } + fputs($fp, ' '."\r\n"); + } + + fputs($fp, '
'."\r\n"); + fputs($fp, '
'."\r\n"); + fputs($fp, '
'."\r\n"); + + fclose($fp); + return true; + + } + + function generateCSV($fileName, $Table, $title, $mezoElvalaszto=' ') { + + global $policy, $page, $sub, $f; + + if (dirname($fileName) == '.') $fileName = _DOWNLOADDIR."/$policy/$page/$sub/$f/$fileName"; + $fp = fopen($fileName, 'w'); + if (!$fp) { + $_SESSION['alert'][] = 'message:file_open_failure:'.$fileName; + return false; + } + + if ($title !='') fputs($fp, $title."\n"); + for ($i = 0; $i < count($Table); $i++) fputs($fp, implode($mezoElvalaszto, $Table[$i])."\n"); + + fclose($fp); + return true; + + } + + function generateODS($fileName, $Table, $title) { + + global $policy, $page, $sub, $f; + + if (dirname($fileName) == '.') $fileName = _DOWNLOADDIR."/$policy/$page/$sub/$f/$fileName"; + define('TMPZIP','/tmp/'.substr(basename($fileName), 0, strpos(basename($fileName), '.'))); + define('ODS_MIMETIPE','application/vnd.oasis.opendocument.spreadsheet'); + define('ODS_MANIFEST',' + + + +'); + define('ODS_START_XMLDOCUMENT',' +'); + define('ODS_ASTYLES',' + + + - + + - + + + + '); + define('ODS_START_SPREADSHEET',''); + define('ODS_START_TABLE',''); + define('ODS_START_ROW',''); + define('ODS_END_ROW',''); + define('ODS_END_TABLE',''); + define('ODS_END_SPREADSHEET',''); + define('ODS_END_XMLDOCUMENT',''); + + $content = ODS_START_XMLDOCUMENT . ODS_ASTYLES . ODS_START_SPREADSHEET . ODS_START_TABLE; + for ($i = 0; $i < count($Table); $i++) { + $content .= ODS_START_ROW; + foreach ($Table[$i] as $index => $value) { + if (is_numeric($value)) + $content .= ''."\n"; + elseif (strtotime($value)) + if (strlen($value) > 10) { + $content .= ''."\n"; + } else { + $content .= ''."\n"; + } + elseif ($value[0] == '=') $content .= ''."\n"; + // formula példa: $value = 'of:=SUM([.A1:.B1])*2+[.A1]' + else $content .= ''.$value.''."\n"; + } + $content .= ODS_END_ROW; + } + $content .= ODS_END_TABLE . ODS_END_SPREADSHEET . ODS_END_XMLDOCUMENT; + + mkdir(TMPZIP); + mkdir(TMPZIP."/META-INF"); + file_put_contents(TMPZIP."/META-INF/manifest.xml", ODS_MANIFEST); + file_put_contents(TMPZIP."/content.xml", $content); + file_put_contents(TMPZIP."/mimetype", ODS_MIMETIPE); + system("cd ".TMPZIP."; zip -mr ".$fileName." mimetype META-INF/* content.xml >/dev/null"); + rmdir(TMPZIP."/META-INF"); + rmdir(TMPZIP); + + return true; + } + +/* --------------------------------------- */ + + function _template2array($fp, $type, &$aTeX) { + $vege = false; + $aTeX[$type] = array(); + while (!$vege && ($sor = fgets($fp, 1024))) { + $sor = chop($sor); + if ($sor == "%}$type") { + $vege = true; + } elseif (substr($sor, 0, 2) != '%!') { // A feldolgozást végző függvény megadása + if (substr($sor, 0, 2) == '%}') { + echo "HIBA #1 Megnyitás előtti blokk lezárás a {$type} blokkban: $sor
"; + } else { + if (substr($sor, 0, 2) == '%{') { + $_type = substr($sor, 2); + _template2array($fp, $_type, $aTeX); + $aTeX[$type][] = '%{'.$_type.'}'; + } else { + // feltételes szövegrészek + $condArray = explode('%?', $sor); + for ($i = 1; $i < count($condArray); $i = $i + 2) { + $str = $condArray[$i]; + $tmpArray = explode('|', $str); + $j = 0; while (is_array($aTeX['conditional']["$j".$tmpArray[0]])) $j++; + $newCondition = "$j".$tmpArray[0]; + $aTeX['conditional'][$newCondition] = array(true => $tmpArray[1], false => $tmpArray[2], 'orig' => $tmpArray[0]); + $sor = str_replace($str.'%?', $newCondition, $sor); + } +// $aTeX[$type][] = $sor; + // lezáró eset + $finalArray = explode('%>', $sor); + for ($i = 1; $i < count($finalArray); $i = $i + 2) { + $str = $finalArray[$i]; + $tmpArray = explode('', $str); + $j = 0; while (is_array($aTeX['finalCase']["$j".$type])) $j++; + $newCondition = "$j".$type; + $aTeX['finalCase'][$newCondition] = array(true => $tmpArray[0], false => $tmpArray[1]); + $sor = str_replace($str.'%>', $newCondition, $sor); + } + $aTeX[$type][] = $sor; + } + } + } + } + } + + function _array2text($type, $id, $mit, $mire, $aTeX, $ADAT, $flag = null) { + $ret = ''; + if (is_null($id)) $A = $ADAT[$type]; + else $A = $ADAT[$type][$id]; + + // A cserélendő attribútumok + if (is_array($A)) foreach ($A as $attr => $value) { + if (!is_array($value)) { + if (true || !is_bool($value)) { // feltételes szövegrészek külön kezelendők ??? Miért is? Az általánosabb feltételes kiíráshoz kell! + if (in_array('%$'.$attr, $mit)) { // A már szereplő mintát felülírjuk! + $key = array_search('%$'.$attr, $mit); + $mit[$key] = '%$'.$attr; + $mire[$key] = $value; + } else { + $mit[] = '%$'.$attr; + $mire[] = $value; + } + } + } + } + + // aTeX feldolgozása + $TeX = $aTeX[$type]; + for ($i = 0; $i < count($TeX); $i++) { + $sor = $TeX[$i]; + if (substr($sor, 0, 2) == '%{') { + // Almodul feldolgozása + $_type = substr($sor, 2, -1); + if (is_array($A[$_type])) { + if (is_null($id)) { + foreach ($A[$_type] as $key => $_id) $ret .= _array2text($_type, $_id, $mit, $mire, $aTeX, $ADAT); + } else { + $count = count($A[$_type]); $db = 0; + foreach ($A[$_type] as $_id => $_data) { + $db++; if ($count == $db) $_flag = 'final'; else $_flag = null; + if (!is_array($ADAT[$_type][$_id]) && !is_array($_data)) { + echo '
HIBA#2!!! '.$_type.':'.$_id.':'.$_data.'
'; +// return false; + } else { + if (!is_array($ADAT[$_type][$_id])) $ADAT[$_type][$_id] = array(); + elseif (!is_array($_data)) $_data = array(); + $ADAT[$_type][$_id] = $ADAT[$_type][$_id] + $_data; + $ret .= _array2text($_type, $_id, $mit, $mire, $aTeX, $ADAT, $_flag); + } + } + } + } elseif (__DEBUG === true) { echo '
HIBA#3: '.$sor.'
'.$_type.':'; var_dump($A[$_type]); echo '
';} + } else { + // Csere - lezáró eset + if (strpos($sor, '%>') !== false) foreach ($aTeX['finalCase'] as $attr => $values) { + $sor = str_replace('%>'.$attr, $values[ $flag === 'final' ], $sor); + } + // Csete - feltételes kiírás + if (strpos($sor, '%?') !== false) foreach ($aTeX['conditional'] as $attr => $values) { + // Nem csak az adott szintről veszi az értéket, hanem feljebbről is (a feljebbi a meghatározó - ez nem biztos, hogy jó...) + if ($key = array_search('%$'.$values['orig'], $mit)) $_val = $mire[$key]; + else $_val = $A[$values['orig']]; + $sor = str_replace('%?'.$attr, $values[ $_val==true ], $sor); + //$sor = str_replace('%?'.$attr, $values[ $A[$values['orig']]==true ], $sor); + } + // Kiírás + $ret .= str_replace($mit, $mire, $sor)."\n"; + } + } + + return $ret; + } + + function template2text($templateFile, $ADAT) { + + $mit = $mire = array(); + $aTeX = array('conditional' => array()); + + $fp = fopen($templateFile, 'r'); + _template2array($fp, 'base', $aTeX); + fclose($fp); + return _array2text('base', null, $mit, $mire, $aTeX, $ADAT); + + } + + function template2file($templateFile, $ADAT) { + + global $policy, $page, $sub, $f; + + $mit = $mire = array(); + $aTeX = array('conditional' => array()); + + $fp = fopen($templateFile, 'r'); + // A feldolgozást végző függvény neve + $sor = fgets($fp, 1024); + rewind($fp); + if (substr($sor, 0, 2) == '%!') { + list($func,$ext,$opt) = explode(' ', substr(chop($sor), 2)); + if (!function_exists($func)) unset($func); + } + if ($ext=='') $ext = 'txt'; + _template2array($fp, 'base', $aTeX); + fclose($fp); + $text = _array2text('base', null, $mit, $mire, $aTeX, $ADAT); +//die(); + if ($text === false) return false; + $success = true; + if (isset($func)) { + $success = $func($text, $ADAT['file'], $opt); + } else { + $fp = fopen(_DOWNLOADDIR."/$policy/$page/$sub/$f/".$ADAT['file'].'.'.$ext, 'w'); + fputs($fp, $text); + fclose($fp); + } + if ($success) return $ADAT['file'].".$ext"; + else return false; + + } + + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/helyettesites.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/helyettesites.php new file mode 100644 index 00000000..140f6744 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/helyettesites.php @@ -0,0 +1,42 @@ +'','igDt'=>'','tankorIdk'=>'','telephelyId'=>'')) { + + //találjuk ki valahogy a telephelyet... (osztály, terem, tanár alapján???) + if ($SET['telephelyId']!='') { + $telephelyId=$SET['telephelyId']; + $WT = " AND (`terem`.`telephelyId` = $telephelyId OR terem.teremId IS NULL) "; + } + + $igDt = $SET['igDt']; $tolDt=$SET['tolDt']; $osztalyId = $SET['osztalyId']; + $W = ''; + if (is_array($SET['tankorIdk']) && count($SET['tankorIdk']) > 0) { + $W = ' AND tankorId IN ('.implode(',', array_fill(0, count($SET['tankorIdk']), '%u')).')'; + $v = mayor_array_join(array($tolDt, $igDt), $SET['tankorIdk']); + } else { $v = array($tolDt, $igDt); } + $q = "SELECT ora.oraId,ora.dt,ora.ora,ora.ki,ora.kit,ora.tankorId,ora.teremId,ora.leiras,ora.tipus,ora.eredet, ora.feladatTipusId + FROM ora + LEFT JOIN ".__INTEZMENYDBNEV.".terem USING (teremId) + WHERE dt>='%s' AND dt<='%s' + AND (eredet!='órarend' OR kit!='') + $W + $WT + ORDER BY dt,ora"; +// AND (tipus NOT LIKE '%máskor') + $RESULT['indexed'] = db_query($q, array('fv' => 'getHelyettesitendoOrak', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + for ($i = 0; $i < count($RESULT['indexed']); $i++) { + $TANAROK[] = $RESULT['indexed'][$i]['ki']; + $TANAROK[] = $RESULT['indexed'][$i]['kit']; + $TANKOROK[] = $RESULT['indexed'][$i]['tankorId']; + /* ezt egyelőre nem használjuk semmire! Sima plusz óra */ + //if ($RESULT['indexed'][$i]['eredet'] == 'plusz') + // $RESULT['plusz'][] = $RESULT['indexed'][$i]['oraId']; + } + if (is_array($TANKOROK)) + $RESULT['tanarok'] = array_unique($TANAROK); + $RESULT['tankorok'] = $TANKOROK; + return $RESULT; + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/helyettesitesModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/helyettesitesModifier.php new file mode 100644 index 00000000..17f0cf53 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/helyettesitesModifier.php @@ -0,0 +1,117 @@ + 'hianyzasEsJegyHozzarendelesTorles', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $oraId), $lr); +// $r = m_ysql_query($q, $lr) or die(m_ysql_error()); +// if (!$r) { +// $_SESSION['alert'][] = 'message:m_ysql_query_failure:hianyzasEsJegyHozzarendelesTorles:'.$q.':'.m_ysql_error($lr); +// if($olr == '') $lr = db_close($lr); +// return false; +// } + $hIds = array(); + if (is_array($H) && count($H) > 0) { + foreach ($H as $key => $hAdat) { + extract($hAdat, EXTR_PREFIX_ALL, 'tmp'); + $hIds[] = $tmp_hianyzasId; + logAction( + array( + 'szoveg'=>"Helyettesítés/óraelmaradás => törölt hiányzás: hianyzasId=$tmp_hianyzasId, diakId=$tmp_diakId, dt=$tmp_dt, ora=$tmp_ora, oraId=$tmp_oraId, tipus=$tmp_tipus, statusz=$tmp_statusz, igazolas=$tmp_igazolas", + 'table'=>'hianyzas' + ), + $lr + ); + } + // --TODO: hianyzasTorles() - fv-t hívjuk meg! + $q = "DELETE FROM hianyzas WHERE hianyzasId IN (".implode(',', array_fill(0, count($hIds), '%u')).")"; + db_query($q, array('fv' => 'hianyzasEsJegyHozzarendelesTorles', 'modul' => 'naplo', 'values' => $hIds, 'result' => 'affected rows'), $lr); + } + // Az elmaradt órákhoz rendelt jegyek hozzárendelésének törlése + $q = "UPDATE jegy SET oraId=NULL WHERE oraId IN (".implode(',', array_fill(0, count($oraId), '%u')).")"; + $H = db_query($q, array('fv' => 'hianyzasEsJegyHozzarendelesTorles', 'modul' => 'naplo', 'result' => 'affected rows', 'values' => $oraId), $lr); + + if ($olr == '') $lr = db_close($lr); + return true; + } + + + function masTartja($oraId, $ki, $tipus, $olr = null) { + + if (is_null($ki) || $ki==0) { + $_SESSION['alert'][] = '::masTartja():ki értéke nulla vagy NULL!'; +// $q = "UPDATE ora SET kit=ki,ki=NULL,tipus='%s' WHERE oraId=%u"; +// $v = array($tipus, $oraId); +// return db_query($q, array('fv' => 'masTartja', 'modul' => 'naplo', 'values' => $v), $olr); + } else { + $q = "UPDATE ora SET kit=ki,ki=%u,tipus='%s',modositasDt=now() WHERE oraId=%u"; + $v = array($ki, $tipus, $oraId); + return db_query($q, array('fv' => 'masTartja', 'modul' => 'naplo', 'values' => $v), $olr); + } + } + + function oraElmarad($oraId, $olr = null, $tanev = null) { + + $O = getOraAdatById($oraId); + + if ($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + if ($tanev!='') { + $_tanevDb = tanevDbNev(__INTEZMENY, $tanev); + db_selectDb($_tanevDb,$lr); + } + if ($O['eredet'] == 'plusz') { + // benne van-e egy cserében - mert akkor nem törölhető + $q = "SELECT count(*) FROM cserePluszOra WHERE oraId=%u"; + $O['csere'] = db_query($q, array('fv' => 'oraElmarad', 'modul' => 'naplo', 'result' => 'value', 'values' => array($oraId)),$lr); + } + + $torol = true; + if ( + ($O['eredet'] == 'órarend' && $O['tipus'] == 'normál') // normál órarendi óra + || ($O['eredet'] == 'plusz' && $O['csere'] > 0 && $O['tipus'] == 'normál') // cserélt, normállá alakult, plusz óra + || ($O['eredet'] == 'plusz' && $O['tipus'] == 'normál máskor') // cserében lévő normál, plusz óra + ) { + $q = "UPDATE ora SET kit=ki,ki=NULL,tipus='elmarad',modositasDt=now() WHERE oraId=%u"; + } elseif ( + ($O['eredet'] == 'órarend' && in_array($O['tipus'], array('helyettesítés','felügyelet','összevonás'))) + || ($O['eredet'] == 'plusz' && $O['csere'] > 0 && in_array($O['tipus'], array('helyettesítés','felügyelet','összevonás'))) + ) { + $q = "UPDATE ora SET ki=NULL,tipus='elmarad',modositasDt=NOW() WHERE oraId=%u"; + } elseif ( + $O['eredet'] == 'plusz' && in_array($O['tipus'], array('helyettesítés','felügyelet','összevonás','normál')) + || $O['tipus'] == 'egyéb' + ) { + $q = "DELETE FROM ora WHERE oraId=%u"; + } else { $torol = false; } + + if ($torol) { + HianyzasEsJegyHozzarendelesTorles($oraId, $lr, $tanev); + $ret = db_query($q, array('fv' => 'oraElmarad', 'modul' => 'naplo', 'values' => array($oraId)),$lr); + } else { + $ret = false; + } + + if ($olr == '') $lr = db_close($lr); + return $ret; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hetes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hetes.php new file mode 100644 index 00000000..7bd7079e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hetes.php @@ -0,0 +1,48 @@ + 'getHetesek', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'sorszam', 'values' => $v)); + } + + function getHetesek($osztalyId=null, $dt = null) { + + if ($osztalyId=='') { + if (!isset($dt)) { + $q = "SELECT * FROM hetes ORDER BY dt,sorszam"; + $v = array(); + } else { + $q = "SELECT * FROM hetes WHERE dt<='%s' ORDER BY dt,sorszam"; + $v = array($dt); + } + } else { + if (!isset($dt)) { + $q = "SELECT * FROM hetes WHERE osztalyId=%u "; + $v = array($osztalyId); + } else { + $q = "SELECT * FROM hetes WHERE osztalyId=%u AND dt<'%s'"; + $v = array($osztalyId, $dt); + } + } + return db_query($q, array('fv' => 'getHetesek', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield'=>'osztalyId', 'values' => $v)); + + } + + function hetesFelvetel($ADAT) { + for ($i = 1; $i < 3; $i++) { + if (isset($ADAT['hetes'][$i])) + $q = "REPLACE INTO hetes (osztalyId,dt,sorszam,diakId) VALUES (%u, '%s', $i, %u)"; + else + $q = "DELETE FROM hetes WHERE osztalyId=%u AND dt='%s' AND sorszam=$i"; + + $v = array($ADAT['osztalyId'], $ADAT['dt'], $ADAT['hetes'][$i]); + db_query($q, array('fv' => 'hetesFelvetel', 'modul' => 'naplo', 'values' => $v)); + } + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hianyzas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hianyzas.php new file mode 100644 index 00000000..4b3787fa --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hianyzas.php @@ -0,0 +1,541 @@ + dt tömböt, akkor + // diákonként lekérdezi a megadott dátumig, de legkésőbb a szemszter + // zárásig lévő hiányzásokat - a tanév adatbázisból! + // 2. Ha aktív a tanév, de nincs $igDts, akkor egyszerre kérdezi le az + // összes diákét a szemeszter zárásig + // 3. Ha nem aktív a tanév, akkor az intézményi adatbázisból kérdezi le + // az összesített adatokat (amik záráskor jönnek létre) + // 4. Ha nincs megadva szemeszter, akkor az összes szemszter összesítését lekérdezi - az intézményi adatbázisból + // + //////////////////////////////////////// + + function defWnemszamit() { + $W['nemszamit'] = ' AND hianyzasBeleszamit="igen" '; + $W['join'] = ' LEFT JOIN '.__INTEZMENYDBNEV.'.tankorTipus USING (tankorTipusId) '; + return $W; + } + + function getDiakHianyzasOsszesites($diakIds, $szemeszterAdat, $igDts = null) { + $ret = array(); + if (count($diakIds)<1) return $ret; + + $Wnemszamit = defWnemszamit(); + if (is_array($szemeszterAdat)) { + // Egy szemeszter hiányzási adatainak lekérdezése + if ( + ($szemeszterAdat['statusz'] == 'aktív' || $szemeszterAdat['statusz'] == 'lezárt') + && is_array($igDts) + ) { + // Folyó vagy lezárt tanév - a tanév adatbázisból kérdezünk le + // diákonként más-más vég határidővel (pl Osztályból kilépett) + foreach ($diakIds as $diakId) { + $igDt = readVariable( + $igDts[$diakId], 'datetime', $szemeszterAdat['zarasDt'], array(), 'strtotime($return) <= '.strtotime($szemeszterAdat['zarasDt']) + ); + $q = "SELECT diakId, + 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' AND diakId=%u + ".$Wnemszamit['nemszamit']." + GROUP BY diakId"; + + $v = array(tanevDbNev(__INTEZMENY, $szemeszterAdat['tanev']), $igDt, $diakId); + $ret[$diakId] = db_query($q, array( + 'fv' => 'getDiakHianyzasOsszesites', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v + )); + //++ Hozott hiányzások a tanévben + $_hozott = getDiakHozottHianyzas($diakId, array('tanev'=> $szemeszterAdat['tanev'] , 'igDt'=>$igDt)); + $ret[$diakId]['igazolatlan'] += intval($_hozott['igazolatlan']['db']); + $ret[$diakId]['igazolt'] += intval($_hozott['igazolt']['db']); + } + } elseif ($szemeszterAdat['statusz'] == 'aktív') { + // Aktív tanévből kérdezünk le összesítést - ami még nem készült el -> tanév adatbázist használjuk + foreach ($diakIds as $diakId) { + $_hozott[$diakId] = getDiakHozottHianyzas($diakId, array('tanev'=> $szemeszterAdat['tanev'])); + } + $q = "SELECT diakId, + + COUNT(IF(tipus='felszerelés hiány',1,NULL)) AS felszerelesHianyDb, + COUNT(IF(tipus='egyenruha hiány',1,NULL)) AS egyenruhaHianyDb, + COUNT(IF(tipus='késés',1,NULL)) AS kesesDb, + + 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' AND diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") + ".$Wnemszamit['nemszamit']." + GROUP BY diakId"; + array_unshift($diakIds, tanevDbNev(__INTEZMENY, $szemeszterAdat['tanev']), $szemeszterAdat['zarasDt']); + $ret = db_query($q, array( + 'fv' => 'getDiakHianyzasOsszesites', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'diakId', 'values' => $diakIds + )); + + //++ Hozott hiányzások a tanévben + foreach ($ret as $diakId => $dAdat) { + $ret[$diakId]['igazolatlan'] += intval($_hozott[$diakId]['igazolatlan']['db']); + $ret[$diakId]['igazolt'] += intval($_hozott[$diakId]['igazolt']['db']); + } + } elseif ($szemeszterAdat['statusz'] != 'tervezett') { + // lezárt vagy archív tanév - az intézmény adatbázisból kérdezünk le - nincs $Wnemszamit!! se tankortipusid... :( + $q = "SELECT * FROM hianyzasOsszesites + WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") AND tanev=%u AND szemeszter=%u + "; + + array_push($diakIds, $szemeszterAdat['tanev'], $szemeszterAdat['szemeszter']); + $ret = db_query($q, array( + 'fv' => 'getDiakHianyzasOsszesites', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'diakId', 'values' => $diakIds + + )); + } else { + $_SESSION['alert'][] = 'message:wrong_dara:tervezett tanév hiányzás összesítése:getDiakHianyzasOsszesites'; + } + } else { + // A diák összes hiányzási adata ?????????????????????????????????????????? BIZTOS KELL MÉG EZZZZ????????????????? + // !!!!!!!!!!!!!!!!! + $q = "SELECT * FROM hianyzasOsszesites WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") ORDER BY tanev,szemeszter"; + $r = db_query($q, array('fv' => 'getDiakHianyzasOsszesites', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $diakIds)); + for ($i = 0; $i < count($r); $i++) $ret[ $r[$i]['tanev'] ][ $r[$i]['szemeszter'] ][ $r[$i]['diakId'] ] = $r[$i]; + } + return $ret; + + } + + function getIgazolasTipusLista() { + + global $lang; + + if (file_exists("lang/$lang/module-naplo/share/hianyzas.php")) { + require_once("lang/$lang/module-naplo/share/hianyzas.php"); + } elseif (file_exists('lang/'._DEFAULT_LANG.'/module-naplo/share/hianyzas.php')) { + require_once('lang/'._DEFAULT_LANG.'/module-naplo/share/hianyzas.php'); + } + + $igazolasTipusok['lista'] = getEnumField('naplo', 'hianyzas', 'igazolas'); + foreach ($igazolasTipusok['lista'] as $index => $tipus) { + $const = '_'.str_replace(' ', '_', nagybetus(ekezettelen($tipus))); + if (defined($const)) $igazolasTipusok[$tipus] = constant($const); + elseif ($tipus != '') { + $igazolasTipusok[$tipus] = $tipus; + $_SESSION['alert'][]= 'message:wrong_data:hiányzó nyelvi konstans:'.$tipus.':getIgazolasTipusLista'; + } + } + return $igazolasTipusok; + } + + function getHianyzasByOraId($oraId, $SET = array('csakId' => false)) { + + if ($SET['csakId'] === true) { + $q = "SELECT hianyzasId FROM hianyzas WHERE oraId=%u"; + $RES = db_query($q, array('fv' => 'getHianyzasByOraId', 'modul' => 'naplo', 'result' => 'idonly', 'values' => array($oraId))); + } else { + $q = "SELECT * FROM hianyzas WHERE oraId=%u"; + $RES = db_query($q,array('fv'=>'getHianyzasByOraId', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($oraId))); + } + return $RES; + } + + function getHianyzasByDiakIds($diakIds, $SET = array('tolDt' => null, 'igDt' => null, 'result' => 'indexed', 'keyfield' => null)) { + + if (!is_array($diakIds) || count($diakIds) == 0) return false; + + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed','multiassoc')); + if ($result == 'multiassoc') $keyfield = readVariable($SET['keyfield'], 'enum', 'tankorId', array('tankorId', 'diakId', 'ora', 'oraId')); + $tolDt = readVariable($SET['tolDt'], 'date'); + $igDt = readVariable($SET['igDt'], 'date'); + initTolIgDt(__TANEV, $tolDt, $igDt); + + $q = "SELECT *,hianyzas.tipus as hTipus FROM hianyzas LEFT JOIN ora USING (oraId,dt,ora) + WHERE '%s' <= dt AND dt <= '%s' AND diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") + ORDER BY ora,tankorId"; + array_unshift($diakIds, $tolDt, $igDt); + $ret = db_query($q, array('fv' => 'getHianyzasByDiakIds', 'modul' => 'naplo', 'result' => $result, 'keyfield' => $keyfield, 'values' => $diakIds)); + + return $ret; + + } + + function getOraIdByHianyzasId($hianyzasId, $olr = null) { + + $q = "SELECT oraId FROM hianyzas WHERE hianyzasId=%u"; + return db_query($q, array('fv' => 'getOraIdByHianyzasId', 'modul' => 'naplo', 'result' => 'value', 'values' => array($hianyzasId)),$olr); + } + + function getHianyzasByDt($DIAKIDK, $DTK, $SET = array('result' => '')) { + if(!is_array($DIAKIDK) || count($DIAKIDK) == 0) return false; + if (!is_array($DTK)) + if ($DTK=='') return false; + else $DTK = array($DTK); + $v = mayor_array_join($DTK, $DIAKIDK); + if ($SET['csakId']!==true) { + $q = "SELECT * FROM hianyzas WHERE dt IN ('".implode("','", array_fill(0, count($DTK), '%s'))."') + AND diakId IN (".implode(',',array_fill(0, count($DIAKIDK), '%u')).") ORDER BY dt,ora"; + $R = db_query($q,array('fv' => 'getHianyzasByDt', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + for ($j=0; $j 'getHianyzasByDt', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v)); + } + return $RES; + } + + function getHianyzasById($hianyzasId) { + if ($hianyzasId == '') return false; + $q = "SELECT * FROM hianyzas WHERE hianyzasId=%u"; + return db_query($q, array('fv'=>'getHianyzasById', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($hianyzasId))); + } + + function getDiakIgazolatlan($diakId) { + + global $_TANEV; + + $Wnemszamit = defWnemszamit(); + $WHERE = "diakId=%u AND tipus IN ('hiányzás','késés') AND statusz='igazolatlan' AND '%s' <= dt AND dt<='%s'"; + $q = "SELECT * FROM hianyzas ".$Wnemszamit['join']." WHERE $WHERE ".$Wnemszamit['nemszamit']." ORDER BY dt, ora"; + $v = array($diakId, $_TANEV['kezdesDt'], $_TANEV['zarasDt']); + return db_query($q, array('fv' => 'getDiakIgazolatlan', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + + } + + function getIgazolasSzam($diakId, $dt = '') { + + global $_TANEV; + // ha dt adott, azt a napot ne számoljuk bele a napi! limit-be (hisz még beírhatok több hiányzást is!) + $RETURN = array(); + + $Wnemszamit = defWnemszamit(); + // szemeszterenként + foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdat) { + + $WHERE = "diakId=%u AND tipus='hiányzás' AND statusz='igazolt' AND '%s' <= dt AND dt<='%s'"; + $v = array($diakId, $szAdat['kezdesDt'], $szAdat['zarasDt']); + if ($dt!='') { + $WHERE2 = " AND dt!='%s' "; + $v[] = $dt; + } else $WHERE2 = ''; // vajon az óráknál ez nem kell? + + // napok + $q = "SELECT COUNT(DISTINCT dt) AS darab, igazolas FROM hianyzas ".$Wnemszamit['join']."WHERE $WHERE $WHERE2".$Wnemszamit['nemszamit']." GROUP BY igazolas"; + $ret = db_query($q, array('fv' => 'getIgazolasSzam', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + for ($i = 0; $i < count($ret); $i++) { + $RETURN['napok'][$szemeszter][ $ret[$i]['igazolas'] ] = $ret[$i]['darab']; + $RETURN['napok']['osszesen'][ $ret[$i]['igazolas'] ] += $ret[$i]['darab']; + } + // órák + $q = "SELECT COUNT(*) AS darab, igazolas FROM hianyzas ".$Wnemszamit['join']." WHERE $WHERE ".$Wnemszamit['nemszamit']." GROUP BY igazolas"; + $ret = db_query($q, array('fv' => 'getIgazolasSzam', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + for ($i = 0; $i < count($ret); $i++) { + $RETURN['orak'][$szemeszter][ $ret[$i]['igazolas'] ] = $ret[$i]['darab']; + $RETURN['orak']['osszesen'][ $ret[$i]['igazolas'] ] += $ret[$i]['darab']; + } + $RETURN['szemeszterek'][] = $szemeszter; + } + return $RETURN; + } + + function legkorabbiIgazolhatoHianyzasVeg($osztalyId, $olr = '') { + + + if (!isset($osztalyId) || $osztalyId == '' || count($osztalyId)==0) { + $_SESSION['alert'][] = 'message:wrong_data:Nincs megadva osztály (legkorabbiIgazolhatoHianyzasVeg)'; + // return false; + return _LEGKORABBI_IGAZOLHATO_HIANYZAS; + } + + // _IGAZOLAS_BEIRAS_HATARIDO előtti első osztályfőnöki óra - vagy _LEGKORABBI_IGAZOLHATO_HIANYZAS + if ($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + if (!is_array($osztalyId)) $osztalyId = array($osztalyId); + + // Az osztályfőnöki tankör lekérdezése (!!! ez hibás, targyNev='osztályfőnöki' helyett a tárgy típus alapján kell! -- TODO + $q = "SELECT tankorId FROM ".__INTEZMENYDBNEV.".tankorOsztaly + LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".targy USING (targyId) + WHERE targyNev='osztályfőnöki' AND osztalyId IN (".implode(',', array_fill(0, count($osztalyId), '%u')).")"; + $ofoTankorId = db_query($q, array( + 'fv' => 'legkorabbiIgazolhatoHianyzasVeg', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $osztalyId + ), $lr); + + // Legutóbbi osztályfőnöki óra dátuma - Jó ez? Több osztály esetén az egyikét adja meg... nem? Ennek így nincs is értelme... + if (is_array($ofoTankorId) && count($ofoTankorId)>0) { + $q = "SELECT dt FROM ".__TANEVDBNEV.".ora WHERE tankorId IN (".implode(',', array_fill(0, count($ofoTankorId), '%u')).") + AND dt<'"._IGAZOLAS_BEIRAS_HATARIDO."' + AND tipus NOT LIKE 'elmarad%%' + ORDER BY dt DESC LIMIT 1"; + $ofoOraDt = db_query($q, array('fv' => 'legkorabbiIgazolhatoHianyzasVeg', 'modul' => 'naplo', 'result' => 'value', 'values' => $ofoTankorId)); + } else { + $ofoOraDt = ''; + } + if ($olr == '') db_close($lr); + + if ($ofoOraDt != '' && strtotime($ofoOraDt) > strtotime(_LEGKORABBI_IGAZOLHATO_HIANYZAS)) { + return $ofoOraDt; + } else { + //$_SESSION['alert'][] = 'info:wrong_data:Nem volt még osztályfőnöki óra!'; + return _LEGKORABBI_IGAZOLHATO_HIANYZAS; + } + + } + + function getNemIgazolhatoDt($diakId, $munkatervIds, $ofoOraDt = '', $olr = '') { + + global $_TANEV; + + if ($olr == '') $lr = db_connect('naplo'); + else $lr = $olr; + + if (!is_array($munkatervIds) || count($munkatervIds)==0) $munkatervIds = array(1); // a default + + if ($ofoOraDt == '') { + // A diák osztályai + $q = "SELECT DISTINCT osztalyId FROM ".__INTEZMENYDBNEV.".osztalyDiak + WHERE diakId=%u AND beDt<='%s' + AND (kiDt IS NULL OR kiDt >= '%s')"; + $v = array($diakId, $_TANEV['zarasDt'], $_TANEV['kezdesDt']); + $diakOsztalyId = db_query($q, array('fv' => 'getNemIgazolhatoDt-1', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $lr); + if (is_array($diakOsztalyId)) $ofoOraDt = legkorabbiIgazolhatoHianyzasVeg($diakOsztalyId, $lr); // ugye tudjuk, hogy ez nem feltétlenül az osztályfőnöki órát jelenti! + } + + if ($ofoOraDt != '') { + // Hianyzott-e az ofő óra napján + $q = "SELECT COUNT(dt) FROM ".__TANEVDBNEV.".hianyzas + WHERE diakId = %u + AND tipus = 'hiányzás' + AND dt = '%s'"; + $v = array($diakId, $ofoOraDt); + $num = db_query($q, array('fv' => 'getNemIgazolhatoDt-2', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $lr); + if ($num > 0) { + // Ha hiányzott, mikor volt előtte utoljára iskolában + + // A tanuló hiányzásainak listája + // LEZÁRT TANÉVNÉL EZ PROBLÉMÁS! + $q = "CREATE TEMPORARY TABLE ".__INTEZMENYDBNEV.".tanulo_hianyzasai + SELECT DISTINCT dt FROM hianyzas + WHERE diakId = %u + AND tipus = 'hiányzás'"; + $v = array($diakId); + $r = db_query($q, array('fv' => 'getNemIgazolhatoDt-3', 'modul' => 'naplo', 'values' => $v), $lr); + // első nem hiányzásos tanítási nap... + $q = "SELECT nap.dt + FROM nap LEFT JOIN ".__INTEZMENYDBNEV.".tanulo_hianyzasai USING (dt) + WHERE tanulo_hianyzasai.dt IS NULL + AND nap.dt < '%s' + AND nap.tipus IN ('tanítási nap','speciális tanítási nap') + AND munkatervId IN (".implode(',', array_fill(0, count($munkatervIds), '%u')).") + ORDER BY nap.dt DESC + LIMIT 1"; + $v = mayor_array_join(array($ofoOraDt),$munkatervIds); + $r = db_query($q, array('fv' => 'getNemIgazolhatoDt-4', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + if (count($r) > 0) { + // ha nem az első tanítási napig hiányzik... + $dt = $r[0]['dt']; + } else { + // ha az első tanítási napig hiányzik... + $dt = date('Y-m-d',strtotime('last day',strtotime($_TANEV['kezdesDt']))); + } + + // Az ideiglenes táblák a kapcsolat zárásakor törlődnek! + // Meglevő kapcsolat használatakor azonban törölni kell. + if ($olr != '') db_query("DROP TABLE ".__INTEZMENYDBNEV.".tanulo_hianyzasai", array('fv' => 'getNemIgazolhatoDt-4', 'modul' => 'naplo'), $lr); + + } else { + // Ha nem hiányzott, akkor az ofő óra napja előtti nap a keresett dt + $dt = date('Y-m-d',strtotime('last days',strtotime($ofoOraDt))); + } + + } else { // ide be sem megyünk! + // Ha nem volt osztályfőnöki óra - vagy inkább legkorábbi igazolható hiányzás vég - azaz nincs osztály? + $dt = date('Y-m-d', strtotime('last days', strtotime($_TANEV['kezdesDt']))); + } + + if ($olr == '' ) db_close($lr); + + return $dt; + + } + + function getDiakHianyzasStat($diakId, $SET = array('tankorIds'=>null, 'tanev'=>__TANEV)) { + if (is_array($SET['tankorIds'])) $tankorIds = $SET['tankorIds']; + else + return false; + + $tanevDbNev = tanevDbNev(__INTEZMENY,$SET['tanev']); + + $q = "SELECT tankorId,COUNT(*) AS db FROM `%s`.hianyzas LEFT JOIN `%s`.ora USING (oraId) + WHERE diakId=%u AND hianyzas.tipus='hiányzás' AND hianyzas.dt<=CURDATE() GROUP BY tankorId"; + $v = array($tanevDbNev, $tanevDbNev, $diakId); + return db_query($q, array( + 'fv' => 'getDiakHianyzasStat', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $v + )); + + } + + function _relevance($x,$base) { + return ($x<20) ? ($base-sqrt($x)/(sqrt(20)/(0+$base))) : 0; // a képlet normalizálható, de továbbfejleszés miatt ilyen formájú + } + function getDarabDiakHianyzas($dt='') { + + if ($dt=='') $dt = date('Y-m-d'); + //$q = "select count(*) AS db from (select diakId,count(*) AS db FROM hianyzas WHERE dt='%s' AND tipus LIKE 'hi_nyz_s' GROUP BY diakId HAVING db>2) AS stat"; + + /* Mai hiányzók száma (súlyozottan) */ + $stamp1=strtotime($dt); + $stamp2=mktime(0,0,1,date('m'),date('d'),date('y')); + $relevance = floor( ($stamp2-$stamp1) / (3600*24) )+0; + $q = "select count(*) AS dbDiak, dbOra from (select diakId,count(*) AS dbOra FROM hianyzas WHERE dt='%s' AND tipus = 'hiányzás' GROUP BY diakId) AS stat GROUP BY dbOra"; + $v = array($dt); + $R = db_query($q, array('fv' => 'getDarabDiakHianyzas', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield'=>'dbDiak', 'values' => $v)); + $hianyzo=0; + foreach ($R as $dbDiak => $D) { + if ($D['dbOra']==1) $hianyzo += _relevance($relevance,0.8)*$dbDiak; + elseif ($D['dbOra']<=2) $hianyzo += _relevance($relevance,0.95)*$dbDiak; + elseif ($D['dbOra']<=3) $hianyzo += _relevance($relevance,1)*$dbDiak; + else $hianyzo += $dbDiak; + } + $RESULT['hianyzokSulyozva'] = floor($hianyzo); + /* --- */ + /* Mai hiányzók száma (súlyozottan) */ + $q = "select count(*) AS dbDiak FROM (select diakId,count(*) AS dbOra FROM hianyzas WHERE dt='%s' AND tipus LIKE 'hiányzás' AND igazolas LIKE 'tanulmányi verseny' GROUP BY diakId) AS stat"; + $v = array($dt); + $R = db_query($q, array('fv' => 'getDarabDiakHianyzas', 'modul' => 'naplo', 'result' => 'value', 'values' => $v)); + $RESULT['hianyzokTanulmanyin'] = $R; + /* --- */ + /* Az órák hány százalékán volt hiányzó */ + if ($RESULT['hianyzokSulyozva']!=0) { + $q = "select FORMAT((select count( DISTINCT oraId ) FROM hianyzas WHERE tipus LIKE 'hi_nyz_s' AND dt='%s')*100/count(*),2) AS dbHianyzas FROM ora WHERE ora.tipus NOT IN ('elmarad','elmarad máskor') AND dt='%s'"; + $v = array($dt,$dt); + $RESULT['oranHianyzasSzazalek'] = db_query($q, array('fv' => 'getDarabDiakHianyzas', 'modul' => 'naplo', 'result' => 'value', 'values' => $v)); + } else { + $RESULT['oranHianyzasSzazalek'] = 0; + } + // --- + + return $RESULT; + } + + function getDiakHozottHianyzas($diakId=null,$SET = array('tanev'=>__TANEV, 'igDt'=>null)) { // tanév-et nem vesszük figyelembe + $RESULT = false; + if (isset($diakId) && is_numeric($diakId)) + { + $tanev = (isset($SET['tanev']) && $SET['tanev']!=__TANEV) ? $SET['tanev'] : __TANEV; + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev); + + $v = array($diakId); + if (isset($SET['igDt'])) { + $W = " AND dt<='%s'"; + $v[] = $SET['igDt']; + } + + $q = "SELECT * FROM `$tanevDbNev`.`hianyzasHozott` WHERE diakId=%u".$W." GROUP BY statusz"; + $R = db_query($q, array('fv'=>'getDiakHozottHianyzas','modul'=>'naplo','result'=>'indexed','values'=>$v)); + /* ReIndex */ + for ($i=0; $i0) { // igen, SQL - ben is lehetne összeadni, a továbbfejlesztés miatt van így. +// $_felev = getFelevByDt($R[$i]['dt']); +// $RESULT[$_felev][$R[$i]['statusz']] += $R[$i]['dbHianyzas']; +// if ($_felev==1) $RESULT[($_felev+1)][$R[$i]['statusz']] += $R[$i]['dbHianyzas']; //+1 ? inkább a szemeszter vég dátuma előttieket kéne összeadni azt csókolom... + $RESULT[$R[$i]['statusz']]['db'] += $R[$i]['dbHianyzas']; + } + } + + } + return $RESULT; + } + + function getDiakKretaHianyzas($diakId, $SET = array('preprocess'=>'stat','tanev'=>__TANEV, 'igDt'=>null, 'tolDt'=>null)) { + $RESULT = false; + if (isset($diakId) && is_numeric($diakId)) + { + $tanev = (isset($SET['tanev']) && $SET['tanev']!=__TANEV) ? $SET['tanev'] : __TANEV; + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev); + + $v = array($diakId); + $W = ''; + if (isset($SET['tolDt'])) { + $W .= " AND dt>='%s'"; + $v[] = $SET['tolDt']; + } + if (isset($SET['igDt'])) { + $W .= " AND dt<='%s'"; + $v[] = $SET['igDt']; + } + + $q = "SELECT * FROM `$tanevDbNev`.`hianyzasKreta` WHERE diakId=%u".$W.""; + $R = db_query($q, array('debug'=>false,'fv'=>'getDiakKretaHianyzas','modul'=>'naplo','result'=>'indexed','values'=>$v)); + /* ReIndex */ + if ($SET['preprocess'] == 'stat') { + for ($i=0; $i0) { // igen, SQL - ben is lehetne összeadni, a továbbfejlesztés miatt van így. + $_igazoltStr = $R[$i]['kretaStatusz'] == 'igen' ? 'igazolt':'igazolatlan'; + $RESULT[$R[$i]['tipus']][$_igazoltStr]['db']++; + if ($R[$i]['tipus']=='késés') $RESULT[$R[$i]['tipus']][$_igazoltStr]['perc']+=$R[$i]['perc']; + //} + } + } elseif ($SET['preprocess']=='naptar') { + for ($i=0; $i'szülői', + 'Orvosi igazolás'=>'orvosi', + 'Egyéb'=>'egyéb', + 'Iskolai engedély'=>'igazgatói', + 'Iskolaérdekű távollét'=>'igazgatói', + 'Kikérő' => 'igazgatói', + 'Pályaválasztási célú igazolás'=>'pályaválasztás', + 'Szolgáltatói igazolás' => 'hatósági', + 'Hivatalos távollét' => 'egyéb', + 'Táppénz' => 'egyéb'); + return $KRETA2MAYOR[$key]!='' ? $KRETA2MAYOR[$key] : 'egyéb'; + } + + function getKretaIgazolasOsszegzo($diakId) { // -- TODO + $q = "SELECT tipus, kretaIgazolas, count(distinct dt) AS db, count(*) AS dbBejegyzes FROM hianyzasKreta WHERE diakId=%u AND kretaStatusz='igen' GROUP BY tipus,kretaIgazolas ORDER BY tipus, kretaIgazolas"; + $v = array($diakId); + $R = db_query($q, array('fv'=>'getKretaIgazolasOsszegzo','modul'=>'naplo','result'=>'indexed','values'=>$v)); + return reindex($R,array(kretaIgazolas,tipus)); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hianyzasModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hianyzasModifier.php new file mode 100644 index 00000000..2414ce07 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hianyzasModifier.php @@ -0,0 +1,363 @@ +0) { + $lr = db_connect('naplo', array('fv' => 'hianyzasPercUpdate')); + foreach($PERCEK as $_hid=>$_perc) { + if (__TANAR===true || __NAPLOADMIN===true) { // ennél szűkebb feltételek is szabhatók! + $v = array($_perc, $_hid); + /* csak az módosítsa, akinek ... */ + $W = ''; + if (__HIANYZASTOROLHETO!==true) { + if (__NAPLOADMIN===false && is_numeric(__USERTANARID)) { + $W = " AND rogzitoTanarId = %u "; + $v = mayor_array_join($v,array(__USERTANARID)); + } + } + $q = "UPDATE hianyzas SET perc=%u, modositasDt=NOW() WHERE hianyzasId=%u ".$W; + db_query($q, array('fv' => 'hianyzasIgazolas', 'modul' => 'naplo', 'values' => $v), $lr); + } else { + $_SESSION['alert'][] = 'info:not_allowed'; + } + } + db_close($lr); + } + } + + function hianyzasTorles($TORLENDOIDK, $tanev = __TANEV, $olr='') { + + if (!isset($tanev)) + if (defined('__TANEV')) $tanev = __TANEV; + else return false; + + $lr = ($olr!='') ? $olr : db_connect('naplo_intezmeny'); + + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + + if (!is_array($TORLENDOIDK) && $TORLENDOIDK!='') + $TORLENDOIDK[] = $TORLENDOIDK; + + if (is_array($TORLENDOIDK) && count($TORLENDOIDK)>0) { + + $v = mayor_array_join(array($tanevDb), $TORLENDOIDK); + + /* Itt ellenőrizhetjük hogy csak azt töröljük amit tényleg kell */ + $W = ''; + if (__HIANYZASTOROLHETO!==true) { + // __VEZETOSEG_TOROLHET_HIANYZAST, ha például tankörnévsort módosít... + if (__NAPLOADMIN===false && __VEZETOSEG_TOROLHET_HIANYZAST!==true && is_numeric(__USERTANARID)) { + $W = " AND rogzitoTanarId = %u "; + $v = mayor_array_join($v,array(__USERTANARID)); + } + } + + $q = "SELECT * FROM `%s`.hianyzas WHERE hianyzasId IN (".implode(',', array_fill(0, count($TORLENDOIDK), '%u')).")". $W; + $r = db_query($q, array('fv' => 'hianyzasTorles', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + + for ($i = 0; $i < count($r); $i++) + logAction( + array( + 'szoveg'=>'del:'.implode(',',$r[$i]), + 'table'=>'hianyzas' + ) + ); + + $q = "DELETE FROM `%s`.hianyzas WHERE hianyzasId IN (".implode(',', array_fill(0, count($TORLENDOIDK),'%u')).")". $W; + $r = db_query($q, array('fv' => 'hianyzasTorles', 'modul' => 'naplo', 'values' => $v), $lr); + + } else { $r = true; /* Nincs mit törölni */ } + + if ($olr=='') db_close($lr); + return $r; + } + + function hianyzasRegisztralas($ORAADAT,$BEIR) { + + $REPL = $INS = array(); + $oraId = $ORAADAT['oraId']; + $dt = $ORAADAT['dt']; + $ora = $ORAADAT['ora']; +// $rogzitoTanarStr = (__NAPLOADMIN===false && is_numeric(__USERTANARID)) ? __USERTANARID : 'null'; // null string az sql-nek! +// Miért ne rögzítsük a naplóadmin esetén a tanárId-t, ha van neki? Ahogy a Vezetőség esetén is rögzítjük... + $rogzitoTanarStr = (is_numeric(__USERTANARID)) ? __USERTANARID : 'null'; // null string az sql-nek! + + for($i=0; $i'hianyzasRegisztralas', 'modul'=>'naplo', 'result'=>'record', 'values' => array($oraId)), $lr); + $tankorId = $_ORAADAT['tankorId']; + $rogzitesIdoben = ((strtotime($_ORAADAT['dt']) >= strtotime(_HIANYZAS_HATARIDO)) ? 1:0); //--FIXME + // ezzel nem veszünk részt a tranzakcióban - intézményi db + //$q = "SELECT `tankorTipusId` FROM `tankor` WHERE `tankorId` = %u"; + //$tankorTipusId = db_query($q, array('fv'=>'hianyzasRegisztralas', 'modul'=>'naplo_intezmeny', 'result'=>'value', 'values' => array($tankorId))); + $q = "SELECT `tankorTipusId`,`tankorTipus`.`jelleg` FROM `tankor` LEFT JOIN `tankorTipus` USING (`tankorTipusId`) WHERE `tankorId` = %u"; + $TANKORADAT = db_query($q, array('fv'=>'hianyzasRegisztralas', 'modul'=>'naplo_intezmeny', 'result'=>'record', 'values' => array($tankorId))); + $tankorTipusId=$TANKORADAT['tankorTipusId']; + $tankorJelleg=$TANKORADAT['jelleg']; + if ($tankorJelleg!='gyakorlat' && $diakJogviszony[$diakId][$dt]['statusz'] == 'magántanuló') { + $_SESSION['alert'][] = 'info:diakJogviszony:'.$diakId.':'.$diakJogviszony[$diakId][$dt]['statusz'].':'.$dt; + continue; + } + // + if ($INS[$i]['statusz']=='igazolatlan') $INS[$i]['igazolas']=''; + + // Plusz ellenőrzés: ha hiányzást vagy késést írnánk be, a párjuk meglétekor ezt elutasítjuk + // Ilyen eset akkor állhat elő, ha pl nem az írta be a hiányzást, aki módosítani próbálja késésre (ekkor ugyanis nem törlődnek előtte a megfelelő bejegyzések) + if (in_array($INS[$i]['tipus'],array('hiányzás','késés'))) { + $q = "SELECT count(hianyzasId) AS db FROM hianyzas WHERE diakId=%u AND oraId=%u AND tipus IN ('hiányzás','késés')"; + $v = array($INS[$i]['diakId'], $oraId, $INS[$i]['tipus']); + $db = db_query($q, array('fv' => 'hianyzasRegisztralas/check', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $lr); + } + if ($db==0) { + $q = "INSERT INTO hianyzas (diakId,oraid,dt,ora,perc,tipus,statusz,igazolas,tankorTipusId,rogzitoTanarId,rogzitesIdoben,modositasDt) + VALUES (%u, %u, '%s', %u, %u, '%s', '%s', '%s', %u, %s, %u, NOW())"; + $v = array($INS[$i]['diakId'], $oraId, $dt , $ora, $INS[$i]['perc'], $INS[$i]['tipus'], $INS[$i]['statusz'], $INS[$i]['igazolas'], $tankorTipusId, $rogzitoTanarStr, $rogzitesIdoben); + $ins = db_query($q, array('fv' => 'hianyzasRegisztralas', 'modul' => 'naplo', 'result' => 'insert', 'values' => $v), $lr); + logAction( + array( + 'szoveg'=>'ins:'.$ins.':'.$INS[$i]['diakId'].",$oraId,$dt,$ora,".$INS[$i]['perc'].",".$INS[$i]['tipus'].",".$INS[$i]['statusz'].",".$INS[$i]['igazolas'], + 'table'=>'hianyzas' + ), + $lr + ); + } else { + $_SESSION['alert'][] = 'info:wrong_data:Ez a mulasztás nem módosítható'; + } + } else { + // a hibaüzenetet a keletkezésének helyén generáljuk (simple függvényben) + } + } else { + if ($diakId=='') $_SESSION['alert'][] = '::(hianyzasRegisztralas), nincs diak azonosito!'; + if ($oraId=='') $_SESSION['alert'][] = '::(hianyzasRegisztralas), nincs ora azonosito!'; + } + } + db_close($lr); + + } + + + function hianyzasIgazolas($IGAZOLANDOK,$diakId='') { + +/* + if ($diakId=='') { + $_SESSION['alert'][] = '::Ismeretlen diák azonosító!('.$diakId.')'; + return false; + } +*/ + + if (count($IGAZOLANDOK)>0) { + $lr = db_connect('naplo'); + for ($i=0; $i 'hianyzasIgazolas', 'modul' => 'naplo', 'values' => $v),$lr); + logAction( + array( + 'szoveg'=>'update:'.$_I['id'].':'.$_I['statusz'].','.$_I['igazolas'], + 'table'=>'hianyzas' + ), + $lr + ); + } else { + //$_SESSION['alert'][] = '::Ez a típus elfogyott ('.$_I['igazolas'].')'.$oraId.'.'.$diakId.$_I['statusz']; + } + } else { + if ($diakId=='') $_SESSION['alert'][] = '::(hianyzasIgazolas), nincs diak azonosito!'; + if ($oraId=='') $_SESSION['alert'][] = '::(hianyzasIgazolas), nincs ora azonosito!'; + } + } + db_close($lr); + } + + } + + + function getHianyzasJogosultsagSimple($oraId,$diakId,$igazolasTipus,$igazolasStatusz,$jogTipus, $olr='') { //$igTipus == SQL"igazolas" + + global $_TANEV; + + $lr = ($olr=='') ? db_connect('naplo') : $olr; + + $ORA = getOraAdatById($oraId, __TANEV, $lr); // a fv kapott tanev paramétert. default: __TANEV + $JOG = getHianyzasJogosultsag(array($ORA), array('idk'=>array($diakId))); + $oraElmaradt = in_array($ORA['tipus'],array('elmarad','elmarad máskor')); + + if ($lr=='') db_close($lr); + //$_SESSION['alert'][] = '::DEBUG:'.in_array($igazolasTipus, $JOG[$diakId]['igazolas']['tipusok']); + //if ($JOG[$diakId]['orak'][$ORA['ora']]['beirhato'|'fbeirhato'|'igazolhato'] + if ($JOG[$diakId]['orak'][$ORA['ora']][$jogTipus]===false) + $_SESSION['alert'][] = '::Nem '.$jogTipus; + elseif ($igazolasStatusz != 'igazolatlan' && !@in_array($igazolasTipus, $JOG[$diakId]['igazolas']['tipusok'])) + $_SESSION['alert'][] = 'info:tipus_elfogyott:'.$igazolasTipus; + elseif ($_TANEV['statusz']!='aktív') + $_SESSION['alert'][] = 'info:nem_aktív_tanev'; + elseif ( !isset($JOG[$diakId]['orak'][$ORA['ora']][$jogTipus]) ) + $_SESSION['alert'][] = 'info::debug##4'; + + return ($_TANEV['statusz']=='aktív' && $JOG[$diakId]['orak'][$ORA['ora']][$jogTipus] && $oraElmaradt===false && + ($igazolasStatusz == 'igazolatlan' || + @in_array($igazolasTipus, $JOG[$diakId]['igazolas']['tipusok']))); + } + + function getHianyzasJogosultsag($ORAK, $NEVSOR) { + global $_OSZTALYA,$_TANEV; + $DIAKIDK = $NEVSOR['idk']; + $DIAKOSZTALYAI = getDiakokOsztalyai($DIAKIDK); + + for ($i=0;$ifalse, 'beirhato' => false, 'igazolhato' => false); + + if ($_TANEV['statusz']=='aktív') { + $marElkezdodott = (strtotime($ORAADAT['dt'].' '.$ORAADAT['tolTime']) < strtotime(date('Y-m-d H:i:s'))); + if ($ORAADAT['ki'] == __USERTANARID) { + if ( !in_array($ORAADAT['tipus'], array('elmarad' , 'elmarad máskor')) && $marElkezdodott) { + if ( strtotime($ORAADAT['dt']) >= strtotime(_HIANYZAS_HATARIDO) ) + $jog['beirhato'] = true; + if ( strtotime($ORAADAT['dt']) >= strtotime(_LEGKORABBAN_IGAZOLHATO_HIANYZAS) ) + $jog['fbeirhato'] = true; + } + } + + if ( + is_array($DIAKOSZTALYAI[$diakId]) && + is_array($_OSZTALYA) && + ($diakOfoje = (is_array($_OSZTALYA) && count(array_intersect($DIAKOSZTALYAI[$diakId],$_OSZTALYA)) > 0)) + ) { + if ( !in_array($ORAADAT['tipus'], array('elmarad' , 'elmarad máskor')) ) { + if ( strtotime($ORAADAT['dt']) >= strtotime(_OFO_HIANYZAS_HATARIDO) ) + $jog['beirhato'] = true; + if ( strtotime($ORAADAT['dt']) > $nemTimeStamp ) + $jog['igazolhato'] = true; + } + } + + if (__NAPLOADMIN || __VEZETOSEG) { + if ( strtotime($ORAADAT['dt']) >= strtotime(_ZARAS_HATARIDO) ) + $jog = array('fbeirhato'=>true, 'beirhato' => true, 'igazolhato' => true); + } + + } + $JOGOSULTSAG[$diakId]['orak'][$ora] = $jog; + } // end of diakidk + } // end of orak + + /* */ + $felev = getFelevByDt($ORAK[0]['dt']); + if ($felev=='') return false; + + for ($i=0;$i intval($_IGAZOLAS['napok']['osszesen']['szülői'])) and + (__SZULOI_IGAZOLAS_FELEVRE == 0 or __SZULOI_IGAZOLAS_FELEVRE > intval($_IGAZOLAS['napok'][$felev]['szülői'])) and + (__SZULOI_ORA_IGAZOLAS_EVRE ==0 or __SZULOI_ORA_IGAZOLAS_EVRE > intval($_IGAZOLAS['orak']['osszesen']['szülői'])) and + (__SZULOI_ORA_IGAZOLAS_FELEVRE ==0 or __SZULOI_ORA_IGAZOLAS_FELEVRE > intval($_IGAZOLAS['orak'][$felev]['szülői'])) + ) { + $IG[] = 'szülői'; + } + $IG[] = 'verseny'; + $IG[] = 'vizsga'; + if ( + (__NAPLOADMIN || $diakOfoje) && // !__VEZETOSEG && - ez nem jó, ha vezetőségi tag ofő is egyben + (__OSZTALYFONOKI_IGAZOLAS_EVRE == 0 or __OSZTALYFONOKI_IGAZOLAS_EVRE > intval($_IGAZOLAS['napok']['osszesen']['osztályfőnöki'])) and + (__OSZTALYFONOKI_IGAZOLAS_FELEVRE == 0 or __OSZTALYFONOKI_IGAZOLAS_FELEVRE > intval($_IGAZOLAS ['napok'][$felev]['osztályfőnöki'])) and + (__OSZTALYFONOKI_ORA_IGAZOLAS_EVRE ==0 or __OSZTALYFONOKI_ORA_IGAZOLAS_EVRE > intval($_IGAZOLAS ['orak']['osszesen']['osztályfőnöki'])) and + (__OSZTALYFONOKI_ORA_IGAZOLAS_FELEVRE ==0 or __OSZTALYFONOKI_ORA_IGAZOLAS_FELEVRE > intval($_IGAZOLAS ['orak'][$felev]['osztályfőnöki'])) + ) { + $IG[] = 'osztályfőnöki'; + } + } + if (__VEZETOSEG || __NAPLOADMIN) { + $IG[] = 'igazgatói'; + } + $IG[] = 'hatósági'; + $IG[] = 'pályaválasztás'; + $JOGOSULTSAG[$diakId]['igazolas']['tipusok'] = $IG; + $JOGOSULTSAG[$diakId]['igazolas']['szamok'] = $_IGAZOLAS; + } + } + + return $JOGOSULTSAG; + } + + function hianyzasTankorTipusValtas($tankorId,$tankorTipusId,$SET = array('tanev'=>null)) { + + if (!isset($SET['tanev'])) return false; + $TANEV = getTanevAdat($SET['tanev']); + if ($TANEV['statusz']!='aktív') return false; + + $tanevDbNev = tanevDbNev(__INTEZMENY, $SET['tanev']); + + $q = "SELECT count(*) AS db FROM `%s`.hianyzas LEFT JOIN `%s`.ora USING(oraId) WHERE tankorTipusId!=%u AND tankorId=%u"; + $v = array($tanevDbNev,$tanevDbNev,$tankorTipusId,$tankorId); + $affected = db_query($q, array('debug'=>false,'modul'=>'naplo','values'=>$v,'result'=>'value')); + + $q = "UPDATE `%s`.hianyzas LEFT JOIN `%s`.ora USING(oraId) SET tankorTipusId=%u WHERE tankorId=%u"; + $v = array($tanevDbNev,$tanevDbNev,$tankorTipusId,$tankorId); + db_query($q, array('debug'=>false,'modul'=>'naplo','values'=>$v)); + + return $affected; // sajnos af affected rows DEPRECATED lett + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hirnok.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hirnok.php new file mode 100644 index 00000000..0607670f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/hirnok.php @@ -0,0 +1,357 @@ +$SET['diakId']); + if (isset($SET['tanarId']) && !is_array($SET['tanarId'])) $SET['tanarId'] = array(0=>$SET['tanarId']); + // if (strtotime($SET['tolDt'])>strtotime(date('Y-m-d'))) $SET['tolDt'] = date('Y-m-d H:i:s'); + if (isset($SET['diakId']) && is_array($SET['diakId'])) { + for ($i=0;$i$_tolDt,'diakId'=>$_diakId); + $RESULT[] = array( + 'hirnokFolyamAdatok' => array( + 'id'=>$_diakId, + 'tipus'=>'diak', + 'cn'=>getDiakNevById($_diakId), + 'adat'=>getDiakAdatById($_diakId) + ), + 'hirnokFolyamUzenetek' => getHirnokFolyam($SUBSET) + ); + } + } + if (isset($SET['tanarId']) && is_array($SET['tanarId'])) { + for ($i=0;$i$_tolDt,'tanarId'=>$_tanarId); + $RESULT[] = array( + 'hirnokFolyamAdatok' => array( + 'id'=>$_tanarId, + 'tipus'=>'tanar', + 'cn'=>getTanarNevById($_tanarId), + 'adat'=>getTanarAdatById($_tanarId) + ), + 'hirnokFolyamUzenetek' => getHirnokFolyam($SUBSET) + ); + } + } + return $RESULT; + } + + + function getHirnokFolyam($SET = array()) { + + global $_TANEV; + $R = array(); + + $TARGYADAT = array(); + $DIAKADAT = array(); + $TANARADAT = array(); + $TANKORADAT = array(); + $ORAADAT = array(); + + if (__NAPLOADMIN===true) { + if ($SET['diakId']>0) $diakId=$SET['diakId']; + elseif ($SET['tanarId']>0) $tanarId=$SET['tanarId']; + elseif (__TANAR ===true) $tanarId = __USERTANARID; + } else { + if (__DIAK===true) { // diák nézet + $diakId = __USERDIAKID; + } elseif (__TANAR ===true) { // tanár nézet + $tanarId = __USERTANARID; + } + } + + // tankörök lekérdezése + if (isset($diakId)) $TANKOROK = getTankorByDiakId($diakId, __TANEV); + // elseif (isset($osztalyId)) $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV); + elseif (isset($tanarId)) $TANKOROK = getTankorByTanarId($tanarId, __TANEV); + + $tankorIds = array(); + for ($i = 0; $i < count($TANKOROK); $i++) $tankorIds[] = $TANKOROK[$i]['tankorId']; + // DOLGOZATOK (leginkább a jövőben???) + if (is_array($tankorIds)) { + $_dolgozatok = getTankorDolgozatok($tankorIds, TRUE, $SET['tolDt'], $_TANEV['zarasDt']); // ennek a tömbnek a szerkezete elég fura... + for ($i=0; $istrtotime($SET['tolDt'])) { + $R[ strtotime($r['modositasDt']) ][] = array('hirnokTipus' => 'dolgozat', + 'dolgozatAdat' => $r + ); + } else { + // dump( 'nem aktuális a változtatás, már láttuk' ); + } + } + } + + if (__DIAK===true || (__NAPLOADMIN===true && $diakId>0)) { + if (_OSZTALYZATOK_ELREJTESE !== true || time() > strtotime($_TANEV['szemeszter'][2]['zarasDt'])) { // --TODO + // új zárójegyek, osztályzatok (diák esetén) + $q = "SELECT * from zaroJegy WHERE diakId=%u AND modositasDt>='%s'"; + $v = array($diakId,$SET['tolDt']); + $r = db_query($q, array('fv'=>'getHirnokFolyam/zaroJegy','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + for ($i=0; $i'zaroJegy', + 'zaroJegyAdat'=>$r[$i], + 'diakAdat' => $DIAKADAT[$r[$i]['diakId']], + 'targyAdat' => $TARGYADAT[$r[$i]['targyId']] + ); + } + } // -- elrejtésmarhaság + // új jegyek (diák esetén) + $q = "SELECT * from jegy WHERE diakId=%u AND modositasDt>='%s'"; + $v = array($diakId,$SET['tolDt']); + $r = db_query($q, array('fv'=>'getHirnokFolyam/jegy','modul'=>'naplo','result'=>'indexed','values'=>$v)); + if (is_array($r)) + for ($i=0; $i'jegy', + 'jegyAdat'=>$r[$i], + 'diakAdat' => $DIAKADAT[$r[$i]['diakId']], + 'tankorAdat' => $TANKORADAT[$r[$i]['tankorId']][$r[$i]['tankorId']], // 0-1 ELSŐ-MÁSODIK FÉLÉV ADATAI + 'targyAdat' => $TARGYADAT[$_targyId], + 'oraAdat' => $ORAADAT[$r[$i]['oraId']], + 'dolgozatAdat' => $DOLGOZATADAT[$r[$i]['dolgozatId']], + ); + } + + // bejegyzés + $q = "SELECT * from bejegyzes LEFT JOIN ".__INTEZMENYDBNEV.".bejegyzesTipus USING (bejegyzesTipusId) + WHERE diakId=%u AND beirasDt>='%s'"; + $v = array($diakId,$SET['tolDt']); + $r = db_query($q, array('fv'=>'getHirnokFolyam/bejegyzes','modul'=>'naplo','result'=>'indexed','values'=>$v)); + for ($i=0; $i'bejegyzes', + 'bejegyzesAdat'=>$r[$i], + 'diakAdat' => $DIAKADAT[$r[$i]['diakId']], + 'tanarAdat' => $TANARADAT[$r[$i]['tanarId']][0], + ); + } + + // hiányzás + $q = "SELECT * from hianyzas WHERE diakId=%u AND modositasDt>='%s'"; + $v = array($diakId,$SET['tolDt']); + $r = db_query($q, array('fv'=>'getHirnokFolyam/hianyzas','modul'=>'naplo','result'=>'indexed','values'=>$v)); + for ($i=0; $i'hianyzas', + 'hianyzasAdat'=>$r[$i], + 'diakAdat' => $DIAKADAT[$r[$i]['diakId']], + 'oraAdat' => $ORAADAT[$r[$i]['oraId']], + ); + } + + } // ha diák + if (__TANAR === true || (__NAPLOADMIN===true && $tanarId>0)) { + if (defined('__USERTANARID') && is_numeric(__USERTANARID)) { + $q = "SELECT COUNT(*) FROM ora WHERE ki=".__USERTANARID." AND dt <= CURDATE() AND (leiras IS NULL OR leiras='')"; + $r = db_query($q, array('fv' => 'getBeirasiAdatok', 'modul' => 'naplo', 'result' => 'value')); + $R[mktime()][] = array( + 'hirnokTipus'=>'haladasiBeiratlan', + 'db'=>$r + ); + $q = "select * from idoszak where NOW() BETWEEN tolDt AND igDt ORDER BY tolDt"; + $r = db_query($q, array('fv' => 'getIdoszakAktiv', 'modul' => 'naplo_intezmeny', 'result' => 'indexed')); + for ($i=0; $i'idoszak', + 'idoszakAdat'=>$r[$i] + ); + } + } + if (count($tankorIds)>0) { + // haladási óra - helyettesítőknek! + $q = "SELECT *,getNev(ki,'tanar') AS kiCn,getNev(kit,'tanar') AS kitCn, getNev(tankorId,'tankor') AS tankorCn from ora WHERE tankorId NOT IN (".implode(',',$tankorIds).") AND ki=%u AND modositasDt>='%s'"; + $v = array($tanarId,$SET['tolDt']); + $r = db_query($q, array('fv'=>'getHirnokFolyam/haladasi','modul'=>'naplo','result'=>'indexed','values'=>$v)); + for ($i=0; $i'haladasiOra', + 'oraAdat'=>$r[$i], + ); + } + } + } + // timestamp szerint asszociatív + // $R[strtotime($SET['tolDt'])][] = array('cim' => 'ELSŐ', 'txt'=>$SET['tolDt']); + + // haladási óra + if (count($tankorIds)>0) { + $q = "SELECT *,getNev(ki,'tanar') AS kiCn,getNev(kit,'tanar') AS kitCn, getNev(tankorId,'tankor') AS tankorCn from ora WHERE tankorId IN (".implode(',',$tankorIds).") AND modositasDt>='%s'"; + $v = array($SET['tolDt']); + $r = db_query($q, array('fv'=>'getHirnokFolyam/haladasi2','modul'=>'naplo','result'=>'indexed','values'=>$v)); + for ($i=0; $i'haladasiOra', + 'oraAdat'=>$r[$i], + ); + } + } + // Üzenő +// /* 20170418 + initSzerep(); + $_SET['tanev'] = __TANEV; +// $_SET['limits'] = array('limit'=>10, 'mutato'=>1, 'pointer'=>1); +// --TODO NOTE-- EZ KELL!!!!!! + $_SET['filter'][] = 'dt>="'.$SET['tolDt'].'"'; + $_SET['ignoreAdmin'] = true; + $r = getUzenoUzenetek($_SET); + + for ($i=0; $i'uzeno', + 'uzenoAdat' => $r[$i], + 'feladoNev' => $feladoNev, + 'cimzettNev' => $cimzettNev, + ); + } +// 20170418 */ + + reset($R); + krsort($R); + + return $R; + } + + + function getHirnokFeliratkozasok($mind=false) { + + if ($mind===true) { // hirek feliratkozáshoz! + if (__NAPLOADMIN === true) { + $q = "SELECT * FROM hirnokFeliratkozas ORDER BY email"; + $values = array(); + } else { + $q = "SELECT * FROM hirnokFeliratkozas WHERE userAccount='%s' AND policy='%s'"; + $values = array(_USERACCOUNT,_POLICY); + } + } else { + $q = "SELECT naploTipus,naploId FROM hirnokFeliratkozas WHERE userAccount='%s' AND policy='%s'"; + $values = array(_USERACCOUNT,_POLICY); + } + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$values)); + + if ($mind===true) { // hirnokFeliratkozashoz + return $r; + } else { // egyébként + for ($i=0; $i'addHirnokFeliratkozas/get', 'modul'=>'naplo_intezmeny', 'values'=>$v, 'result'=>'value')); + + if ($utolsoEmailDt=='0000-00-00 00:00:00') { + $q = "INSERT INTO hirnokFeliratkozas (naploId, naploTipus, userAccount, policy, email, feliratkozasDt, utolsoEmailDt, megtekintesDt) + VALUES (%u,'%s','%s','%s','%s',NOW(),null,null)"; + $v = array(intval($ADAT['naploId']), $ADAT['naploTipus'], _USERACCOUNT, _POLICY, $ADAT['email']); + } else { + $q = "INSERT INTO hirnokFeliratkozas (naploId, naploTipus, userAccount, policy, email, feliratkozasDt, utolsoEmailDt, megtekintesDt) + VALUES (%u,'%s','%s','%s','%s',NOW(),'%s',null)"; + $v = array(intval($ADAT['naploId']), $ADAT['naploTipus'], _USERACCOUNT, _POLICY, $ADAT['email'], $utolsoEmailDt); + } + return db_query($q, array('debug'=>true,'fv'=>'addHirnokFeliratkozas/set', 'modul'=>'naplo_intezmeny', 'values'=>$v, 'result'=>'insert')); + + } + + + function delHirnokFeliratkozas($ADAT) { + + // if (!is_array($ADAT['hirnokFeliratkozas'])) $X = array($ADAT['hirnokFeliratkozas']); + $q = "DELETE FROM hirnokFeliratkozas WHERE hirnokFeliratkozasId = %u"; + $v = array(intval($ADAT['hirnokFeliratkozasId'])); + return db_query($q, array('debug'=>true,'fv'=>'delHirnokFeliratkozas', 'modul'=>'naplo_intezmeny', 'values'=>$v, 'result'=>'delete')); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/intezmenyek.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/intezmenyek.php new file mode 100644 index 00000000..9a99a696 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/intezmenyek.php @@ -0,0 +1,134 @@ + 'getIntezmenyek', 'modul' => 'naplo_base', 'result' => 'indexed')); + + } + + function getTelephelyek($SET = array('result' => 'indexed')) { + + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed','assoc')); + $keyfield = 'telephelyId'; + $q = "SELECT * FROM telephely"; + return db_query($q, array('fv' => 'getTelephelyek', 'modul' => 'naplo_intezmeny', 'result' => $result, 'keyfield' => $keyfield)); + + } + + function getIntezmenyByRovidnev($rovidnev) { + + $q = "SELECT * FROM intezmeny LEFT JOIN `intezmeny_%s`.`telephely` ON telephely.alapertelmezett=1 WHERE intezmeny.rovidnev='%s'"; + return db_query($q, array('fv' => 'getIntezmenyByRovidnev', 'modul' => 'naplo_base', 'result' => 'record', 'values' => array($rovidnev, $rovidnev))); + + } + + function getTanevek($tervezett = false) { + + $q = "SELECT DISTINCT tanev FROM szemeszter"; + if (!$tervezett) $q .= " WHERE statusz != 'tervezett'"; + return db_query($q, array('fv' => 'getTanevek', 'modul' => 'naplo_intezmeny', 'result' => 'idonly')); + + } + + + function updateSessionIntezmeny($intezmeny) { + + + $lr = db_connect('naplo_base', array('fv' => 'updateSessionIntezmeny')); + if (!$lr) return false; + + if ($intezmeny != '') { + + $intDb = intezmenyDbNev($intezmeny); + + // telephelyId lekérdezése + $q = "SELECT `telephelyId` FROM `%s`.telephely WHERE alapertelmezett=1 LIMIT 1"; + $telephelyId = db_query($q, array('fv' => 'updateSessionIntezmeny/telephely', 'modul' => 'naplo_base', 'values' => array($intDb), 'result' => 'value'), $lr); + if ($telephelyId != '') $telephelyIdPattern = '%u'; + else $telephelyIdPattern = 'NULL'; + $q = "SELECT tanev, + IF(ABS(DATEDIFF(zarasDt,CURDATE())) 'updateSessionIntezmeny/tanev', 'modul' => 'naplo_base', 'values' => array($intDb), 'result' => 'indexed'), $lr); + + if ($r===false) { // Ha például nem létező intézményre váltanánk... + $_SESSION['alert'][] = 'message:wrong_data:no_database?:'.$intDb; + db_close($lr); + return false; + } elseif (count($r) > 0) { + $tanev = $r[0]['tanev']; + $q = "UPDATE session SET intezmeny='%s', tanev=%u, telephelyId=$telephelyIdPattern + WHERE sessionID='"._SESSIONID."' "; + $v = array($intezmeny, $tanev, $telephelyId); + } else { + $q = "UPDATE session SET intezmeny='%s', tanev=NULL, telephelyId=$telephelyIdPattern + WHERE sessionID='"._SESSIONID."' "; + $v = array($intezmeny, $telephelyId); + } + + } else { + // Intézmény törlése + $q = "UPDATE session SET intezmeny=NULL, tanev=NULL, telephelyId=NULL WHERE sessionID='%s' "; + $v = array(_SESSIONID); + } + $r = db_query($q, array('fv' => 'updateSessionIntezmeny/update', 'modul' => 'naplo_base', 'values' => $v), $lr); + + db_close($lr); + + return true; + + } + + function updateSessionTanev($tanev) { + + + if (is_numeric($tanev)) { + + $intDb = intezmenyDbNev(__INTEZMENY); + + $q = "SELECT COUNT(tanev) FROM $intDb.szemeszter WHERE statusz!='tervezett' AND tanev=$tanev"; + $num = db_query($q, array('fv' => 'updateSessionTanev', 'modul' => 'naplo_base', 'values' => array($intDb, $tanev), 'result' => 'value')); + if ($num > 0) { + $q = "UPDATE session SET tanev=%u WHERE sessionID='"._SESSIONID."' "; + } else { + $_SESSION['alert'][] = 'message:nincs_ilyen_tanev:'.$tanev; + return false; + } + + } else { + // Tanév törlése + $q = "UPDATE session SET tanev=NULL WHERE sessionID='"._SESSIONID."' "; + } + + return db_query($q, array('fv' => 'updateSessionTanev', 'modul' => 'naplo_base', 'values' => array($tanev))); + + } + + function updateSessionTelephelyId($telephelyId) { + + + if (is_numeric($telephelyId)) { + + $q = "SELECT COUNT(`telephelyId`) FROM `telephely` WHERE `telephelyId`=%u"; + $v = array($telephelyId); + $num = db_query($q, array('fv' => 'updateSessionTelephely', 'modul' => 'naplo_intezmeny', 'values' => array($telephelyId), 'result' => 'value')); + if ($num == 1) { + $q = "UPDATE `session` SET `telephelyId`=%u WHERE `sessionID`='"._SESSIONID."' "; + } else { + $_SESSION['alert'][] = 'message:nincs_ilyen_telephelyId:'.$telephelyId; + return false; + } + + } else { + // telephelyId törlése + $q = "UPDATE `session` SET `telephelyId`=NULL WHERE `sessionID`='"._SESSIONID."' "; + } + + return db_query($q, array('fv' => 'updateSessionTelephely', 'modul' => 'naplo_base', 'values' => array($telephelyId))); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegy.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegy.php new file mode 100644 index 00000000..3898bc2a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegy.php @@ -0,0 +1,73 @@ + 'getJegyInfo')); + else $lr = $olr; + + $q = "SELECT jegyId, jegy.diakId AS diakId, tankorId, dt, jegy, jegyTipus, tipus, jegy.megjegyzes, oraId, dolgozatId, + TRIM(CONCAT_WS(' ',viseltNevElotag,viseltCsaladiNev,viseltUtonev)) AS diakNev, modositasDt + FROM `%s`.jegy LEFT JOIN ".__INTEZMENYDBNEV.".diak USING(diakId) + WHERE jegyId=%u"; + $jegy = db_query($q, array('fv' => 'getJegyInfo', 'modul' => 'naplo', 'result' => 'record', 'values' => array($tanevDb, $jegyId)), $lr); + if (!is_array($jegy)) { + $_SESSION['alert'][] = 'message:wrong_data:getJegyek:jegyId='.$jegyId; + if ($olr == '') db_close($lr); + return false; + } + + $jegy['tanár'] = getTankorTanaraiByInterval($jegy['tankorId'], array('tanev' => $tanev, 'result' => 'nevsor'), $lr); + $tanarSzam = count($jegy['tanár']); $jegy['tanár']['idk'] = array(); + for ($i = 0; $i < $tanarSzam; $i++) { + if (!in_array($jegy['tanár'][$i]['tanarId'], $jegy['tanár']['idk'])) + $jegy['tanár']['idk'][] = $jegy['tanár'][$i]['tanarId']; + } + $jegy['tankör'] = getTankorById($jegy['tankorId'], $tanev, $lr); + + if ($jegy['oraId'] != '') $jegy['oraAdat'] = getOraAdatById($jegy['oraId'], $tanev, $lr); + + if ($jegy['tipus'] > 2 && $jegy['dolgozatId'] != '') { + + // A dolgozat adatainak lekérdezése + $q = "SELECT bejelentesDt, tervezettDt, dolgozatNev FROM `%s`.dolgozat WHERE dolgozatId=%u"; + $jegy['dolgozat'] = db_query($q, array('fv' => 'getJegyInfo', 'modul' => 'naplo', 'result' => 'record', 'values' => array($tanevDb, $jegy['dolgozatId'])), $lr); + if (!is_array($jegy['dolgozat']) || count($jegy['dolgozat']) == 0) { + $_SESSION['alert'][] = 'message:wrong_data:jegyId='.$jegyId.':dolgozatId='.$jegy['dolgozatId']; + if ($olr == '') db_close($lr); + return false; + } + + } + + if ($olr == '') db_close($lr); + return $jegy; + } + + + /* + A függvényt arra használjuk, hogy van-e eltérés a tárgy átlag és az osztalyzat között + */ + function getDiakJegyAtlagok($DIAKIDS,$ADAT=array('evfolyam'=>''),$lr='') { + // tanev adatbázis + //$q = "SELECT targyId,AVG(jegy) as jegyAtlag FROM jegy LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) WHERE diakId=%u GROUP BY targyId"; + //$r = db_query($q, array('modul'=>'naplo','values'=>array($diakId), 'result'=>'assoc','keyfield'=>'targyId')); + $q = "SELECT diakId,targyId,AVG(jegy) as jegyAtlag FROM jegy LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) WHERE diakId IN + (".implode(',', array_fill(0, count($DIAKIDS), '%u')).") GROUP BY diakId,targyId"; + $r = db_query($q, array('modul'=>'naplo', 'result'=>'indexed', 'values'=>$DIAKIDS)); + $arraymap = array('diakId','targyId'); + return reindex($r, $arraymap); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegyModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegyModifier.php new file mode 100644 index 00000000..e86a76b0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegyModifier.php @@ -0,0 +1,68 @@ +0) { + // Naplózás + for ($i = 0; $i < count($jegyInfo); $i++) { + $jegyAdat = $jegyInfo[$i]; + $param = $jegyAdat['jegyId'].', '.$jegyAdat['diakId'].', '.$jegyAdat['tankorId'].', '.$jegyAdat['dt'].', '.$jegyAdat['jegy'].', '.$jegyAdat['tipus'].', '.$jegyAdat['oraId'].', '.$jegyAdat['dolgozatId']; + logAction( + array( + 'szoveg'=>'Jegy törlés: '.$param, + 'table'=>'jegy' + ), + $lr + ); + } + // Jegyek törlése + $q = "DELETE FROM `%s`.jegy WHERE jegyId IN (".implode(',', array_fill(0, count($jegyId), '%u')).")"; + array_unshift($jegyId, $tanevDb); + $r = db_query($q, array('fv' => 'jegyTorles', 'modul' => 'naplo', 'values' => $jegyId), $lr); + } else { + // Miért false? Nincs törlendő jegy - akkor sikeres a törlés // return false; + $r = true; + } + + if ($olr=='') db_close($lr); + return $r; + + } + + function jegyModositas($jegyId, $jegy, $jegyTipus, $tipus, $oraId, $dolgozatId, $megjegyzes) { + + $v = array($jegy, $jegyTipus, $tipus); + if (!is_null($oraId)) $v[] = $oraId; + if (!is_null($dolgozatId)) $v[] = $dolgozatId; + array_push($v, $megjegyzes, $jegyId); + $q = "UPDATE `jegy` SET modositasDt=NOW(), jegy=%f, jegyTipus='%s', tipus=%u, oraId=".((is_null($oraId))?'NULL':'%u').", dolgozatId=".((is_null($dolgozatId))?'NULL':'%u').", megjegyzes='%s' WHERE jegyId=%u"; + + return db_query($q, array('fv' => 'jegyModositas', 'modul' => 'naplo', 'values' => $v), $lr); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegyzet.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegyzet.php new file mode 100644 index 00000000..b5a0da64 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/jegyzet.php @@ -0,0 +1,216 @@ +0) { + $userId = __USERDIAKID; + $userTipus='diak'; + } elseif (__DIAK===true && _SZULODIAKID>0) { + $userId = __SZULODIAKID; + $userTipus='szulo'; + } elseif (__TANAR === true) { + $userId = __USERTANARID; + $userTipus='tanar'; + } else { + $userId = 0; + $userTipus=''; + } + define('__JEGYZETSZEREPTIPUS',$userTipus); + define('__JEGYZETSZEREPID',$userId); + + // + function getJegyzet($SET = array('tolDt'=>'','igDt'=>'','dt'=>'')) { + + // csak a saját jegyzeteim lehet lekérdezni + if (__DIAK===true && __USERDIAKID>0) { + $userId = __USERDIAKID; + $userTipus='diak'; + } elseif (__DIAK===true && _SZULODIAKID>0) { + $userId = __SZULODIAKID; + $userTipus='szulo'; + } elseif (__TANAR === true) { + $userId = __USERTANARID; + $userTipus='tanar'; + } elseif (__NAPLOADMIN === true) { // ha nem tanár de naplóadmin (speciális eset :) ) + $userId = 0; + $userTipus='admin'; + } else { + return false; + } + + $tolDt = readVariable($SET['tolDt'], 'date'); + $igDt = readVariable($SET['igDt'], 'date'); + initTolIgDt(__TANEV, $tolDt, $igDt); + // jogosultság szerint 0: privát, 1: speciális, 2: publikus (csak tanár állíthat be?) + if (__NAPLOADMIN===true && $userId===0 && $userTipus==='admin') { // speciális esetben minden zárt és publikust láthatjuk (kivéve a privátot) + $q = "SELECT *,getNev(userId,userTipus) AS nev FROM jegyzet WHERE publikus IN (0,1,2) AND dt >= '%s' AND dt<= '%s' ORDER BY dt"; + $v = array($tolDt,$igDt); + } else { + $q = "(SELECT *,getNev(userId,userTipus) AS nev FROM jegyzet WHERE (userId=%u AND userTipus='%s') AND dt >= '%s' AND dt<= '%s' ORDER BY dt)"; + if (count($SET['osztalyIdk'])>0) $q .= " UNION (SELECT jegyzet.*,getNev(userId,userTipus) AS nev FROM jegyzet LEFT JOIN jegyzetOsztaly USING (jegyzetId) WHERE osztalyId IN (". implode(',',$SET['osztalyIdk']) .") AND publikus=1 ORDER BY dt)"; + if (count($SET['tankorIdk'])>0) $q .= " UNION (SELECT jegyzet.*,getNev(userId,userTipus) AS nev FROM jegyzet LEFT JOIN jegyzetTankor USING (jegyzetId) WHERE tankorId IN (". implode(',',$SET['tankorIdk']) .") AND publikus=1 ORDER BY dt)"; + $q .= " UNION (SELECT *,getNev(userId,userTipus) AS nev FROM jegyzet WHERE publikus=2 AND dt >= '%s' AND dt<= '%s' ORDER BY dt)"; + $v = array($userId,$userTipus,$tolDt,$igDt,$tolDt,$igDt); + } + $R = db_query($q, array('fv' => 'getJegyzet0', 'modul' => 'naplo', 'values' => $v, 'result'=>'indexed'), $lr); + + return $R; + } + + // + function getJegyzetAdat($jegyzetId) { + + global $_OSZTALYA; + + if (__DIAK===true && __USERDIAKID>0) { + $userId = __USERDIAKID; + $userTipus='diak'; + } elseif (__DIAK===true && _SZULODIAKID>0) { + $userId = __SZULODIAKID; + $userTipus='szulo'; + } elseif (__TANAR === true) { + $userId = __USERTANARID; + $userTipus='tanar'; + } elseif (__NAPLOADMIN === true) { // ha nem tanár de naplóadmin (speciális eset :) ) + $userId = 0; + $userTipus='admin'; + } else { + return false; + } + + + // jogosultság ellenőr + if (_POLICY!='public') { + if (__JEGYZETSZEREPTIPUS == 'diak') { + $JA['tankorok'] = getTankorByDiakId(__JEGYZETSZEREPID); + $JA['osztalyok'] = getDiakOsztalya(__JEGYZETSZEREPID,array('tanev'=>$tanev,'tolDt'=>$dt,'igDt'=>$dt)); + } elseif (__JEGYZETSZEREPTIPUS == 'tanar') { + $JA['tankorok'] = getTankorByTanarId(__JEGYZETSZEREPID); + //if (is_array($_OSZTALYA) && count($_OSZTALYA)>0) $JA['osztalyok'] = getOsztalyok(null,array('osztalyIds'=>$_OSZTALYA)); + $JA['munkakozossegek'] = getMunkakozossegByTanarId(__JEGYZETSZEREPID, array('idonly'=>false)); + } + for ($i=0; $i0) $q .= " UNION (SELECT jegyzet.*,getNev(userId,userTipus) AS nev FROM jegyzet LEFT JOIN jegyzetOsztaly USING (jegyzetId) WHERE osztalyId IN (". implode(',',$JA['osztalyIdk']) .") AND publikus=1 AND jegyzetId=%u ORDER BY dt)"; + if (count($JA['tankorIdk'])>0) $q .= " UNION (SELECT jegyzet.*,getNev(userId,userTipus) AS nev FROM jegyzet LEFT JOIN jegyzetTankor USING (jegyzetId) WHERE tankorId IN (". implode(',',$JA['tankorIdk']) .") AND publikus=1 AND jegyzetId=%u ORDER BY dt)"; + $q .= " UNION (SELECT *,getNev(userId,userTipus) AS nev FROM jegyzet WHERE publikus=2 AND jegyzetId=%u ORDER BY dt)"; + $v = array($userId,$userTipus,$jegyzetId,$jegyzetId,$jegyzetId,$jegyzetId); + } + $R = db_query($q, array('fv' => 'getJegyzet', 'modul' => 'naplo', 'values' => $v, 'result'=>'record'), $lr); // jegyzetId, tehát egy record + + for($i=0;$i 'getJegyzet1', 'modul' => 'naplo', 'values' => $v, 'result'=>'idonly'), $lr); + } + for($i=0;$i 'getJegyzet2', 'modul' => 'naplo', 'values' => $v, 'result'=>'idonly'), $lr); + } + for($i=0;$i 'getJegyzet3', 'modul' => 'naplo', 'values' => $v, 'result'=>'idonly'), $lr); + } + return $R; + } + + function setJegyzetAdat($ADAT) { + + if (__DIAK===true && __USERDIAKID>0) { + $userId = __USERDIAKID; + $userTipus='diak'; + $allowedPublikus = array(0,1); + } elseif (__DIAK===true && _SZULODIAKID>0) { + $userId = __SZULODIAKID; + $userTipus='szulo'; + $allowedPublikus = array(0,1); + } elseif (__TANAR === true) { + $userId = __USERTANARID; + $userTipus='tanar'; + $allowedPublikus = array(0,1,2); + } else { + return false; + } + + if ($ADAT['jegyzetId']<=0) { // insert + $q = "INSERT INTO jegyzet (jegyzetId) VALUES ('')"; + $jegyzetId = db_query($q, array('fv' => 'setJegyzetAdat', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert')); + $q = "UPDATE jegyzet SET userId=%u,userTipus='%s' WHERE jegyzetId=%u"; + $v = array($userId,$userTipus,$jegyzetId); + db_query($q, array('fv' => 'setJegyzetAdat', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert')); + } else { + $jegyzetId = $ADAT['jegyzetId']; + } + + $dt = readVariable($ADAT['dt'],'date'); + $dt = getTanitasiNapVissza(0,$dt); + $publikus = readVariable($ADAT['publikus'],'id',0,$allowedPublikus); + + $q = "UPDATE jegyzet SET jegyzetLeiras='%s',publikus=%u,dt='%s' WHERE userId=%u AND userTipus='%s' AND jegyzetId=%u"; + $v = array(readVariable($ADAT['jegyzetLeiras'],'string'),$publikus,$dt,$userId,$userTipus,$jegyzetId); + db_query($q, array('fv' => 'getJegyzet', 'modul' => 'naplo', 'values' => $v, 'result'=>'record')); + + $q = "DELETE FROM jegyzetTankor WHERE jegyzetId=%u"; + $v = array($jegyzetId); + db_query($q, array('fv' => 'getJegyzet', 'modul' => 'naplo', 'values' => $v, 'result'=>'indexed'), $lr); + + for ($i=0; $i 'setJegyzetAdat', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert')); + } + + $q = "DELETE FROM jegyzetOsztaly WHERE jegyzetId=%u"; + $v = array($jegyzetId); + db_query($q, array('fv' => 'getJegyzet', 'modul' => 'naplo', 'values' => $v, 'result'=>'indexed'), $lr); + + for ($i=0; $i 'setJegyzetAdat', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert')); + } + $q = "DELETE FROM jegyzetMunkakozosseg WHERE jegyzetId=%u"; + $v = array($jegyzetId); + db_query($q, array('fv' => 'getJegyzet4', 'modul' => 'naplo', 'values' => $v, 'result'=>'indexed'), $lr); + for ($i=0; $i 'setJegyzetAdat', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert')); + } + return $jegyzetId; + + } + + function delJegyzet($jegyzetId) { + if (__DIAK===true && __USERDIAKID>0) { + $userId = __USERDIAKID; + $userTipus='diak'; + } elseif (__DIAK===true && _SZULODIAKID>0) { + $userId = __SZULODIAKID; + $userTipus='szulo'; + } elseif (__TANAR === true) { + $userId = __USERTANARID; + $userTipus='tanar'; + } else { + return false; + } + + $q = "DELETE FROM jegyzet WHERE userId=%u AND userTipus='%s' AND jegyzetId=%u"; + $v = array($userId,$userTipus,$jegyzetId); + db_query($q, array('fv' => 'jegyzetel', 'modul' => 'naplo', 'values' => $v, 'result'=>'')); + return; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kepesites.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kepesites.php new file mode 100644 index 00000000..4315e64b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kepesites.php @@ -0,0 +1,103 @@ +'getKepesitesek','modul'=>'naplo_intezmeny','result'=>$result,'keyfield'=>'kepesitesId')); + + } + + function getTanarKepesites($tanarId) { + + $q = "SELECT * FROM tanarKepesites LEFT JOIN kepesites USING (kepesitesId) WHERE tanarId=%u"; + return db_query($q, array('fv'=>'getTanarKepesites','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array($tanarId))); + + } + + function getTanarKepesitesIds($tanarIds) { + + $q = "SELECT tanarId, kepesitesId FROM tanarKepesites"; + if (is_array($tanarIds)) { + $q .= " WHERE tanarId IN (".implode(',', array_fill(0, count($tanarIds), '%u')).")"; + $v = $tanarIds; + } + $r = db_query($q, array('fv'=>'getTanarKepesitesIds','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + + if (is_array($r)) { + for ($i=0; $i'getKepesitesTargy','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array($kepesitesId))); + + } + + function getKepesitesTanar($kepesitesId) { + + $q = "SELECT *, CONCAT_WS(' ',viseltNevElotag, viseltCsaladinev, viseltUtonev) AS tanarNev FROM tanarKepesites LEFT JOIN tanar USING (tanarId) + WHERE kepesitesId=%u ORDER BY tanarNev, tanarId"; + return db_query($q, array('fv'=>'getKepesitesTanar','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array($kepesitesId))); + + } + + /* --- set --- */ + + function tanarKepesitesHozzarendeles($tanarId, $kepesitesId) { + + $q = "INSERT INTO tanarKepesites (tanarId, kepesitesId) VALUES (%u,%u)"; + $v = array($tanarId, $kepesitesId); + return db_query($q, array('fv'=>'tanarKepesitesHozzarendeles','modul'=>'naplo_intezmeny','values'=>$v)); + + } + + function kepesitesTargyHozzarendeles($kepesitesId, $targyId) { + + $q = "INSERT INTO kepesitesTargy (kepesitesId, targyId) VALUES (%u,%u)"; + $v = array($kepesitesId, $targyId); + return db_query($q, array('fv'=>'kepesitesTargyHozzarendeles','modul'=>'naplo_intezmeny','values'=>$v)); + + } + + function kepesitesTargyTorles($kepesitesId, $targyId) { + + $q = "DELETE FROM kepesitesTargy WHERE kepesitesId=%u AND targyId=%u"; + $v = array($kepesitesId, $targyId); + return db_query($q, array('fv'=>'kepesitesTargyTorles','modul'=>'naplo_intezmeny','values'=>$v)); + + } + + function tanarKepesitesTorles($tanarId, $kepesitesId) { + + $q = "DELETE FROM tanarKepesites WHERE tanarId=%u AND kepesitesId=%u"; + $v = array($tanarId, $kepesitesId); + return db_query($q, array('fv'=>'tanarKepesitesTorles','modul'=>'naplo_intezmeny','values'=>$v)); + + } + + function ujKepesites($vegzettseg, $fokozat, $specializacio, $kepesitesNev) { + $q = "INSERT INTO kepesites (vegzettseg, fokozat, specializacio, kepesitesNev) VALUES ('%s','%s','%s','%s')"; + $v = array($vegzettseg, $fokozat, $specializacio, $kepesitesNev); + return db_query($q, array('fv'=>'ujKepesites','modul'=>'naplo_intezmeny','result'=>'insert','values'=>$v)); + + } + + function kepesitesModositas($kepesitesId, $vegzettseg, $fokozat, $specializacio, $kepesitesNev) { + + $q = "UPDATE kepesites SET vegzettseg='%s',fokozat='%s',specializacio='%s',kepesitesNev='%s' WHERE kepesitesId=%u"; + $v = array($vegzettseg, $fokozat, $specializacio, $kepesitesNev, $kepesitesId); + return db_query($q, array('debug'=>false,'fv'=>'kepesitesModositas','modul'=>'naplo_intezmeny','values'=>$v)); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kepzes.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kepzes.php new file mode 100644 index 00000000..84553ffb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kepzes.php @@ -0,0 +1,173 @@ + 'getKepzesek', 'modul' => 'naplo_intezmeny', 'result' => 'indexed')); + + } + + function getKepzesAdatById($kepzesId) { + + $q = "SELECT * FROM kepzes WHERE kepzesId=%u"; + $ret = db_query($q, array('fv' => 'getKepzesAdatById', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($kepzesId))); + if (!$ret || !is_array($ret) || count($ret) == 0) return false; + + if ($ret['osztalyJellegId']!='') { + $EVFOLYAMJELEK=getEvfolyamJelek(array('result'=>'idonly')); + $ret['osztalyJelleg']=getOsztalyJellegAdat($ret['osztalyJellegId']); + $ret['osztalyEvfolyamJelek'] = explode(',',$ret['osztalyJelleg']['evfolyamJelek']); + } + + $q = "SELECT osztalyId FROM kepzesOsztaly WHERE kepzesId=%u"; + $ret['osztalyIds'] = db_query($q, array('fv' => 'getKepzesAdatById/Osztályok', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($kepzesId))); + return $ret; + + } + + function getKepzesByOsztalyJelleg($osztalyJellegId) { + + $q = "select * from kepzes where osztalyJellegId=%u order by kepzesNev"; + return db_query($q, array('fv'=>'getKepzesByOsztalyJelleg','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array($osztalyJellegId))); + + } + + function getKepzesByOsztalyId($osztalyId, $SET = array('result' => 'indexed', 'arraymap' => null)) { + + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed','multiassoc')); + if (!is_array($osztalyId)) $osztalyId = array($osztalyId); + + $q = "SELECT * FROM kepzesOsztaly LEFT JOIN kepzes USING (kepzesId) WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyId), '%u')).")"; + $ret = db_query($q, array( + 'fv' => 'getKepzesByOsztalyId', 'modul' => 'naplo_intezmeny', 'values' => $osztalyId, 'result' => $result, 'keyfield' => 'osztalyId' + )); + + if (is_array($SET['arraymap'])) return reindex($ret, $SET['arraymap']); + else return $ret; + + } + + /* NEW */ + function getOsztalyLehetsegesKepzesei($osztalyId, $SET=array()) { + return getKepzesByOsztaly($osztalyId,$SET); + } + + /* NEW */ + function getOsztalyKepzesei($osztalyId,$SET=array()) { + $DIAKIDK = getDiakokByOsztalyIds($osztalyId); + } + + function getKepzesByDiakId($diakId, $SET = array('result' => 'assoc', 'dt' => null, 'arraymap' => null)) { + /** + * Ha nincs dátum megadva, akkor az összes, amúgy az adott dátumkor érvényes képzéseket adja vissza a függvény! + **/ + + if (!is_array($diakId)) + if ($diakId != '') $diakId = array($diakId); + else $diakId = array(); + if (count($diakId) == 0) return false; + if ($SET['result'] == 'csakid') $SET['result'] = 'idonly'; // az egységesítés nevében + + if (isset($SET['dt']) and $SET['dt'] != '') { + $WHERE_DT = " AND tolDt<='%s' AND (igDt IS NULL OR '%s'<=igDt)"; + $v = mayor_array_join($diakId, array($SET['dt'], $SET['dt'])); + } else { + $WHERE_DT = ""; + $v = $diakId; + } + if ($SET['result'] == 'idonly') { + $q = "SELECT DISTINCT kepzesId FROM kepzesDiak LEFT JOIN kepzes USING (kepzesId) + WHERE diakId IN (".implode(',', array_fill(0, count($diakId), '%u')).")".$WHERE_DT; + $ret = db_query($q, array('fv' => 'getKepzesByDiakId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + } else { + $q = "SELECT * FROM kepzesDiak LEFT JOIN kepzes USING (kepzesId) + WHERE diakId IN (".implode(',', array_fill(0, count($diakId), '%u')).")".$WHERE_DT; + if ($SET['arraymap'] && count($SET['arraymap'])>0) { // ha arraymap van, nem figyelünk a resultra + $r = db_query($q, array('fv' => 'getKepzesByDiakId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + $ret = reindex($r,$SET['arraymap']); + } elseif ($SET['result'] == 'assoc' || $SET['result'] == 'multiassoc') { + $ret = db_query($q, array( + 'fv' => 'getKepzesByDiakId', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'diakId', 'values' => $v + )); + } else { + $ret = db_query($q, array('fv' => 'getKepzesByDiakId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + } + } + if (!$ret || !is_array($ret)) return false; //ez miért jó? + return $ret; + + } + +// function getKepzesTargyByDiakId() --> targyId,targyNev + + + function getTargyAdatFromKepzesOraterv($kepzesId, $SET = array('tipus'=>null, 'targyId'=>null, 'evfolyamJel'=>null, 'szemeszter'=>null, 'arraymap'=>null)) { + /* + Ha van megadva típus és az nem 'mintatantervi', akkor azt (is) figyelembe veszi, DE az adatszerkezetbe nem kerül bele a tipus! + */ + if ($kepzesId=='') return false; + if (!is_array($SET['arraymap'])) $SET['arraymap'] = array('targyId','evfolyamJel','szemeszter'); + $W = ''; $v = array($kepzesId); + if (isset($SET['tipus']) && $SET['tipus'] != 'mintatantervi') { $W .= " AND tipus='%s'"; $v[] = $tipus = $SET['tipus']; } + else if (isset($SET['targyId'])) { $W .= " AND targyId=%u"; $v[] = $targyId = $SET['targyId']; } + if (isset($SET['evfolyamJel'])) { $W .= " AND evfolyamJel='%s'"; $v[] = $evfolyamJel = $SET['evfolyamJel']; } + if (isset($SET['szemeszter'])) { $W .= " AND szemeszter=%u"; $v[] = $szemeszter = $SET['szemeszter']; } + + $q = "SELECT * FROM kepzesOraterv WHERE kepzesId=%u".$W." ORDER BY tipus, targyId, "._SQL_EVFOLYAMJEL_SORREND.", szemeszter"; + $r = db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'getTargyAdatFromKepzesOraterv', 'result'=>'indexed', 'values'=> $v)); + $RE = reindex($r,$SET['arraymap']); + return $RE; + } + + + function getKepzesOraterv($kepzesId, $SET = array('arraymap'=>null, 'evfolyamJel' => null)) { + if ($kepzesId=='') return false; + if (!is_array($SET['arraymap'])) $SET['arraymap'] = array('tipus','targyId','evfolyamJel','szemeszter'); + + if (isset($SET['evfolyamJel'])) { + $q = "SELECT * FROM kepzesOraterv WHERE kepzesId=%u AND evfolyamJel='%s'"; + $v = array($kepzesId, $SET['evfolyamJel']); + } else { + $q = "SELECT * FROM kepzesOraterv WHERE kepzesId=%u"; + $v = array($kepzesId); + } + $r = db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'getKepzesOraterv', 'result'=>'indexed','values'=>$v)); + + $RE = reindex($r, $SET['arraymap']); + return $RE; + } + +// function getKepzesTargyByDiakId() --> targyId,targyNev + + function getOraszamByKepzes($kepzesId, $SET = array('arraymap'=>null, 'evfolyamJel'=>'', 'szemeszter'=>0)) { // --TODO check evfolyam -> evfolyamJel + if ($kepzesId=='') return false; + //if (!is_array($SET['arraymap']) || count($SET['arraymap'])==1) $SET['arraymap'] = array(); + + $q = "SELECT tipus,sum(hetiOraszam) AS sum FROM kepzesOraterv WHERE kepzesId=%u AND evfolyamJel='%s' AND szemeszter=%u GROUP BY tipus"; + $v = array($kepzesId,$SET['evfolyamJel'],$SET['szemeszter']); + $r = db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'getOraszamByKepzes', 'result'=>'assoc','keyfield'=>'tipus', 'values'=>$v)); + return $r; + } + + function setOsztalyKepzesei($osztalyId, $kepzesIds) { + if (is_array($kepzesIds) && count($kepzesIds)>0) { + $q = "INSERT INTO kepzesOsztaly VALUES ".implode(',', array_fill(0, count($kepzesIds), '(%u,%u)')); + foreach ($kepzesIds as $kepzesId) { + $v[] = $kepzesId; + $v[] = $osztalyId; + } + $r = db_query($q, array('modul'=>'naplo_intezmeny','fv'=>'setOsztalyKepzesei', 'result'=>'insert', 'values'=>$v)); + return $r; + } + } + + function getKepzesOratervAdatByBontasId($bontasId) { + + $q = "select * from kepzesOraterv left join ".__TANEVDBNEV.".kepzesTargyBontas using (kepzesOratervId) where bontasId=%u"; + return db_query($q, array('fv'=>'getKepzesOratervAdatByBontasId','modul'=>'naplo_intezmeny','result'=>'record','values'=>array($bontasId))); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kerdoiv.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kerdoiv.php new file mode 100644 index 00000000..b4d26b70 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kerdoiv.php @@ -0,0 +1,127 @@ + $cimzettIds) { + if (is_array($cimzettIds) && count($cimzettIds) > 0) { + $cimzettFeltetel[] = "(cimzettTipus='%s' AND cimzettId IN (0,".implode(',', array_fill(0, count($cimzettIds), '%u'))."))"; + $v = mayor_array_join($v, array($cimzettTipus), $cimzettIds); + } + } + + $q = "SELECT DISTINCT kerdoivId,cim,tolDt,igDt FROM kerdoiv LEFT JOIN kerdoivCimzett USING (kerdoivId) + WHERE tolDt<=NOW() AND NOW()<=igDt"; + if (count($cimzettFeltetel) > 0) $q .= " AND (".implode(" OR ", $cimzettFeltetel).")"; + return db_query($q, array('fv' => 'getKerdoiv','modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + } + + function getOsszesKerdoiv($tanev = __TANEV) { + + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + $q = "SELECT DISTINCT kerdoivId,cim,tolDt,igDt FROM %s.kerdoiv LEFT JOIN `%s`.kerdoivCimzett USING (kerdoivId)"; + return db_query($q, array('fv' => 'getKerdoiv','modul' => 'naplo', 'result' => 'indexed', 'values' => array($tanevDb,$tanevDb))); + + } + + function getKerdoivAdat($kerdoivId) { + + $v = array($kerdoivId); + $q = "SELECT * FROM kerdoiv WHERE kerdoivId=%u"; + $ret = db_query($q, array('fv' => 'getKerdoivAdat', 'modul' => 'naplo', 'result' => 'record', 'values' => $v)); + + $q = "SELECT * FROM kerdoivKerdes WHERE kerdoivId=%u ORDER BY kerdesId"; + $ret['kerdes'] = db_query($q, array('fv' => 'getKerdoivAdat/kerdes', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + + for ($i = 0; $i < count($ret['kerdes']); $i++) { + $q = "SELECT * FROM kerdoivValasz WHERE kerdesId=%u ORDER BY pont, valaszId"; + $ret['kerdes'][$i]['valasz'] = db_query($q, array('fv' => 'getKerdoivAdat/valasz', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($ret['kerdes'][$i]['kerdesId']))); + } + + $q = "SELECT * FROM kerdoivCimzett WHERE kerdoivId=%u"; + $tmp = db_query($q, array('fv' => 'getKerdoivAdat/cimzett', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'cimzettTipus', 'values' => $v)); + if (is_array($tmp)) + foreach ($tmp as $cimzettTipus => $ctAdat) { + $ret['cimzettTipusok'][] = $cimzettTipus; + for ($i = 0; $i < count($ctAdat); $i++) + $ret['cimzett'][$cimzettTipus][] = $ctAdat[$i]['cimzettId']; + } + /* endif */ + + return $ret; + + } + + function getMegvalaszoltKerdes($kerdoivId, $feladoId, $feladoTipus, $cimzettId, $cimzettTipus) { + + $q = "SELECT kerdesId FROM kerdoivMegvalaszoltKerdes + WHERE feladoId=%u AND feladoTipus='%s' AND cimzettId=%u AND cimzettTipus='%s' + ORDER BY kerdesId"; + $v = array($feladoId, $feladoTipus, $cimzettId, $cimzettTipus); + return db_query($q, array('fv' => 'getMegvalaszoltKerdes', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v)); + + } + + function getKerdoivStat($kerdoivId, $tanev = __TANEV) { + + global $_TANEV; + + if ($tanev == __TANEV) $TA = $_TANEV; + else $TA = getTanevAdat($tanev); + + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + + // Kérdőív címe, határidői + $q = "SELECT * FROM `%s`.kerdoiv WHERE kerdoivId=%u"; + $ret = db_query($q, array('fv' => 'getKerdoivStat', 'modul' => 'naplo', 'result' => 'record', 'values' => array($tanevDb, $kerdoivId))); + // A kérdőív kérdései + $q = "SELECT kerdesId,trim(trailing '\c' from kerdes) AS kerdes FROM `%s`.kerdoivKerdes WHERE kerdoivId=%u ORDER BY kerdesId"; + $ret['kerdes'] = db_query($q, array('fv' => 'getKerdoivStat/kerdes', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'kerdesId', 'values' => array($tanevDb, $kerdoivId))); + + // A kérdőív válaszai + $ret['valaszIds'] = array(); + foreach ($ret['kerdes'] as $kerdesId => $kAdat) { + $q = "SELECT valaszId,valasz FROM `%s`.kerdoivValasz WHERE kerdesId=%u ORDER BY valaszId"; + $ret['kerdes'][$kerdesId]['valasz'] = db_query($q, array('fv' => 'getKerdoivStat/valasz', 'modul' => 'naplo', 'result' => 'keyvaluepair', 'values' => array($tanevDb, $kerdesId))); + foreach ($ret['kerdes'][$kerdesId]['valasz'] as $valaszId => $valasz) $ret['valaszIds'][] = $valaszId; + } + + // A kérdőív címzettjei + $q = "SELECT cimzettTipus,cimzettId FROM `%s`.kerdoivCimzett WHERE kerdoivId=%u"; + $ret['cimzett'] = db_query($q, array('fv' => 'getKerdoivStat/cimzett', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'cimzettTipus', 'values' => array($tanevDb, $kerdoivId))); + // A tankör típusú címzettek tanára(i) + $ret['tanarNev'] = array(); + foreach (array('tankor','tankorSzulo') as $key => $cimzettTipus) { + if (is_array($ret['cimzett'][$cimzettTipus]) && count($ret['cimzett'][$cimzettTipus]) > 0) { + for ($i = 0; $i < count($ret['cimzett'][$cimzettTipus]); $i++) { + $tankorId = $ret['cimzett'][$cimzettTipus][$i]['cimzettId']; + $tanarIds = getTankorTanaraiByInterval( + $tankorId, array('tanev' => $tanev, 'tolDt' => $ret['kerdes']['tolDt'], 'igDt' => $ret['kerdes']['igDt'], 'result' => 'csakId') + ); + for ($j = 0; $j < count($tanarIds); $j++) { + if (!is_array($ret['tanarTankorei'][ $tanarIds[$j] ]) || !in_array($tankorId, $ret['tanarTankorei'][ $tanarIds[$j] ])) + $ret['tanarTankorei'][ $tanarIds[$j] ][] = $tankorId; + if (!isset($ret['tanarNev'][ $tanarIds[$j] ])) $ret['tanarNev'][ $tanarIds[$j] ] = getTanarNevById($tanarIds[$j]); + } + } + } + } + + $q = "SELECT * FROM `%s`.kerdoivValaszSzam WHERE valaszId IN (".implode(',', $ret['valaszIds']).") ORDER BY cimzettTipus,cimzettId,valaszId"; + $tmp = db_query($q, array('fv' => 'getKerdoivStat/szavazat', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($tanevDb))); + for ($i = 0; $i < count($tmp); $i++) + $ret['szavazat'][ $tmp[$i]['cimzettTipus'] ][ $tmp[$i]['cimzettId'] ][ $tmp[$i]['valaszId'] ] = $tmp[$i]['szavazat']; + + $tmp = getTankorok(array("tanev=".$tanev)); + for ($i = 0; $i < count($tmp); $i++) { + $ret['tankorAdat'][ $tmp[$i]['tankorId'] ] = $tmp[$i]; + $ret['tankorAdat'][ $tmp[$i]['tankorId'] ]['letszam'] = getTankorLetszam($tmp[$i]['tankorId'], array('refDt' => $TA['zarasDt'])); + } + return $ret; + + } + + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kerelem.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kerelem.php new file mode 100644 index 00000000..5a985ad5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kerelem.php @@ -0,0 +1,136 @@ +'naplo_base','result'=>'indexed')); + for($i=0; $i0) + $RET['avgTime'] = number_format(array_sum($SECS) / (24*3600*count($SECS)),2); + else + $RET['avgTime'] = '-'; + return $RET; + } + + function getKerelem($kerelemId) { + $q = "SELECT * FROM kerelem WHERE kerelemId=%u"; + $RESULT = db_query($q, array('fv' => 'getKerelmek', 'modul' => 'naplo_base', 'result' => 'indexed', 'values'=>array($kerelemId))); + return $RESULT; + } + function getKerelemValaszok($kerelemId) { + $q = "SELECT * FROM kerelemValasz WHERE kerelemId=%u ORDER BY valaszDt"; + $RESULT = db_query($q, array('fv' => 'getKerelmek', 'modul' => 'naplo_base', 'result' => 'indexed', 'values'=>array($kerelemId))); + return $RESULT; + } + + function getValasz($valaszId) { + $q = "SELECT * FROM kerelemValasz WHERE valaszId=%u"; + $RESULT = db_query($q, array('fv' => 'getKerelemValasz', 'modul' => 'naplo_base', 'result' => 'indexed', 'values'=>array($valaszId))); + return $RESULT; + } + + function getKerelmek($telephelyId='', $kerelemId='', $lezarasMaxDt='') { + if (isset($lezarasMaxDt) && $lezarasMaxDt!='') { + $W_lezaras = '(lezarasDt IS NULL OR lezarasDt>"'.$lezarasMaxDt.' 23:59:59")'; + } else { + $W_lezaras = 'lezarasDt IS NULL'; + } + if (isset($telephelyId) && $telephelyId!='') { + $W = ' AND (telephelyId=%u OR telephelyId IS NULL)'; + $v[] = $telephelyId; + } elseif (isset($kerelemId) && $kerelemId!='') { + $W = ' AND kerelemId=%u'; + $v[] = $kerelemId; + } else { + $W=''; + } + $q = "SELECT kerelem.*, IF (valaszDt IS NOT NULL,max(valaszDt),rogzitesDt) AS mx FROM kerelem LEFT JOIN kerelemValasz USING (kerelemId) WHERE $W_lezaras $W GROUP BY kerelemId ORDER BY mx DESC"; + + $RESULT['kerelmek'] = db_query($q, array('debug'=>false,'fv' => 'getKerelmek', 'modul' => 'naplo_base', 'result' => 'indexed', 'values'=>$v)); + $_kerelemIdk = array(); + for ($i=0; $i0) $_kerelemIdk[] = $RESULT['kerelmek'][$i]['kerelemId']; + } + if (is_array($_kerelemIdk) && count($_kerelemIdk)>0) { + $q = 'SELECT * FROM kerelemValasz WHERE kerelemId IN ('.implode(',',$_kerelemIdk).') ORDER BY valaszDt'; + $RESULT['valaszok'] = db_query($q, array('fv' => 'getKerelmek', 'modul' => 'naplo_base', 'keyfield'=>'kerelemId','result' => 'multiassoc')); + } + return $RESULT; + } + + function getSajatKerelmek($telephelyId='') { + $W = (isset($telephelyId) && $telephelyId!='') ? ' AND (telephelyId=%u OR telephelyId IS NULL)' : ''; + $q = "SELECT * FROM kerelem WHERE userAccount='"._USERACCOUNT."' AND (lezarasDt IS NULL OR (lezarasDt > (curdate() - interval 1 day))) $W ORDER BY rogzitesDt DESC"; + $RESULT['kerelmek'] = db_query($q, array('fv' => 'getSajatKerelmek', 'modul' => 'naplo_base', 'result' => 'indexed', 'values'=>array($telephelyId))); + for ($i=0; $i0) { + $q = 'SELECT * FROM kerelemValasz WHERE kerelemId IN ('.implode(',',$_kerelemIdk).') ORDER BY valaszDt'; + $RESULT['valaszok'] = db_query($q, array('fv' => 'getKerelmek', 'modul' => 'naplo_base', 'keyfield'=>'kerelemId','result' => 'multiassoc')); + } + + return $RESULT; + } + + function hibaAdminRogzites($Adat) { + $kerelemId = $Adat['kerelemId']; + $valasz = $Adat['valasz']; + $kategoria = $Adat['kategoria']; + $userAccount = $Adat['jovahagyasAccount']; + $telephelyId = ($Adat['kerelemTelephelyId']!='') ? $Adat['kerelemTelephelyId'] : 'NULL'; + $modosithat = false; // egyelőre nem használjuk :) + // jogosultság ellenőrzés + if (__VEZETOSEG===true || __NAPLOADMIN===true) { + $modosithat = true; + } else { + $q = "SELECT kerelemId FROM kerelem WHERE userAccount ='%s' AND kerelemId=%u"; + $v = array(_USERACCOUNT,$kerelemId); + $checkKerelemId = db_query($q, array('fv' => 'hangya', 'result'=>'value', 'modul' => 'naplo_base', 'values' => $v)); + if ($checkKerelemId!=$kerelemId) return false; + else $modosithat = true; + } + if ($valasz!='') { + $q = "INSERT INTO kerelemValasz (valasz,kerelemId,userAccount) VALUES ('%s',%u,'"._USERACCOUNT."')"; + $v = array($valasz,$kerelemId); + db_query($q, array('fv' => 'hangya', 'modul' => 'naplo_base', 'values' => $v)); + } + $q = "UPDATE kerelem SET kategoria='%s',telephelyId='%s' WHERE kerelemId=%u"; + $v = array($kategoria,$telephelyId,$kerelemId); + db_query($q, array('fv' => 'hibaAdminRogzites', 'modul' => 'naplo_base', 'values' => $v)); + + if (__VEZETOSEG===true || __NAPLOADMIN===true) { + if (isset($Adat['jovahagy'])) { + $q = "UPDATE kerelem SET jovahagyasAccount='%s',jovahagyasDt=NOW() WHERE kerelemId=%u"; + $v = array($userAccount, $kerelemId); + $extraTxt = '[státusz módosítás: Jóváhagyva]'; + } elseif ($Adat['nemHagyJova']) { + //$q = "SELECT jovahagyasDt FROM kerelem WHERE kerelemId=%u"; + //$jdt = db_query($q, array('fv' => 'hibaAdminRogzites', 'modul' => 'naplo_base', 'result' => 'value', 'values' => array($kerelemId))); + $q = "UPDATE kerelem SET jovahagyasDt=NULL WHERE kerelemId=%u"; + $v = array($kerelemId); + $extraTxt = '[státusz módosítás: Nincs jóváhagyva]'; + } elseif (isset($Adat['lezar'])) { + $q = "UPDATE kerelem SET lezarasDt=NOW() WHERE kerelemId=%u"; + $v = array($kerelemId); + $extraTxt = '[státusz módosítás: Lezárva]'; + } else { + //$q = "UPDATE kerelem SET valasz='%s' WHERE kerelemId=%u"; + //$v = array($valasz, $kerelemId); + } + $R = db_query($q, array('fv' => 'hibaAdminRogzites', 'modul' => 'naplo_base', 'values' => $v)); + if ($extraTxt!='') { + $q = "INSERT INTO kerelemValasz (valasz,kerelemId,userAccount) VALUES ('%s',%u,'"._USERACCOUNT."')"; + $v = array($extraTxt,$kerelemId); + db_query($q, array('fv' => 'hangya', 'modul' => 'naplo_base', 'values' => $v)); + } + } + return $R; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kereso.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kereso.php new file mode 100644 index 00000000..b2bf2cf6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/kereso.php @@ -0,0 +1,56 @@ +=NOW() OR osztalyDiak.kiDt IS NULL)) + LEFT JOIN " . __TANEVDBNEV . ".osztalyNaplo USING (osztalyId) + HAVING (diakNev LIKE '%s' OR oId LIKE '%s') ORDER BY diakNev LIMIT 100"; + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array('%'.$pattern.'%','%'.$pattern.'%'))); + return $r; + } + function getTanarokByPattern($pattern) { + if ($pattern=='') return false; + $q = "SELECT tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS tanarNev FROM `tanar` WHERE (kiDt IS NULL OR kiDt >=NOW()) HAVING tanarNev LIKE '%s' ORDER BY tanarNev LIMIT 100"; + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array('%'.$pattern.'%'))); + return $r; + } + function getTankorokByPattern($pattern) { + if ($pattern=='') return false; + $q = "SELECT tankorId, tankorNev AS tankorNev FROM `tankor`HAVING tankorNev LIKE '%s' ORDER BY tankorNev LIMIT 100"; + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array('%'.$pattern.'%'))); + return $r; + } + function getSzulokByPattern($pattern, $SET=array('diakokkal'=>false)) { + if ($pattern=='') return false; + if ($SET['diakokkal']!==true) { + $p= "TRIM(CONCAT_WS(' ',nevElotag, csaladinev, utonev)) "; + $q = "SELECT szuloId, $p AS szuloNev FROM `szulo` HAVING szuloNev LIKE '%s' ORDER BY szuloNev LIMIT 100"; + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array('%'.$pattern.'%'))); + + } else { + + if (defined('__UZENO_SZULO_CSAK_ACCOUNTTAL') && __UZENO_SZULO_CSAK_ACCOUNTTAL === true) + $W = " AND userAccount!='' "; + else + $W = ''; + + $sr = getDiakokByPattern($pattern); + for ($i=0; $i0) { + $q1 = "SELECT szuloId, $p AS szuloNev FROM `szulo`$subquery WHERE diakId IN (".implode(',',$DIAKIDS).") $W LIMIT 100"; + $q = "$q1 UNION ($q2)"; + } else $q = "($q2)"; + $r = db_query("$q ORDER BY szuloNev", array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array('%'.$pattern.'%'))); + + } + return $r; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/koszi.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/koszi.php new file mode 100644 index 00000000..3ce3ba83 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/koszi.php @@ -0,0 +1,141 @@ +'naplo_intezmeny','result'=>'indexed')); + + return $r; + + } + + + function getKosziPont($kosziEsemenyId) { + + if (!is_numeric($kosziEsemenyId)) return false; + + $q = "SELECT * FROM kosziPont WHERE kosziEsemenyId = %u"; + $v = array($kosziEsemenyId); + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed', 'values'=>$v)); + + return $r; + + } + + + /* TANEV */ + + function getKoszi($kosziEsemenyId) { + + if (!is_numeric($kosziEsemenyId)) return false; + + $q = "SELECT * FROM koszi WHERE kosziEsemenyId = %u ORDER BY dt,tanev,felev"; + $v = array($kosziEsemenyId); + $r = db_query($q, array('modul'=>'naplo','result'=>'indexed', 'values'=>$v)); + + return $r; + + } + + function getKosziLista() { + + $q = "SELECT * FROM koszi LEFT JOIN ".__INTEZMENYDBNEV.".kosziEsemeny USING (kosziEsemenyId) + WHERE tolDt IS NULL OR (tolDt<=NOW() AND (igDt is NULL OR igDt>=NOW())) + ORDER BY dt,tanev,felev"; + $r = db_query($q, array('modul'=>'naplo','result'=>'indexed')); + + return $r; + + } + + + function getKosziEsemenyIdByKosziId($kosziId) { + + $q = "SELECT kosziEsemenyId FROM koszi WHERE kosziId = %u"; + $v = array($kosziId); + $r = db_query($q, array('modul'=>'naplo','result'=>'value', 'values'=>$v)); + + return $r; + } + + + function getKosziDiakIgazolandoLista($tipus='',$SET = array('tanarId'=>null, 'diakId'=>null)) { + + if (__KOSZIADMIN ===true) { + $q = "SELECT *, IF (jovahagyasDt!='0000-00-00',1,0) AS jovahagyva FROM kosziDiak + LEFT JOIN kosziIgazoloTanar USING (kosziId) + LEFT JOIN kosziIgazoloOf USING (kosziId) + LEFT JOIN koszi USING (kosziId) + LEFT JOIN ".__INTEZMENYDBNEV.".kosziEsemeny USING (kosziEsemenyId) + "; +// $v = array($SET['diakId']); + $ret = db_query($q, array('modul'=>'naplo','result'=>'indexed')); + } elseif (is_numeric($SET['diakId'])) { // ide jön még a dök csoport! + $q = "SELECT *, IF (jovahagyasDt!='0000-00-00',1,0) AS jovahagyva FROM kosziDiak + LEFT JOIN kosziIgazoloDiak USING (kosziId) + LEFT JOIN koszi USING (kosziId) + LEFT JOIN ".__INTEZMENYDBNEV.".kosziEsemeny USING (kosziEsemenyId) + WHERE jovahagyasDt='0000-00-00 00:00:00' AND kosziIgazoloDiak.diakId=%u + ORDER BY rogzitesDt"; + $v = array($SET['diakId']); + $ret = db_query($q, array('modul'=>'naplo','result'=>'indexed', 'values'=>$v)); + } elseif (is_numeric($SET['tanarId'])) { + $q = "SELECT *, IF (jovahagyasDt!='0000-00-00',1,0) AS jovahagyva FROM kosziDiak + LEFT JOIN kosziIgazoloTanar USING (kosziId) + LEFT JOIN kosziIgazoloOf USING (kosziId) + LEFT JOIN koszi USING (kosziId) + LEFT JOIN ".__INTEZMENYDBNEV.".kosziEsemeny USING (kosziEsemenyId) + WHERE jovahagyasDt='0000-00-00 00:00:00' AND + ( + ( + (kosziIgazoloTanar.tanarId=%u AND kosziIgazoloOf.tanarId IS NULL) Or + (kosziIgazoloTanar.tanarId IS NULL AND kosziIgazoloOf.tanarId=%u) + ) OR ( + koszi.igazolo LIKE '%%osztályfőnök%%' AND + diakId IN ( + SELECT diakId FROM ".__INTEZMENYDBNEV.".osztalyTanar + LEFT JOIN ".__INTEZMENYDBNEV.".osztalyDiak USING (osztalyId) + WHERE tanarId=%u AND osztalyTanar.beDt<=NOW() AND (osztalyTanar.kiDt IS NULL OR osztalyTanar.kiDt>=NOW()) + ) + ) OR ( + koszi.igazolo LIKE '%%tanár%%' AND + diakId IN ( + SELECT diakId FROM ".__INTEZMENYDBNEV.".tankorTanar + LEFT JOIN ".__INTEZMENYDBNEV.".tankorDiak USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) + WHERE tanarId=%u AND ".__INTEZMENYDBNEV.".tankor.targyId = koszi.targyId + ) + ) + ) + ORDER BY rogzitesDt"; + + $v = array($SET['tanarId'],$SET['tanarId'],$SET['tanarId'],$SET['tanarId']); + $ret = db_query($q, array('modul'=>'naplo','result'=>'indexed', 'values'=>$v)); + + } else { + $ret = false; + } + return $ret; + } + + + /* DIAK */ + + function getKosziDiakLista($diakId) { + + if ($diakId=='') return false; + + $q = "SELECT *, IF (jovahagyasDt!='0000-00-00',1,0) AS jovahagyva FROM kosziDiak LEFT JOIN koszi USING (kosziId) + LEFT JOIN ".__INTEZMENYDBNEV.".kosziEsemeny USING (kosziEsemenyId) + WHERE diakId = %u ORDER BY rogzitesDt,jovahagyasDt"; + $v = array($diakId); + $r = db_query($q, array('modul'=>'naplo','result'=>'indexed', 'values'=>$v)); + + return $r; + } + + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/munkakozosseg.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/munkakozosseg.php new file mode 100644 index 00000000..9a46f074 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/munkakozosseg.php @@ -0,0 +1,84 @@ + 'getMunkakozossegByTargyId', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values'=>array($targyId))); + return getMunkakozossegById($mkId); + } + + function getMunkakozossegById($id) { + return getMunkakozossegek(array("mkId=$id"),array('result' => 'record')); + } + + function getMunkakozossegek($FILTER=array(),$SET=array('result' => 'indexed')) { + + + if ($SET['result'] == '') $SET['result'] = 'indexed'; + $RESULT = array(); + + /* Általános filterező */ + $QW = ''; + if (is_array($FILTER) && count($FILTER)>0) { + $QW = " WHERE ".implode(' AND ',$FILTER); + } + if ($SET['idonly']===true || $SET['csakId']===true) $fields = "mkId"; + else $fields="mkId,mkId AS munkakozossegId,leiras,leiras as mkNev,leiras as munkakozossegNev, mkVezId,TRIM((CONCAT_WS(' ',viseltNevElotag,viseltCsaladiNev,viseltUtonev))) AS mkVezNev"; + $q = "SELECT $fields FROM munkakozosseg LEFT JOIN tanar ON mkVezId=tanarId".$QW.' ORDER BY leiras'; + $RESULT = db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'getMunkakozossegek', 'result' => $SET['result'])); + + return $RESULT; + + } + + function getMunkakozossegByTanarId($tanarId, $SET = array('result' => 'idonly')) { + + if ($SET['csakId']===true) $SET['result'] = 'idonly'; // Az egységesíítés nevében :o) + if ($SET['result'] == 'idonly') { + $q = "SELECT mkId AS munkakozossegId FROM mkTanar WHERE tanarId=%u"; + return db_query($q, array('fv' => 'getMunkakozossegByTanarId','modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tanarId))); + } else { + $q = "SELECT mkId,mkId AS munkakozossegId,leiras, leiras AS mkNev, leiras AS munkakozossegNev,mkVezId + FROM munkakozosseg LEFT JOIN mkTanar USING (mkId) WHERE tanarId=%u ORDER BY leiras"; + return db_query($q, array('fv' => 'getMunkakozossegByTanarId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tanarId))); + } + + } + + function getVezetettMunkakozossegByTanarId($tanarId, $SET = array('result' => 'idonly'), $olr='') { + + $lr = ($olr!='') ? $olr : db_connect('naplo_intezmeny'); + if ($SET['csakId']===true) $SET['result'] = 'idonly'; // Az egységesíítés nevében :o) + if ($SET['result'] == 'idonly') { + //$q = "SELECT mkId AS munkakozossegId FROM munkakozosseg WHERE mkVezId=%u"; + $q = "SELECT DISTINCT mkId AS munkakozossegId FROM munkakozosseg LEFT JOIN mkVezeto USING (mkId) WHERE mkVezId=%u OR tanarId=%u"; + $R = db_query($q, array('fv' => 'getVezetettMunkakozossegByTanarId','modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tanarId, $tanarId)), $lr); + } else { + //$q = "SELECT mkId,mkId AS munkakozossegId,leiras, leiras AS mkNev, leiras AS munkakozossegNev,mkVezId + // FROM munkakozosseg WHERE mkVezId=%u ORDER BY leiras"; + $q = "SELECT DISTINCT mkId,mkId AS munkakozossegId,leiras, leiras AS mkNev, leiras AS munkakozossegNev,mkVezId + FROM munkakozosseg LEFT JOIN mkVezeto USING (mkId) WHERE mkVezId=%u OR tanarId=%u ORDER BY leiras"; + $R = db_query($q, array('fv' => 'getVezetettMunkakozossegByTanarId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tanarId,$tanarId)),$lr); + } + if ($olr=='') db_close($lr); + return $R; + } + + function getMunkakozossegNevById($munkakozossegId) { + + $q = "SELECT leiras AS munkakozossegNev FROM `munkakozosseg` WHERE mkId=%u"; + return db_query($q, array('fv' => 'getmunkakozossegNevById', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($munkakozossegId))); + + } + + function getMunkakozossegTanaraMatrix() { + $q = "SELECT * FROM mkTanar"; + $r = db_query($q,array('fv' => '', 'modul' => 'naplo_intezmeny', 'result' => 'indexed')); + for ($i=0; $i \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/mysql.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/mysql.php new file mode 100644 index 00000000..30ccbab0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/mysql.php @@ -0,0 +1,184 @@ + 'root', 'host'=> $host, 'force' => true, 'username' => $rootUser, 'password' => $rootPassword, 'db' => 'mayor_naplo', 'fv' => 'createDatabase')); + if (!$lr) return false; + + // Kliens karakterkódolása + db_query("SET CHARACTER SET utf8", array('fv'=>'createDatabase#1'), $lr); + + // Az adatbázis létrehozása + $q = "CREATE DATABASE `%s` CHARACTER SET utf8 COLLATE utf8_hungarian_ci"; + $r = db_query($q, array('fv'=>'createDatabase#2', 'values' => array($dbName)), $lr); + if ($r !== true) { // pl. ha már létezik... + db_close($lr); + return false; + } + + /* Minden hoston létrehozzuk a usereket! Write/Read - et egyaránt! Még akkor is, ha csak a masterről olvasunk, slave-re írunk */ + $password = $MYSQL_DATA['naplo_base']['pwWrite']; + $user = $MYSQL_DATA['naplo_base']['userWrite']; + $userHost = ($host=='localhost' || $host=='127.0.0.1') ? 'localhost' : _WEBSERVER_ADDR; + $q = "GRANT ALL ON `%s`.* TO '%s'@'%s' IDENTIFIED BY '%s'"; + $r = db_query($q, array('fv' => 'createDatabase#3', 'values' => array($dbName, $user, $userHost, $password)), $lr); + if ($r !== true) $ok = false; + + $password = $MYSQL_DATA['naplo_base']['pwRead']; + $user = $MYSQL_DATA['naplo_base']['userRead']; + $userHost = ($host=='localhost' || $host=='127.0.0.1') ? 'localhost' : _WEBSERVER_ADDR; + $q = "GRANT SELECT,EXECUTE ON `%s`.* TO '%s'@'%s' IDENTIFIED BY '%s'"; + $r = db_query($q, array('fv' => 'createDatabase#4', 'values' => array($dbName, $user, $userHost, $password)), $lr); + if ($r !== true) $ok = false; + + if (db_query("USE `%s`", array('fv' => 'createDatabase#use', 'values' => array($dbName)), $lr) && $ok) { + + $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); + $r = db_query($q, array('fv'=>'createDatabase#6-'.$i), $lr); + if ($r !== true) { $ok = false; break; } + } elseif ($q != '') { + $_SESSION['alert'][] = ':query_error:'.$q; + } + } + + if ($ok !== false) { + list($delimiter, $end) = explode('DELIMITER ; //',$delimiter); + $procQueries = explode('//', $delimiter); + for ($i = 0; $i < count($procQueries); $i++) { + $q = trim($procQueries[$i]); // ebben vannak most ;-ők és sortörések... + if ($q[strlen($q)-1] == ';') $q = substr($q, 0, -1); // A végén nem lehet ; !! + if ($q != '') { + if (is_array($convert)) + foreach ( $convert as $mit=>$mire ) $q = str_replace($mit,$mire,$q); + $r = db_query($q, array('fv'=>'createDatabase#7-'.$i), $lr); + if ($r !== true) { $ok = false; break; } + } + } + } // if ok + } else { + $ok = false; + } + + if ($ok === false) { + $_SESSION['alert'][] = 'message:sql_db_dropped:'.$dbName; + db_query("DROP DATABASE `%s`", array('fv' => 'createDatabase#7', 'values' => array($dbName)), $lr); + } + } // HOSTS ciklusa + + db_close($lr); + return $ok; + + } + + function revokeWriteAccessFromDb($dbName, $rootUser = 'root', $rootPassword = '') { + + global $MYSQL_DATA; + + // Kötelező paraméterek ellenőrzése + if ($dbName == '' or $rootUser == '' or $rootPassword == '') { + $_SESSION['alert'][] = 'message:empty_field:revokeWriteAccessFromDb'; + return false; + } + + /* Minden MySQL hostról elvesszük a jogot */ + /* Ki kell találni, hány SQL szerverünk van! */ + $HOSTS = _setHosts(); + + for ($h=0; $h 'root', 'force' => true, 'host'=>$host, 'username' => $rootUser, 'password' => $rootPassword, 'db' => 'mayor_naplo', 'fv' => 'revokeWriteAccessFromDb')); + if (!$lr) return false; + + // jogok elvétele a write usertől + $user = $MYSQL_DATA['naplo_base']['userWrite']; + $userHost = ($host=='localhost' || $host=='127.0.0.1') ? 'localhost' : _WEBSERVER_ADDR; + $q = "REVOKE ALTER,CREATE,DROP,INSERT,UPDATE,DELETE ON `%s`.* FROM '%s'@'%s'"; + $r = db_query($q, array('fv' => 'revokeWriteAccessFromDb', 'values' => array($dbName, $user, $userHost)), $lr); + db_close($lr); + } + return $r; + + } + + function grantWriteAccessToDb($dbName, $rootUser = 'root', $rootPassword = '') { + + global $MYSQL_DATA; + + // Kötelező paraméterek ellenőrzése + if ($dbName == '' or $rootUser == '' or $rootPassword == '') { + $_SESSION['alert'][] = 'message:empty_field:grantWriteAccessToDb'; + return false; + } + + /* Ki kell találni, hány SQL szerverünk van! */ + $HOSTS = _setHosts(); + + for ($h=0; $h 'root', 'force' => true, 'host'=>$host, 'username' => $rootUser, 'password' => $rootPassword, 'db' => 'mayor_naplo', 'fv' => 'grantWriteAccessToDb')); + if (!$lr) return false; + + // Írási jog... + $user = $MYSQL_DATA['naplo_base']['userWrite']; + $userHost = ($host=='localhost' || $host=='127.0.0.1') ? 'localhost' : _WEBSERVER_ADDR; + $q = "GRANT ALL ON `%s`.* TO '%s'@'%s'"; + $r = db_query($q, array('fv' => 'grantWriteAccessToDb', 'values' => array($dbName, $user, $userHost)), $lr); + + db_close($lr); + } + return $r; + + } + + function _setHosts() { + global $MYSQL_DATA; + $HOSTS = array(); + foreach ( array('hostWrite','hostRead','host') as $_host ) { + if ($MYSQL_DATA['naplo_base'][$_host]!='' && !in_array($MYSQL_DATA['naplo_base'][$_host],$HOSTS)) { + $HOSTS[] = $MYSQL_DATA['naplo_base'][$_host]; + } + } + if (count($HOSTS)==0) + if ($MYSQL_DATA['host']=='') + $HOSTS[] = 'localhost'; + else + $HOSTS[] = $MYSQL_DATA['host']; + return $HOSTS; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/nap.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/nap.php new file mode 100644 index 00000000..e66457f9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/nap.php @@ -0,0 +1,332 @@ + 'Szent István király ünnepe', + '10-23' => '56-os forradalom ünnepe', + '11-01' => 'Mindenszentek', + '12-25' => 'Karácsony első napja', + '12-26' => 'Karácsony második napja', + '01-01' => 'Újév', + '03-15' => '48-as forradalom és szabadságharc ünnepe', + '05-01' => 'Munka Ünnepe' + ); + + function getNapTipusok() { + + return getEnumField('naplo', 'nap', 'tipus'); + + } + + function getNapokSzama($SET = array('osztalyId' => null, 'munkatervId' => 1)) { + + if (isset($SET['osztalyId'])) { + $vegzosOsztalyJellegIds = getVegzosOsztalyJellegIds(); + $oAdat = getOsztalyAdat($SET['osztalyId']); + if ( + in_array($oAdat['osztalyJellegId'], $vegzosOsztalyJellegIds) // érettségiző osztály + && $oAdat['vegzoTanev'] == __TANEV // most végez + ) { + $q = "SELECT tipus, COUNT(*) AS db FROM nap + LEFT JOIN munkatervOsztaly USING (munkatervId) + LEFT JOIN munkaterv USING (munkatervId) + WHERE osztalyId=%u AND dt <= vegzosZarasDt + GROUP BY tipus"; + } else { + $q = "SELECT tipus, COUNT(*) AS db FROM nap LEFT JOIN munkatervOsztaly USING (munkatervId) WHERE osztalyId=%u GROUP BY tipus"; + } + $v = array($SET['osztalyId']); + } else { + if (!isset($SET['munkatervId'])) $SET['munkatervId'] = 1; + $q = "SELECT tipus, COUNT(*) AS db FROM nap WHERE munkatervId=%u GROUP BY tipus"; + $v = array($SET['munkatervId']); + } + return db_query($q, array('fv' => 'getNapokSzama', 'modul' => 'naplo', 'result' => 'keyvaluepair', 'values' => $v)); + } + + function _genNapok($tolDt,$igDt) { + $q = "SELECT TO_DAYS('%s') - TO_DAYS('%s') AS diff"; + $nod = db_query($q, array('fv' => '_genNapok', 'modul' => 'naplo_base', 'result' => 'value', 'values' => array($igDt, $tolDt))); + $_stamp = strtotime($tolDt); + for ($i = 0; $i <= $nod; $i++) { + $__stamp = mktime(0, 0, 0, date('m', $_stamp), date('d', $_stamp)+$i , date('y', $_stamp)); + $NAPOK[$i] = date('Y-m-d', $__stamp); + } + return $NAPOK; + } + + // Az ora.php függvényeinek része ide tartozik! + /* + A függvény minden olyan nap esetén emeli a tanítási napok számát 1-gyel, melyen a megadott munkatervek legalább + egyikén tanítási nap van. Értelmes ez így? (amúgy mit jelentene a tanár haladási naplójában a tanítási nap szám?) + */ + function getTanitasiNapAdat($DT, $SET = array('munkatervIds' => array())) { // refer to nyomtatas/haladasinaplo.php + if (is_array($DT) && count($DT)>0) { + if (!is_array($SET['munkatervIds']) || count($SET['munkatervIds']) == 0) $SET['munkatervIds'] = array(1); + $lr = db_connect('naplo'); + $q = "SET @napszam=(SELECT COUNT(DISTINCT dt) FROM nap + WHERE tipus IN ('tanítási nap','speciális tanítási nap') AND dt<'".$DT[0]."' + AND munkatervId IN (".implode(',', array_fill(0, count($SET['munkatervIds']), '%u'))."))"; + db_query($q, array('fv' => 'getTanitasiNapAdat', 'modul' => 'naplo', 'values' => $SET['munkatervIds']), $lr); + $q = "SELECT dt,@napszam:=@napszam+1 AS napszam FROM nap WHERE tipus IN ('tanítási nap','speciális tanítási nap') + AND dt IN ('".implode("','",$DT)."') + AND munkatervId IN (".implode(',', array_fill(0, count($SET['munkatervIds']), '%u')).") GROUP BY dt"; + $v = array($dt); + $v = $SET['munkatervIds']; + $ret=db_query($q, array('fv' => 'share/nap/getTanitasiNapAdat', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield'=>'dt', 'values' => $v),$lr); + db_close($lr); + return $ret; + } else { + return false; + } + } + + function getTanitasiNapSzama($dt, $munkatervId) { + $q = "SELECT COUNT(*) FROM nap WHERE tipus IN ('tanítási nap','speciális tanítási nap') AND dt<='%s' AND munkatervId=%u"; + return db_query($q, array('fv' => 'getTanitasiNapSzama', 'modul' => 'naplo', 'result' => 'value', 'values' => array($dt, $munkatervId))); + } + + /* + Az órarendi hetek hozzárendelése mindig az összes munkatervet érintő változtatás! + */ + function orarendiHetekHozzarendelese($tolDt = '', $igDt = '', $Hetek = array(1), $olr = '') { + + global $_TANEV; + + if ($tolDt == '') $tolDt = $_TANEV['kezdesDt']; + if ($igDt == '') $igDt = $_TANEV['zarasDt']; + + if ($olr == '') $lr = db_connect('naplo', array('fv' => 'orarendiHetekHozzarendelese')); + else $lr = $olr; + + // Az összes munkatervre elvégzi a hozzárendelést... + $q = "SELECT dt,tipus,munkatervId FROM nap WHERE dt>='%s' AND dt<='%s' AND tipus='tanítási nap' ORDER BY dt"; + $v = array($tolDt, $igDt, $munkatervId); + $r = db_query($q, array('fv' => 'orarendiHetekHozzarendelese', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + if (!$r) { if ($olr == '') db_close($lr); return false; } + + $i = array(); $het = $Hetek[0]; $dow = array(); + foreach ($r as $key => $val) { + $dt = $val['dt']; + $tipus = $val['tipus']; + $munkatervId = $val['munkatervId']; + $elozo_dow[$munkatervId] = $dow[$munkatervId]; + // DOW lehetne munkatervenként is! + $dow[$munkatervId] = date('w',strtotime($dt)); if ($dow[$munkatervId] == 0) $dow[$munkatervId] = 7; // Vasárnap a hét utolsó napja - nálunk + // csak a $dow-okat nézzük, ha tehát egy keddi nap után a következő heti csütörtök jön, akkor nem vált hetet! + if ($elozo_dow[$munkatervId] >= $dow[$munkatervId]) { + $i[$munkatervId] = ($i[$munkatervId]+1) % count($Hetek); + $het = $Hetek[$i[$munkatervId]]; + } + if ($het=='') $het=1; //szkúzi... + if ($tipus = 'tanítási nap' && is_numeric($het)) { + $q = "UPDATE nap SET orarendiHet=%u WHERE dt='%s' AND tipus='tanítási nap' AND munkatervId=%u"; + $v = array($het, $dt, $munkatervId); + } else { + $q = "UPDATE nap SET orarendiHet=0 WHERE dt='%s' AND tipus='tanítási nap' AND munkatervId=%u"; + $v = array($dt, $munkatervId); + } + $r2 = db_query($q, array('fv' => 'orarendiHetekHozzarendelese', 'modul' => 'naplo', 'values' => $v), $lr); + if (!$r2) { if ($olr == '') db_close($lr); return false; } + } + + if ($olr == '') db_close($lr); + + } + + /** + * Törli, majd felveszi a megadott dátumok közötti napokat - minden munkatervhez! + **/ + function napokHozzaadasa($tanev, $tolDt, $igDt, $tanevAdat, $lr = null) { + + global $UNNEPNAPOK; + + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + $r = array(); + $q = "DELETE FROM `$tanevDb`.`nap` WHERE '%s'<=dt AND dt<='%s'"; + $v = array($tolDt, $igDt); + $r[] = db_query($q, array('fv' => 'napokHozzáadása/delete', 'modul' => 'naplo', 'values' => $v), $lr); + for ($stamp = strtotime($tolDt.' 08:00:00'); $stamp <= strtotime($igDt.' 08:00:00');$stamp = $stamp + 24*60*60 ) { + $dt = date('Y-m-d', $stamp); + $ho_nap = date('m-d', $stamp); + $ho = date('m', $stamp); + $dow = date('w', $stamp); + if ($UNNEPNAPOK[$ho_nap] != '') { // Fix dátumú, állami ünnepnapok + $tipus = 'tanítási szünet'; + $megjegyzes = $UNNEPNAPOK[$ho_nap]; + $orarendiHet = 0; + } elseif ($dow == '0' or $dow == '6') { // Hétvégék + $tipus = 'tanítási szünet'; + $megjegyzes = ''; + $orarendiHet = 0; + } elseif ($ho == 7) { // Július hónap - nyári szünet + $tipus = 'tanítási szünet'; + $megjegyzes = 'Nyári szünet'; + $orarendiHet = 0; + } elseif (strtotime($tanevAdat['zarasDt']) 'napokHozzáadása/insert', 'modul' => 'naplo', 'values' => $v), $lr); + + } + return !in_array(false, $r); + + } + + function getMunkatervek($SET = array('result' => 'indexed')) { + if ($SET['result']==='idonly') { + $q = "SELECT munkatervId FROM munkaterv"; + } else { + $q = "SELECT * FROM munkaterv"; + } + $R = db_query($q, array('fv' => 'getMunkatervek', 'modul' => 'naplo', 'result' => $SET['result'], 'keyfield' => 'munkatervId')); + return $R; + } + + function getMunkatervByOsztalyId($osztalyId, $SET = array('result' => 'value')) { + + if (!is_array($osztalyId)) $osztalyId = array($osztalyId); + if (count($osztalyId) == 0) return false; + $q = "SELECT DISTINCT munkatervId FROM munkaterv LEFT JOIN munkatervOsztaly USING (munkatervId) WHERE osztalyId IN (".implode(',',array_fill(0, count($osztalyId), '%u')).")"; + $v = $osztalyId; + return db_query($q, array('fv' => 'getMunkatervByOsztalyId', 'modul' => 'naplo', 'values'=>$v, 'result' => $SET['result'])); + + } + function getMunkatervByDiakId($diakId, $SET = array('tolDt'=>null, 'igDt'=>null)) { + + if (!is_array($diakId)) $diakId = array($diakId); + if (count($diakId) == 0) return false; + $q = "SELECT DISTINCT munkatervId FROM munkaterv LEFT JOIN munkatervOsztaly USING (munkatervId) LEFT JOIN `".__INTEZMENYDBNEV."`.osztalyDiak USING (osztalyId) WHERE diakId IN (".implode(',',array_fill(0, count($diakId), '%u')).")"; + $v = $diakId; + return db_query($q, array('fv' => 'getMunkatervByOsztalyId', 'modul' => 'naplo', 'values'=>$v, 'result' => 'value')); + + } + + /** + * A függvény az orarendiOra tábla alapján keresi meg a tanár tanköreit, nem a tankorTanar alapján!!!! + * + **/ + function getMunkatervByTanarId($tanarId, $SET = array('result' => 'indexed', 'tanev'=>__TANEV, 'tolDt'=>null, 'igDt'=>null)) { + + $tanev = isset($SET['tanev'])?$SET['tanev']:__TANEV; + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt($tanev, $tolDt, $igDt); + if (!is_array($tanarId)) $tanarId = array($tanarId); + // lekérdezzük a tankorTanar tábla alapján a tanárhoz tartozó tanköröket, majd ezek osztályaihoz tartozó munkaterveket + $q = "SELECT DISTINCT osztalyId FROM tankorTanar LEFT JOIN tankorOsztaly USING (tankorId) + WHERE tanarId IN (".implode(',', array_fill(0, count($tanarId), '%u')).") AND beDt<='%s' AND (kiDt IS NULL OR '%s'<=kiDt)"; + $v = mayor_array_join($tanarId, array($igDt, $tolDt)); + $osztalyId = db_query($q, array('fv'=>'getMunkatervByTanarId', 'modul'=>'naplo_intezmeny', 'result'=>'idonly', 'values'=>$v)); + + return getMunkatervByOsztalyId($osztalyId, $SET); + } + + /* + A függvény munkatervId, osztalyId vagy tankorId (az egyik megadása kötelező!) alapján adja meg az összes, vagy a végzős tanítási hetek számát. + Ha nincs megadva, hogy az osztály vagy tankör végzős-e, akkor lekérdezzük, hogy érettségiző osztály-e az osztályjelleg alapján. + */ + function getTanitasiHetekSzama($SET = array('munkatervId'=>null, 'osztalyId'=>null, 'vegzos'=>false)) { + + if ($SET['munkatervId'] != '') { + if ($SET['vegzos']) { + $q = "SELECT CEIL(COUNT(*)/%u) AS tanitasiHet FROM nap + WHERE tipus IN ('tanítási nap','speciális tanítási nap') AND munkatervId=%u + AND dt<=(SELECT vegzosZarasDt FROM munkaterv WHERE munkatervId=nap.munkatervId)"; + } else { + $q = "SELECT CEIL(COUNT(*)/%u) AS tanitasiHet FROM nap + WHERE tipus IN ('tanítási nap','speciális tanítási nap') AND munkatervId=%u"; + } + $v = array(__TANITASINAP_HETENTE, $SET['munkatervId']); + } elseif ($SET['osztalyId'] != '') { + if (!isset($SET['vegzos'])) { + $VO = getVegzosOsztalyok(array('tanev'=>__TANEV,'result'=>'idonly','vizsgazo'=>true)); + $SET['vegzos'] = (is_array($VO)&&in_array($SET['osztalyId'],$VO)); + } + if ($SET['vegzos']) { + $q = "SELECT CEIL(COUNT(*)/%u) AS tanitasiHet FROM nap LEFT JOIN munkatervOsztaly USING (munkatervId) + WHERE tipus IN ('tanítási nap','speciális tanítási nap') + AND osztalyId=%u + AND dt<=(SELECT vegzosZarasDt FROM munkaterv WHERE munkatervId=nap.munkatervId)"; + } else { + $q = "SELECT CEIL(COUNT(*)/%u) AS tanitasiHet FROM nap LEFT JOIN munkatervOsztaly USING (munkatervId) + WHERE tipus IN ('tanítási nap','speciális tanítási nap') + AND osztalyId=%u"; + } + $v = array(__TANITASINAP_HETENTE, $SET['osztalyId']); + } elseif ($SET['tankorId'] != '') { + if (!isset($SET['vegzos'])) { + $SET['vegzos'] = tankorVegzosE($tankorId, __TANEV, array('tagokAlapjan' => true, 'tolDt' => null, 'igDt' => null)); + } + if ($SET['vegzos']) { + $q = "SELECT CEIL(COUNT(DISTINCT dt)/%u) AS tanitasiHet FROM nap LEFT JOIN munkatervOsztaly USING (munkatervId) + WHERE tipus IN ('tanítási nap','speciális tanítási nap') + AND osztalyId IN (SELECT osztalyId FROM ".__INTEZMENYDBNEV.".tankorOsztaly WHERE tankorId=%u) + AND dt<=(SELECT vegzosZarasDt FROM munkaterv WHERE munkatervId=nap.munkatervId)"; + } else { + $q = "SELECT CEIL(COUNT(DISTINCT dt)/%u) AS tanitasiHet FROM nap LEFT JOIN munkatervOsztaly USING (munkatervId) + WHERE tipus IN ('tanítási nap','speciális tanítási nap') + AND osztalyId IN (SELECT osztalyId FROM ".__INTEZMENYDBNEV.".tankorOsztaly WHERE tankorId=%u)"; + } + $v = array(__TANITASINAP_HETENTE, $SET['tankorId']); + } else { + $_SESSION['alert'][] = 'message:empty_field:getTanitasiHetekSzama'; + return false; + } + + if (__TANITASI_HETEK_OVERRIDE === true) { + if ($SET['vegzos']) { + if (defined('___VEGZOS_TANITASI_HETEK_SZAMA')) return ___VEGZOS_TANITASI_HETEK_SZAMA; + } else { + if (defined('___TANITASI_HETEK_SZAMA')) return ___TANITASI_HETEK_SZAMA; + } + } + return db_query($q, array('debug'=>false,'fv'=>'getTanitasiHetekSzama','modul'=>'naplo','result'=>'value','values'=>$v)); + } + + function getOsztalyUtolsoTanitasiNap($osztalyId, $tanev=__TANEV) { + + global $_TANEV; + + if ($tanev == __TANEV) $TA = $_TANEV; + else $TA = getTanevAdat($tanev); + $tanevDb = tanevDbNev(__INTEZMENY,$tanev); + + // idén érettségiző vagy szakmai vizsgát tevő osztály-e + $q = "SELECT COUNT(*) FROM osztaly LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) + WHERE vegzesKovetelmenye IN ('érettségi vizsga','szakmai vizsga') AND vegzoTanev=%u AND osztalyId=%u"; + $v = array($tanev, $osztalyId); + $vizsgazoE = (db_query($q, array('fv'=>'getOsztalyUtolsoTanitasiNap','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)) == 1); + + if ($vizsgazoE) { + $q = "SELECT vegzosZarasDt FROM `".$tanevDb."`.munkaterv LEFT JOIN `".$tanevDb."`.munkatervOsztaly USING (munkatervId) WHERE osztalyId=%u"; + return db_query($q, array('debug'=>false,'fv'=>'getOsztalyUtolsoTanitasiNap/dt','modul'=>'naplo','result'=>'value','values'=>array($osztalyId))); + } else { + return $TA['zarasDt']; + } + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/ora.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/ora.php new file mode 100644 index 00000000..cdadeb00 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/ora.php @@ -0,0 +1,625 @@ + 'getOraAdatById', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v), $olr); + + } else { + // nincs id + return false; + } + } + + function getOraAdatByTankor($tankorId, $olr = '') { + + if ($tankorId != '') { + + $q = "SELECT DISTINCT oraId, + dt, + ora, + ki, + kit, + ora.tankorId AS tankorId, + teremId, + ora.leiras AS leiras, + ora.tipus AS tipus, + eredet, + TRIM(CONCAT_WS(' ', t1.viseltNevElotag, t1.viseltCsaladiNev, t1.viseltUtonev)) AS kiCn, + TRIM(CONCAT_WS(' ', t2.viseltNevElotag, t2.viseltCsaladiNev, t2.viseltUtonev)) AS kitCn, + tankorNev, + feladatTipusId, + munkaido + FROM ".__TANEVDBNEV.".ora + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tanar AS t1 ON ki=t1.tanarId + LEFT JOIN ".__INTEZMENYDBNEV.".tanar AS t2 ON kit=t2.tanarId + LEFT JOIN ".__INTEZMENYDBNEV.".feladatTipus USING (feladatTipusId) + WHERE tankorId=%u AND tipus NOT LIKE 'elmarad%%' AND (tanev=".__TANEV." OR feladatTipusId IS NOT NULL) + ORDER BY dt DESC,ora DESC,tankorId"; + return db_query($q, array('fv' => 'getOraAdatByTankor', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($tankorId)), $olr); + + } else { + // nincs id + return false; + } + } + + function getHelyettesitettOra($tolDt, $igDt) { + + $q = "SELECT DISTINCT oraId, + dt, + ora, + ki, + kit, + ora.tankorId AS tankorId, + teremId, + ora.leiras AS leiras, + ora.tipus AS tipus, + eredet, + TRIM(CONCAT_WS(' ', t1.viseltNevElotag, t1.viseltCsaladiNev, t1.viseltUtonev)) AS kiCn, + TRIM(CONCAT_WS(' ', t2.viseltNevElotag, t2.viseltCsaladiNev, t2.viseltUtonev)) AS kitCn, + tankorNev, + munkaido + FROM ".__TANEVDBNEV.".ora + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tanar AS t1 ON ki=t1.tanarId + LEFT JOIN ".__INTEZMENYDBNEV.".tanar AS t2 ON kit=t2.tanarId + WHERE ( + tipus IN ('helyettesítés','felügyelet','összevonás','elmarad','elmarad máskor','normál máskor') + or eredet='plusz' + ) + AND tanev=".__TANEV." AND '%s' <= dt AND dt <= '%s' + ORDER BY dt, ora, ki"; + return db_query($q, array('fv' => 'getHelyettesítettOrar', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($tolDt, $igDt)), $olr); + + } + + +/* + * Adott nap adott órájában mely termek szabadok - esetleg megadva, hogy kinek a számára: ilyenkor + * az ő általa használt termek is benne maradnak a listában... + */ + function getSzabadTermek($PARAM = array(), $olr = '') { + + if (isset($PARAM['dt']) && $PARAM['dt'] != '') $dt = $PARAM['dt']; + else $dt = date('Y-m-d'); + if (isset($PARAM['ora']) && $PARAM['ora'] !== '') $ora = $PARAM['ora']; + else $ora = 1; + if (isset($PARAM['ki']) && $PARAM['ki'] != '') + $q = "SELECT ".__INTEZMENYDBNEV.".terem.teremId AS teremId, + ".__INTEZMENYDBNEV.".terem.leiras AS leiras, + ".__INTEZMENYDBNEV.".terem.ferohely AS ferohely, + ".__INTEZMENYDBNEV.".terem.tipus AS tipus + FROM ".__INTEZMENYDBNEV.".terem LEFT JOIN ora + ON ora.teremId=".__INTEZMENYDBNEV.".terem.teremId + AND dt='%s' + AND ora=%u + AND ora.tipus NOT LIKE 'elmarad%%' + AND ki != %u + WHERE ora.eredet IS NULL ORDER BY teremId"; + else + $q = "SELECT ".__INTEZMENYDBNEV.".terem.teremId AS teremId, + ".__INTEZMENYDBNEV.".terem.leiras AS leiras, + ".__INTEZMENYDBNEV.".terem.ferohely AS ferohely, + ".__INTEZMENYDBNEV.".terem.tipus AS tipus + FROM ".__INTEZMENYDBNEV.".terem LEFT JOIN ora + ON ora.teremId=".__INTEZMENYDBNEV.".terem.teremId + AND dt='%s' + AND ora=%u + AND ora.tipus NOT LIKE 'elmarad%%' + WHERE ora.eredet IS NULL ORDER BY teremId"; + $v = array($dt, $ora, $PARAM['ki']); + return db_query($q, array('fv' => 'getSzabadTermek', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $olr); + } + + + function getTanarNapiOrak($tanarId, $dt='', $olr = null) { + if ($dt=='') $dt = date('Y-m-d'); + // --TODO kitalálhatnánk, hogy az adott dátum melyik szemeszterben van! + $q = "SELECT DISTINCT oraId, ora, ki, kit, ora.tankorId, ora.tipus AS tipus, eredet, feladatTipusId, munkaido, tankorNev, teremId, terem.leiras AS teremLeiras, oralatogatasId, megjegyzes, ora.leiras + FROM ora LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter ON (ora.tankorId=tankorSzemeszter.tankorId AND tanev=%u) + LEFT JOIN ".__INTEZMENYDBNEV.".terem USING (teremId) + LEFT JOIN oraLatogatas USING (oraId) + WHERE ki=%u AND dt='%s' ORDER BY ora"; + $v = array(__TANEV,$tanarId, $dt); + return db_query($q, array('debug'=>false,'fv' => 'getTanarNapiOrak', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'ora', 'values' => $v), $olr); + } + + function getOsztalyNapiOrak($osztalyId, $dt, $olr = null) { + + $q = "SELECT DISTINCT oraId, ora, ki, kit, ora.tankorId, ora.tipus AS tipus, eredet, feladatTipusId, munkaido, tankorNev, teremId, terem.leiras AS teremLeiras, oralatogatasId, megjegyzes, ora.leiras + FROM ora + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorOsztaly USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".terem USING (teremId) + LEFT JOIN oraLatogatas USING (oraId) + WHERE tanev=".__TANEV." AND osztalyId=%u AND dt='%s' + AND ora.tipus IN ('normál','normál máskor','helyettesítés','felügyelet','összevonás') ORDER BY ora"; + $v = array($osztalyId, $dt); + return db_query($q, array('fv' => 'getOsztalyNapiOrak', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'ora', 'values' => $v), $olr); + } + + + function tanarLukasOrajaE($tanarId, $dt, $ora, $olr = null) { + + $q = "SELECT COUNT(oraId) FROM ora WHERE dt='%s' AND ora=%u AND ki=%u AND tipus NOT LIKE 'elmarad%%'"; + $v = array($dt, $ora, $tanarId); + $num = db_query($q, array('fv' => 'tanarLukasOrajaE', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $olr); + return ($num == 0); + + } + + function tankorTagokLukasOrajaE($tankorId, $dt, $ora, $csereTankorId = '') { + + $nap = date('w', strtotime($dt)); if ($nap == 0) $nap=7; + $Diakok = getTankorDiakjaiByInterval($tankorId, __TANEV, $dt, $dt); + if (count($Diakok['idk']) == 0) { + // Nincsenek tagjai a tankörnek - év elején bizony előfordul... + return true; + } + $lukasOra = true; + for ($i=0; $itrue,'tolDt' => $dt, 'igDt' => $dt, 'nap'=> $nap, 'ora'=>$ora)); + // a diák összes tanköre + $_TANKOROK = getTankorIdsByDiakIds(array($_diakId), array('tanev'=>__TANEV,'tolDt'=>$dt,'igDt'=>$dt)); + // A diák adott időpontban kötelező tankörei + if (is_array($_FMTANKOROK)) $tankorIds = array_diff($_TANKOROK, $_FMTANKOROK); + else $tankorIds = $_TANKOROK; + + if (is_array($tankorIds) && count($tankorIds)>0) { + $q = "SELECT COUNT(oraId) AS db FROM ora + LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTipus USING (tankorTipusId) + WHERE tankorTipus.jelenlet='kötelező' + AND ora.dt='%s' AND ora.ora=%u AND ora.tipus NOT LIKE 'elmarad%%' AND ora.tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")"; + + $v = mayor_array_join(array($dt, $ora), $tankorIds); + if ($csereTankorId != '') { + $q .= " AND tankorId != %u"; + array_push($v, $csereTankorId); + } + $db = db_query($q, array('fv' => 'tankorTagokLukasOrajaE/diakId='.$_diakId, 'modul' => 'naplo', 'result' => 'value', 'values' => $v)); + if ($db > 0) { // ha van ütközés, akkor próbáljunk informatívak lenni + $q = "SELECT DISTINCT tankorId FROM ora WHERE dt='%s' AND ora=%u AND tipus NOT LIKE 'elmarad%%' + AND tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")"; + if ($csereTankorId != '') $q .= " AND tankorId != %u"; + $r = db_query($q, array('fv' => 'tankorTagokLukasOrajaE', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v) ); + if (is_array($r) && count($r)>0) { + $_diakAdat = getDiakAdatById($_diakId); + $_SESSION['alert'][] = 'message:foglalt_diak:'.$_diakAdat['diakNev'].' ('.$_diakId.'):tankörök '.implode(',',$r).':időpont '.$dt.' '.$ora.'. óra'; + } + } + } else { + $db = 0; + } + + $lukasOra = $lukasOra && ($db == 0); + + } + + return $lukasOra; + + } + + + function getNapok($Param = array('tanev' => __TANEV, 'tolDt' => '', 'igDt' => '', 'napokSzama' => '', 'tipus' => '', 'munkatervId' => null), $olr = null) { + + if (isset($Param['tanev']) && $Param['tanev'] != '') $tanev = $Param['tanev']; + if (isset($Param['tolDt']) && $Param['tolDt'] != '') $tolDt = $Param['tolDt']; + if (isset($Param['igDt']) && $Param['igDt'] != '') $igDt = $Param['igDt']; + if (isset($Param['napokSzama']) && $Param['napokSzama'] != '') $napokSzama = $Param['napokSzama']; + + initTolIgDt($tanev, $tolDt, $igDt); + $v = array($tolDt, $igDt); + + if (is_array($Param['tipus']) && count($Param['tipus']) > 0) { + $tipusFeltetel = " AND tipus IN ('" . implode("','", array_fill(0, count($Param['tipus']), '%s')) . "') "; + $v = mayor_array_join($v, $Param['tipus']); + } else $tipusFeltetel = ''; + if (isset($Param['munkatervId'])) { + $mtFeltetel = " AND munkatervId=%u "; + array_push($v, $Param['munkatervId']); + } else $mtFeltetel = ''; + $orderBy = 'ORDER BY dt'; + if (isset($napokSzama)) { + if (isset($igDt)) $orderBy = 'ORDER BY dt DESC'; + $limit = "LIMIT %u"; + array_push($v, $napokSzama); + } + + $q = "SELECT DISTINCT dt FROM nap + WHERE '%s' <= dt AND dt <= '%s' $tipusFeltetel $mtFeltetel $orderBy $limit"; + return db_query($q, array('fv' => 'getNapok', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v), $olr); + + } + + function getNapAdat($dt, $olr = '') { + + $q = "SELECT * FROM nap WHERE dt='%s' ORDER BY munkatervId"; + $ret = db_query($q, array('fv' => 'getNapAdat', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($dt)), $olr); + return $ret; + + } + +/* Nem használt függvény - most már munkaterv függő + function getNapTipus($dt, $munkatervId = 1) { + + $q = "SELECT tipus FROM nap WHERE dt='%s' AND munkatervId=%u"; + return db_query($q, array('fv' => 'getNapTipus', 'modul' => 'naplo', 'result' => 'value', 'values' => array($dt, $munkatervId))); + + } +*/ + function getTanevNapjai($munkatervId = 1, $olr = null) { + + $q = "SELECT * FROM nap WHERE munkatervId=%u ORDER BY dt"; + return db_query($q, array('fv' => 'getTanevNapjai', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($munkatervId)), $olr); + + } + + function getHonapNapjai($ho, $munkatervId = 1, $olr = null) { + /* + $munkatervId lehet tömb is! (pl. egy tanuló több osztályba is tartozik) + + Ekkor a függvény lekérdezi az adott munkatervId-khez tartozó napokat, rendezi őket, hogy minden nap elöl legyenek + a tanítási, speciális tanítási, majd a tanítás nélküli munkanapok, végül a tanítási szünetek, majd ezekből az elsőt + - tehát a "legszigorúbbat" - adja csak vissza az adott napra. + */ + + if (is_array($munkatervId) && count($munkatervId)==0) $munkatervId=1; + if (is_array($munkatervId)) { + $q = "SELECT * FROM nap WHERE month(dt)=%u AND munkatervId in (".implode(",", array_fill(0, count($munkatervId), '%u')).") + ORDER BY dt, + CASE tipus WHEN 'tanítási nap' THEN 1 WHEN 'speciális tanítási nap' THEN 2 WHEN 'tanítás nélküli munkanap' THEN 3 ELSE 4 END"; + + $r = db_query($q, array('fv' => 'getHonapNapjai', 'modul' => 'naplo', 'result' => 'indexed', 'values' => mayor_array_join(array($ho), $munkatervId)), $olr); + $elozoDt = ''; $ret = array(); + // Az adott napi munkatervek közül csak egyet adjunk vissza - a legszigorúbbat + for ($i = 0; $i < count($r); $i++) { + if ($elozoDt <> $r[$i]['dt']) $ret[] = $r[$i]; + $elozoDt = $r[$i]['dt']; + } + } else { + $q = "SELECT * FROM nap WHERE month(dt)=%u AND munkatervId=%u ORDER BY dt"; + $ret = db_query($q, array('fv' => 'getHonapNapjai', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($ho, $munkatervId)), $olr); + } + return $ret; + + } + +// -- korábbi haladasi.php-ből... + + function getTanarOrak($tanarId, $SET = array('tolDt'=>'', 'igDt'=>'', 'ora'=> '', 'result' => 'indexed', 'tipus' => null)) { + + if ($SET['csakId'] === true || $SET['result'] == 'csakId') $SET['result'] = 'idonly'; + + $tolDt = readVariable($SET['tolDt'], 'datetime', date('Y-m-d')); + $igDt = readVariable($SET['igDt'], 'datetime', $tolDt); + + if ($SET['ora']!='') { // akkor egyetlen óraid adatai a kérdés! + $WHERE = ' AND ora=%u'; + $v = array($SET['ora']); + } else { + $WHERE = ''; + $v = array(); + } + + if (is_array($SET['tipus']) && count($SET['tipus']) > 0) { + $WHERE .= " AND tipus IN ('".implode("','", array_fill(0, count($SET['tipus']), '%s'))."')"; + $v = mayor_array_join($v, $SET['tipus']); + } + + if ($SET['result'] === 'idonly') { + $q = "SELECT oraId FROM ora WHERE dt>='%s' and dt<='%s' AND ki=%u $WHERE ORDER BY dt,ora"; + array_unshift($v, $tolDt, $igDt, $tanarId); + $RESULT = db_query($q, array('modul' => 'naplo', 'fv' => 'getTanarOrak', 'result' => 'idonly', 'values' => $v)); + } else { + $q = "SELECT * FROM ora WHERE dt>='%s' and dt<='%s' AND (ki=%u OR kit=%u) $WHERE ORDER BY dt,ora"; + array_unshift($v, $tolDt, $igDt, $tanarId, $tanarId); + if ($SET['result']=='assoc') + $RESULT = db_query($q, array('modul' => 'naplo', 'fv' => 'getTanarOrak', 'keyfield' => 'ora', 'result' => 'assoc', 'values' => $v)); + else + $RESULT = db_query($q, array('modul' => 'naplo', 'fv' => 'getTanarOrak', 'result' => 'indexed', 'values' => $v)); + if ($SET['result']=='likeOrarend') { + + for ($i = 0; $i < count($RESULT); $i++) { + + $_put = $RESULT[$i]; + $_put['oo'] = false; + $RE['orak'][$RESULT[$i]['dt']][$RESULT[$i]['ora']][$RESULT[$i]['tankorId']] = $_put; + if (!@in_array($RESULT[$i]['tankorId'], $RE['tankorok'])) $RE['tankorok'][] = $RESULT[$i]['tankorId']; + + } + $RESULT = $RE; + } + } + return $RESULT; + } + + function getOrak($TANKORIDK, $SET=array('tolDt'=>'','igDt'=>'', 'result'=>'likeOrarend', 'elmaradokNelkul'=>false)) { + + /* FIGYELEM! A függvény feltételezi, hogy az átadott tankoridkben az adott intervallumon helyes adatok szerepelnek! + -- problémát okozhat, ha hosszú intervallumot adunk meg!!! -- lásd FS#100 */ + if (!is_array($TANKORIDK) || count($TANKORIDK)==0) return false; + $tolDt = readVariable($SET['tolDt'], 'datetime', date('Y-m-d')); + $igDt = readVariable($SET['igDt'], 'datetime', $tolDt); + + $RE = false; $v = $TANKORIDK; + array_unshift($v, $tolDt, $igDt); + if ($SET['result']=='csakId' || $SET['csakId']===true) { + $q = "SELECT oraId FROM ora WHERE dt>='%s' and dt<='%s' AND tankorId IN (".implode(',', array_fill(0, count($TANKORIDK), '%u')).")"; + $RE = db_query($q, array('modul' => 'naplo', 'fv' => 'getOrak', 'result' => 'idonly', 'values' => $v)); + } elseif ($SET['result']=='forXml') { + $q = "SELECT *,getOraTolTime(ora.oraId) AS tolTime,getOraIgTime(ora.oraId) AS igTime FROM ora WHERE dt>='%s' and dt<='%s' AND tankorId IN (".implode(',', array_fill(0, count($TANKORIDK), '%u')).")"; + $RE = db_query($q, array('modul' => 'naplo', 'fv' => 'getOrak', 'result' => 'indexed', 'values' => $v)); + } else { + if ($SET['elmaradokNelkul']) + $q = "SELECT *,getOraTolTime(ora.oraId) AS tolTime,getOraIgTime(ora.oraId) AS igTime FROM ora WHERE dt>='%s' and dt<='%s' AND tankorId IN (".implode(',', array_fill(0, count($TANKORIDK), '%u')).") + AND tipus NOT IN ('elmarad','elmarad máskor')"; + else + $q = "SELECT *,getOraTolTime(ora.oraId) AS tolTime,getOraIgTime(ora.oraId) AS igTime FROM ora WHERE dt>='%s' and dt<='%s' AND tankorId IN (".implode(',', array_fill(0, count($TANKORIDK), '%u')).")"; + $R = db_query($q, array('modul' => 'naplo', 'fv' => 'getOrak', 'result' => 'indexed', 'values' => $v)); + $RE['tankorok']=array(); + for ($i = 0; $i < count($R); $i++) { + $_put = $R[$i]; + $_put['oo'] = false; + $RE['orak'][$R[$i]['dt']][$R[$i]['ora']][$R[$i]['tankorId']] = $_put; + if (!in_array($R[$i]['tankorId'],$RE['tankorok'])) $RE['tankorok'][] = intval($R[$i]['tankorId']); + } + } + return $RE; + } + + /* EZT A FÜGGVÉNYT ÁT KELL NÉZNI, csak másolva, javaslat: összevonás az előzővel */ + function getOrakByTeremId($teremId, $SET=array('tolDt'=>'','igDt'=>'', 'result'=>'likeOrarend', 'elmaradokNelkul'=>false)) { + + /* FIGYELEM! A függvény feltételezi, hogy az átadott tankoridkben az adott intervallumon helyes adatok szerepelnek! + -- problémát okozhat, ha hosszú intervallumot adunk meg!!! -- lásd FS#100 */ + if ($teremId=='') return false; + $tolDt = readVariable($SET['tolDt'], 'datetime', date('Y-m-d')); + $igDt = readVariable($SET['igDt'], 'datetime', $tolDt); + $v = array($tolDt,$igDt,$teremId); + + if ($SET['result']=='csakId' || $SET['csakId']===true) { + $q = "SELECT oraId FROM ora WHERE dt>='%s' and dt<='%s' AND teremId=%u"; + $RE = db_query($q, array('modul' => 'naplo', 'fv' => 'getOrak', 'result' => 'idonly', 'values' => $v)); + } elseif ($SET['result']=='forXml') { + $q = "SELECT * FROM ora WHERE dt>='%s' and dt<='%s' AND teremId=%u"; + $RE = db_query($q, array('modul' => 'naplo', 'fv' => 'getOrak', 'result' => 'indexed', 'values' => $v)); + } else { + if ($SET['elmaradokNelkul']) + $q = "SELECT * FROM ora WHERE dt>='%s' and dt<='%s' AND teremId=%u + AND tipus NOT IN ('elmarad','elmarad máskor')"; + else + $q = "SELECT * FROM ora WHERE dt>='%s' and dt<='%s' AND teremId=%u"; + $R = db_query($q, array('modul' => 'naplo', 'fv' => 'getOrak', 'result' => 'indexed', 'values' => $v)); + for ($i = 0; $i < count($R); $i++) { + $_put = $R[$i]; + $_put['oo'] = false; + $RE['orak'][$R[$i]['dt']][$R[$i]['ora']][$R[$i]['tankorId']] = $_put; + if (!@in_array($R[$i]['tankorId'],$RE['tankorok'])) $RE['tankorok'][] = $R[$i]['tankorId']; + } + } + return $RE; + } + /* --- --- --- */ + + function getOralatogatasByOraIds($oraIds, $SET = array('result' => 'assoc')) { + + if (!is_array($oraIds) || count($oraIds) == 0) return array(); + + $q = "SELECT * FROM oraLatogatas WHERE oraId IN (".implode(',', array_fill(0, count($oraIds), '%u')).") ORDER BY oraId"; + $v = $oraIds; + $ret = db_query($q, array('modul' => 'naplo', 'fv' => 'getOraLatogatasByOraIds', 'result' => $SET['result'], 'keyfield' => 'oraId', 'values' => $v)); + if ($SET['result'] == 'assoc') { + if (is_array($ret)) foreach ($ret as $oraId => $olAdat) { + $ret[$oraId]['tanarIds'] = getOraLatogatoByLatogatasId($olAdat['oraLatogatasId']); + } + } elseif ($SET['result'] == 'indexed') { + if (is_array($ret)) foreach ($ret as $i => $olAdat) { + $ret[$i]['tanarIds'] = getOraLatogatoByLatogatasId($olAdat['oraLatogatasId']); + } + } + return $ret; + + } + + function getOraLatogatoByLatogatasId($latogatasId) { + $q = "SELECT tanarId FROM oraLatogatasTanar WHERE oraLatogatasId=%u"; + return db_query($q, array('modul' => 'naplo', 'fv' => 'getOraLatogatoByLatogatasId', 'result' => 'idonly', 'values' => array($latogatasId))); + } + + function getFeladatTipus() { + $q = "SELECT * FROM feladatTipus"; + return db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'getFeladatTipus', 'result' => 'assoc', 'keyfield'=>'feladatTipusId')); + } + + function getOraTerhelesByTanarId($SET = array()) { // -- DEPRECATED + $q = "SELECT feladatTipusId,count(*) AS db FROM ora WHERE ki=%u AND dt>='%s' AND dt<='%s' AND feladatTipusId IS NOT NULL GROUP BY feladatTipusId"; + $v = array($SET['tanarId'],$SET['tolDt'],$SET['igDt']); + return db_query($q, array('modul' => 'naplo', 'fv' => 'getOraTerheles', 'result' => 'assoc', 'keyfield'=>'feladatTipusId','values'=>$v)); + } + + function getOraTerhelesStatByTanarId($SET = array(), $olr='') { + /* ha a tanítási hetet úgy értelmezzük, hogy az a hét, amin az adott DT van, de nem így teszünk! + ehelyett az elmúlt 5 tanítási napot vizsgáljuk (egyéb értelmes szempontként) + */ + + if (isset($SET['tanarId']) && !is_array($SET['tanarId']) && is_numeric($SET['tanarId'])) $SET['tanarId'] = array($SET['tanarId']); + + $dt=($SET['dt']=='')?date('Y-m-d'):$SET['dt']; + /* azt is biztosítani kell, hogy a megadott dt tanítási nap legyen */ + $dt = (getTanitasiNapVissza(0,$dt)); + + if ($SET['tolDt']!='' && $SET['igDt']!='') { // akkor nem prediktálható az eredmény... mit is kéne számolnunk? ezt nem engedjük + $_SESSION['alert'][] = '::'; + } else { + $tolDt = getTanitasiNapVissza(4,$dt); + $igDt = $dt; + } + initTolIgDt(__TANEV, $tolDt, $igDt); + $v_default = array($tolDt, $igDt); + if (is_array($SET['tanarId']) && count($SET['tanarId']) > 0) { + $w = " AND ki IN (" . implode(",", array_fill(0, count($SET['tanarId']), '%u')) . ") GROUP BY ki"; + $w1 = " WHERE tanarId IN (" . implode(",", array_fill(0, count($SET['tanarId']), '%u')) . ")"; + $v = $SET['tanarId']; + } else { + $w = " GROUP BY ki"; + $w1 = ''; + } + $lr = ($olr=='') ? db_connect('naplo'):$olr; + + /* tanár kötelező óraszámának beállítása -- lehetne máshol is*/ + $q = "SELECT tanarId, hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam,hetiMunkaora FROM ".__INTEZMENYDBNEV.".tanar".$w1; + $R = db_query($q,array('modul'=>'naplo','result'=>'indexed','values'=>$v),$lr); + for ($i=0;$i0) ? intval($R[$i]['hetiMunkaora']):40; + $RES[$R[$i]['tanarId']]['munkaido']['kotott'] = ($R[$i]['hetiKotottMaxOraszam']>0) ? intval($R[$i]['hetiKotottMaxOraszam']) : + (($R[$i]['hetiMunkaora']>0) ? intval($R[$i]['hetiMunkaora']*0.8):32); + $RES[$R[$i]['tanarId']]['munkaido']['lekotott'] = ($R[$i]['hetiLekotottMaxOraszam']>0) ? intval($R[$i]['hetiLekotottMaxOraszam']) : + (($R[$i]['hetiMunkaora']>0) ? intval($R[$i]['hetiMunkaora']*0.65):26); + } + /* ---- */ + + // összes típus + $TYPE = array( + 'ossz'=> " (tipus NOT IN ('elmarad','elmarad máskor'))", + 'kotottEloirt'=> " (tipus IN ('helyettesítés','normál','normál máskor') OR (tipus='egyéb' AND eredet='órarend'))", + 'kotott'=> " (tipus IN ('helyettesítés','normál','normál máskor') OR (tipus='egyéb'))", + 'lekotott'=>" (tipus IN ('helyettesítés','normál','normál máskor'))", + 'over'=> " tipus = 'helyettesítés' AND munkaido='fennmaradó'" + ); + foreach($TYPE as $munkaidoTipus => $TIPUSOK) + { + $q = "SELECT ki AS tanarId,count(*) AS db FROM ora WHERE $TIPUSOK AND dt>='%s' AND dt<='%s'".$w; + $v = mayor_array_join($v_default,$SET['tanarId']); + $R= db_query($q, array('fv'=>'getOraTerhelesStatByTanarid','values'=>$v,'result'=>'indexed'),$lr); + for ($i=0;$i'getOraTerhelesStatByTanarid','values'=>$v,'result'=>'indexed'),$lr); + for ($i=0;$i'getOraTerhelesStatByTanarid','values'=>$v,'result'=>'indexed'),$lr); +// for ($i=0;$i'getOraTerhelesStatByTanarid','values'=>$v,'debug'=>false,'result'=>'indexed'),$lr); + for ($i=0;$i'naplo','fv'=>'getOraStatByTankorId','values'=>$v,'result'=>'indexed'),$lr); + $R['éves'] = reindex($r,array('eredet','tipus')); + + $q = "SELECT tipus,eredet,count(*) AS db FROM ora WHERE + dt >= '%s' - INTERVAL DAYOFWEEK('%s')+6 DAY + AND dt < '%s' - INTERVAL DAYOFWEEK('%s')-1 DAY + AND tankorId =%u GROUP BY tipus,eredet"; + $v = array($dt,$dt,$dt,$dt,$tankorId); + $r= db_query($q, array('debug'=>false,'modul'=>'naplo','fv'=>'getOraStatByTankorId','values'=>$v,'result'=>'indexed'),$lr); + $R['heti'] = reindex($r,array('eredet','tipus')); + + return $R; + + } + + function oraMostVane($oraId) { + $most = false; + if ($oraId!='') { + $q = "select DISTINCT + IF(tolTimefalse,'fv'=>'oraMostVane','modul'=>'naplo','values'=>$v,'result'=>'indexed')); + if (count($R)>1) { // többféle eredményt kaptunk + $most = false; + } + $most = ($R[0]['mostVan']) ? true : false; + } + return $most; + } + + function getOrakMost() { + $q = "select oraId,IF(tolTimefalse,'fv'=>'oraMostVane','modul'=>'naplo','values'=>$v,'result'=>'idonly')); + return $R; + } + + function getDiakOra($diakId,$dt,$ora,$olr_intezmeny = '',$olr_naplo) { // jelenlét mezőt nem vesszük figyelembe!!! + + // diakId->tankor->ora + + $TANKOR = getTankorByDiakId($diakId, __TANEV, array('csakId' => true, 'tolDt' => $dt, 'igDt' => $dt, 'override' => false, 'result'=>'indexed'),$olr_intezmeny); // jelenlét!!! + // --TODO!!! minden jelenlét számít, még az is ami nem kötelező :( + if (count($TANKOR)>0 ) { + $q = "SELECT *,getNev(tankorId,'tankor') AS tankorNev FROM ora WHERE dt='%s' AND ora=%u AND tankorId IN (".implode(',',$TANKOR).")"; + $v = array($dt,$ora); + $R = db_query($q,array('debug'=>false,'fv'=>'getDiakOra','modul'=>'naplo','values'=>$v,'result'=>'indexed'),$olr_naplo); + if (count($R)==1) return $R[0]; + } + return false; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/oraModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/oraModifier.php new file mode 100644 index 00000000..9165ac7c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/oraModifier.php @@ -0,0 +1,148 @@ + 'oraBeirhato')):$olr; + $q = "SELECT * FROM ora WHERE oraId = %u"; + $values = array('oraId'=>$oraId); + $oraAdat = db_query($q, array('fv'=>'oraBeirhato','modul'=>'naplo','result'=>'record','values'=>$values),$lr); + if ($olr == '') db_close($lr); + return modosithatoOra($oraAdat); + } + + function modosithatoOra($haladasiOraAdat) { // lásd még: oraBeirhato($oraId) + + global $_TANEV; + if (!defined('_HALADASI_HATARIDO')) $_SESSION['alert'][] = 'info::modosithatoOra.not defined._HALADASI_HATARIDO'; + // if (!defined('__USERTANARID')) return false; + /* feladat típusokra vonatkozó beállítások */ + $Feladat = is_numeric($haladasiOraAdat['feladatTipusId']) && $haladasiOraAdat['tipus']=='egyéb'; // 22-26 óra feletti kötött munkaidőbe tartó feladat + $tanarFeladat = $Feladat && defined('__USERTANARID') && __USERTANARID==$haladasiOraAdat['ki']; // ... amit az épp bejelentkezett tanár tart + $sajatTanarFeladat = $tanarFeladat && $haladasiOraAdat['eredet']=='plusz'; // ... és ő is vett fel + $eloirtTanarFeladat = $tanarFeladat && $haladasiOraAdat['eredet']=='órarend'; // ... illetve, amit számára a vezetőség előírt (nem törölhető) + $time = strtotime($haladasiOraAdat['dt']); + $ki = $haladasiOraAdat['ki']; + $normalOra = (in_array($haladasiOraAdat['tipus'],array('normál','normál máskor'))); + for ($i = 0; + ( + ($i < ($count = count($haladasiOraAdat['tanar']))) + && ($haladasiOraAdat['tanar'][$i]['tanarId'] != __USERTANARID) + ); + $i++ + ); + $tanara = ($i < $count) || $haladasiOraAdat['ki']==__USERTANARID; // nem mindig van 'tanar' adat! Az nem része az ora rekordnak + + return ($_TANEV['szemeszter'][1]['statusz'] == 'aktív') // Csak aktív szemeszterbe írhatunk + && ( + ((__VEZETOSEG || __NAPLOADMIN) && $Feladat && $haladasiOraAdat['eredet']=='órarend') + || $time <= time() + ) // A jövőbeli órák nem írhatók be, kivéve, ha az előírt tanári feladat (pl versenyfelügyelet)! + && ( + // Az admin bármikor módosíthat - de csak vezetői utasításra teszi! + __NAPLOADMIN + // Az igazgató naplózárásig pótolhat, javíthat - utána elvileg nyomtatható a napló! + || (__VEZETOSEG and strtotime(_ZARAS_HATARIDO) <= $time) + || ( + __TANAR + && ( + // a számára felvett óra nem módosítható + !$eloirtTanarFeladat + && ( + // tanár a saját tanköreinek óráit a _HALADASI_HATARIDO-ig módosíthatja + ($normalOra && $tanara && (strtotime(_HALADASI_HATARIDO) <= $time)) + // tanár az általa helyettesített/felügyelt/összevont órát _visszamenőleg_ a _HELYETTESITES_HATARIDO-ig módosíthatja + || (!$normalOra && (__USERTANARID == $ki) && (strtotime(_HELYETTESITES_HATARIDO) <= $time) && $Feladat===false) + // a kötött munkaidőben végzett feladatok _HALADASI_HATARIDŐIG módosíthatók + || ($tanarFeladat && (strtotime(_HALADASI_HATARIDO) <= $time)) + ) + ) + ) + ); + + } + + function ujOraFelvesz($ADAT,$olr='') { // --TODO: a függvény figyelhetné a tagok óraütközését! + $lr = $olr=='' ? db_connect('naplo', array('fv' => 'ujOraFelvesz')):$olr; + $q = "SELECT count(*) FROM ora WHERE dt='%s' AND ora=%u AND ki=%u"; + $values = array($ADAT['dt'],$ADAT['ora'],$ADAT['ki']); + $c = db_query($q, array('fv'=>'ujOraFelvesz/1','modul'=>'naplo','result'=>'value','values'=>$values),$lr); + if ($c==0) { // csak ha még nincs adott nap adott órájára rögzítve "feladata" + if ($ADAT['feladatTipusId']==0) $ADAT['feladatTipusId']='NULL'; + if ($ADAT['tankorId']==0) $ADAT['tankorId']='NULL'; + $q = "INSERT INTO `ora` (`dt`,`ora`,`ki`,`tipus`,`eredet`,`feladatTipusId`,`munkaido`,`leiras`,`tankorId`) VALUES ('%s',%u,%u,'%s','%s',%s,'%s','%s',%s)"; + $values = array($ADAT['dt'],$ADAT['ora'],$ADAT['ki'],$ADAT['tipus'],$ADAT['eredet'],$ADAT['feladatTipusId'],$ADAT['munkaido'],$ADAT['leiras'],$ADAT['tankorId']); + $RESULT = db_query($q, array('fv'=>'ujOraFelvesz','modul'=>'naplo','result'=>'insert','values'=>$values),$lr); + } + if ($olr == '') db_close($lr); + return $RESULT; + } + + function updateHaladasiNaploOra($oraId, $leiras, $csoportAdat = '', $ki = '', $olr = '') { + + $RESULT = true; + + $lr = $olr=='' ? db_connect('naplo', array('fv' => 'updateHaladasiNaploOra')):$olr; + // A módosítás előtti állapot lekérdezése + $oraAdat = getOraAdatById($oraId, __TANEV, $lr); + $dt = $oraAdat['dt']; + // Melyik tankör lesz a módosítás után + if ($csoportAdat != '') list($csoportId, $tankorId) = explode(':', $csoportAdat); + else $tankorId = $oraAdat['tankorId']; + + // force to be numeric (CHECK) + $csoportId = intval($csoportId); + $tankorId = intval($tankorId); + + $oraAdat['tanar'] = getTankorTanaraiByInterval($tankorId, array('tanev' => __TANEV, 'tolDt' => $dt, 'igDt' => $dt, 'result' => 'nevsor'), $lr); + // Melyik ki id lesz módosítás után + if ($ki != '') $tanarId = $ki; else $tanarId = $oraAdat['ki']; + if (modosithatoOra($oraAdat)) { + + // Tananyag beírása + $q = "UPDATE ora SET leiras='%s'"; + $v = array($leiras); + if ($ki != '') { // Ha több tanára van a tankörnek, akkor az átváltható + $i = 0; + while ($i < ($db = count($oraAdat['tanar'])) && $ki != $oraAdat['tanar'][$i]['tanarId']) $i++; + if ($i < $db) { + $q .= ",ki=%u"; + $v[] = $ki; + } + } + //!!! A csoportok tankörei válthatóak - ha ugyanaz a tanár tartja + if ($csoportAdat != '' && $oraAdat['tankorId'] != $tankorId) { + $q2 = "SELECT COUNT(tankorId) FROM tankorCsoport LEFT JOIN ".__INTEZMENYDBNEV.".tankorTanar USING (tankorId) + WHERE csoportId = %u AND tanarId = %u + AND tankorId IN (%u,%u) + AND (kiDt IS NULL OR kiDt>='%s') AND beDt<='%s'"; + $v2 = array($csoportId, $tanarId, $tankorId, $oraAdat['tankorId'], $dt, $dt); + $num = db_query($q2, array('fv' => 'updateHaladasiNaploOra', 'modul' => 'naplo', 'result' => 'value', 'values' => $v2), $lr); + if (!$num) { + $_SESSION['alert'][] = 'message:wrong_data:updateHaladasiNaploOra:'.$num.':'.$csoportId; + $RESULT = false; + } elseif ($num == 2) { + $q .= ",tankorId=%u"; + $v[] = $tankorId; + } else { + $_SESSION['alert'][] = 'message:wrong_data:updateHaladasiNaploOra:'.$num.':'.$csoportId; + $RESULT = false; + } + } + if ($RESULT!==false) { + $q .= " WHERE oraId=%u"; + $v[] = $oraId; + $RESULT = db_query($q, array('fv' => 'updateHaladasiNaploOra', 'modul' => 'naplo', 'values' => $v), $lr); + //$_SESSION['alert'][] = $q; + } + } else { +// $RESULT = false; // igaziból nincs hiba, hisz nem csináltunk semmit + $_SESSION['alert'][] = 'message:wrong_data:nem modosithato ora!!!'; + } + if ($olr == '') db_close($lr); + + return $RESULT; + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/orarend.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/orarend.php new file mode 100644 index 00000000..5ae3a43a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/orarend.php @@ -0,0 +1,422 @@ +'','igDt'=>'')) { + // tankörök lekérdezése + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt(__TANEV, $tolDt, $igDt); + $NAPOK = _genNapok($tolDt,$igDt); + // dátumfüggő FS#100 + for ($i=0; $itrue,'tolDt'=>$_dt, 'igDt'=>$_dt)); + } + return getOrarend($TANKORIDK, array('tolDt'=>$tolDt, 'igDt'=>$igDt)); + } + + // ++ + function getOrarendByTanarId($tanarId, $SET=array('tolDt'=>'','igDt'=>'', 'telephely'=>null, 'orarendiOraTankor'=>false)) { + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt(__TANEV, $tolDt, $igDt); + $NAPOK = _genNapok($tolDt,$igDt); + // dátumfüggő FS#100 + for ($i=0; $itrue,'tolDt'=>$_dt, 'igDt'=>$_dt)); + } + /* Figyelem! Az első talált munkatervet vesszük itt figyelembe!!! */ + $munkatervIds = getMunkatervByTanarId($tanarId, array('result' => 'idonly', 'tanev'=>__TANEV, 'tolDt'=>$tolDt, 'igDt'=>$igDt)); + $RESULT = getOrarend($TANKORIDK, array('tolDt'=>$tolDt, 'igDt'=>$igDt, 'telephely'=>$SET['telephely'], 'munkatervId'=>$munkatervIds)); + /* --------------------------------------------*/ + if ($SET['orarendiOraTankor']===true + && is_null($SET['telephely']) + ) { + /* és kérdezzük le nem tankörId-kkel is... */ + // Ez a rész csak az orarendiOra Tankörös részhez kell... Ene ... tényleg kell? :) // + // Kelljen. Ha a getOrarend nem tud dűlőre jutni, még mindig látszik valami... [k] + /* A tanítási hét kitalálása */ + // erre valójában nincs szükség */ +/* + $het = getOrarendiHetByDt($tolDt, array('alert'=>false)); // Ez NULL-t ad vissza, ha nincs bejegyzés!!! + if (is_null($het)) {// nincs a nap táblában ilyen bejegyzés, de megkereshetjük a következő tanítási napot. + // (ez persze ahhoz vezet, hogy ha 7 napnál nagyobb a különbség, akár hetek is ugorhatnak + //$kovTanNap = getTanitasiNap('elore',1,"$tolDt 08:00:00"); + $het = getOrarendiHetByDt($kovTanNap); + } +*/ /* -- */ + + /* !! Így egy nap többször is szerepelhet !! Ugye ez nem baj?? */ + $munkatervId = $munkatervIds; //hack myself + if (!is_array($munkatervId) || count($munkatervId) == 0) { + return false; + } + $q = "SELECT dt,orarendiHet,DAYOFWEEK(dt)-1 AS nap,csengetesiRendTipus FROM nap WHERE dt>='%s' AND dt<='%s' + AND munkatervId IN (".implode(',', array_fill(0, count($munkatervId), '%u')).")"; + $v = mayor_array_join(array($tolDt, $igDt), $munkatervId); + $RES = db_query($q, array('fv' => 'getOrarendByTanarId', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + for($i=0; $i 'getOrarendByTanarId', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + for($i=0; $i$RES[$i]['tankorId'], + 'tolDt'=>$RES[$i]['tolDt'], + 'tanarId'=>$RES[$i]['tanarId'], + 'targyJel'=>$RES[$i]['targyJel'], + 'osztalyJel'=>$RES[$i]['osztalyJel'], + 'teremId'=>$RES[$i]['teremId']); + } + + } + /* --------------------------------------- */ + return $RESULT; + } + + // ++ + function getOrarendByDiakId($diakId, $SET = array('tolDt'=>'','igDt'=>'','osztalyId'=>'')) { + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt($tanev, $tolDt, $igDt); + $NAPOK = _genNapok($tolDt,$igDt); + // dátumfüggő FS#100 + for ($i=0; $itrue,'tolDt'=>$_dt,'igDt'=>$_dt)); + } + if ($SET['osztalyId']!='') { + $munkatervId = getMunkatervByOsztalyId($SET['osztalyId']); + } else { + $munkatervId = getMunkatervByDiakId($diakId, array('tolDt'=>$tolDt,'igDt'=>$igDt)); + } + $RESULT = getOrarend($TANKORIDK, array('tolDt'=>$tolDt,'igDt'=>$igDt,'NAPOK'=>$NAPOK, 'munkatervId'=>$munkatervId)); + return $RESULT; + } + + // ++ + function getOrarendByOsztalyId($osztalyId, $SET=array('tolDt'=>'','igDt'=>'')) { + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt(__TANEV, $tolDt, $igDt); + $NAPOK = _genNapok($tolDt,$igDt); + // dátumfüggő FS#100 + for ($i=0; $itrue,'tolDt'=>$_dt,'igDt'=>$_dt)); + } + // + $munkatervId = getMunkatervByOsztalyId($osztalyId); + $RESULT = getOrarend($TANKORIDK, array('tolDt'=>$tolDt,'igDt'=>$igDt,'NAPOK'=>$NAPOK, 'munkatervId'=>$munkatervId)); + return $RESULT; + } + + // ++ + function getOrarendByTankorId($tankorId, $SET=array('tolDt'=>'','igDt'=>'')) { + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt(__TANEV, $tolDt, $igDt); + $NAPOK = _genNapok($tolDt,$igDt); + // dátumfüggő FS#100 + for ($i=0; $i$tolDt,'igDt'=>$igDt)); + return $RESULT; + } + + // ++ + function getOrarendByMkId($mkId, $SET=array('tolDt'=>'','igDt'=>'','telephely'=>null)) { + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt(__TANEV, $tolDt, $igDt); + $NAPOK = _genNapok($tolDt,$igDt); + // dátumfüggő FS#100 + for ($i=0; $itrue,'tolDt'=>$_dt,'igDt'=>$_dt)); + } + $munkatervIds = getMunkatervek(array('result'=>'idonly')); + $RESULT = getOrarend($TANKORIDK, array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephely'=>$SET['telephely'],'munkatervId'=>$munkatervIds)); + return $RESULT; + } + + function getOrarend($TANKOROK, $SET=array('tolDt'=>'','igDt'=>'', 'telephely'=>null, 'NAPOK' => null, 'munkatervId'=>null)) { + + //a tankörök tömb szerkezete megváltozik rev1300 + if (!is_array($TANKOROK) || count($TANKOROK)==0) return false; + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt(__TANEV, $tolDt, $igDt); // valljuk meg, ez kicsit tág intervallum lehet... + if (isset($SET['NAPOK']) && is_array($SET['NAPOK'])) { + $NAPOK = $SET['NAPOK']; + } else { + $NAPOK = _genNapok($tolDt,$igDt); + } + + $tanevDb = tanevDbNev(__INTEZMENY, __TANEV); + + if ($SET['telephely']!='' && is_string($SET['telephely'])) { + $W_TELEPHELY1 = " LEFT JOIN terem USING (teremId)"; + $W_TELEPHELY2 = " WHERE telephely='".$SET['telephely']."' "; + } + $RESULT['assocFormat']['$nap$']['$ora$']['orak']['$index$']=true; + $RESULT['tankorokFormat']['$index$'] = true; + $_TMPTANKORIDK = array(); + $RESULT['telephelyIdk'] = array(); + for ($nI=0; $nI'assoc','munkatervId'=>$SET['munkatervId'])); + $het = $RESULT['napok'][$nap]['het']; + if (in_array($RESULT['napok'][$nap]['tipus'],array('tanítási nap','speciális tanítási nap')) && $het!=0) { // ha van egyáltalán beállított tanítás... + $_dt = $NAPOK[$nI]; + $TIME = "igDt>='%s' AND tolDt<='%s' AND nap=%u"; // ez miírt van külön? [bb] + $_TK = $TANKOROK[$_dt]; + if (is_array($_TK) && count($_TK)>0) { + $q = "SELECT orarendiOra.*,orarendiOraTankor.*,tankorTipus.jelleg,terem.telephelyId FROM $tanevDb.orarendiOra + ".$W_TELEPHELY1." + LEFT JOIN $tanevDb.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + ".$W_TELEPHELY2." + LEFT JOIN tankor USING (tankorId) LEFT JOIN tankorTipus USING (tankorTipusId) + LEFT JOIN terem USING (teremId) + HAVING $TIME AND het=%u AND tankorId IN (".implode(',', array_fill(0, count($_TK), '%u')).") + AND tankorId IN ( + SELECT tankorId FROM $tanevDb.nap + LEFT JOIN $tanevDb.munkatervOsztaly USING (munkatervId) + LEFT JOIN tankorOsztaly USING (osztalyId) + WHERE tipus IN ('tanítási nap') AND dt='".$_dt."' + ) + + "; // nagy lekérdezés + array_unshift($_TK, $_dt, $_dt, $nap, $het); + $RES = db_query($q, array('fv' => 'getOrarend', 'modul' => 'naplo_intezmeny', 'values' => $_TK, 'result' => 'indexed'), $olr); + /* asszoc tömböt szeretnénk, és kigyűjtük az érintett tanköröket */ + for($i = 0; $i < count($RES); $i++) { + if (!in_array($RES[$i]['telephelyId'],$RESULT['telephelyIdk']) && $RES[$i]['telephelyId']>0) $RESULT['telephelyIdk'][] = $RES[$i]['telephelyId']; + $RESULT['assoc'][$RES[$i]['nap']][$RES[$i]['ora']]['orak'][] = array('igDt'=>$RES[$i]['igDt'],'tolDt'=>$RES[$i]['tolDt'], 'het'=>$RES[$i]['het'],'tankorId'=>$RES[$i]['tankorId'], 'tanarId'=>$RES[$i]['tanarId'],'targyJel'=>$RES[$i]['targyJel'],'osztalyJel'=>$RES[$i]['osztalyJel'],'teremId'=>$RES[$i]['teremId'],'jelleg'=>$RES[$i]['jelleg'],'oo'=>true); + $_TMPTANKORIDK[$RES[$i]['tankorId']] = true; + } + $RESULT['db'] += count($RES); + } + } + } + if (is_array($_TMPTANKORIDK)) foreach ($_TMPTANKORIDK as $_tankorId => $_tmp) { + $RESULT['tankorok'][] = $_tankorId; + } + // adjuk tovább az esetlegesen lekérdezett tankörlistát... (ez csak Id-k gyűjteménye) + $RESULT['mindenTankorByDt'] = $TANKOROK; + return $RESULT; + + } + + function getOrarendByTeremId($teremId, $het = '', $SET=array('tolDt'=>'','igDt'=>'', 'telephely'=>null)) { + + $diff = 5; + + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt(__TANEV, $tolDt, $igDt); // valljuk meg, ez kicsit tág intervallum lehet... + if (isset($SET['NAPOK']) && is_array($SET['NAPOK'])) { + $NAPOK = $SET['NAPOK']; + } else { + $NAPOK = _genNapok($tolDt,$igDt); + } + + if ($telephely!='') { + $W_TELEP = " AND telephely='%s'"; + $v = array($telephely); + } else { + $W_TELEP = ''; + $v = array(); + } + +// for ($nap=1; $nap<=count($NAPOK); $nap++) { + for ($nI=0; $nI'assoc')); + $het = $RESULT['napok'][$nap]['het']; + if ($het!=0) { // ha van egyáltalán beállított tanítás... + $_dt = $NAPOK[$nI]; + $TIME = "igDt>='%s' AND tolDt<='%s' AND nap=%u"; // miért van ez külön? [bb] + $q = "SELECT * FROM orarendiOra LEFT JOIN ".__INTEZMENYDBNEV.".terem USING (teremId) LEFT JOIN orarendiOraTankor USING (tanarId,osztalyJel,targyJel) HAVING $TIME + AND het=%u AND teremId=%u".$W_TELEP; + array_unshift($v, $_dt, $_dt, $nap, $het, $teremId); + $RES = db_query($q, array('fv' => 'getOrarend', 'modul' => 'naplo', 'values' => $v, 'result' => 'indexed'), $olr); + /* és egészítsük ki bonyolultabb asszoc tömbbé */ + for($i = 0; $i < count($RES); $i++) { + if (!in_array($RES[$i]['telephelyId'],$RESULT['telephelyIdk']) && $RES[$i]['telephelyId']>0) $RESULT['telephelyIdk'][] = $RES[$i]['telephelyId']; + $RESULT['assoc'][$RES[$i]['nap']][$RES[$i]['ora']]['orak'][] = array('het'=>$RES[$i]['het'],'tankorId'=>$RES[$i]['tankorId'], 'tanarId'=>$RES[$i]['tanarId'],'targyJel'=>$RES[$i]['targyJel'],'osztalyJel'=>$RES[$i]['osztalyJel'],'teremId'=>$RES[$i]['teremId']); + if (!is_null($RES[$i]['tankorId'])) $RESULT['tankorok'][] = $RES[$i]['tankorId']; + } + } + } + return $RESULT; + + } + + + + // Az adott dátum napján érvényes órarend lekérdezése + function getOrarendByDt($dt, $orarendiHet = array(1), $tanev = __TANEV) { + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + $q = "SELECT * FROM `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + WHERE het IN (".implode(',', array_fill(0, count($orarendiHet), '%u')).") AND tolDt<='%s' AND '%s' <= igDt + ORDER BY het,nap,ora,tanarId"; + array_unshift($orarendiHet, $tanevDb, $tanevDb); + array_push($orarendiHet, $dt, $dt); + return db_query($q, array('fv' => 'getOrarendByDt', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $orarendiHet)); + } + + function getOrarendiHetek($SET = array('tolDt' => '', 'igDt' => '', 'tanev' => __TANEV, 'csakOrarendbol' => false, 'felsoHatar' => 20)) { + + $tolDt = readVariable($SET['tolDt'], 'datetime', null); + $igDt = readVariable($SET['igDt'], 'datetime', null); + $csakOrarendbol = readVariable($SET['csakOrarendbol'], 'bool', false); + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + $felsoHatar = readVariable($SET['felsoHatar'], 'numeric unsigned', 20); + + initTolIgDt($tanev, $tolDt, $igDt); + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + + $q = "SELECT DISTINCT het FROM `%s`.orarendiOra WHERE igDt>='%s' AND tolDt<='%s' AND het<%u ORDER BY het"; + $ret = db_query($q, array('fv' => 'getOrarendiHetek', 'modul' => 'naplo', 'result' => 'idonly', 'values' => array($tanevDb, $tolDt, $igDt, $felsoHatar))); + if (!$csakOrarendbol) { + // nincs még egyetlen órarendi bejegyzés sem - vagyük a munkatervből (kell a tolDt-igDt megszorítás?) + $q = "SELECT DISTINCT orarendiHet FROM `%s`.nap WHERE orarendiHet != 0 AND orarendiHet<%u AND '%s'<=dt AND dt<='%s' ORDER BY orarendiHet"; + $ret = @array_values(@array_unique(@array_merge($ret,db_query($q, array('fv' => 'getOrarendiHetek', 'modul' => 'naplo', 'result' => 'idonly', 'values' => array($tanevDb,$felsoHatar,$tolDt,$igDt)))))); + } + + return $ret; + } + + function getLastOrarend($SET = array('tanev' => __TANEV)) { + $v = array(tanevDbNev(__INTEZMENY, $SET['tanev'])); + return db_query("SELECT max(het) FROM `%s`.orarendiOra", array('fv' => 'getLastOrarend', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value')); + } + + function getMinOra($SET = array('tanev' => __TANEV)) { + $v = array(tanevDbNev(__INTEZMENY, $SET['tanev'])); + return db_query("SELECT MIN(ora) FROM `%s`.orarendiOra", array('fv' => 'getMinOra', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value')); + } + function getMaxOra($SET = array('tanev' => __TANEV)) { + $v = array(tanevDbNev(__INTEZMENY, $SET['tanev'])); + $ret = db_query("SELECT MAX(ora) FROM `%s`.orarendiOra", array('fv' => 'getMaxOra', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value')); + if (defined('__MAXORA_MINIMUMA') && __MAXORA_MINIMUMA>$ret) $ret = __MAXORA_MINIMUMA; + return $ret; + } + function getMaxNap($SET = array('tanev' => __TANEV, 'tolDt'=>null, 'igDt'=>null, 'haladasi'=>false)) { + if ($SET['tanev']=='') $SET['tanev'] = __TANEV; + $tanevDbNev = tanevDbNev(__INTEZMENY, $SET['tanev']); + $v = array($tanevDbNev); + $maxNap = db_query("SELECT max(nap) FROM `%s`.orarendiOra", array('fv' => 'getMaxNap', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result' => 'value')); + $halMaxNap=0; + if ($SET['haladasi']===true) { + $v = array($tanevDbNev,$SET['tolDt'],$SET['igDt']); + $q = "select max(dayofweek(dt)-1) AS halMaxNap from `%s`.ora where dt>='%s' and dt<='%s'" ; + $halMaxNap = + db_query($q, + array('fv' => 'getMaxNap2', 'modul' => 'naplo', 'result' => 'value','values'=>$v)); + } + return (($halMaxNap>$maxNap)?$halMaxNap:$maxNap); + } + + function getOrarendiHetByDt($dt, $SET = array('result' => '', 'alert'=>false, 'munkatervId'=>null)) { + + /* ezt javíthatnánk!!! */ + if ( (!is_array($SET['munkatervId']) && $SET['munkatervId'] != '') || (is_array($SET['munkatervId']) && count($SET['munkatervId'])>0) ) { + if (is_array($SET['munkatervId'])) + $W = ' AND orarendiHet!=0 AND munkatervId IN ('.implode(',',$SET['munkatervId']).')'; + else + $W = ' AND orarendiHet!=0 AND munkatervId = '.intval($SET['munkatervId']); + } else $W = ''; + + if ($dt == '') { + $return = getLastOrarend(); + } else { + if ($SET['result']=='assoc') + $return = db_query( + "SELECT orarendiHet AS het,dt,tipus,megjegyzes,csengetesiRendTipus FROM nap WHERE dt='%s' ". $W, + array('fv' => 'getOrarendiHetByDt', 'modul' => 'naplo', 'values' => array($dt), 'result' => 'record') + ); + else + $return = db_query( + "SELECT orarendiHet FROM nap WHERE dt='%s' ".$W, + array('fv' => 'getOrarendiHetByDt', 'modul' => 'naplo', 'values' => array($dt), 'result' => 'value') + ); + } + if ($SET['alert']===true && is_null($return)) { + $_SESSION['alert'][] = 'info:nincs_nap_bejegyzes:'.$dt; + } + return $return; + } + + function getOrarendiOraTankor($tanev = __TANEV) { + + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + $q = "SELECT * FROM `%s`.orarendiOraTankor"; + return db_query($q, array('fv' => 'getOrarendiOraTankor', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tanevDb))); + + } + + function getOrarendiOraAdat($SET = array('tanev' => __TANEV, 'dt' => null, 'tanarId' => null, 'het' => null, 'nap' => null, 'ora' => null)) { + + $tanev = readVariable($SET['tanev'], 'numeric unsigned', (defined('__TANEV')?__TANEV:null)); + $dt = readVariable($SET['dt'], 'datetime', null); + initTolIgDt($tanev, $dt, $dt); + + // Ha van dátum, de nincs hét, nap óra, akkor azt a dátum alapján kellene beállítani) + + if (isset($SET['tanarId']) && isset($SET['het']) && isset($SET['nap']) && isset($SET['ora']) && isset($dt) && isset($SET['tanev'])) { + + $tanevDb = tanevDbNev(__INTEZMENY, $SET['tanev']); + $q = "SELECT * FROM `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + WHERE tolDt <= '%s' AND '%s' <= igDt AND tanarId=%u AND het=%u + AND nap=%u AND ora=%u"; + $v = array($tanevDb, $tanevDb, $dt, $dt, $SET['tanarId'], $SET['het'], $SET['nap'], $SET['ora']); + return db_query($q, array('fv' => 'getOrarendiOraAdat', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v)); + + } else { + $_SESSION['alert'][] = 'message:empty_field:tanarId,het,nap,ora,tanev,dt'; + return false; + } + + } + + function getTankorHetiOraszam($tankorId, $SET = array('tanev' => __TANEV, 'dt' => null, 'het' => 1)) { + + global $_TANEV; + + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + if ($tanev == __TANEV) $TA = $_TANEV; + else $TA = getTanevAdat($tanev); + $dt = readVariable($SET['dt'], 'datetime', $TA['zarasDt']); + $het = readVariable($SET['het'], 'numeric unsigned', 1); + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + + $q = "SELECT COUNT(*) FROM `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + WHERE tolDt<='%s' AND '%s'<=igDt AND tankorId=%u AND het=%u"; + $v = array($tanevDb, $tanevDb, $dt, $dt, $tankorId, $het); + return db_query($q, array('fv' => 'getTankorHetiOraszam', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + + } + function getCsengetesiRend() { // 'csengetesiRendTipus','telephelyId','nap','ora' + $SET['arraymap'] = array('csengetesiRendTipus','telephelyId','nap','ora'); + $q = "SELECT * FROM csengetesiRend"; + $result = db_query($q, array('fv'=>'getCsengetesiRend','modul'=>'naplo_intezmeny','result'=>'indexed')); + return reindex($result,$SET['arraymap']); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztaly.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztaly.php new file mode 100644 index 00000000..86301c28 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztaly.php @@ -0,0 +1,735 @@ +=$tanev AND osztaly.kezdoTanev<=$tanev), + CONVERT(REPLACE(SUBSTRING(SUBSTRING_INDEX(evfolyamJelek, ',', ".$evfSorsz."),LENGTH(SUBSTRING_INDEX(evfolyamJelek, ',', ".$evfSorsz."-1))+1),',',''),UNSIGNED), + NULL + )"; +} + +function _evfolyamJel($tanev = __TANEV) { + $tanev = intval($tanev); + $evfSorsz = $tanev.'-kezdoTanev+kezdoEvfolyamSorszam'; + return "if ( + (osztaly.vegzoTanev>=$tanev AND osztaly.kezdoTanev<=$tanev), + REPLACE(SUBSTRING(SUBSTRING_INDEX(evfolyamJelek, ',', ".$evfSorsz."),LENGTH(SUBSTRING_INDEX(evfolyamJelek, ',', ".$evfSorsz."-1))+1),',',''), + NULL + )"; +} + +function _osztalyJel($tanev = __TANEV) { + $tanev = intval($tanev); + $evfSorsz = $tanev.'-kezdoTanev+kezdoEvfolyamSorszam'; + return "if ( + (osztaly.osztalyJellegId IS NOT NULL AND osztaly.vegzoTanev>=$tanev AND osztaly.kezdoTanev<=$tanev), + CONCAT(REPLACE(SUBSTRING(SUBSTRING_INDEX(evfolyamJelek, ',', ".$evfSorsz."),LENGTH(SUBSTRING_INDEX(evfolyamJelek, ',', ".$evfSorsz."-1))+1),',',''),'.',osztaly.jel), + CONCAT(osztaly.kezdoTanev,'/',osztaly.vegzoTanev,'.',osztaly.jel) + )"; +} + +function getEvfolyam($osztalyId, $tanev, $osztalyAdat = null, $olr = null) { + return null; +} + +function getEvfolyamJel($osztalyId, $tanev=__TANEV, $osztalyAdat = null, $_osztalyJellel = false, $olr=null) { + + if (is_array($osztalyAdat)) { + $ret = $osztalyAdat; + } else { + // is_resource mysqli esetén nem jó (object) + if ($olr) $lr = $olr; + else $lr = db_connect('naplo_intezmeny'); + $ret = getOsztalyAdat($osztalyId, $tanev, $lr); + // is_resource mysqli esetén nem jó (object) + if (!$olr) db_close($lr); + } + if ($ret['kezdoTanev']<=$tanev && $tanev<=$ret['vegzoTanev']) { + $evfSorsz = $tanev-$ret['kezdoTanev']+$ret['kezdoEvfolyamSorszam']; // ez 1 bázisú sorszám!! + $evfolyamJel = $ret['evfolyamJelek'][$evfSorsz-1]; + } else { + if ($_osztalyJellel === true) $evfolyamJel = $ret['kezdoTanev'].'/'.$ret['vegzoTanev']; + else $evfolyamJel = false; + } + + if ($_osztalyJellel === true) return $evfolyamJel.'.'.$ret['jel']; + else return $evfolyamJel; +} +/* + * A kompatibilitás miatt az evfolyamJel-ből evfolyam-ot generálunk + */ +function evfolyamJel2Evfolyam($evfolyamJel) { + switch ($evfolyamJel) { + case '1': + return 1; break; + case '2': + return 2; break; + case '3': + return 3; break; + case '4': + return 4; break; + case '5': + return 5; break; + case '6': + return 6; break; + case '7': + return 7; break; + case '8': + case 'H2': + case 'H/II/1': + case 'H/II/2': + case '1/8': + return 8; break; + case '9': + case '9N': + case '9/N': + case '9Ny': + case '9/Ny': + case '9Kny': + case '9/Kny': + case '9AJTP': + case '9/AJTP': + case '9AJKP': + case '9/AJKP': + case 'H1': + case 'H/I': + case '2/9': + case '1/9': + return 9; break; + case '10': + case '3/10': + case '2/10': + return 10; break; + case '11': + case '11/Ny': + case '3/11': + case '1/11': + return 11; break; + case '12': + case '2/12': + return 12; break; + case '13': + case '1/13': + case '5/13': + case 'Szé/12/1': + return 13; break; + case '14': + case '2/14': + case 'Szé/12/2': + return 14; break; + case '15': + return 15; break; + default: + return null; + } +} + +function getOsztalyJel($osztalyId, $tanev, $osztalyAdat = null, $olr=null) { + return getEvfolyamJel($osztalyId, $tanev, $osztalyAdat, $_osztalyJellel=true, $olr); +} + +global $_EVFOLYAMJEL_BETUVEL; +$_EVFOLYAMJEL_BETUVEL = array( + '1' => 'első', + '2' => 'második', + '3' => 'harmadik', + '4' => 'negyedik', + '5' => 'ötödik', + '6' => 'hatodik', + '7' => 'hetedik', + '8' => 'nyolcadik', + 'H1' => 'Híd I. program', + 'H/I' => 'Híd I. program', + 'H2/1' => 'Híd II. program 1. évfolyam', + 'H/II/1' => 'Híd II. program 1. évfolyam', + 'H2/2' => 'Híd II. program 2. évfolyam', + 'H/II/2' => 'Híd II. program 2. évfolyam', + '9N' => 'nemzetiségi előkészítő', + '9/N' => 'nemzetiségi előkészítő', + '9Ny' => 'nyelvi előkészítő', + '9/Ny' => 'nyelvi előkészítő', + '9Kny' => 'két tanítási nyelvű előkészítő', + '9/Kny' => 'két tanítási nyelvű előkészítő', + '9AJTP' => 'Arany János Tehetséggondozó Program', + '9/AJTP' => 'Arany János Tehetséggondozó Program', + '9AJKP' => 'Arany János Kollégiumi Program', + '9/AJKP' => 'Arany János Kollégiumi Program', + '9' => 'kilencedik', + '10' => 'tizedik', + '11/Ny' => 'nyelvi előkészítő', + '11' => 'tizenegyedik', + '12' => 'tizenkettedik', + '13' => 'tizenharmadik', + '14' => 'tizennegyedik', + '15' => 'tizenötödik', + '1/8' => '1/8 szakképző évfolyam', + '2/9' => '2/9 szakképző évfolyam', + '3/10' => '3/10 szakképző évfolyam', + '1/9' => '1/9 szakképző évfolyam', + '2/10' => '2/10 szakképző évfolyam', + '3/11' => '3/11 szakképző évfolyam', + '1/11' => '1/11 szakképző évfolyam', + '2/12' => '1/12 szakképző évfolyam', + '1/13' => '1/13 szakképző évfolyam', + '2/14' => '2/14 szakképző évfolyam', + '5/13' => '5/13 szakképző évfolyam', + 'Szé/12/1' => 'érettségire felkészítő 1. évfolyam', + 'Szé/12/2' => 'érettségire felkészítő 2. évfolyam', +); +/* + KNT. 6. melléklete: engedélyezett, egyházi, 6-8 évf. gimnázium, + NKT. 27. § (5) - tehetséggondozás+felzárkóztatás - 2 óra/hét/osztály + NKT. 27. § (6) - 1-4 évf. felzárkóztatás: 2 óra/hét/fő + NKT. 27. § (7) - SNI magántanul 10 óra/hét/fő + */ +global $_EVFOLYAM_ADAT; +$_EVFOLYAM_ADAT = array( + // tanulóÓraszám => array(testnevelés nélkül, testnevelés) + // osztályIdőkeret => array(engedélyezett, hittan, 6-8 gimn, nemzetiségi // tehetséggondozás+felzárkóztatás + 2 óra/hét/osztály + // létszám => array(min, max, átlag) + '1' => array('tanulóÓraszám' => array(20,5), 'osztályIdőkeret' => array(52,1,0,2), 'létszám' => array(14,27,23)), + '2' => array('tanulóÓraszám' => array(20,5), 'osztályIdőkeret' => array(52,1,0,2), 'létszám' => array(14,27,23)), + '3' => array('tanulóÓraszám' => array(20,5), 'osztályIdőkeret' => array(52,1,0,2), 'létszám' => array(14,27,23)), + '4' => array('tanulóÓraszám' => array(22,5), 'osztályIdőkeret' => array(55,1,0,2), 'létszám' => array(14,27,23)), + '5' => array('tanulóÓraszám' => array(23,5), 'osztályIdőkeret' => array(51,1,2,2), 'létszám' => array(14,27,23)), + '6' => array('tanulóÓraszám' => array(23,5), 'osztályIdőkeret' => array(51,1,2,2), 'létszám' => array(14,27,23)), + '7' => array('tanulóÓraszám' => array(26,5), 'osztályIdőkeret' => array(56,1,2,2), 'létszám' => array(14,27,23)), + '8' => array('tanulóÓraszám' => array(26,5), 'osztályIdőkeret' => array(56,1,2,2), 'létszám' => array(14,27,23)), + 'H1' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(8,10,9)), + 'H/I' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(8,10,9)), + 'H2/1' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(8,10,9)), + 'H/II/1' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(8,10,9)), + 'H2/2' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(8,10,9)), + 'H/II/2' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(8,10,9)), + '9N' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), // Nincs a mellékletben + '9/N' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)),//?? + '9Ny' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), + '9/Ny' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), + '9Kny' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), //?? + '9/Kny' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), //?? + '9AJTP' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), //?? + '9/AJTP' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), //?? + '9AJKP' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), //?? + '9/AJKP' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)),//?? + '9' => array('tanulóÓraszám' => array(30,5), 'osztályIdőkeret' => array(57,2,2,3), 'létszám' => array(26,34,28)), + '10' => array('tanulóÓraszám' => array(31,5), 'osztályIdőkeret' => array(57,2,2,3), 'létszám' => array(26,34,28)), + '11/Ny' => array('tanulóÓraszám' => array(25,5), 'osztályIdőkeret' => array(56,2,0,3), 'létszám' => array(26,34,28)), + '11' => array('tanulóÓraszám' => array(30,5), 'osztályIdőkeret' => array(58,2,2,3), 'létszám' => array(26,34,28)), + '12' => array('tanulóÓraszám' => array(30,5), 'osztályIdőkeret' => array(58,2,2,3), 'létszám' => array(26,34,28)), + '13' => array('tanulóÓraszám' => array(30,5), 'osztályIdőkeret' => array(58,2,2,3), 'létszám' => array(26,34,28)), //?? + '14' => array('tanulóÓraszám' => array(30,5), 'osztályIdőkeret' => array(58,2,2,3), 'létszám' => array(26,34,28)), //?? + '15' => array('tanulóÓraszám' => array(30,5), 'osztályIdőkeret' => array(58,2,2,3), 'létszám' => array(26,34,28)), //?? + '1/8' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '2/9' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '3/10' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '1/9' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '2/10' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '3/11' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '1/11' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '2/12' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '1/13' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '2/14' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + '5/13' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(16,28,24)), //?? + 'Szé/12/1' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(26,34,28)), + 'Szé/12/2' => array('tanulóÓraszám' => array(), 'osztályIdőkeret' => array(), 'létszám' => array(26,34,28)), +); + +// használja a kepzes.php!! +define('_SQL_EVFOLYAMJEL_SORREND', "FIELD(evfolyamJel,'1','2','3','4','5','6','7','8',". +"'9N','9/N','9Ny','9/Ny','9Kny','9/Kny','9AJTP','9/AJTP','9AJKP','9/AJKP','9','10','11/Ny','11','12','13','14','15'," +."'H1','H/I','H2','H/II/1','H/II/2'," +."'1/8','2/9','3/10','1/9','2/10','3/11'," +."'1/11','2/12','1/13','2/14','3/15','4/16','5/13','Szé/12/1','Szé/12/2')"); + +function getEvfolyamJelek($SET = array('result'=>'indexed')) { + $J = array( +'1','2','3','4','5','6','7','8', +'9N','9/N','9Ny','9/Ny','9Kny','9/Kny','9AJTP','9/AJTP','9AJKP','9/AJKP','9','10','11/Ny','11','12','13','14','15', +'H1','H/I','H2','H/II/1','H/II/2', +'1/8','2/9','3/10','1/9','2/10','3/11', +'1/11','2/12','1/13','2/14','3/15','4/16','5/13','Szé/12/1','Szé/12/2' +); + if ($SET['result'] == 'idonly') return $J; + $ret = array(); + foreach ($J as $evfolyamJel) $ret[] = array('evfolyamJel'=>$evfolyamJel); + return $ret; +} + +function getKovetkezoEvfolyamJel($evfolyamJel) { + + $q = "select distinct substring_index(substring_index(evfolyamJelek,'%s,',-1),',',1) + from osztalyJelleg where evfolyamJelek like '%s' ',%%' or evfolyamJelek like '%%,' '%s' ',%%'"; // stringek egymásutánja MySQL szerint egymásután fűzést jelöl... + $ret = db_query($q, array('fv'=>'getKovetkezoEvfolyamJel','modul'=>'naplo_base','result'=>'value','values'=>array($evfolyamJel, $evfolyamJel, $evfolyamJel))); + if ($ret == '') { + $_SESSION['alert'][] = 'info:getKovetkezoEvfolyamJel hiba:'.$evfolyamJel; + return false; + } else { + return $ret; + } +/* + if (in_array($evfolyamJel, array('1','2','3','4','5','6','7','8','9','10','11','12','13','14'))) return $evfolyamJel+1; + else if (in_array($evfolyamJel, array('11/Ny'))) return 11; + else if (in_array($evfolyamJel, array('9N','9Ny','9Kny','9AJTP','9AJKP','H2'))) return 9; + else if (in_array($evfolyamJel, array('9/N','9/Ny','9/Kny','9/AJTP','9/AJKP'))) return 9; + else if (in_array($evfolyamJel, array('7N','7Ny'))) return 7; + else if (in_array($evfolyamJel, array('7/N','7/Ny'))) return 7; + else if (in_array($evfolyamJel, array('4N','4Ny'))) return 4; + else if (in_array($evfolyamJel, array('4/N','4/Ny'))) return 4; + else if ($evfolyamJel == 'H1' || $evfolyamJel == 'H/I') return 10; + else if ($evfolyamJel == 'H/II/1') return 'H/II/2'; + else if ($evfolyamJel == 'Szé/12/1') return 'Szé/12/2'; + else if (in_array($evfolyamJel, array('1/8','2/9','1/9','2/10','1/11','2/12','1/13'))) { + list($e, $m) = explode('/',$evfolyamJel); + $e++; $m++; return $e.'/'.$m; + } + else { + $_SESSION['alert'][] = 'info:getKovetkezoEvfolyamJel hiba:'.$evfolyamJel; + return false; + } +*/ +} + +/* + * getEvfolyamAdatByDiakId + * + * return [ array('evfolyam', 'evfolyamJel') | false | array('evfolyam'=>array(), 'evfolyamJel'=>array()) + */ +function getEvfolyamAdatByDiakId($diakId, $dt, $tanev, $csakHaEgyertelmu = true) { + + $OSZTALYOK = getDiakOsztalya($diakId,array('tanev'=>$tanev,'tolDt'=>$dt,'igDt'=>$dt)); + $ret = array('evfolyam'=>array(), 'evfolyamJel'=>array()); + foreach ($OSZTALYOK as $oAdat) { + $osztalyId = $oAdat['osztalyId']; + $OA = getOsztalyAdat($osztalyId, $tanev); + $evfolyam = getEvfolyam($osztalyId, $tanev, $OA); + $evfolyamJel = getEvfolyamJel($osztalyId, $tanev, $OA); + if (!in_array($evfolyam, $ret['evfolyam'])) $ret['evfolyam'][] = $evfolyam; + if ($evfolyamJel != '' && !in_array($evfolyamJel, $ret['evfolyamJel'])) $ret['evfolyamJel'][] = $evfolyamJel; + } + if ($csakHaEgyertelmu===true) { + if (count($ret['evfolyamJel'])===1 && count($ret['evfolyam']===1)) { + return array('evfolyam'=>$ret['evfolyam'][0], 'evfolyamJel'=>$ret['evfolyamJel'][0]); + } else { + $_SESSION['alert'][] = '::nem tudom kitalálni az évfolyamot (db osztály: '.count($OSZTALYOK).", diakId: $diakId, tanev: $tanev)"; + return false; + } + } else { + return $ret; + } + +} + +//!!ITT!! +function getOsztalyIdByEvfolyamJel($evfolyamJel, $tanev = __TANEV) { + + if (is_array($evfolyamJel) && count($evfolyamJel) > 0) { + $q = "SELECT osztalyId FROM osztaly LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) + WHERE "._evfolyamJel($tanev)." IN (".implode(',', array_fill(0, count($evfolyamJel), "'%s'")).") + ORDER BY osztalyId"; + return db_query($q, array('fv' => 'getOsztalyIdByEvfolyamJe', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $evfolyamJel)); + } else { + return array(); + } +} + +function getOsztalyIdByTankorIds($tankorIds, $SET = array('result' => 'indexed')) { + $q = "SELECT tankorId,osztalyId FROM tankorOsztaly WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")"; + return db_query($q, array('fv' => 'tankorokOsztalyi', 'modul' => 'naplo_intezmeny', 'result' => $SET['result'], 'values' => $tankorIds)); +} + +// Elavult, már nem használt függvény +// function checkOsztalyInTanev($tanev, $osztalyId='') { +// +// $tanevDb = tanevDbNev(__INTEZMENY, $tanev); +// $lr = db_connect('naplo_intezmeny', array('fv' => 'checkOsztalyInTanev')); +// if (!$lr) return false; +// //$tlr = db_connect('naplo'); +// +// // Ellenőrizzük, hogy van-e az adott tanévben jele... +// $OSZTALYOK = getOsztalyok($tanev); +// for ($i = 0; $i < count($OSZTALYOK); $i++) { +// if ($OSZTALYOK[$i]['osztalyJel'] == '' && ($tanev-$OSZTALYOK[$i]['kezdoTanev']) >= 0) { +// // $v = array($tanevDb, $OSZTALYOK[$i]['osztalyId'], genOsztalyJel($tanev,$OSZTALYOK[$i])); +// $v = array($tanevDb, $OSZTALYOK[$i]['osztalyId'], $OSZTALYOK[$i]['osztalyJel'], $OSZTALYOK[$i]['evfolyam'], $OSZTALYOK[$i]['evfolyamJel']); +// $q = "REPLACE INTO `%s`.osztalyNaplo (osztalyId,osztalyJel,evfolyam,evfolyamJel) VALUES (%u,'%s',%u,'%s')"; +// db_query($q, array('fv' => 'checkOsztalyInTanev', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); +// } +// } +// db_close($lr); +// +// } + +function getOsztalyok($tanev = '', $SET = array('result' => 'indexed', 'minden'=>false, 'telephelyId' => null, 'osztalyIds'=>null), $olr=null) { + global $_TANEV,$mayorCache; + + if (!is_array($SET)) $SET = array('result' => 'indexed', 'minden'=>false, 'telephelyId' => null); + + if (!isset($SET['result'])) $SET['result'] = 'indexed'; + if (!isset($SET['minden'])) $SET['minden'] = false; + if (!isset($SET['telephelyId'])) $SET['telephelyId'] = null; + + + $key = __FUNCTION__.':'.md5($tanev.serialize($SET)); + if ($mayorCache->exists($key)) return $mayorCache->get($key); + + $W = array(); + if (is_array($SET['osztalyIds']) && count($SET['osztalyIds'])>0) { + $W[] = ' osztalyId IN ('.implode(',',$SET['osztalyIds']).') '; + } + + if ($tanev == '' && defined('__TANEV')) $tanev = __TANEV; + $telephelyId = readVariable($SET['telephelyId'], 'id'); + + // is_resource mysqli esetén nem jó (object) + if ($olr) $lr = $olr; + else $lr = db_connect('naplo_intezmeny'); + + // A tanév státuszának lekérdezése + // REQUEST -- ezt a szemeszter fv könyvtár csinálja inkább + if ($tanev == __TANEV) { + $statusz = $_TANEV['statusz']; + } else { + $q ="SELECT statusz FROM szemeszter WHERE tanev='$tanev' LIMIT 1"; + $statusz = db_query($q, array('fv' => 'getOsztalyok', 'modul' => 'naplo_intezmeny', 'result' => 'value'), $lr); + } + // Az osztályok adatainak lekérdezése + if ($SET['minden']!==true) { + if (isset($telephelyId)) { + $W[] = "kezdoTanev <= %u AND vegzoTanev >= %u AND (telephelyId = %u OR telephelyId IS NULL)"; + $v = array($tanev, $tanev, $telephelyId); + } else { + $W[] = "kezdoTanev <= %u AND vegzoTanev >= %u"; + $v = array($tanev, $tanev); + } + } else { $v = array(); } + if (count($W)>0) $WHERE = "WHERE ".implode(' AND ',$W); + if ($statusz == 'tervezett') { + // Nincs még tanév adatbázis --> csak az osztly tábla használható; + $q = "SELECT `osztalyId`, `leiras`, `kezdoTanev`, `vegzoTanev`, `jel`, `kezdoEvfolyamSorszam`,"._osztalyJel($tanev)." AS `osztalyJel`, + "._evfolyam($tanev)." AS evfolyam, "._evfolyamJel($tanev)." AS evfolyamJel, `telephelyId`,`osztalyJellegId` + FROM `osztaly` LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) $WHERE"; + } elseif ($SET['minden']===true) { + $q = "SELECT `osztalyId`, `leiras`, `kezdoTanev`, `vegzoTanev`, `jel`, `kezdoEvfolyamSorszam`, + IF (ISNULL(osztalyJel),"._osztalyJel($tanev).",osztalyJel) AS `osztalyJel`, + "._evfolyam($tanev)." AS evfolyam, "._evfolyamJel($tanev)." AS evfolyamJel, `telephelyId`,`osztalyJellegId` + FROM `osztaly` LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) + LEFT JOIN `".tanevDbNev(__INTEZMENY, $tanev)."`.`osztalyNaplo` USING (`osztalyId`) + $WHERE"; + } else { + // Van tanév adatbázis --> lekérdezhető az osztály jelölése is. + $q = "SELECT `osztaly`.`osztalyId` AS `osztalyId`, `leiras`, `kezdoTanev`, `vegzoTanev`, `jel`, `kezdoEvfolyamSorszam`, `osztalyJel`, + `evfolyam`, `evfolyamJel`, `telephelyId`,`osztalyJellegId` + FROM `osztaly` LEFT JOIN `".tanevDbNev(__INTEZMENY, $tanev)."`.`osztalyNaplo` USING (`osztalyId`) $WHERE"; + } + $q .= ' ORDER BY '._SQL_EVFOLYAMJEL_SORREND.', osztalyJel, kezdoTanev'; +// $q .= "ORDER BY evfolyamJel, kezdoTanev, jel"; +// $q .= "ORDER BY LPAD(SUBSTRING_INDEX(`osztalyJel`,'.',1),4,'0'),LPAD(SUBSTRING_INDEX(`osztalyJel`,'.',-1),4,'0'),`kezdoTanev`,`jel`"; + + $return = array(); + if ($SET['result']==='assoc') { // ha assoc, a keyfield automatikusan az osztalyId legyen!!! + $r1 = db_query($q, array('fv' => 'getOsztalyok', 'modul'=>'naplo_intezmeny', 'result'=>'indexed', 'values' => $v), $lr ); + for ($i=0; $i 'getOsztalyok', 'modul'=>'naplo_intezmeny', 'result'=>'indexed', 'values' => $v), $lr ); + for ($i=0; $iset($key,$return,'osztaly'); + return $return; + +} + +/* + erettsegizo - csak azok az osztályok jelennek meg, melyek a megadott tanévben végeznek és osztályJellegük szerint érettségizők + vizsgazo - csak azok az osztályok jelennek meg, melyek a megadott tanévben végeznek és osztályJellegük szerint érettségizők vagy szakmai vizsgát tevők +*/ +function getVegzosOsztalyok($SET = array('tanev' => __TANEV, 'result' => 'assoc', 'erettsegizo' => false, 'vizsgazo' => false)) { + + global $_TANEV; + + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + if ($tanev == __TANEV) $TA = $_TANEV; + else $TA = getTanevAdat($tanev); + + if ($SET['erettsegizo'] === true) { + $WHERE_ERETTSEGIZO = " AND vegzesKovetelmenye='érettségi vizsga' "; + $JOIN_ERETTSEGIZO = " LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) "; + } else if ($SET['vizsgazo'] === true) { + $WHERE_ERETTSEGIZO = " AND vegzesKovetelmenye IN ('érettségi vizsga','szakmai vizsga') "; + $JOIN_ERETTSEGIZO = " LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) "; + } else { + $WHERE_ERETTSEGIZO = ""; + } + + if ($SET['result'] == 'id' || $SET['result'] == 'idonly') { + // Csak az osztalyId kell + $q = "SELECT osztalyId FROM osztaly".$JOIN_ERETTSEGIZO." WHERE osztaly.vegzoTanev = %u".$WHERE_ERETTSEGIZO.""; + $return = db_query($q, array('fv' => 'getVegzosOsztalyok', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tanev))); + } else { + if ($TA['statusz'] == 'tervezett') { + // Nincs még tanév adatbázis --> csak az osztly tábla használható; + $q = "SELECT osztalyId,leiras,kezdoTanev,vegzoTanev,jel,kezdoEvfolyamSorszam,"._osztalyJel($tanev)." AS osztalyJel + FROM osztaly".$JOIN_ERETTSEGIZO." + WHERE vegzoTanev = %u".$WHERE_ERETTSEGIZO." + ORDER BY LPAD(SUBSTRING_INDEX(osztalyJel,'.',1),4,'0'),LPAD(SUBSTRING_INDEX(osztalyJel,'.',-1),4,'0'),kezdoTanev,jel"; + $v = array($tanev); + } else { + // Van tanév adatbázis --> lekérdezhető az osztály jelölése is. + $q = "SELECT osztaly.osztalyId AS osztalyId,leiras,kezdoTanev,vegzoTanev,jel,kezdoEvfolyamSorszam,osztalyJel + FROM osztaly LEFT JOIN `%s`.osztalyNaplo USING (osztalyId)".$JOIN_ERETTSEGIZO." + WHERE vegzoTanev = %u".$WHERE_ERETTSEGIZO." + ORDER BY LPAD(SUBSTRING_INDEX(osztalyJel,'.',1),4,'0'),LPAD(SUBSTRING_INDEX(osztalyJel,'.',-1),4,'0'),kezdoTanev,jel"; + $v = array(tanevDbNev(__INTEZMENY, $tanev), $tanev); + } + $return = db_query($q, array('fv' => 'getVegzosOsztalyok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + if (is_array($return)) for ($i = 0; $i < count($return); $i++) { + $return[$i]['osztalyfonok'] = getOsztalyfonok($return[$i]['osztalyId'], $tanev); + } + } + + return $return; +} + +function getOsztalyfonok($osztalyId, $tanev=__TANEV, $olr = null) { + + global $_TANEV; + + // Az adott tanév elejének és végének lekérdezése + if ($tanev != __TANEV) $tanevAdat = getTanevAdat($tanev, $olr); + else $tanevAdat = $_TANEV; + + initTolIgDt($tanev, $kDt, $zDt); + + $q = "SELECT osztalyTanar.tanarId, + TRIM(CONCAT(viseltNevElotag,' ',viseltCsaladiNev,' ',viseltUtonev)) As tanarNev, osztalyTanar.beDt, osztalyTanar.kiDt + FROM osztalyTanar LEFT JOIN tanar USING (tanarId) + WHERE osztalyId = %u + AND osztalyTanar.beDt <= '%s' + AND (osztalyTanar.kiDt IS NULL OR osztalyTanar.kiDt > '%s') + ORDER BY osztalyTanar.beDt DESC LIMIT 1"; + $v = array($osztalyId, $zDt, $kDt); + return db_query($q, array('fv' => 'getOsztalyfonok', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v), $olr); + +} + +function getOsztalyfonokok($osztalyId, $tanev = null, $olr = null) { + + global $_TANEV; + + $ret = false; + if (is_null($tanev)) { + + $q = "SELECT osztalyTanar.tanarId AS tanarId, + TRIM(CONCAT(viseltNevElotag,' ',viseltCsaladiNev,' ',viseltUtonev)) AS tanarNev, + osztalyTanar.beDt AS beDt, + osztalyTanar.kiDt AS kiDt + FROM osztalyTanar LEFT JOIN tanar USING (tanarId) + WHERE osztalyId = %u + ORDER BY osztalyTanar.beDt"; + $ret = db_query($q, array('fv' => 'getOsztalyfonokok','modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($osztalyId)), $olr); + + } else { + + // Az adott tanév elejének és végének lekérdezése + if ($tanev != __TANEV) $tanevAdat = getTanevAdat($tanev, $olr); + else $tanevAdat = $_TANEV; + + $kDt = $tanevAdat['kezdesDt']; $zDt = $tanevAdat['zarasDt']; + + $q = "SELECT osztalyTanar.tanarId AS tanarId, + TRIM(CONCAT(viseltNevElotag,' ',viseltCsaladiNev,' ',viseltUtonev)) AS tanarNev, + osztalyTanar.beDt AS beDt, + osztalyTanar.kiDt AS kiDt + FROM osztalyTanar LEFT JOIN tanar USING (tanarId) + WHERE osztalyId = %u + AND osztalyTanar.beDt < '%s' + AND (osztalyTanar.kiDt IS NULL OR osztalyTanar.kiDt > '%s') + ORDER BY osztalyTanar.beDt"; + + $ret = db_query($q, array('fv' => 'getOsztalyfonokok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($osztalyId, $zDt, $kDt))); + if (is_array($ret)) for ($i = 0; $i < count($ret); $i++) { + if ($ret[$i]['kiDt'] == '' || strtotime($ret[$i]['kiDt']) > time()) { + $ret[$i]['aktiv'] = true; + } + } + + } + + return $ret; + +} + +function getOsztalyAdat($osztalyId, $tanev = __TANEV, $olr = '') { + + if ($osztalyId=='') return false; + + global $_TANEV; + + // Csatlakozás az adatbázishoz + if ($olr == '') $lr = db_connect('naplo_intezmeny', array('fv' => 'getOsztalyAdat')); + else $lr = $olr; + if (!$lr) return false; + + // Osztály adatainak lekérdezése + if ($tanev == __TANEV) { + $tanevDb = __TANEVDBNEV; $TA = $_TANEV; + } else { + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + $TA = getTanevAdat($tanev, $lr); + } + if ($TA['statusz'] == 'aktív') + $q = "SELECT osztaly.osztalyId AS osztalyId,leiras,kezdoTanev,vegzoTanev,jel,kezdoEvfolyamSorszam,osztalyJel,evfolyamJel,telephelyId,osztalyJellegId,kirOsztalyJellegId,elokeszitoEvfolyam,evfolyamJelek + FROM osztaly LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) + LEFT JOIN %1\$s.osztalyNaplo USING (osztalyId) WHERE osztalyId=%2\$u"; + else + $q = "SELECT osztaly.osztalyId AS osztalyId,leiras,kezdoTanev,vegzoTanev,jel,kezdoEvfolyamSorszam,"._osztalyJel($tanev)." AS osztalyJel,"._evfolyamJel($tanev)." AS evfolyamJel,telephelyId,osztalyJellegId,kirOsztalyJellegId,elokeszitoEvfolyam,evfolyamJelek + FROM osztaly LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) WHERE osztalyId=%2\$u"; + $v = array($tanevDb, $osztalyId); + $osztalyAdat = db_query($q, array('fv' => 'getOsztalyAdat', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v), $lr); + $osztalyAdat['evfolyamJelek'] = explode(',',$osztalyAdat['evfolyamJelek']); + $osztalyAdat['osztalyfonok'] = getOsztalyfonok($osztalyId, $tanev, $lr); + $osztalyAdat['osztalyfonokok'] = getOsztalyfonokok($osztalyId, $tanev, $lr); + $osztalyAdat['osztalyfonokNev'] = _genOfNev($osztalyAdat['osztalyfonokok']); + $osztalyAdat['kepzes'] = getKepzesByOsztalyId($osztalyId); // ? lr + if ($olr == '') db_close($lr); + + return $osztalyAdat; + +} + +function _genOfNev($_OF) { + $_of= array(); + for ($j=0; $j__TANEV)) { + $OA = getOsztalyAdat($osztalyId, $SET['tanev']); + return $OA['osztalyJel'].' '.$OA['leiras']; +} + +function getOsztalyTankorei($osztalyId, $tanev=__TANEV) { + + $lr = db_connect('naplo_intezmeny'); + + $q = "SELECT tankorId FROM tankorOsztaly WHERE osztalyId=%u"; + $T = db_query($q, array('fv' => 'getOsztalyTankorei', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($osztalyId)), $lr); + + $q = "SELECT DISTINCT tankorId, tankorNev + FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) + WHERE tanev=%u AND tankorId IN (".implode(',', array_fill(0, count($T), '%u')).") ORDER BY tankorNev"; + array_unshift($T, $tanev); + $return = db_query($q, array('fv' => 'getOsztalyTankorei', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $T), $lr); + + db_close($lr); + + return $return; + +} + +function getOsztalyJellegAdat($osztalyJellegId) { + $q = "SELECT * FROM osztalyJelleg WHERE osztalyJellegId=%u"; + return db_query($q, array('fv'=>'getKirOsztalyJellegek','values'=>array($osztalyJellegId),'modul'=>'naplo_base','result'=>'record')); +} + +function getKirOsztalyJellegek() { + $q = "SELECT * FROM kirOsztalyJelleg"; + return db_query($q, array('fv'=>'getKirOsztalyJellegek','modul'=>'naplo_base','result'=>'indexed')); +} + +function getOsztalyJellegek($SET = array('result' => 'indexed')) { + $q = "SELECT * FROM osztalyJelleg"; + return db_query($q, array('fv'=>'getOsztalyJellegek','modul'=>'naplo_base','result'=>$SET['result'], 'keyfield' => 'osztalyJellegId')); +} + +function getVegzosOsztalyJellegIds() { + $q = "SELECT osztalyJellegId FROM osztalyJelleg WHERE vegzesKovetelmenye IN ('érettségi vizsga','szakmai vizsga')"; + return db_query($q, array('fv'=>'getVegzosOsztalyJellegIds','modul'=>'naplo_base','result'=>'idonly')); +} + +function getOsztalyEvfolyamSzamElteres($osztalyId) { + $q = "SELECT CONVERT(vegzoTanev-kezdoTanev,SIGNED) - CONVERT((LENGTH(`evfolyamJelek`)-LENGTH(REPLACE(`evfolyamJelek`, ',', ''))),SIGNED) AS evfolyamSzamElteres FROM osztaly LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) WHERE osztalyId=%u"; + $v = array($osztalyId); + $r = db_query($q, array('fv'=>'checkOsztalyEvfolyamSzam','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + return $r; +} + +function getOsztalyHetiIdokeret($osztalyId, $osztalyAdat = null, $SET = array('egyhaziE' => null)) { + + global $_EVFOLYAM_ADAT; + + require_once('include/modules/naplo/share/intezmenyek.php'); + + if (!is_array($osztalyAdat)) $osztalyAdat = getOsztalyAdat($osztalyId); + if (is_null($SET['egyhaziE'])) { + $intezmenyAdat = getIntezmenyByRovidnev(__INTEZMENY); + $SET['egyhaziE'] = ($intezmenyAdat['fenntarto']=='egyházi'); + } + + $iAdat = $_EVFOLYAM_ADAT[$osztalyAdat['evfolyamJel']]['osztályIdőkeret']; + + $idokeret['engedélyezett'] = $idokeret['összes'] = $iAdat[0]; // engedélyezett + $idokeret['összes'] += $idokeret['tehetséggondozás-felzárkóztatás'] = 2; // tehettség gondozás, felzárkóztatás + if ($SET['egyhaziE']) $idokeret['összes'] += $idokeret['egyházi'] = $iAdat[1]; + if (in_array($osztalyAdat['osztalyJellegId'], array(51,52,53,61,62,63))) $idokeret['összes'] += $idokeret['gimnázium'] = $iAdat[2]; + if ($nemzetisegi) $idokeret['összes'] += $idokeret['nemzetiségi'] = $iAdat[3]; + + return $idokeret; + +} + +function getOsztalyByTanarId($tanarId, $Param = array('tanev' => __TANEV, 'tolDt' => '', 'igDt' => '', 'csakId'=>true)) { + + global $_TANEV; + if (is_null($Param['tanev']) || $Param['tanev']=='') $Param['tanev']=__TANEV; + if ($Param['tanev'] != __TANEV && $Param['tanev']!='') $TA = getTanevAdat($Param['tanev']); + else $TA = $_TANEV; + + if (isset($Param['tolDt']) && $Param['tolDt']!='') $tolDt = $Param['tolDt']; else unset($tolDt); + if (isset($Param['igDt']) && $Param['igDt']!='') $igDt = $Param['igDt']; else unset($igDt); + initTolIgDt($Param['tanev'], $tolDt, $igDt); + + if ($Param['csakId']===true) { + $q = "SELECT DISTINCT osztalyId FROM ".__INTEZMENYDBNEV.".osztalyTanar WHERE tanarId=%u AND beDt <= '%s' + AND (kiDt IS NULL OR kiDt >= '%s')"; + $v = array($tanarId, $igDt, $tolDt); + return db_query($q, array('fv' => 'getOsztalyByTanarId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + } else { + $q = "SELECT DISTINCT osztalyId, "._osztalyJel($TA['tanev'])." AS osztalyJel + FROM ".__INTEZMENYDBNEV.".osztalyTanar LEFT JOIN osztaly USING (osztalyId) + LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) + WHERE tanarId=%u AND beDt <= '%s' + AND (kiDt IS NULL OR kiDt >= '%s')"; + $v = array($tanarId, $igDt, $tolDt); + return db_query($q, array('fv' => 'getOsztalyByTanarId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + } +} + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztalyModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztalyModifier.php new file mode 100644 index 00000000..fe04fdcc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztalyModifier.php @@ -0,0 +1,313 @@ + kiDt +function osztalyfonokKileptetes($osztalyId, $tanarId, $beDt, $kiDt, $olr = null) { + global $mayorCache; + $mayorCache->delType('osztaly'); + + if (strtotime($beDt) > strtotime($kiDt)) { + $_SESSION['alert'][] = 'message:wrong_data:'.$beDt.' - '.$kiDt; + return false; + } + + $q = "UPDATE ".__INTEZMENYDBNEV.".osztalyTanar SET kiDt='%s' WHERE osztalyId=%u AND tanarId=%u AND beDt='%s'"; + $v = array($kiDt, $osztalyId, $tanarId, $beDt); + return db_query($q, array('fv' => 'osztalyfonokKileptetes', 'modul' => 'naplo_intezmeny', 'values' => $v), $olr); + +} + + + +// MÁR NINCS HASZNÁLATBAN!!!!!!!!!!!! +function osztalyNevsorModositas($osztalyId, $diakIds, $beDt, $kiDt, $olr='') { + +// 1. A kiDt utáni tankörtagságokat törli, ha a tankör nincs a diák másik kiDt-kori, vagy utána lévő osztályához is rendelve (tankoOsztaly) +// 2. A beDt előtti tankörtagságokat érintetlenül hagyjuk (a tankorOsztaly változhat...) +// 3. Az osztalyDiak-ban (osztalyId,diakId) kulcs - csak egy bejegyzés van, ezt bővítjük, szűkítjük... +// 4. Sikertelen tankör kiléptetés esetén visszagörgetünk (pl. ha van jegye, hiányzása egy tankörben) + + + $_SESSION['alert'][] = 'info:!!!:osztalyNevsorModositas()'; + + if (is_array($diakIds) && count($diakIds) > 0) { + + if ($olr!='') { + $lr=$olr; + } else { + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + } + + $diakTankorKileptetesOK = array(); // a diakTorol függvény talált-e ütközést vagy hibát, akkor bebillenti ezt a flag-et, false-ra! + + if ($kiDt != '') { + /* Konzisztencia megőrzése: tankorből kiléptetés, ahol: tankorOsztaly --> tankorId-k be benne van */ + for($i = 0; $i < count($diakIds); $i++) { + + $diakId = $diakIds[$i]; + + // A diáknak mely tankörei érintettek (amikben a kiDt-kor, vagy utána benne van, de más (kiDt-kori, vagy későbbi) osztályához nem tartozik: + $q = "SELECT tankorId FROM tankorDiak WHERE diakId=%u AND (kiDt IS NULL or '%s'<=kiDt) AND tankorId NOT IN + (SELECT DISTINCT tankorId FROM osztalyDiak LEFT JOIN tankorOsztaly USING(osztalyId) + WHERE diakId=%u AND (kiDt is NULL or '%s'<=kiDt) AND osztalyId <> %u)"; + $v = array($diakId, $kiDt, $diakId, $kiDt, $osztalyId); + $tankorIds = db_query($q, array('fv' => 'osztalyNevsorModositas', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $lr); + + // Tankörökből kivétel - $kiDt utáni naptól + $diakTankorKileptetesOK[$diakId] = true; + for ($j = 0; $j < count($tankorIds); $j++) { + $_D = array('tankorId' => $tankorIds[$j], 'diakId' => $diakId, 'utkozes'=>'torles', 'tolDt' => date('Y-m-d', strtotime('+1 days', strtotime($kiDt)))); + $ret = tankorDiakTorol($_D, $lr); + if ($ret === false) { + $_SESSION['alert'][] = 'message:wrong_data:osztalyNevsorModositas - tankorDiakTorol FAILED - diakId='.$diakId.' - tankorId='.$tankorIds[$j]; + $diakTankorKileptetesOK[$diakId] = false; + } + } + // Visszajelzés + if (count($tankorIds) > 0 && $diakTankorKileptetesOK[$diakId] === true) + $_SESSION['alert'][] = 'info:diak_tankorokben_lezarva:'.$diakId.':'.implode(',',$tankorIds).':'.$kiDt; + // Megjegyzés: a beDt előtti tankörtagságokat nem állítjuk be... mert a tankorOsztaly összerendelés változhat... + } + + } + + if (!in_array(false, array_values($diakTankorKileptetesOK))) { + + // (osztalyId, diakId) kulcs, csak egy bejegyzés van... + if ($beDt == '') { + $q = "UPDATE osztalyDiak SET kiDt='%s' WHERE osztalyId=%u AND diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).")"; + array_unshift($diakIds, $kiDt, $osztalyId); + } elseif ($kiDt != '') { + $q = "UPDATE osztalyDiak SET beDt='%s', kiDt='%s' WHERE osztalyId=%u AND diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).")"; + array_unshift($diakIds, $beDt, $kiDt, $osztalyId); + } else { + $q = "UPDATE osztalyDiak SET beDt='%s', kiDt=NULL WHERE osztalyId=%u AND diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).")"; + array_unshift($diakIds, $beDt, $osztalyId); + } + $ret = db_query($q, array('fv' => 'osztalyNevsorModositas', 'modul' => 'naplo_intezmeny', 'values' => $diakIds, 'rollback' => true), $lr); + db_commit($lr); + + } else { + db_rollback($lr); + $ret = false; + } + if ($olr!='') { + + } else { + db_close($lr); + } + + return $ret; + + } else { return false; } // nincs diakId + +} + + +function osztalyLezaras($osztalyIds, $dt) { + + global $mayorCache; + $mayorCache->delType('osztaly'); + + $dt = readVariable($dt, 'datetime', null); + if (!isset($dt)) return false; + + if (!is_array($osztalyIds) && $osztalyIds != '') $osztalyIds = array($osztalyIds); + if (count($osztalyIds) == 0) return false; + + // lekérdezzük az érintett osztályok végző tanévének legnagyobb zárás dátumát. + $q = "SELECT MAX(zarasDt) FROM osztaly LEFT JOIN szemeszter ON vegzoTanev = tanev + WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).")"; + $zarasDt = db_query($q, array('fv' => 'osztalyLezaras/ellenőrzés', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $osztalyIds)); + + // Csak zarasDt utáni dátummal zárunk le osztályt! + if (strtotime($dt) < strtotime($zarasDt)) return false; + + // Tagok kiléptetése + $q = "UPDATE osztalyDiak SET kiDt='%s' WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + AND (kiDt IS NULL OR '%s' < kiDt)"; + $v = mayor_array_join(array($dt), $osztalyIds, array($dt)); + db_query($q, array('fv' => 'osztalyLezaras/tagok kiléptetése', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + // Osztályfőnöki megbizatás lezárása + // - Az érintett tanárok lekérdezése + $q = "SELECT DISTINCT tanarId FROM osztalyTanar WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + AND (kiDt IS NULL OR '%s' < kiDt)"; + $v = mayor_array_join($osztalyIds, array($dt)); + $tanarIds = db_query($q, array('fv' => 'osztalyLezaras/tanárok kiléptetése', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + if (is_array($tanarIds) && count($tanarIds) > 0) { + // - Az osztályfőnöki megbizatás lezárása + $q = "UPDATE osztalyTanar SET kiDt='%s' WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + AND (kiDt IS NULL OR '%s' < kiDt)"; + $v = mayor_array_join(array($dt), $osztalyIds, array($dt)); + db_query($q, array('fv' => 'osztalyLezaras/tanárok kiléptetése', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + // Az osztályfőnöki munkaközösség frissítése + $q = "SELECT mkId FROM munkakozosseg WHERE leiras='osztályfőnöki'"; + $mkId = db_query($q, array('fv' => 'osztalyLezaras/tanárok kiléptetése', 'modul' => 'naplo_intezmeny', 'result' => 'value')); + if ($mkId) { // Van egyáltalán osztályfőnöki munkaközösség + $q = "SELECT mkTanar.tanarId + FROM mkTanar LEFT JOIN osztalyTanar ON mkTanar.tanarId=osztalyTanar.tanarId + AND osztalyId NOT IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + WHERE mkId=%u AND mkTanar.tanarId IN (".implode(',', array_fill(0, count($tanarIds), '%u')).") + GROUP BY mkTanar.tanarId HAVING COUNT(osztalyId)=0"; + $v = mayor_array_join($osztalyIds, array($mkId), $tanarIds); + $ofoTanarIds = db_query($q, array( + 'fv' => 'osztalyLezaras/tanárok kiléptetése', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v + )); + if (is_array($ofoTanarIds) && count($ofoTanarIds) > 0) { + $q = "DELETE FROM mkTanar WHERE mkId=%u AND tanarId IN (".implode(',', array_fill(0, count($ofoTanarIds), '%u')).")"; + $v = mayor_array_join(array($mkId), $ofoTanarIds); + db_query($q, array( + 'fv' => 'osztalyLezaras/tanárok kiléptetése az osztályfőnöki munkaközösségből', 'modul' => 'naplo_intezmeny', 'values' => $v + )); + } + } + } + return true; + +} + +function osztalyDiakTorol($SET = array('osztalyId' => null, 'diakId' => null, 'tolDt' => null, 'igDt' => null, 'zaradekkal' => true), $olr='') { +/* + 1. Ha az intervallum belelóg valamelyik lezárt tanévbe, akkor afüggvény nem végzi el az osztályból va kiléptetést. + 2. A $tolDt-$igDt közötti tankörtagságokat törli, ha a tankör nincs a diák másik tolDt-kori, vagy utána lévő osztályához is rendelve (tankoOsztaly) + 3. Ha a tankörökből nem sikerül törölni, akkor visszagörgetés történik + 4. A $tolDt-$igDt intervallumban törli a diák osztálytagságát ($igDt hiányában végig) + 5. Záradékolás még nincs. +*/ + + $diakId = readVariable($SET['diakId'], 'id'); + $osztalyId = readVariable($SET['osztalyId'], 'id'); + $tolDt = readVariable($SET['tolDt'], 'date'); + $igDt = readVariable($SET['igDt'], 'date'); + $zaradekkal = readVariable($SET['zaradekkal'], 'bool', false); + + // Csatlakozás az adatbázishoz + if ($olr=='') { + $lr = db_connect('naplo_intezmeny', array('fv' => 'ujTag')); + if (!$lr) return false; + db_start_trans($lr); + } else { + $lr = $olr; + } + + // Ellenőrizzük, hogy $tolDt-$igDt nem érint-e lezárt szorgalmi időszakot + if (isset($igDt)) { + $q = "SELECT DISTINCT tanev FROM szemeszter WHERE statusz IN ('lezárt','archivált') AND '%s'<=zarasDt AND kezdesDt<='%s'"; + $v = array($tolDt, $igDt); + } else { + $q = "SELECT DISTINCT tanev FROM szemeszter WHERE statusz IN ('lezárt','archivált') AND '%s'<=zarasDt"; + $v = array($tolDt); + } + $ret = db_query($q, array('fv' => 'osztalyDiakTorol', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $lr); + if (is_array($ret) && count($ret) > 0) { + $_SESSION['alert'][] = 'message:wrong_data:Lezárt tanév - '.implode(', ', $ret); + if ($olr=='') { + db_rollback($lr); + db_close($lr); + } + return false; + } + + // ----- Tankörök ------ + // A diáknak mely tankörei érintettek (amikben a kiDt-kor, vagy utána benne van, de más (kiDt-kori, vagy későbbi) osztályához nem tartozik: + $q = "SELECT tankorId FROM tankorDiak WHERE diakId=%u AND (kiDt IS NULL or '%s'<=kiDt) AND tankorId NOT IN + (SELECT DISTINCT tankorId FROM osztalyDiak LEFT JOIN tankorOsztaly USING(osztalyId) + WHERE diakId=%u AND (kiDt is NULL or '%s'<=kiDt) AND osztalyId <> %u)"; + $v = array($diakId, $tolDt, $diakId, $tolDt, $osztalyId); + $tankorIds = db_query($q, array('fv' => 'osztalyDiakTorol', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $lr); + + // Tankörökből kivétel - $tolDt-től + $diakTankorKileptetesOK = true; + for ($j = 0; $j < count($tankorIds); $j++) { + $_D = array('tankorId' => $tankorIds[$j], 'diakId' => $diakId, 'utkozes'=>'torles', 'tolDt' => $tolDt, 'igDt' => $igDt); + $ret = tankorDiakTorol($_D, $lr); + if ($ret === false) { + $_SESSION['alert'][] = 'message:wrong_data:osztalyDiakTorol - tankorDiakTorol FAILED - diakId='.$diakId.' - tankorId='.$tankorIds[$j]; + $diakTankorKileptetesOK = false; + $R[] = false; + } + } + // Visszajelzés + if (count($tankorIds) > 0 && $diakTankorKileptetesOK[$diakId] === true) { + $_SESSION['alert'][] = 'info:diak_tankorokben_lezarva:'.$diakId.':'.implode(',',$tankorIds).':'.$tolDt.' - '.$igDt; + // Megjegyzés: a beDt előtti tankörtagságokat nem állítjuk be... mert a tankorOsztaly összerendelés változhat... + } + + // ------- Tankörök vége------------ + + // Van-e már $tolDt-t tartalmazó osztálytagsága + $q = "SELECT beDt,kiDt FROM osztalyDiak WHERE osztalyId=%u AND diakId=%u AND beDt<'%s' AND (kiDt IS NULL OR kiDt >= '%s')"; + $ret = db_query($q, array('fv' => 'osztalyDiakTorol/bal', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($osztalyId, $diakId, $tolDt, $tolDt)), $lr); + if (!is_null($ret)) { + // Ha van, akkor azt levégjuk $tolDt előtt 1 nappal + $q = "UPDATE osztalyDiak SET kiDt='%s' - INTERVAL 1 DAY WHERE osztalyId=%u AND diakId=%u AND beDt='%s'"; + $R[] = db_query($q, array('fv' => 'osztalyDiakTorol/bal levágás', 'modul' => 'naplo_intezmeny', 'values' => array($tolDt, $osztalyId, $diakId, $ret['beDt'])), $lr); + // Ha átnyuló tagság, akkor felvesszük a jobboldali szakaszt igDt után 1 nappal + if (!is_null($igDt)) { + if (is_null($ret['kiDt'])) { // kiDt NULL + $q = "INSERT INTO osztalyDiak (osztalyId, diakId, beDt, kiDt) VALUES (%u, %u, '%s' + INTERVAL 1 DAY, NULL)"; + $R[] = db_query($q, array('fv' => 'osztalyDiakTorol/jobb beszúrás', 'modul' => 'naplo_intezmeny', 'values' => array($osztalyId, $diakId, $igDt)), $lr); + } elseif (strtotime($igDt) < strtotime($ret['kiDt'])) { // kiDt rögzített és túllóg igDt-n + $q = "INSERT INTO osztalyDiak (osztalyId, diakId, beDt, kiDt) VALUES (%u, %u, '%s' + INTERVAL 1 DAY, '%s')"; + $R[] = db_query($q, array('fv' => 'osztalyDiakTorol/jobb beszúrás', 'modul' => 'naplo_intezmeny', 'values' => array($osztalyId, $diakId, $igDt, $ret['kiDt'])), $lr); + } + } + } + // Van-e $igDt-t tartalmazó osztály tagsága + if ($igDt != '') { + $q = "SELECT beDt FROM osztalyDiak WHERE osztalyId=%u AND diakId=%u AND beDt<'%s' AND (kiDt IS NULL OR kiDt >= '%s')"; + $ret = db_query($q, array('fv' => 'osztalyDiakTorol/jobb', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($osztalyId, $diakId, $igDt, $igDt)), $lr); + if (!is_null($ret)) { + // Ha van, akkor azt levégjuk $igDt után 1 nappal + $q = "UPDATE osztalyDiak SET beDt='%s' + INTERVAL 1 DAY WHERE osztalyId=%u AND diakId=%u AND beDt='%s'"; + $R[] = db_query($q, array('fv' => 'osztalyDiakTorol/jobb levágás', 'modul' => 'naplo_intezmeny', 'values' => array($igDt, $osztalyId, $diakId, $ret['beDt'])), $lr); + } + // A köztes tagságokat töröljük + $q = "DELETE FROM osztalyDiak WHERE osztalyId=%u AND diakId=%u AND '%s'<=beDt AND kiDt <= '%s'"; + $R[] = db_query($q, array('fv' => 'osztalyDiakTorol', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($osztalyId, $diakId, $tolDt, $igDt)), $lr); + } else { + // A $tolDt utáni tagságokat töröljük + $q = "DELETE FROM osztalyDiak WHERE osztalyId=%u AND diakId=%u AND '%s'<=beDt"; + $R[] = db_query($q, array('fv' => 'osztalyDiakTorol', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($osztalyId, $diakId, $tolDt)), $lr); + } + + if ($olr=='') { + if (in_array(false,$R)) { + db_rollback($lr); + } else { + db_commit($lr); + } + db_close($lr); + } + if (in_array(false,$R)) return false; else return true; +} + +function osztalyTorzslapszamGeneralas($osztalyId) { + + $q = "SELECT kezdoTanev, vegzoTanev FROM osztaly WHERE osztalyId=%u"; + $oAdat = db_query($q, array('fv'=>'osztalyTorzslapszamGeneralas','modul'=>'naplo_intezmeny','result'=>'record','values'=>array($osztalyId))); + $range = range(intval($oAdat['kezdoTanev']), intval($oAdat['vegzoTanev'])); + + // A replace nem törli ki a hibás/felesleges bejegyzéseket... + $q = "DELETE FROM diakTorzslapszam WHERE osztalyId=%u"; + db_query($q, array('fv'=>'osztalyTorzslapszamGeneralas/del','modul'=>'naplo_intezmeny','values'=>array($osztalyId))); + + // Egyszerű insert-tel valamiért nem megy... ?? + $q = "REPLACE INTO diakTorzslapszam + SELECT %1\$u as osztalyId, diakId, @rank := @rank+1 AS torzslapszam FROM ( + SELECT DISTINCT diakId"; + foreach ($range as $ev) { + $q .= ",ifnull(diakNaploSorszam(diakId, $ev, %1\$u),99) as ns".$ev; + } + $q .= " FROM osztalyDiak WHERE osztalyId=%1\$u ORDER BY ns".implode(', ns', $range)." + ) t1, (SELECT @rank := 0) t2 + WHERE ns".implode('<>99 OR ns', $range)."<>99"; + + $return = db_query($q, array('debug'=>false,'fv'=>'osztalyTorzslapszamGeneralas/replace','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>array($osztalyId))); + + return $return; +} + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztalyzatok.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztalyzatok.php new file mode 100644 index 00000000..321aaf4a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/osztalyzatok.php @@ -0,0 +1,342 @@ + array('1.0','2.0','3.0','4.0','5.0'), + 'sikertelen' => array('1.0'), + 'átlagolható' => true, + '1.0' => array('rovid' => '1', 'hivatalos' => 'ELEGTELEN'), + '2.0' => array('rovid' => '2', 'hivatalos' => 'ELEGSEGES', 'megjegyzes' => 'figyelmeztető'), + '3.0' => array('rovid' => '3', 'hivatalos' => 'KOZEPES'), + '4.0' => array('rovid' => '4', 'hivatalos' => 'JO',), + '5.0' => array('rovid' => '5', 'hivatalos' => 'JELES', 'megjegyzes' => 'dicséret'), + ); +} +// 2011. évi CXC. törvény 54. § (2) b) +if (!isset($KOVETELMENY['magatartás']) || !is_array($KOVETELMENY['magatartás'])) { + $KOVETELMENY['magatartás']=array( + 'értékek' => array('2.0','3.0','4.0','5.0'), + 'sikertelen' => array(), + 'átlagolható' => true, + '2.0' => array('rovid' => '2', 'hivatalos' => 'ROSSZ'), + '3.0' => array('rovid' => '3', 'hivatalos' => 'VALTOZO'), + '4.0' => array('rovid' => '4', 'hivatalos' => 'JO'), + '5.0' => array('rovid' => '5', 'hivatalos' => 'PELDAS'), + ); +} +// 2011. évi CXC. törvény 54. § (2) c) +if (!isset($KOVETELMENY['szorgalom']) || !is_array($KOVETELMENY['szorgalom'])) { + $KOVETELMENY['szorgalom']=array( + 'értékek' => array('2.0','3.0','4.0','5.0'), + 'sikertelen' => array(), + 'átlagolható' => true, + '2.0' => array('rovid' => '2', 'hivatalos' => 'HANYAG'), + '3.0' => array('rovid' => '3', 'hivatalos' => 'VALTOZO'), + '4.0' => array('rovid' => '4', 'hivatalos' => 'JO'), + '5.0' => array('rovid' => '5', 'hivatalos' => 'PELDAS'), + ); +} +// 2011. évi CXC. törvény 54. § (3) +if (!isset($KOVETELMENY['négyszintű (szöveges minősítés)']) || !is_array($KOVETELMENY['négyszintű (szöveges minősítés)'])) { + $KOVETELMENY['négyszintű (szöveges minősítés)']= array( + 'értékek' => array('1.0','2.0','3.0','4.0'), + 'sikertelen' => array('1.0'), + 'átlagolható' => false, + '1.0' => array('rovid' => 'FSZ', 'hivatalos' => 'FELZARKOZTATASRA_SZORUL'), + '2.0' => array('rovid' => 'MFT', 'hivatalos' => 'MEGFELELOEN_TELJESITETT'), + '3.0' => array('rovid' => 'JT', 'hivatalos' => 'JOL_TELJESITETT'), + '4.0' => array('rovid' => 'KT', 'hivatalos' => 'KIVALOAN_TELJESITETT'), + ); +} +// 2011. évi CXC. törvény +// 6. § (4) Az érettségi bizonyítvány kiadásának feltétele ötven óra közösségi szolgálat elvégzésének igazolása. A felnőttoktatás keretében szervezett érettségi vizsga esetében közösségi szolgálat végzésének igazolása nélkül is meg lehet kezdeni az érettségi vizsgát. A sajátos nevelési igényű tanulók esetében a szakértői bizottság ez irányú javaslata alapján a közösségi szolgálat mellőzhető. +// 15. közösségi szolgálat: szociális, környezetvédelmi, a tanuló helyi közösségének javát szolgáló, szervezett keretek között folytatott, anyagi érdektől független, egyéni vagy csoportos tevékenység és annak pedagógiai feldolgozása, +if (!isset($KOVETELMENY['teljesített óra']) || !is_array($KOVETELMENY['teljesített óra'])) { + + $KOVETELMENY['teljesített óra']['sikertelen']= array(); // nem kötelező! + $KOVETELMENY['teljesített óra']['átlagolható']= false; + $KOVETELMENY['teljesített óra']['összeadható']= true; + for ($i=1; $i<=100; $i++) { + $_ertek = ($i%2 == 0) ? floor($i/2).'.0':floor($i/2).'.5'; + $_mutat = ($i%2 == 0) ? floor($i/2):floor($i/2).',5'; + $KOVETELMENY['teljesített óra']['értékek'][] = $_ertek; + $KOVETELMENY['teljesített óra'][$_ertek] = array('rovid'=>$_mutat.'ó', 'hivatalos'=>$_mutat.' óra'); + } + +} +// 2011. évi CXC. törvény 54. § (4) +/* + A második évfolyam végén és a magasabb évfolyamokon félévkor és év végén a tanuló értékelésére - jóváhagyott + kerettanterv vagy az oktatásért felelős miniszter engedélyével - az iskola pedagógiai programja a (2) bekezdésben + meghatározottaktól eltérő jelölés, szöveges értékelés alkalmazását is előírhatja. +*/ +if (!isset($KOVETELMENY['féljegy']) || !is_array($KOVETELMENY['féljegy'])) { + $KOVETELMENY['féljegy']= array( + 'értékek' => array('1.0','1.5','2.0','2.5','3.0','3.5','4.0','4.5','5.0'), + 'sikertelen' => array('1.0'), + 'átlagolható' => true, + '1.0' => array('rovid' => '1', 'hivatalos' => 'ELEGTELEN'), + '1.5' => array('rovid' => '1/2', 'hivatalos' => '1/2'), + '2.0' => array('rovid' => '2', 'hivatalos' => 'ELEGSEGES', 'megjegyzes' => 'figyelmeztető'), + '2.5' => array('rovid' => '2/3', 'hivatalos' => '2/3'), + '3.0' => array('rovid' => '3', 'hivatalos' => 'KOZEPES'), + '3.5' => array('rovid' => '3/4', 'hivatalos' => '3/4'), + '4.0' => array('rovid' => '4', 'hivatalos' => 'JO',), + '4.5' => array('rovid' => '4/5', 'hivatalos' => '4/5'), + '5.0' => array('rovid' => '5', 'hivatalos' => 'JELES', 'megjegyzes' => 'dicséret'), + ); +} +if (!isset($KOVETELMENY['százalékos']) || !is_array($KOVETELMENY['százalékos'])) { + for ($i=0; $i<=100; $i++) { + $_ertek = $i.'.0'; + if ($i<20) $KOVETELMENY['százalékos']['sikertelen'][] = $_ertek; + $KOVETELMENY['százalékos']['értékek'][] = $_ertek; + $KOVETELMENY['százalékos'][$_ertek] = array('rovid'=>$i.'%', 'hivatalos'=>$i.'%'); + } +} +if (!isset($KOVETELMENY['aláírás']) || !is_array($KOVETELMENY['aláírás'])) { + $KOVETELMENY['aláírás']=array( + 'értékek' => array('1.0','2.0'), + 'sikertelen' => array('1.0'), + 'átlagolható' => false, + '1.0' => array('rovid' => '-', 'hivatalos' => 'MEGTAGADVA'), + '2.0' => array('rovid' => 'AI', 'hivatalos' => 'ALAIRVA'), + ); +} +if (!isset($KOVETELMENY['háromszintű']) || !is_array($KOVETELMENY['háromszintű'])) { + $KOVETELMENY['háromszintű']=array( + 'értékek' => array('1.0','2.0','3.0'), + 'sikertelen' => array('1.0'), + 'átlagolható' => false, + '1.0' => array('rovid' => 'NFM', 'hivatalos' => 'NEMFELELTMEG'), + '2.0' => array('rovid' => 'MF', 'hivatalos' => 'MEGFELELT'), + '3.0' => array('rovid' => 'KMF', 'hivatalos' => 'KIVALOANMEGFELELT'), + ); +} +if (!isset($KOVETELMENY['nem értékelhető']) || !is_array($KOVETELMENY['nem értékelhető'])) { + $KOVETELMENY['nem értékelhető']=array( + 'értékek' => array('1.0','2.0','3.0'), + 'sikertelen' => array('2.0','3.0'), + 'átlagolható' => false, + '1.0' => array('rovid' => 'Fm.', 'hivatalos' => 'FELMENTETT'), + '2.0' => array('rovid' => 'N.O.', 'hivatalos' => 'NEM_OSZTALYOZHATO'), + '3.0' => array('rovid' => 'N.J.M.', 'hivatalos' => 'NEM_JELENT_MEG') + ); +} + + + if (is_array($KOVETELMENY)) { + foreach ($KOVETELMENY as $k1 => $T) { + foreach ($T as $key => $val) { + if (defined('_'.$val['hivatalos'])) $KOVETELMENY[$k1][$key]['hivatalos'] = constant('_'.$val['hivatalos']); + if (defined('_'.$val['rovid'])) $KOVETELMENY[$k1][$key]['rovid'] = constant('_'.$val['rovid']); + } + if (!isset($KOVETELMENY[$k1]['átlagolható'])) $KOVETELMENY[$k1]['átlagolható'] = true; + if (!isset($KOVETELMENY[$k1]['összeadható'])) $KOVETELMENY[$k1]['összeadható'] = false; + } + } + $jegyTipusok = array( + _TOROLT, _KIS_JEGY, _NORMAL_JEGY, _DOLGOZAT, _TEMAZARO, _VIZSGAJEGY + ); + + $bizonyitvanyJegyzetek = array( + 'dicséret' => _JEGYZET_DICSERET, + 'figyelmeztető' => _JEGYZET_FIGYELMEZTETO, + 'nyelvvizsga' => _JEGYZET_NYELVVIZSGA + ); + + $bizonyitvanyMegjegyzesek = array( + 'figyelmeztető' => _FIGYELMEZTETO, + 'nyelvvizsga' => _NYELVVIZSGA, + 'dicséret' => _DICSERET, + '2.0' => array('figyelmeztető'), + '5.0' => array('dicséret','nyelvvizsga') + ); + + // A kitűnő megállapításához csak az átlagot vesszük figyelembe + if (!defined('_KITUNO_ATLAG')) define('_KITUNO_ATLAG', 5.0); + // jelesrendű, aki a megadott átlag fölött van és nincs a megadott jegynél gyengébb eredménye egyik tárgyból sem + if (!defined('_JELES_ATLAG')) define('_JELES_ATLAG', 4.75); + if (!defined('_JELES_LEGGYENGEBB_JEGY')) define('_JELES_LEGGYENGEBB_JEGY', 3); + + + ///////////////////////////////////////////////////////////////////// + + // Visszatérési értékek + // ---------------------------- + + // TOMB[ diakId ] [ targyId ] [ index 0..(n-1) ] VAGY $SET['arraymap'] szerinti + + // !! Ez szigorúan a $szAdat['kezdesDt'] és $szAdat['zarasDt'] között szerzett osztályzatokat adja vissza! + + ///////////////////////////////////////////////////////////////////// +/* +// Törlendő!! + function getDiakZarojegyekByEvfolyam($diakIds, $evfolyam='', $szAdat='', $SET = array('arraymap'=>null)) { // csak evfolyam, evfolyamJelet nem kezel! + if (count($diakIds)<1) return false; + elseif (!is_array($diakIds)) $diakIds = array($diakIds); + if (!is_array($SET['arraymap'])) $SET['arraymap'] = array('diakId','targyId'); + $values = $diakIds; + if (is_array($szAdat) && $szAdat['szemeszter']!='') { + $qSZ = " AND evfolyam=%u AND '%s' <= hivatalosDt AND hivatalosDt <= '%s' AND felev=%u"; // eredetileg felev>=%u (???) + $values[] = $evfolyam; + $values[] = $szAdat['kezdesDt']; + $values[] = $szAdat['zarasDt']; + $values[] = $szAdat['szemeszter']; + } elseif ($evfolyam!='') { + $qSZ = " AND evfolyam=%u "; + $values[] = $evfolyam; + } + $q = "SELECT * FROM zaroJegy WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") $qSZ ORDER BY felev, hivatalosDt"; + $r = db_query($q, array('fv' => 'getDiakZarojegyekbyEvfolyam', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $values)); + $ret = reindex($r,$SET['arraymap']); + return $ret; + } +*/ + // Az előző függvény évfolyamJel-es változata + a félévkor záruló tárgyak jegyei + function getDiakZarojegyekByEvfolyamJel($diakIds, $evfolyamJel='', $szAdat='', $SET = array('arraymap'=>null)) { + if (count($diakIds)<1) return false; + elseif (!is_array($diakIds)) $diakIds = array($diakIds); + if (!is_array($SET['arraymap'])) $SET['arraymap'] = array('diakId','targyId'); + $values = $diakIds; + $evfolyam = evfolyamJel2Evfolyam($evfolyamJel); + if (is_array($szAdat) && $szAdat['szemeszter']!='') { + $qSZ = " AND (evfolyamJel='%s' OR (evfolyamJel IS NULL AND evfolyam=%u)) AND '%s' <= hivatalosDt AND hivatalosDt <= '%s' AND felev=%u"; + $values[] = $evfolyamJel; + $values[] = $evfolyam; + $values[] = $szAdat['kezdesDt']; + $values[] = $szAdat['zarasDt']; + $values[] = $szAdat['szemeszter']; + } elseif ($evfolyamJel!='') { + $qSZ = " AND (evfolyamJel='%s' OR (evfolyamJel IS NULL AND evfolyam=%u)) "; + $values[] = $evfolyamJel; + $values[] = $evfolyam; + } + $q = "SELECT * FROM zaroJegy WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") + $qSZ ORDER BY felev, hivatalosDt"; + $r = db_query($q, array('fv' => 'getDiakZarojegyekbyEvfolyamJel', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $values)); + $arraymap = $SET['arraymap']; + + // A félévkor lezáruló tárgyak félévi zárójegyei: + if ($SET['felevivel'] == true && (!is_array($szAdat) || $szAdat['szemeszter'] == 2)) { + $SET['arraymap'] = 'indexed'; + $r2 = getDiakFeleviZarojegyekByEvfolyamJel($diakIds, $evfolyamJel, $szAdat, $SET); + for ($i=0; $inull)) { + if (count($diakIds)<1) return false; + elseif (!is_array($diakIds)) $diakIds = array($diakIds); + $values = $diakIds; + // A képzésenként a félévkor lezáruló tárgyak lekérdezése az adott évfolyamon + $q = "SELECT zaroJegy.* FROM zaroJegy LEFT JOIN kepzesDiak USING (diakId) + WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") + AND felev=1"; + if ($evfolyamJel != '') { $q .= " AND evfolyamJel='%s'"; $values[] = $evfolyamJel; } + $q .= " AND CONCAT_WS('-',kepzesId,targyId,evfolyamJel) IN ( + SELECT CONCAT_WS('-',kepzesId, targyId, evfolyamJel) FROM kepzesOraterv GROUP BY kepzesId, targyId, evfolyamJel HAVING MAX(szemeszter)=1 + ) + ORDER BY felev, hivatalosDt"; + $r = db_query($q, array('fv' => 'getDiakFeleviZarojegyekbyEvfolyamJel', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $values)); + if ($SET['arraymap'] == 'indexed') $ret = $r; + else { + if (!is_array($SET['arraymap'])) $SET['arraymap'] = array('diakId','targyId'); + $ret = reindex($r,$SET['arraymap']); + } + return $ret; + } + + + function getDiakZarojegyek($diakIds, $tanev='', $szemeszter='', $SET = array('arraymap'=>null)) { + if (count($diakIds)<1) return false; + elseif (!is_array($diakIds)) $diakIds = array($diakIds); + if (!is_array($SET['arraymap'])) $SET['arraymap'] = array('diakId','targyId'); + $values = $diakIds; + if ($szemeszter!='') { + $qSZ = " AND tanev=%u AND szemeszter=%u"; + $values[] = $tanev; + $values[] = $szemeszter; + } elseif ($tanev!='') { + $qSZ = " AND tanev=%u "; + $values[] = $tanev; + } + $q = "SELECT * FROM zaroJegy + LEFT JOIN szemeszter ON kezdesDt<=hivatalosDt AND hivatalosDt<=zarasDt + WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") ".$qSZ; + $r = db_query($q, array('fv' => 'getDiakZarojegyek', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $values)); + $ret = reindex($r,$SET['arraymap']); + return $ret; + } + + function getDiakokZarojegyeiByTargyId($DIAKIDS, $targyId, $SET = array('tanev'=>__TANEV, 'arraymap'=>null)) { + + global $_TANEV; + // default + $BIZ = array(); + if ($SET['tanev']=='') $tanev = __TANEV; else $tanev = $SET['tanev']; + if (!is_array($SET['arraymap'])) $SET['arraymap'] = array('diakId','evfolyamJel','szemeszter'); + + // walk + if (count($DIAKIDS) > 0) { + $q = "SELECT *, IF(evfolyamJel IS NULL,evfolyam,evfolyamJel) AS evfolyamStr FROM ".__INTEZMENYDBNEV.".zaroJegy + LEFT JOIN szemeszter ON kezdesDt <= hivatalosDt AND hivatalosDt <= zarasDt + WHERE targyId=%u + AND tanev=%u + AND diakId IN (".implode(",", $DIAKIDS).")"; + array_unshift($DIAKIDS, $targyId, $tanev); + $ret = db_query($q, array('fv' => 'getDiakokZarojegyeiByTargyId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $DIAKIDS)); + $BIZ = reindex($ret,$SET['arraymap']); + } + return $BIZ; + } + + function getDiakokVizsgajegyeiByTargyId($DIAKIDS, $targyId, $SET = array('arraymap'=>null)) { + // default + $BIZ = array(); + if (!is_array($SET['arraymap'])) $SET['arraymap'] = array('zaroJegyId'); + + // walk + if (count($DIAKIDS) > 0) { + $q = "SELECT *, IF(evfolyamJel IS NULL,evfolyam,evfolyamJel) AS evfolyamStr FROM vizsga + WHERE vizsga.targyId=%u + AND vizsga.diakId IN (".implode(",", $DIAKIDS).")"; + array_unshift($DIAKIDS, $targyId); + $ret = db_query($q, array('fv' => 'getDiakokVizsgajegyeiByTargyId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $DIAKIDS)); + $BIZ = reindex($ret,$SET['arraymap']); + } + return $BIZ; + } + + function getZaroJegyAdat($zaroJegyId) { + $q = "SELECT * FROM zaroJegy WHERE zaroJegyId=%u"; + $v = array($zaroJegyId); + return $r = db_query($q, array('fv' => 'getZaroJegyId', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v)); + } + function getJegyAdat($jegyId) { + $q = "SELECT * FROM jegy + LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTipus USING (tankorTipusId) + LEFT JOIN dolgozat USING (dolgozatId) + WHERE jegyId=%u"; + $v = array($jegyId); + return $r = db_query($q, array('fv' => 'getJegyId', 'modul' => 'naplo', 'result' => 'record', 'values' => $v)); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/rpc.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/rpc.php new file mode 100644 index 00000000..23e543fc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/rpc.php @@ -0,0 +1,29 @@ +'getRPCPrivileges','modul'=>'naplo_base','result'=>'indexed')); + + } + function getRPCPrivilegeByNUO($nodeId, $userAccount, $OMKod) { + + $q = "SELECT priv FROM rpcJogosultsag WHERE nodeId=%u AND userAccount='%s' AND OMKod=%u"; + $v = array($nodeId, $userAccount, $OMKod); + return db_query($q, array('fv'=>'getRPCPrivileges','modul'=>'naplo_base','result'=>'value','values'=>$v)); + + } + function addNodeToRPCPrivs($DATA) { + + $q = "INSERT INTO rpcJogosultsag (nodeId, userAccount, OMKod) VALUES (%u, '%s', %u)"; + $v = array($DATA['nodeId'], $DATA['userAccount'], $DATA['OMKod']); + return db_query($q, array('debug'=>false,'fv'=>'addNodeToRPCPrivs','modul'=>'naplo_base','values'=>$v)); + + } + function setPrivileges($DATA) { + $q = "UPDATE rpcJogosultsag SET priv='%s' WHERE nodeId=%u AND userAccount='%s' AND OMKod=%u"; + $v = array(implode(',',$DATA['priv']),$DATA['nodeId'],$DATA['userAccount'],$DATA['OMKod']); + return db_query($q, array('debug'=>false,'fv'=>'setPrivileges','modul'=>'naplo_base','values'=>$v)); + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/sni.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/sni.php new file mode 100644 index 00000000..61f20bb2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/sni.php @@ -0,0 +1,54 @@ + 'getDiakAdat','modul' => 'naplo','values' => $v, 'result' => 'record')); + + } + + function getHaviOsszegzes($diakId, $dt) { + + $q = "SELECT * FROM sniHaviOsszegzes WHERE diakId=%u AND MONTH(dt)=MONTH('%s')"; + $v = array($diakId, $dt); + $ret = db_query($q, array('fv' => 'getHaviOsszegzes', 'modul' => 'naplo', 'values' => $v, 'result' => 'record')); + + $q = "SELECT tanarId FROM sniHaviOsszegzesFelelos WHERE haviOsszegzesId = %u"; + $ret['felelos'] = db_query($q, array('fv' => 'getHaviOsszegzes', 'modul' => 'naplo', 'values' => array($ret['haviOsszegzesId']), 'result' => 'idonly')); + + return $ret; + + } + + function sniHaviOsszegzesRogzites($Param) { + + $Felelos = $Param['felelos']; unset($Param['felelos']); + // Korábbi bejegyzés törlése + $q = "SELECT haviOsszegzesId FROM sniHaviOsszegzes WHERE diakId = %u AND dt = '%s'"; + $v = array($Param['diakId'], $Param['dt']); + $Param['haviOsszegzesId'] = db_query($q, array('fv' => 'sniHaviOsszesitesRogzites', 'modul' => 'naplo', 'values' => $v, 'result' => 'value')); + // Paraméterek feldolgozása + $pattern = $v = array(); + foreach ($Param as $attr => $value) { + if (in_array($attr, array('diakId','haviOsszegzesId','valtozas'))) + if ($value == '') { $pattern[] = '%s'; $value = 'NULL'; } + else $pattern[] = "%u"; + else + $pattern[] = "'%s'"; + $v[] = $value; + } + // új bejegyzés beszúrása + $q = "REPLACE INTO `sniHaviOsszegzes` (`".implode('`,`',array_keys($Param))."`) VALUES (".implode(',', $pattern).")"; + $id = db_query($q, array('fv' => 'sniHaviOsszegzesRogzites', 'modul' => 'naplo', 'values' => $v, 'result' => 'insert')); + // felelosok törlése + $q = "DELETE FROM `sniHaviOsszegzesFelelos` WHERE haviOsszegzesId = %u"; + $ret = db_query($q, array('fv' => 'sniHaviOsszegzesRogzites', 'modul' => 'naplo', 'values' => array($id))); + // új felelősök felvétele + if (is_array($Felelos) && count($Felelos) > 0) { + $q = "INSERT INTO `sniHaviOsszegzesFelelos` (`haviOsszegzesId`,`tanarId`) VALUES ".implode(',', array_fill(0, count($Felelos), "($id, %u)")); + $ret = db_query($q, array('fv' => 'sniHaviOsszegzesRogzites', 'modul' => 'naplo', 'values' => $Felelos)); + } + return $ret; + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szemeszter.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szemeszter.php new file mode 100644 index 00000000..dae760ee --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szemeszter.php @@ -0,0 +1,176 @@ + array('aktív', 'lezárt', 'tervezett'), 'filter' => array())) { + global $mayorCache; + if (!isset($SET)) $SET = array('statusz' => array('aktív','lezárt','tervezett')); + + $key = __FUNCTION__.':'.md5(serialize($SET)); + if ($mayorCache->exists($key)) return $mayorCache->get($key); + + $q = "SELECT * FROM szemeszter "; + if (is_array($SET['statusz']) && count($SET['statusz']) != 0) { + $q .="WHERE statusz IN ('".implode("','", array_fill(0, count($SET['statusz']), '%s'))."')"; + $v = $SET['statusz']; + $kapocs = "AND "; + } else { + $kapocs = "WHERE "; $v = array(); + } + if (is_array($SET['filter']) && count($SET['filter']) != 0) { + $q .= $kapocs . implode(' AND ',$SET['filter']); + } + $q .= ' ORDER BY tanev,szemeszter'; + $r = db_query($q, array('fv' => 'getSzemeszterek', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + $mayorCache->set($key,$r,'szemeszter'); + return $r; + } + + function getSzemeszterByDt($dt, $tipus = 0) { + /* + 0 - a szemeszter tartalmazza a dátumot + 1 - a dátum napján, vagy utána végződő első szemeszter + -1 - a dátum napján vagy előtte kezdődő első szemeszter + */ + if ($tipus < 0) $q = "SELECT * FROM szemeszter WHERE szemeszter.kezdesDt <= '%s' ORDER BY kezdesDt DESC LIMIT 1"; + elseif ($tipus > 0) $q = "SELECT * FROM szemeszter WHERE szemeszter.zarasDt >= '%s' ORDER BY zarasDt LIMIT 1"; + else $q = "SELECT * FROM szemeszter WHERE szemeszter.kezdesDt <= '%s' AND szemeszter.zarasDt >= '%s'"; + $v = array($dt, $dt); + return db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'getSzemeszterByDt', 'result' => 'record', 'values' => $v, 'debug' => false)); + } + + function getSzemeszterIdByDt($dt) { + $q = "SELECT szemeszterId FROM szemeszter WHERE szemeszter.kezdesDt<='%s' AND szemeszter.zarasDt>='%s'"; + return db_query($q, array('fv' => 'getSzemeszterIdByDt', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($dt, $dt))); + } + + function getKovetkezoSzemeszterId($tanev,$szemeszter,$aktiv=null) { + if ($aktiv!='') $W = ' AND statusz="aktív" '; + $q = "SELECT szemeszterId FROM szemeszter WHERE CONCAT(szemeszter.tanev,szemeszter)>'%s' $W ORDER BY tanev,szemeszter LIMIT 1"; + return db_query($q, array( + 'fv' => 'getKovetkezoSzemeszterId', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($tanev.$szemeszter) + )); + } + + function getFelevByDt($dt) { + $q = "SELECT szemeszter AS felev FROM szemeszter WHERE szemeszter.kezdesDt<='%s' AND szemeszter.zarasDt>='%s'"; + $v = array($dt,$dt); + return db_query($q, array('fv' => 'getFelevByDt', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + } + + function getTanevekByDt($dt) { + $q = "SELECT DISTINCT tanev FROM szemeszter WHERE szemeszter.kezdesDt<='%s' and szemeszter.zarasDt>='%s'"; + $v = array($dt, $dt); + return db_query($q, array('fv' => 'getTanevByDt', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + } + + function getTanevekByDtInterval($dt1, $dt2 = '', $statusz = array('aktív','lezárt','tervezett')) { + /* + A dátumot lefedő tanévek közül azok, amik státusza megfelelő + */ + $dt2 = readVariable($dt2, 'datetime', $dt1); + $q = "SELECT DISTINCT tanev FROM szemeszter WHERE statusz in ('".implode("','", array_fill(0, count($statusz), '%s'))."') GROUP BY tanev + HAVING '$dt1'<=MAX(szemeszter.zarasDt) AND MIN(szemeszter.kezdesDt)<='$dt2'"; + array_push($statusz, $dt1, $dt2); + return db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'getTanevByDtInterval', 'result' => 'idonly', 'values' => $statusz)); + } + + function getTanevekByStatusz($statusz = array('aktív','lezárt','tervezett')) { + $q = "SELECT DISTINCT tanev FROM szemeszter WHERE statusz in ('".implode("','", array_fill(0, count($statusz), '%s'))."') GROUP BY tanev"; + return db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'getTanevByDtInterval', 'result' => 'idonly', 'values'=>$statusz)); + } + + function getTanevSzemeszterek($tanev) { + $q = "SELECT * FROM szemeszter WHERE tanev=%u"; + return db_query($q, array('fv' => 'getTanevSzemeszterek', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tanev))); + } + + function getSzemeszterAdatById($szemeszterId) { + $q = "SELECT * FROM szemeszter WHERE szemeszterId = %u"; + $ret = db_query($q, array('fv' => 'getSzemeszterAdatById', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($szemeszterId))); + if (!is_array($ret)) return false; + + $ret['idoszak'] = getIdoszakByTanev(array('tanev' => $ret['tanev'], 'szemeszter' => $ret['szemeszter'])); + $q = "SELECT tanev,MAX(szemeszter) AS maxSzemeszter, MIN(kezdesDt) AS kezdesDt, MAX(zarasDt) AS zarasDt FROM szemeszter + WHERE tanev=%u GROUP BY tanev"; + $ret['tanevAdat'] = db_query($q, array( + 'fv' => 'getSzemeszterAdatById', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => array($ret['tanev']) + )); + return $ret; + } + + function getSzemeszterIdBySzemeszter($tanev, $szemeszter) { + + $q = "SELECT szemeszterId FROM szemeszter WHERE tanev=%u AND szemeszter=%u"; + $v = array($tanev, $szemeszter); + return db_query($q, array('fv' => 'getSzemeszterIdBySzemeszter', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + + } +/* (Még) nem használt függvény + + function getSzemeszterAdatBySzemeszter($tanev, $szemeszter) { + + $szemeszterId = getSzemeszterIdBySzemeszter($tanev, $szemeszter); + if ($szemeszterId === false) return false; + return getSzemeszterAdatById($szemeszterId); + + } + +*/ + function getIdoszakByTanev($SET = array('tanev' => __TANEV, 'szemeszter' => '', 'tipus' => array(), 'tolDt' => '', 'igDt' => '', 'return' => '', 'arraymap'=>null)) { + + if ($SET['tanev']=='') $SET['tanev'] = __TANEV; + + if ($SET['szemeszter'] != '') { + $q = "SELECT * FROM idoszak WHERE tanev=%u AND szemeszter=%u"; + $v = array($SET['tanev'], $SET['szemeszter']); + } else { + $q = "SELECT * FROM idoszak WHERE tanev=%u"; + $v = array($SET['tanev']); + } + if (is_array($SET['tipus']) && count($SET['tipus']) > 0) { + $q .= " AND tipus IN ('".implode("','", array_fill(0, count($SET['tipus']), '%s'))."')"; + $v = mayor_array_join($v, $SET['tipus']); + } + if ($SET['tolDt'] != '') { + $q .= " AND igDt >= '%s'"; + $v[] = $SET['tolDt']; + } + if ($SET['igDt'] != '') { + $q .= " AND tolDt <= '%s'"; + $v[] = $SET['igDt']; + } + + $q .= " ORDER BY szemeszter,tolDt,igDt"; + $ret = db_query($q, array('fv' => 'getIdoszakByTanev', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + if ($SET['return'] == 'assoc') { + $tmp = array(); + for ($i = 0; $i < count($ret); $i++) { + $tmp[ $ret[$i]['szemeszter'] ][ $ret[$i]['tipus'] ][] = $ret[$i]; + } + $ret = $tmp; + } + + if (is_array($SET['arraymap'])) { + $ret = reindex($ret,$SET['arraymap']); + } + + return $ret; + + } + + + function getTanevAdatBySzemeszterId( $szemeszterId ) { + if ($szemeszterId=='') return false; + $q = "SELECT * FROM szemeszter WHERE szemeszterId=%u"; + $v = array($szemeszterId); + $R['szemeszter'] = db_query($q, array( + 'fv' => 'getTanevAdatBySzemeszterId', 'modul'=>'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'szemeszter', 'values' => $v + )); + // legyen az első az alapértelmezett + $R['statusz'] = $R['szemeszter'][1]['statusz']; + $R['tanev'] = $R['szemeszter'][1]['tanev']; + // a két dárum innen hiányzik! + return $R; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szovegesErtekeles.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szovegesErtekeles.php new file mode 100644 index 00000000..1026979b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szovegesErtekeles.php @@ -0,0 +1,206 @@ + 'getSzempontRendszer', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v)); + if (!is_array($ret) || count($ret) == 0) return false; + + $szrId = $ret['szrId']; + // szempontok lekérdezése + $q = "SELECT * FROM szrSzempont WHERE szrId=%u ORDER BY szempontId"; + $ret['szempont'] = db_query($q, array( + 'fv' => 'getSzempontRendszer/szempont', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'szempontId', 'values' => array($szrId) + )); + // minősítések lekérdezése + $ret['minosites'] = array(); + if (is_array($ret['szempont']) && count($ret['szempont']) > 0) { + $ret['szempontIds'] = array_keys($ret['szempont']); + $v = array_keys($ret['szempont']); + $q = "SELECT * FROM szrMinosites WHERE szempontId IN (".implode(',', array_fill(0, count($v), '%u')).") ORDER BY szempontId,minositesId"; + $ret['minosites'] = db_query($q, array( + 'fv' => 'getSzempontRendszer/minősítés', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'szempontId', 'values' => $v + )); + if (is_array($ret['minosites'])) { + $ret['minositesIds'] = array(); + foreach ($ret['minosites'] as $szId => $szM) + for ($i = 0; $i < count($szM); $i++) $ret['minositesIds'][] = $szM[$i]['minositesId']; + } + } + return $ret; + } + + function getDiakSzovegesTargyZaroErtekeles($diakId, $szrId, $targyId, $tanev, $szemeszter) { +/* + $q = "SELECT MAX(dt) FROM szovegesErtekeles WHERE szrId=%u AND diakId=%u AND targyId=%u AND dt<='%s'"; + $v = array($szrId, $diakId, $targyId, $igDt); + $dt = db_query($q, array('fv' => 'getDiakUtolsoSzovegesTargyErtekeles/maxDt', 'modul' => 'naplo', 'result' => 'value', 'values' => $v)); + if (!isset($dt)) return false; + $ret['dt'] = $dt; +*/ + // szeId lekérdezése + $q = "SELECT * FROM szovegesErtekeles WHERE szrId=%u AND diakId=%u AND targyId=%u AND tanev=%u AND szemeszter=%u"; + $v = array($szrId, $diakId, $targyId, $tanev, $szemeszter); + $ret = db_query($q, array( + 'fv' => 'getDiakSzovegesTargyZaroErtekeles/szeId', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v + )); + $szeId = $ret['szeId']; + // minősítések lekérdezése + $q = "SELECT minositesId FROM szeMinosites WHERE szeId=%u"; + $v = array($szeId); + $ret['minosites'] = db_query($q, array( + 'fv' => 'getDiakSzovegesTargyZaroErtekeles/minosites', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v + )); + // Egyedi minősítések lekérdezése + $q = "SELECT szempontId, egyediMinosites FROM szeEgyediMinosites WHERE szeId=%u"; + $ret['egyediMinosites'] = db_query($q, array( + 'fv' => 'getDiakSzovegesTargyZaroErtekeles', 'modul' => 'naplo_intezmeny', + 'result' => 'assoc', 'keyfield' => 'szempontId', 'values' => $v + )); + + return $ret; + + } + + function getDiakUtolsoSzovegesTargyErtekeles($diakId, $szrId, $targyId, $igDt) { + + $q = "SELECT MAX(dt) FROM szovegesErtekeles WHERE szrId=%u AND diakId=%u AND targyId=%u AND dt<='%s'"; + $v = array($szrId, $diakId, $targyId, $igDt); + $dt = db_query($q, array('fv' => 'getDiakUtolsoSzovegesTargyErtekeles/maxDt', 'modul' => 'naplo', 'result' => 'value', 'values' => $v)); + if (!isset($dt)) return false; + $ret['dt'] = $dt; + + // szeId lekérdezése + $q = "SELECT * FROM szovegesErtekeles WHERE szrId=%u AND diakId=%u AND targyId=%u AND dt='%s'"; + $v = array($szrId, $diakId, $targyId, $dt); + $ret = db_query($q, array( + 'fv' => 'getDiakUtolsoSzovegesTargyErtekeles/szeId', 'modul' => 'naplo', 'result' => 'record', 'values' => $v + )); + $szeId = $ret['szeId']; + // minősítések lekérdezése + $q = "SELECT minositesId FROM szeMinosites WHERE szeId=%u"; + $v = array($szeId); + $ret['minosites'] = db_query($q, array( + 'fv' => 'getDiakUtolsoSzovegesTargyErtekeles/minosites', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v + )); + // Egyedi minősítések lekérdezése + $q = "SELECT szempontId, egyediMinosites FROM szeEgyediMinosites WHERE szeId=%u"; + $ret['egyediMinosites'] = db_query($q, array( + 'fv' => 'getDiakUtolsoSzovegesTargyErtekeles/egyediMinosites', 'modul' => 'naplo', + 'result' => 'assoc', 'keyfield' => 'szempontId', 'values' => $v + )); + + return $ret; + } + + function getDiakOsszesSzovegesErtekeles($ADAT) { + + $q = "SELECT * FROM szovegesErtekeles WHERE diakId=%u AND dt<='%s' ORDER BY dt"; + $v = array($ADAT['diakId'], $ADAT['dt']); + $ret = db_query($q, array('fv' => 'getDiakOsszesSzovegesErtekeles', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'targyId', 'values' => $v)); + + foreach ($ret as $targyId => $tAdat) { + $tAdat['feltetel'] = 'id'; + $ret[$targyId]['szempontRendszer'] = getSzempontRendszer($tAdat); + $ret[$targyId]['szovegesErtekeles'] = getDiakUtolsoSzovegesTargyErtekeles($ADAT['diakId'], $tAdat['szrId'], $targyId, $ADAT['dt']); + $ret[$targyId]['diakTargyak'] = $ADAT['diakTargyak']; + } + + return $ret; + } + + function getDiakOsszesSzovegesZaroErtekeles($ADAT) { + + $q = "SELECT * FROM szovegesErtekeles WHERE diakId=%u AND tanev=%u AND szemeszter=%u ORDER BY dt"; + $v = array($ADAT['diakId'], $ADAT['tanev'], $ADAT['szemeszter']); + $ret = db_query($q, array('fv' => 'getDiakOsszesSzovegesZaroErtekeles', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'targyId', 'values' => $v)); + + foreach ($ret as $targyId => $tAdat) { + $tAdat['feltetel'] = 'id'; + $ret[$targyId]['szempontRendszer'] = getSzempontRendszer($tAdat); + $ret[$targyId]['szovegesErtekeles'] = getDiakSzovegesTargyZaroErtekeles($ADAT['diakId'], $tAdat['szrId'], $targyId, $ADAT['tanev'], $ADAT['szemeszter']); + $ret[$targyId]['diakTargyak'] = $ADAT['diakTargyak']; + } + + return $ret; + } + + function getOsztalySzovegesErtekeles($ADAT) { + // Ha van $ADAT['szemeszterId'] akkor záró értékelést ad vissza, különben évközit + $A = array( + 'dt' => $ADAT['dt'], 'diakTargyak' => $ADAT['diakTargyak'], + 'tanev' => $ADAT['szemeszter']['tanev'], 'szemeszter' => $ADAT['szemeszter']['szemeszter'] + ); + $ret = array(); + if (isset($ADAT['szemeszterId'])) foreach ($ADAT['diakIds'] as $index => $diakId) { + $A['diakId'] = $diakId; + $ret[$diakId] = getDiakOsszesSzovegesZaroErtekeles($A); + } else foreach ($ADAT['diakIds'] as $index => $diakId) { + $A['diakId'] = $diakId; + $ret[$diakId] = getDiakOsszesSzovegesErtekeles($A); + + } + + return $ret; + + } + + function getEvfolyamJelSzempontRendszerek($ADAT) { + // Legalább tanev, szemeszter, evfolyamJel kell megadva legyen, lehet még targy, targyTipus, kepzesId + // Visszaadja az összes épp aktuális, a feltételeknek megfelelő szempontrendszert + $q = "SELECT szr1.*, targyNev, kepzesNev, kepzes.tanev as kepzesTanev + FROM szempontRendszer AS szr1 LEFT JOIN targy USING (targyId) LEFT JOIN kepzes USING (kepzesId) + WHERE evfolyamJel='%s' AND CONCAT(szr1.tanev,'/',szr1.szemeszter) = ( + SELECT CONCAT(szr2.tanev,'/',szr2.szemeszter) FROM szempontRendszer AS szr2 + WHERE szr2.evfolyamJel='%s' + AND (szr2.targyId=szr1.targyId OR (szr1.targyId IS NULL AND szr2.targyId IS NULL)) + AND (szr2.targyTipus=szr1.targyTipus OR (szr1.targyTipus IS NULL AND szr2.targyTipus IS NULL)) + AND (szr2.kepzesId=szr1.kepzesId OR (szr1.kepzesId IS NULL AND szr2.kepzesId IS NULL)) + AND ((szr2.tanev=%u AND szr2.szemeszter<=%u) OR szr2.tanev<%u) + ORDER BY szr2.tanev DESC, szr2.szemeszter DESC LIMIT 1 + )"; + $v = array($ADAT['evfolyamJel'], $ADAT['evfolyamJel'], $ADAT['szemeszter']['tanev'], $ADAT['szemeszter']['szemeszter'], $ADAT['szemeszter']['tanev'] ); + if (isset($ADAT['targyId'])) { + $q .= " AND targyId=".intval($ADAT['targyId']); + $v[] = $ADAT['targyId']; + } + if (isset($ADAT['targyTipus'])) { + $q .= " AND targyTipus='".$ADAT['targyTipus']."'"; + $v[] = $ADAT['targyTipus']; + } + if (isset($ADAT['kepzesId'])) { + $q .= " AND kepzesId=".intval($ADAT['kepzesId']); + $v[] = $ADAT['kepzesId']; + } + + $ret = db_query($q, array('fv' => 'getEvfolyamJelSzempontRendszerek', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + return $ret; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szulo.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szulo.php new file mode 100644 index 00000000..aa15797b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/szulo.php @@ -0,0 +1,76 @@ +'getSzuloAdat','modul'=>'naplo_intezmeny','result'=>'record','values'=>array($szuloId))); + + } + + function getSzulok($SET = array('csakId'=>false,'result'=>'','szuloIds'=>array())) { + + if (is_array($SET['szuloIds']) && count($SET['szuloIds']) > 0 && count($SET['szuloIds']) < 50 ) $W_SZULO = ' WHERE szuloId IN ('.implode(',',$SET['szuloIds']).')'; + if ($SET['csakId'] === true || $SET['result'] == 'csakId') $SET['result'] = 'idonly'; + if ($SET['result'] == 'idonly') { + $q = "SELECT szuloId + FROM ".__INTEZMENYDBNEV.".szulo $W_SZULO + ORDER BY CONCAT_WS(' ',csaladinev,utonev)"; + $ret = db_query($q, array('fv' => 'getSzulok', 'modul' => 'naplo_intezmeny', 'result' => 'idonly')); + } elseif ($SET['result']=='standard') { + $q = "SELECT *,TRIM(CONCAT_WS(' ',nevElotag,csaladinev,utonev)) AS szuloNev + FROM ".__INTEZMENYDBNEV.".szulo $W_SZULO + ORDER BY CONCAT_WS(' ',csaladinev,utonev)"; + $ret = db_query($q, array('fv' => 'getSzulok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed')); + } elseif ($SET['result']=='indexed') { + $q = "SELECT szuloId,TRIM(CONCAT_WS(' ',nevElotag,csaladinev,utonev)) AS szuloNev, statusz + FROM ".__INTEZMENYDBNEV.".szulo $W_SZULO + ORDER BY CONCAT_WS(' ',csaladinev,utonev)"; + $ret = db_query($q, array('fv' => 'getSzulok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed')); + } else { + $q = "SELECT *,TRIM(CONCAT_WS(' ',nevElotag,csaladinev,utonev)) AS szuloNev + FROM ".__INTEZMENYDBNEV.".szulo $W_SZULO + ORDER BY CONCAT_WS(' ',csaladinev,utonev)"; + $ret = db_query($q, array('fv' => 'getSzulok', 'modul' => 'naplo_intezmeny', 'keyfield' => 'szuloId', 'result' => 'assoc')); + foreach ($ret as $szuloId => $adat) $ret['szuloIds'][] = $szuloId; + } + return $ret; + + } + + function getSzuloDiakjai() { + $q = "SELECT diak.diakId AS diakId,". + "TRIM(CONCAT_WS(' ',viseltNevElotag,viseltCsaladiNev,viseltUtonev)) AS diakNev ". + "FROM szulo LEFT JOIN diak ON (szuloId IN (anyaId,apaId,gondviseloId,neveloId)) ". + "WHERE szulo.userAccount='"._USERACCOUNT."'"; + return db_query($q, array('fv' => 'getSzuloDiakjai', 'modul' => 'naplo_intezmeny', 'result' => 'indexed')); + } + + function getSzulokDiakjai($szuloIds) { + $q = "SELECT szuloId, diak.diakId AS diakId,". + "TRIM(CONCAT_WS(' ',viseltNevElotag,viseltCsaladiNev,viseltUtonev)) AS diakNev ". + "FROM szulo LEFT JOIN diak ON (szuloId IN (anyaId,apaId,gondviseloId,neveloId)) ". + "WHERE szuloId IN (".implode(',', array_fill(0, count($szuloIds), '%u')).")"; + return db_query( + $q, array('fv' => 'getSzulokDiakjai','modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'szuloId', 'values' => $szuloIds) + ); + } + + function getDiakSzulei($diakId) { + $q = "SELECT anyaId,apaId,gondviseloId,neveloId ". + "FROM diak ". + "WHERE diakId=%u"; + return db_query($q,array('fv' => 'getDiakSzulei', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($diakId))); + } + + + function getSzuloNevById($szuloId, $szuleteskori=false) { + if ($szuleteskori) { + $q = "SELECT IF(szuleteskoriCsaladinev='',TRIM(CONCAT_WS(' ', nevElotag, csaladiNev, utonev)),TRIM(CONCAT_WS(' ', szuleteskoriNevElotag, szuleteskoriCsaladinev, szuleteskoriUtonev))) AS szuloNev FROM szulo WHERE szuloId=%u"; + } else { + $q = "SELECT TRIM(CONCAT_WS(' ', nevElotag, csaladiNev, utonev)) AS szuloNev FROM szulo WHERE szuloId=%u"; + } + return db_query($q, array('fv' => 'getszuloNevById', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($szuloId))); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanar.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanar.php new file mode 100644 index 00000000..5e23e4ec --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanar.php @@ -0,0 +1,194 @@ + _TANAR_OID, + 'viseltNevElotag' => _TANAR_VNE, + 'viseltCsaladiNev' => _TANAR_VCSN, + 'viseltUtonev' => _TANAR_VUN, + 'szuletesiHely' => _TANAR_SZH, + 'szuletesiIdo' => _TANAR_SZI, + ); + + function getTanarok($SET = array('targyId'=> null,'mkId' => null, 'tanev' => __TANEV, 'beDt' => null, 'kiDt' => null, 'összes'=> false, 'override' => false, 'telephelyId'=>null, 'result' => 'indexed', 'extraAttrs' => null), $olr = '') { + + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed', 'assoc')); + $beDt = $SET['beDt']; $kiDt = $SET['kiDt']; + initTolIgDt($SET['tanev'], $beDt, $kiDt, $SET['override']); + + $where = $v = array(); + if ($SET['összes']!==true && in_date_interval(date('Y-m-d H:m:s'),$beDt,$kiDt)==true) { // ha nincs benne a mai nap a vizsgált intervallumban, akkor értelmetlen (lehet) ez a feltétel + $where[] = "statusz IN ('határozatlan idejű','határozott idejű','külső óraadó')"; + } + if ($beDt != '') { + $where[] = "((kiDt IS NULL) OR '%s' <= kiDt)"; + array_push($v, $beDt); + } + if ($kiDt != '') { + $where[] = "'%s' >= beDt"; + array_push($v, $kiDt); + } + if ($SET['extraAttrs'] != '') $extraAttrs = ', '.$SET['extraAttrs']; + +/* + if ($SET['telephelyId'] != '') { + $where[] = " (telephelyId = %u OR telephelyId IS NULL) "; + array_push($v, $SET['telephelyId']); + } + // 2015-08-06 - aktualisStatusz kiiktatása - statusz mező megjelenése miatt... + IF( beDt <= CURDATE() AND (kiDt IS NULL OR CURDATE()<=kiDt),'jogviszonyban van','nincs jogviszonyban') as aktualisStatusz, +*/ + if ($SET['targyId'] != '') { + if (count($where) > 0) $W = 'AND ' . implode(' AND ',$where); + + $q1 = "SELECT tanar.tanarId AS tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS tanarNev, statusz, + hetiKotelezoOraszam,hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam,hetiMunkaora + $extraAttrs + FROM ".__INTEZMENYDBNEV.".targy LEFT JOIN ".__INTEZMENYDBNEV.".mkTanar USING (mkId) LEFT JOIN ".__INTEZMENYDBNEV.".tanar USING (tanarId) + WHERE targyId=%u AND tanarId IS NOT NULL ".$W; + $q2 = "SELECT tanar.tanarId AS tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS tanarNev, statusz, + hetiKotelezoOraszam,hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam,hetiMunkaora + $extraAttrs + FROM ".__INTEZMENYDBNEV.".kepesitesTargy LEFT JOIN ".__INTEZMENYDBNEV.".tanarKepesites USING (kepesitesId) LEFT JOIN ".__INTEZMENYDBNEV.".tanar USING (tanarId) + WHERE targyId=%u AND tanarId IS NOT NULL ".$W; + array_unshift($v, $SET['targyId']); + $tmp=$v; foreach ($tmp as $tmpV) $v[]=$tmpV; + $q = "(".$q1.") UNION DISTINCT (".$q2.") ORDER BY tanarNev,tanarId"; + } elseif ($SET['mkId'] == '') { + if (count($where) > 0) $W = 'WHERE ' . implode(' AND ',$where); + $q = "SELECT tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS tanarNev, statusz, + hetiKotelezoOraszam,hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam,hetiMunkaora + $extraAttrs + FROM ".__INTEZMENYDBNEV.".tanar $W ORDER BY CONCAT_WS(' ', ViseltCsaladiNev, viseltUtoNev)"; + } else { + if (count($where) > 0) $W = 'AND ' . implode(' AND ',$where); + $q = "SELECT tanar.tanarId AS tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS tanarNev, statusz, + hetiKotelezoOraszam,hetiLekotottMinOraszam,hetiLekotottMaxOraszam,hetiKotottMaxOraszam,hetiMunkaora + $extraAttrs + FROM ".__INTEZMENYDBNEV.".tanar LEFT JOIN ".__INTEZMENYDBNEV.".mkTanar USING (tanarId) + WHERE mkId=%u $W ORDER BY CONCAT_WS(' ', ViseltCsaladiNev, viseltUtoNev)"; + array_unshift($v, $SET['mkId']); + } + return db_query($q, array('fv' => 'getTanarok', 'modul' => 'naplo_intezmeny', 'result' => $result, 'keyfield' => 'tanarId', 'values' => $v)); + + } + + function getTanarNevById($tanarId, $olr = null) { + + $q = "SELECT TRIM(CONCAT_WS(' ', viseltNevElotag, viseltCsaladiNev, viseltUtonev)) AS tanarNev + FROM ".__INTEZMENYDBNEV.".tanar WHERE tanarId=%u"; + return db_query($q, array('fv' => 'getTanarNevById', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($tanarId)), $olr); + + } + + function getTanarMunkakozosseg($tanarId) { + $q = "SELECT mkId FROM mkTanar WHERE tanarId=%u"; + return db_query($q, array('fv' => 'getTanarMunkakozosseg', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tanarId))); + } + + function getSzabadTanarok($dt, $ora, $olr = '') { + + $q = "SELECT tanar.tanarId AS tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS tanarNev + FROM ".__INTEZMENYDBNEV.".tanar LEFT JOIN ora ON tanarId=ki AND dt='%1\$s' and ora=%2\$u + WHERE ki IS NULL AND beDt<='%1\$s' and (kiDt IS NULL OR kiDt>='%1\$s') + ORDER BY CONCAT_WS(' ', ViseltCsaladiNev, viseltUtoNev)"; + $v = array($dt, $ora); + return db_query($q, array('fv' => 'getSzabadTanarok', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $olr); + } + + function getFoglaltTanarok($dt, $ora, $olr = '') { + + $q = "SELECT DISTINCT tanar.tanarId AS tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS tanarNev + FROM ".__INTEZMENYDBNEV.".tanar LEFT JOIN ora ON tanarId=ki AND dt='%1\$s' and ora=%2\$u + WHERE ki IS NOT NULL AND beDt<='%1\$s' and (kiDt IS NULL OR kiDt>='%1\$s') + ORDER BY CONCAT_WS(' ', ViseltCsaladiNev, viseltUtoNev)"; + $v = array($dt, $ora); + return db_query($q, array('fv' => 'getFoglaltTanarok', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $olr); + } + + function getTanarAdatById($tanarIds, $olr = '') { + + if (!is_array($tanarIds)) $tanarIds = array($tanarIds); + $q = "SELECT *,TRIM(CONCAT_WS(' ',viseltNevElotag, ViseltCsaladiNev, viseltUtoNev)) AS tanarNev FROM ".__INTEZMENYDBNEV.".tanar WHERE tanarId IN (".implode(',', array_fill(0, count($tanarIds), '%u')).")"; + $R = db_query($q, array('fv' => 'getTanarAdatById', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $tanarIds)); +// for ($i=0; $i 'getTanarOraszam', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v), $olr); + } +/* + NOT IMPLEMENTED + + function getTanarTelephely($tanarId) { + + $q = "SELECT * FROM tanarTelephely WHERE tanarId=%u"; + $v = array($tanarId); + $r = db_query($q, array('fv' => 'getTanarOraszam', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $olr); + for ($i=0; $i 'getTanarOraszam', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $olr); + for ($i=0; $i diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanarModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanarModifier.php new file mode 100644 index 00000000..05174959 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanarModifier.php @@ -0,0 +1,14 @@ + $v) { + $kv[] = "$k='%s'"; + } + $q = "UPDATE tanar SET ".implode($kv,',')." WHERE tanarId=%u"; + } + $v = array_merge(array_values($SET),array($tanarId)); + return db_query($q, array('fv' => 'updateTanarAdat', 'modul' => 'naplo_intezmeny', 'result' => 'update', 'values' => $v), $olr); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankor.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankor.php new file mode 100644 index 00000000..705ab82f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankor.php @@ -0,0 +1,1180 @@ + 'checkTankorInTanev', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tanev, $tankorId)), $olr + ); + return (count($r) != 0); + } + + function getTankorAdat($tankorId, $tanev = __TANEV, $olr = null) { + $q = "SELECT * FROM tankor + LEFT JOIN tankorSzemeszter USING (tankorId) + LEFT JOIN tankorTipus USING (tankorTipusId) + WHERE tankor.tankorId=%u AND tanev=%u"; + return db_query($q, + array('fv' => 'getTankorAdat', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => array($tankorId, $tanev)), $olr + ); + } + + function getTankorAdatByIds($tankorIds, $SET = array('tanev' => __TANEV, 'dt' => '')) { + + if (!is_array($tankorIds)) return false; + if (in_array('',$tankorIds)==true) { + // ez előállhat akkor is, ha valamiért az órarendben NULL tankorId van (speckó óra!) + // $_SESSION['alert'][] = 'message:invalid_array_value_exception:(getTankorAdatByIds:tankorIds:contains empty string)'; + // clean array + $tankorIds = array_filter(array_unique($tankorIds),'_isempty'); + } + $tanev = $SET['tanev']; + // Ha valid a tanev... ??? Aktív??? + if ($SET['dt']!='') { + $dt = $SET['dt']; + $SZ = getSzemeszterByDt($dt); + if (is_array($SZ) && $SZ['tanev'] != '') { + $tanev = $SZ['tanev']; + $felev = $SZ['szemeszter']; + } else { // a referencia dátum kívül esik a tanéven, legyen a default + $tanev = __TANEV; + $felev = 1; + } + $q = "SELECT * FROM tankor + LEFT JOIN tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + WHERE tankor.tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") AND tanev=%u AND szemeszter=%u"; + + array_push($tankorIds, $tanev, $felev); + return db_query($q, array( + 'fv' => 'getTankorAdatByIds', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $tankorIds + )); + } elseif ($tanev!='') { + $q = "SELECT * FROM tankor + LEFT JOIN tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + WHERE tankor.tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") AND tanev=%u"; + array_push($tankorIds, $tanev); + return db_query($q, array( + 'fv' => 'getTankorAdatByIds', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => $tankorIds + )); + } + return false; + } + + function getTankorTargyId($tankorId) { + $q = "SELECT targyId FROM tankor WHERE tankor.tankorId=%u"; + return db_query($q, array('fv' => 'getTankorTargyId', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($tankorId))); + } + + function getTankorMkId($tankorId) { + $q = "SELECT mkId FROM tankor LEFT JOIN targy USING (targyId) WHERE tankor.tankorId=%u"; + return db_query($q, array('fv' => 'getTankorMkId', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($tankorId))); + } + + function getTankorByMkId($mkId, $tanev, $SET = array('csakId' => false,'filter' => array()) ) { + + global $_TANEV, $__tankorOrder; + + if ($tanev == __TANEV) $TA = $_TANEV; else $TA = getTanevAdat($tanev); + $szsz = count($TA['szemeszter']); + + if (count($SET['filter']) > 0) $W = ' AND '.implode(' AND ',$SET['filter']); else $W = ''; + + if ($SET['csakId'] !== true) { + $q = "SELECT tankor.tankorId AS tankorId, tankorNev, tankorTipusId, targy.targyId AS targyId, kovetelmeny, jelenlet, felveheto, + tanev, szemeszter, SUM(oraszam)/%u AS oraszam + FROM tankor LEFT JOIN targy USING (targyId) + LEFT JOIN tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + LEFT JOIN tankorTipus USING (tankorTipusId) + WHERE tanev=%u AND mkId=%u $W + GROUP BY tankorId + ORDER BY $__tankorOrder"; + $v = array($szsz, $tanev, $mkId); + if ($SET['result'] == 'multiassoc') { + $RESULT = db_query($q, array( + 'fv' => 'getTankorByMkId', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => $v + )); + } else { + $RESULT = db_query($q, array( + 'fv' => 'getTankorByMkId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v + )); + $tolDt = isset($SET['tolDt']) ? $SET['tolDt'] : $TA['kezdesDt']; + $igDt = isset($SET['igDt']) ? $SET['igDt'] : $TA['zarasDt']; + for($i = 0; $i < count($RESULT); $i++) { + $RESULT[$i]['tanarok'] = getTankorTanaraiByInterval( + $RESULT[$i]['tankorId'], + array('tanev' => $tanev, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result' => 'nevsor', + 'datumKenyszeritessel' => $SET['datumKenyszeritessel'] + ) + ); + } + } + } else { + $q = "SELECT tankor.tankorId AS tankorId + FROM tankor LEFT JOIN targy USING (targyId) + LEFT JOIN tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + WHERE tanev=%u AND mkId=%u $W + GROUP BY tankorId + ORDER BY $__tankorOrder"; + $v = array($tanev, $mkId); + $RESULT = db_query($q, array('fv' => 'getTankorByMkId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + } + return $RESULT; + } + + /* + A megadott osztályokhoz - és csak azokhoz - rendelt tankörök listája + */ + function getTankorByOsztalyIds($osztalyIds, $tanev = __TANEV) { // csak Id-kkel tér vissza + + $q = "SELECT DISTINCT tankorId FROM tankorOsztaly LEFT JOIN tankorSzemeszter USING (tankorId) + WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).") AND tanev=%u + AND tankorId NOT IN ( + SELECT DISTINCT tankorId FROM tankorOsztaly LEFT JOIN tankorSzemeszter USING (tankorId) + WHERE osztalyId NOT IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).") AND tanev=%u + )"; + $v = mayor_array_join($osztalyIds, array($tanev), $osztalyIds, array($tanev)); + return db_query($q, array('fv' => 'getTankorByOsztalyIds', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + } + + function getTankorByTeremId($teremId, $tanev = __TANEV) { // KIVÉTEL speciális függvény, teremben levő órák tankörei - tesztelés alatt + + $q = "SELECT tankor.* FROM ora LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) WHERE teremId = %u GROUP BY tankorId"; + $v = array($teremId); + return db_query($q, array('fv' => 'getTankorByTeremId', 'debug'=>false,'modul' => 'naplo', 'result' => 'indexed', 'values' => $v)); + } + + + function getTankorByOsztalyId($osztalyId, $tanev = __TANEV, $SET = array('csakId' => false, 'tanarral' => false, 'result' => '')) { + + global $__tankorOrder; + + $v = array($osztalyId, $tanev); + if ($SET['csakId'] == true || $SET['result'] == 'idonly') { + +// Felesleges a tankor tábla a lekérdezésben - nem? +// $q = "SELECT DISTINCT tankor.tankorId +// FROM tankor LEFT JOIN tankorSzemeszter USING (tankorId) +// LEFT JOIN tankorOsztaly USING (tankorId) +// WHERE osztalyId=%u AND tanev=%u +// ORDER BY LPAD(substring_index(substring_index(tankorNev,'-',1),'.',1),2,'0'),tankorNev,tanev,szemeszter"; + $q = "SELECT DISTINCT tankorId + FROM tankorOsztaly LEFT JOIN tankorSzemeszter USING (tankorId) + WHERE osztalyId=%u AND tanev=%u + ORDER BY ".$__tankorOrder.",tanev,szemeszter"; + $RESULT = db_query($q, array('fv' => 'getTankorByOsztalyId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + + } else { + + $q = "SELECT DISTINCT tankor.tankorId,tankorNev,tankorTipusId,targyId,kovetelmeny,jelenlet,felveheto + FROM tankor + LEFT JOIN tankorTipus USING (tankorTipusId) + LEFT JOIN tankorSzemeszter USING (tankorId) + LEFT JOIN tankorOsztaly USING (tankorId) + WHERE osztalyId=%u AND tanev=%u + ORDER BY ".$__tankorOrder.",tanev,szemeszter"; + if (!isset($SET['result']) || $SET['result']=='') { + $RESULT = db_query($q, array('fv' => 'getTankorByOsztalyId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + if ($SET['tanarral'] === true) { + global $_TANEV; + if ($tanev != __TANEV) $TA = getTanevAdat($tanev); else $TA = $_TANEV; + for($i = 0; $i < count($RESULT); $i++) + $RESULT[$i]['tanarok'] = getTankorTanaraiByInterval($RESULT[$i]['tankorId'], array('tanev' => $tanev, 'tolDt' => $TA['kezdesDt'], 'igDt' => $TA['zarasDt'], 'result' => 'nevsor')); + } + } else { + $RESULT = db_query($q, array( + 'fv' => 'getTankorByOsztalyId', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => $v + )); + } + } + return $RESULT; + } + + function getTankorByTargyId($targyId, $tanev, $SET = array('idonly' => true, 'lista' => false), $olr = '') { + + global $_TANEV,$__tankorOrder; + + if ($tanev != __TANEV) $TA = getTanevAdat($tanev); + else $TA = $_TANEV; + $szsz = count($TA['szemeszter']); + if ($SET['idonly']) { + $q = "SELECT tankor.tankorId AS tankorId + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + WHERE tanev=%u AND targyId=%u + GROUP BY tankorId"; + $RESULT = db_query($q,array('fv' => 'getTankorByTargyId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tanev, $targyId))); + } elseif ($SET['lista']) { + $q = "SELECT DISTINCT tankor.tankorId AS tankorId,tankorNev,tankorTipusId,kovetelmeny,jelenlet,felveheto + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTipus USING (tankorTipusId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + WHERE tanev=%u AND targyId=%u + ORDER BY ".$__tankorOrder; + $RESULT = db_query($q, array('fv' => 'getTankorByTargyId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tanev, $targyId))); + } else { + $q = "SELECT tankor.tankorId AS tankorId,tankorNev,tankorTipusId,kovetelmeny,jelenlet,felveheto,tanev,szemeszter,sum(oraszam)/%u AS oraszam + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTipus USING (tankorTipusId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + WHERE tanev=%u AND targyId=%u + GROUP BY tankorId + ORDER BY ".$__tankorOrder; + $RESULT = db_query($q, array('fv' => 'getTankorByTargyId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($szsz, $tanev, $targyId))); + } + return $RESULT; + } + + function getTankorByTanarId($tanarId, $tanev = __TANEV, $SET = array('csakId' => false, 'tolDt' => '', 'igDt' => '', 'result' => '', 'tanarral' => false), $olr = '') { + + global $__tankorOrder; + + if ($tanev=='') $tanev=__TANEV; + + if ($tanarId=='') { + $_SESSION['alert'][] = '::getTankorByTanarId fv hívás a kötelező $tanarId paraméter nélkül!'; + return false; + } + + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt($tanev, $tolDt, $igDt); +/* DÁTUMOKKK!!!!! */ + $v = array($tanev, $tanarId, $tolDt, $igDt); + if ($SET['csakId']===true) { + $q = "SELECT tankor.tankorId AS tankorId + FROM tankor LEFT JOIN tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + LEFT JOIN tankorTanar ON (tankor.tankorId=tankorTanar.tankorId) + WHERE tanev=%u AND tanarId=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt + GROUP BY tankorId"; + $RESULT = db_query($q, array('fv' => 'getTankorByTanarId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $olr); + } else { + $q = "SELECT tankor.tankorId AS tankorId,tankorNev,tankorTipusId,kovetelmeny,jelenlet,felveheto,tanev,szemeszter + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTanar ON (tankor.tankorId=tankorTanar.tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTipus USING (tankorTipusId) + WHERE tanev=%u AND tanarId=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt + GROUP BY tankorId + ORDER BY ".$__tankorOrder.",tanev,szemeszter"; + // a kompatibilitás jegyében... + if ($SET['result']=='multiassoc') { + $RESULT = db_query($q, array( + 'result' => 'multiassoc', 'values' => $v, 'keyfield' => 'tankorId', 'modul' => 'naplo_intezmeny', 'fv' => 'getTankorByTanarId' + )); + } else { + $RESULT = db_query($q, array( + 'result' => 'indexed', 'values' => $v, 'modul' => 'naplo_intezmeny', 'fv' => 'getTankorByTanarId' + ), $olr); + if ($SET['tanarral'] === true) { + global $_TANEV; + if ($tanev != __TANEV) $TA = getTanevAdat($tanev); else $TA = $_TANEV; + for($i = 0; $i < count($RESULT); $i++) + $RESULT[$i]['tanarok'] = getTankorTanaraiByInterval($RESULT[$i]['tankorId'], array('tanev' => $tanev, 'tolDt' => $TA['kezdesDt'], 'igDt' => $TA['zarasDt'], 'result' => 'nevsor')); + } + + } + } + return $RESULT; + } + + function getTankorDiakFelmentes($diakId, $tanev = __TANEV, $SET = array('csakId' => false, 'tolDt' => '', 'igDt' => '', 'override' => false, 'result'=>'indexed', 'felmentesTipus'=>array('óralátogatás alól'), 'nap'=>null, 'ora'=>null) , $olr = '') { + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt($tanev, $tolDt, $igDt); + + if ($SET['csakId'] === true || $SET['result'] == 'csakId') $SET['result'] = 'idonly'; + elseif ($SET['result'] == '') $SET['result'] = 'indexed'; + if (isset($SET['felmentesTipus'])) { + if (!is_array($SET['felmentesTipus'])) { + $W = ' AND felmentesTipus = "'.$SET['felmentesTipus'].'" '; + } else { + $W = ' AND felmentesTipus IN ("'.implode('","',$SET['felmentesTipus']).'") '; + } + } else { // alapértelmezés + $W = ' AND felmentesTipus = "óralátogatás alól" '; + } + + if (is_numeric($SET['nap'])) $W .= " AND (nap=".$SET['nap']." OR nap is null) "; + if (is_numeric($SET['ora'])) $W .= " AND (ora=".$SET['ora']." OR ora is null) "; + + if ($SET['result'] == 'idonly') { + $q = "SELECT DISTINCT tankorId + FROM ".__INTEZMENYDBNEV.".tankorDiakFelmentes LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + WHERE diakId=%u AND tanev=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt".$W + ; + $v = array($diakId, $tanev, $tolDt, $igDt,$tolDt, $igDt); + + } else { + $q = "SELECT * + FROM ".__INTEZMENYDBNEV.".tankorDiakFelmentes + WHERE diakId=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt".$W."" + ; + $v = array($diakId, $tolDt, $igDt,$tolDt, $igDt); + + } + $RESULT = db_query($q, array('keyfield' => 'tankorId', 'modul' => 'naplo_intezmeny', 'fv' => 'getTankorDiakFelmentes', 'values' => $v, 'result' => $SET['result'])); + return $RESULT; + } + + function getFelmentes($SET = array('tanev'=>__TANEV, 'osztalyId'=>false,'csakId' => false, 'tolDt' => '', 'igDt' => '', 'override' => false, 'result'=>'indexed', 'felmentesTipus'=>array('óralátogatás alól'), 'nap'=>null, 'ora'=>null) , $olr = '') { + $tanev = ($SET['tanev']!='')?$SET['tanev']:__TANEV; + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt($tanev, $tolDt, $igDt); + + if ($SET['csakId'] === true || $SET['result'] == 'csakId') $SET['result'] = 'idonly'; + elseif ($SET['result'] == '') $SET['result'] = 'indexed'; + if (isset($SET['felmentesTipus'])) { + if (!is_array($SET['felmentesTipus'])) { + $W = ' AND felmentesTipus = "'.$SET['felmentesTipus'].'" '; + } else { + $W = ' AND felmentesTipus IN ("'.implode('","',$SET['felmentesTipus']).'") '; + } + } else { // alapértelmezés + $W = ' AND felmentesTipus = "óralátogatás alól" '; + } + + if (is_numeric($SET['nap'])) $W .= " AND (nap=".$SET['nap']." OR nap is null) "; + if (is_numeric($SET['ora'])) $W .= " AND (ora=".$SET['ora']." OR ora is null) "; + if (is_numeric($SET['osztalyId'])) $W .= " AND osztalyId=".$SET['osztalyId']." "; + + if ($SET['result'] == 'idonly') { + $q = "SELECT DISTINCT tankorId + FROM ".__INTEZMENYDBNEV.".tankorDiakFelmentes LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + WHERE tanev=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt".$W + ; + $v = array($tanev, $tolDt, $igDt,$tolDt, $igDt); + + } else { + $q = "SELECT a.* + FROM ".__INTEZMENYDBNEV.".tankorDiakFelmentes AS a + LEFT JOIN ".__INTEZMENYDBNEV.".osztalyDiak ON (osztalyDiak.diakId=a.diakId) + WHERE ('%s' <= a.kiDt OR a.kiDt IS NULL) + AND '%s' >= a.beDt".$W." ORDER BY a.diakId,a.beDt" + ; + $v = array($tolDt, $igDt, $tolDt, $igDt); + + } + $RESULT = db_query($q, array('debug'=>false,'keyfield' => 'tankorId', 'modul' => 'naplo_intezmeny', 'fv' => 'getTankorDiakFelmentes', 'values' => $v, 'result' => $SET['result'])); + return $RESULT; + } + + function getTankorByDiakId($diakId, $tanev = __TANEV, $SET = array('csakId' => false, 'tolDt' => '', 'igDt' => '', 'override' => false, 'result'=>'indexed') , $olr = '') { + + global $__tankorOrder; + + if (isset($SET['jelenlet']) && $SET['jelenlet']!='') { + //$W = " AND tankorDiak.jelenlet='%s'"; + $_SESSION['alert'][] = 'info:ERR400:getTankorByDiakId() nem hívható "jelenlet" paraméterrel!:'.$SET['jelenlet']; + } else { + //$W = ''; + } + + $tolDt = $SET['tolDt']; $igDt = $SET['igDt']; + initTolIgDt($tanev, $tolDt, $igDt); + + if ($SET['csakId'] === true || $SET['result'] == 'csakId') $SET['result'] = 'idonly'; + elseif ($SET['result'] == '') $SET['result'] = 'indexed'; + + if ($SET['result'] == 'idonly') { +// $q = "SELECT DISTINCT tankor.tankorId,tankorNev,targyId,tankor.kovetelmeny,tankor.jelenlet,felveheto +// FROM ".__INTEZMENYDBNEV.".tankor LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) +// LEFT JOIN ".__INTEZMENYDBNEV.".tankorDiak USING (tankorId) +// WHERE diakId=$diakId AND tanev=$tanev +// AND ('$tolDt' <= kiDt OR kiDt IS NULL) +// AND '$igDt' >= beDt +// ORDER BY LPAD(substring_index(substring_index(tankorNev,'-',1),'.',1),2,'0'),tankorNev,tanev,szemeszter"; + $q = "SELECT DISTINCT tankorId + FROM ".__INTEZMENYDBNEV.".tankorDiak LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + WHERE diakId=%u AND tanev=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt"; +// $RESULT = _m_y_id_query($q, array('db' => 'naplo_intezmeny', 'fv' => 'getTankorByDiakId', 'result' => 'idonly'), $olr); + } else { + $q = "SELECT DISTINCT tankor.tankorId,tankorNev,tankorTipusId,targyId,tankor.kovetelmeny,tankorTipus.jelenlet AS jelenlet, felveheto + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTipus USING (tankorTipusId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorDiak USING (tankorId) + WHERE diakId=%u AND tanev=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt $W + ORDER BY ".$__tankorOrder.",tanev,szemeszter"; +// if ($SET['result']=='multiassoc') +// $RESULT = _m_y_multiassoc_query($q,'tankorId', array('keyfield'=>'tankorId','db'=>'naplo_intezmeny','fv'=>'getTankorByDiakId')); +// else +// $RESULT = _m_y_query($q, array('db'=>'naplo_intezmeny', 'fv'=>'getTankorByDiakId'), $olr); + } + $v = array($diakId, $tanev, $tolDt, $igDt, $SET['jelenlet']); + $RESULT = db_query($q, array('keyfield' => 'tankorId', 'modul' => 'naplo_intezmeny', 'fv' => 'getTankorByDiakId', 'values' => $v, 'result' => $SET['result'])); + return $RESULT; + } + + function getTankorIdsByDiakIds($diakIds, $SET = array( + 'tanev' => __TANEV, + 'tolDt'=>'', + 'igDt'=>'', + 'felmentettekkel'=>true +// 'jelenlet'=>array('kötelező','nem kötelező') +// 'kovetelmeny'=>array('aláírás','vizsga','jegy') + ) + ) { + + global $__tankorOrder; + + if (isset($SET['jelenlet'])) { + $_SESSION['alert'][] = 'info:!!!:getTankorIdsByDiakIds(), jelenlét parameter is obsolete'; + } + + if (!is_array($diakIds)) return false; + elseif (count($diakIds) == 0) return array(); + $tanev = readVariable($SET['tanev'],'numeric unsigned',__TANEV); + $tolDt = $SET['tolDt']; + $igDt = $SET['igDt']; + initTolIgDt($tanev, $tolDt, $igDt); + +// if (!is_array($SET['jelenlet'])) $SET['jelenlet'] = array('kötelező','nem kötelező'); +// if (!is_array($SET['kovetelmeny'])) $SET['kovetelmeny'] = array('aláírás','vizsga','jegy'); + + // ---------------------- + $q = "SELECT DISTINCT tankorDiak.tankorId + FROM ".__INTEZMENYDBNEV.".tankorDiak + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") AND tanev=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt + ORDER BY ".$__tankorOrder.",tanev,szemeszter"; +// AND kovetelmeny IN ('".implode("','", array_fill(0, count($SET['kovetelmeny']), '%s'))."') +// AND jelenlet IN ('".implode("','", array_fill(0, count($SET['jelenlet']), '%s'))."') + +// $v = array_merge($diakIds, array($tanev, $tolDt, $igDt), $SET['jelenlet'], $SET['kovetelmeny']); + $v = mayor_array_join($diakIds, array($tanev, $tolDt, $igDt)); + $TANKOROK = db_query($q, array('fv' => 'getTankorIdsByDiakIds', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $olr); + + if (!is_array($SET['felmentettekkel'])) $SET['felmentettekkel'] = true; + /* Ha felmentett, akkor kivegyük-e az adott tanköridket?! */ + if ($SET['felmentettekkel'] === false) { + $q = "SELECT DISTINCT tankorDiak.tankorId + FROM ".__INTEZMENYDBNEV.".tankorDiakFelmentes + WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") AND tanev=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt"; + $v = mayor_array_join($diakIds, array($tanev, $tolDt, $igDt)); + $FM = db_query($q, array('fv' => 'getTankorIdsByDiakIdsFM', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $olr); + } + if (is_array($TANKOROK)) { + if (is_array($FM) && count($FM)>0) { + $RESULT = array_diff($TANKOROK,$FM); + reset($RESULT); + sort($RESULT); + } else { + $RESULT = $TANKOROK; + } + } + return $RESULT; + } + + function getTankorById($tankorId, $tanev = __TANEV, $olr = '') { + if ($tankorId=='') return false; + if ($tanev == '') return getTankorok(array("tankor.tankorId=$tankorId"), '', $olr); + else return getTankorok(array("tankor.tankorId=$tankorId", "tanev=$tanev"), '', $olr); + } + + function getTankorByTanev($tanev = __TANEV, $SET = array('result' => 'indexed', 'jelenlet'=>''), $olr = '') { + global $__tankorOrder; + + if ($SET['jelenlet']!='') { + $W['join'] = ' LEFT JOIN '.__INTEZMENYDBNEV.'.tankorTipus USING (tankorTipusId) '; + $W['where']= ' AND tankorTipus.jelenlet IN ("'.$SET['jelenlet'].'")'; + } + if ($SET['result'] == 'idonly') { + $q = "SELECT DISTINCT tankorId + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + ".$W['join']." + WHERE tanev=%u ".$W['where']." ORDER BY $__tankorOrder"; + $ret = db_query($q, array('fv' => 'getTankorByTanev', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tanev)), $olr); + } else { + $q = "SELECT DISTINCT tankorId,tankorNev,targyId + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + ".$W['join']." + WHERE tanev=%u ".$W['where']." ORDER BY $__tankorOrder"; + $ret = db_query($q, array('fv' => 'getTankorByTanev', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tanev)), $olr); + } + return $ret; + } + + function getTankorByBontasIds($bontasIds) { + /* + * Az aktuális tanévben kérdezi le a bontások által megadott osztályhoz és tárgyhoz rendelhető tankörök tankorId-it... + */ + if (!is_array($bontasIds) || count($bontasIds)==0) return array(); + $q = "select distinct tankorId from ".__TANEVDBNEV.".kepzesTargyBontas + left join (tankor left join tankorOsztaly using (tankorId)) using (targyId,osztalyId) + left join tankorSzemeszter using(tankorId) + where tanev=".__TANEV." and bontasId in (".implode(',', array_fill(0, count($bontasIds), '%u')).")"; + return db_query($q, array('fv'=>'getTankorByBontasIds','modul'=>'naplo_intezmeny','result'=>'idonly','values'=>$bontasIds)); + } + + // FIGYELEM! NEM MINDIG OPTIMÁLIS EREDMÉNY + function getTankorok( + $FILTER = array(), + $ORDER = '', + $olr = '' + ) { + global $__tankorOrder; + /* Általános filterező */ + $QW = ''; + if (is_array($FILTER) && count($FILTER)>0) { + $QW = " WHERE ".implode(' AND ',$FILTER); + } + if ($ORDER == '') $ORDER = $__tankorOrder.",tanev,szemeszter"; + + // --TODO: továbbgondolásra szorul + // jelenlet = tankorJelenlet + $q = "SELECT DISTINCT tankor.tankorId,tankorTipusId,tankorNev,targyId,kovetelmeny,jelenlet,felveheto,tanev,zaroKovetelmeny + FROM ".__INTEZMENYDBNEV.".tankor + LEFT JOIN ".__INTEZMENYDBNEV.".tankorTipus USING (tankorTipusId) + LEFT JOIN ".__INTEZMENYDBNEV.".tankorSzemeszter USING (tankorId) + LEFT JOIN ".__INTEZMENYDBNEV.".targy USING (targyId) + $QW + ORDER BY $ORDER"; + return db_query($q, array('fv' => 'getTankorok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed'), $olr); + + } + + function getTankorSzemeszterei($tankorId,$SET=array(),$olr='') { + if ($tankorId=='') return false; + + $q = "SELECT * FROM tankorSzemeszter LEFT JOIN szemeszter using (tanev,szemeszter) WHERE tankorId=%u order by tanev,szemeszter"; + $ret = db_query($q, array('fv' => 'getTankorSzemeszterei', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tankorId)), $olr); + + if (is_array($SET['arraymap'])) return reindex($ret, $SET['arraymap']); + else return $ret; + } + + function getTankorOsztalyai($tankorId, $SET = array('result' => 'id'), $olr='') { // lásd még getTankorOsztalyaiByTanev + if ($tankorId=='') return false; + + $q = "SELECT DISTINCT osztalyId FROM tankorOsztaly WHERE tankorId=%u"; + if ($SET['result'] == 'id') { + return db_query($q, array('fv' => 'getTankorOsztalyai', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tankorId)), $olr); + } else { + return db_query($q, array('fv' => 'getTankorOsztalyai', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tankorId)), $olr); + } + } + + function getTankorOsztalyaiByTanev($tankorId, $tanev = __TANEV, $SET = array('result' => 'id', 'tagokAlapjan' => false, 'tolDt' => '', 'igDt' => ''), $olr = null) { + + if ($tankorId=='' || $tanev=='') return false; + + if ($SET['tagokAlapjan']) { // Ha a tényleges tagok alapján keressük a tankör osztályait... + $tolDt = readVariable($SET['tolDt'], 'datetime', null); + $igDt = readVariable($SET['igDt'], 'datetime', null); + initTolIgDt($tanev, $tolDt, $igDt); + /* + - a diák tagja a tankörnek az adott idő intervellumban + - a diák tagja az osztálynak az adott idő intervellumban + - az osztály hozzá van rendelve a tankörhöz (lehet egy diák több osztálynak is tagja - ez bezavarhat) + */ + $q = "SELECT osztalyId FROM tankorDiak LEFT JOIN osztalyDiak USING (diakId) + WHERE tankorId=%u + AND tankorDiak.beDt <= '%s' AND (tankorDiak.kiDt IS NULL OR tankorDiak.kiDt >= '%s') + AND osztalyDiak.beDt <= '%s' AND (osztalyDiak.kiDt IS NULL OR osztalyDiak.kiDt >= '%s') + AND osztalyId IN (SELECT DISTINCT osztalyId FROM tankorOsztaly WHERE tankorId=%u) + GROUP BY osztalyId ORDER BY COUNT(osztalyId) DESC"; // A legtöbb tagú osztály kerüljön előre + $v = array($tankorId, $igDt, $tolDt, $igDt, $tolDt, $tankorId); + if ($SET['result'] == 'id') + $return = db_query($q, array('fv' => 'getTankorOsztalyaiByTanev', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v),$olr); + else + $return = db_query($q, array('fv' => 'getTankorOsztalyaiByTanev', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $olr); + if (is_array($return) && count($return) > 0) return $return; + else $_SESSION['alert'][] = 'info:fallback:ennek a tankörnek egy tagja sincs, tagok alapján nem tudom lekérdezni az érintett osztályokat:'.$tankorId; + } + // Ha nincs a tankörnek egy tagja sem, vagy nem tagok alapján keresünk... + $q = "SELECT tankorOsztaly.osztalyId AS osztalyId FROM tankorOsztaly + LEFT JOIN osztaly USING (osztalyId) + WHERE tankorId=%u AND kezdoTanev<=%u AND vegzoTanev>=%u"; + $v = array($tankorId, $tanev, $tanev); + if ($SET['result'] == 'id') + return db_query($q, array('fv' => 'getTankorOsztalyaiByTanev', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $olr); + else + return db_query($q, array('fv' => 'getTankorOsztalyaiByTanev', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $olr); + } + + function getTankorOsztalyaiByBontas($tankorId) { + + $q = "select distinct osztalyId from bontasTankor left join kepzesTargyBontas using (bontasId) where tankorId=%u"; + return db_query($q, array('fv'=>'getTankorOsztalyaiByBontas','modul'=>'naplo','result'=>'idonly','values'=>array($tankorId))); + + } + + function getTankorTanarai($tankorId, $olr = '') { + if ($tankorId == '') return false; + $q = "SELECT tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, viseltCsaladiNev, viseltUtonev)) as tanarNev, min(tankorTanar.beDt) AS minBeDt, max(tankorTanar.kiDt) AS maxKiDt + FROM ".__INTEZMENYDBNEV.".tankorTanar LEFT JOIN ".__INTEZMENYDBNEV.".tanar USING (tanarId) + WHERE tankorId=%u GROUP BY tanarId ORDER BY tankorTanar.beDt,tankorTanar.kiDt"; + return db_query($q, array('fv' => 'getTankorTanarai', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tankorId)), $olr); + } + + function getTankorTanarBejegyzesek($tankorId, $olr = '') { + if ($tankorId == '') return false; + $q = "SELECT tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, viseltCsaladiNev, viseltUtonev)) as tanarNev, tankorTanar.beDt, tankorTanar.kiDt + FROM ".__INTEZMENYDBNEV.".tankorTanar LEFT JOIN ".__INTEZMENYDBNEV.".tanar USING (tanarId) + WHERE tankorId=%u ORDER BY tankorTanar.beDt,tankorTanar.kiDt"; + return db_query($q, array('fv' => 'getTankorTanarBejegyzesek', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($tankorId)), $olr); + } + + function getTankorTanaraiByInterval($tankorId, $Param = array('tanev' => __TANEV, 'tolDt' => '', 'igDt' => '', 'result' => 'nevsor', 'datumKenyszeritessel' => false), $olr = '') { + + $tolDt = $Param['tolDt']; + $igDt = $Param['igDt']; + if (!$Param['datumKenyszeritessel']) initTolIgDt($Param['tanev'], $tolDt, $igDt); + + if (!is_array($tankorId)) $tankorId = array($tankorId); + if (implode(',', $tankorId) == '') { + return false; + } + + if ($Param['result'] == 'csakId' or $Param['result'] == 'idonly') { + $q = "SELECT DISTINCT tanarId FROM ".__INTEZMENYDBNEV.".tankorTanar + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorId), '%u')).") + AND (tankorTanar.kiDt IS NULL OR tankorTanar.kiDt>='%s') + AND tankorTanar.beDt<='%s'"; + array_push($tankorId, $tolDt, $igDt); + return db_query($q, array( + 'fv' => 'getTankorTanaraiByInterval', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $tankorId + ), $olr); + } else { + $q = "SELECT DISTINCT tankorId, tanarId, TRIM(CONCAT_WS(' ',viseltNevElotag, viseltCsaladiNev, viseltUtonev)) as tanarNev + FROM ".__INTEZMENYDBNEV.".tankorTanar LEFT JOIN ".__INTEZMENYDBNEV.".tanar USING (tanarId) + WHERE tankorId IN (".implode(',',$tankorId).") + AND (tankorTanar.kiDt IS NULL OR tankorTanar.kiDt>='$tolDt') + AND tankorTanar.beDt<='$igDt' ORDER BY tankorTanar.beDt, tankorTanar.kiDt, tanarNev"; + array_push($tankorId, $tolDt, $igDt); + if ($Param['result'] == 'assoc') + return db_query($q, array( + 'fv' => 'getTankorTanaraiByInterval', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => $tankorIds + ), $olr); + else return db_query($q, array( + 'fv' => 'getTankorTanaraiByInterval', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $tankorIds + ), $olr); + } + } + + function getTankorDiakjai($tankorId, $olr = '') { + if ($tankorId=='' || (is_array($tankorId) && count($tankorId) == 0)) return false; + if (is_array($tankorId)) { + $tankorIds = array_filter(array_unique($tankorId),'_isempty'); + $W = "tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")"; + $v = $tankorIds; + } else { + $W = "tankorId=%u"; + $v = array($tankorId); + } + $q = "SELECT DISTINCT diakId FROM ".__INTEZMENYDBNEV.".tankorDiak WHERE ".$W; + $RETURN['idk'] = db_query($q, array( + 'fv' => 'getTankorDiakjai/1', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v + ), $olr); + // jelenlet = diakJelenlet + $q = "SELECT diakId,DATE_FORMAT(kiDt,'%%Y-%%m-%%d') AS kiDt, DATE_FORMAT(beDt,'%%Y-%%m-%%d') AS beDt,jelenlet,jelenlet as diakJelenlet,kovetelmeny,jovahagyva + FROM ".__INTEZMENYDBNEV.".tankorDiak WHERE tankorId=%u ORDER BY bedt"; + $RETURN['adatok'] = db_query($q, array( + 'fv' => 'getTankorDiakjai/2', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'diakId', 'values' => array($tankorId) + ), $olr); + $RETURN['nevek'] = getDiakokById($RETURN['idk'],$olr); + return $RETURN; + } + + function getTankorDiakjaiByInterval($tankorId, $tanev = __TANEV, $tolDt = '', $igDt = '', $olr = '') { + + initTolIgDt($tanev, $tolDt, $igDt); + if ($tankorId == '' || (is_array($tankorId) && count($tankorId) == 0)) return false; + if (is_array($tankorId)) { + $tankorIds = array_filter(array_unique($tankorId),'_isempty'); + $W = "tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")"; + $v = $tankorIds; + array_push($v, $tolDt,$igDt); + } else { + $W = "tankorId=%u"; + $v = array($tankorId,$tolDt,$igDt); + } + $q = "SELECT DISTINCT diakId FROM ".__INTEZMENYDBNEV.".tankorDiak + WHERE $W AND (kiDt>='%s' OR kiDt is null) AND beDt<='%s' ORDER BY diakId"; + $RETURN['idk'] = db_query($q, array('fv' => 'getTankorDiakjaiByInterval', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v), $olr); + /* jelenlet, követelmeny, jóváhagyva mezők MÁR nincsenek */ + $q = "SELECT diakId,DATE_FORMAT(kiDt,'%%Y-%%m-%%d') AS kiDt, DATE_FORMAT(beDt,'%%Y-%%m-%%d') AS beDt + FROM ".__INTEZMENYDBNEV.".tankorDiak WHERE $W AND (kiDt>='%s' OR kiDt is null) AND beDt<='%s' ORDER BY bedt"; + $RETURN['adatok'] = db_query($q, array( + 'fv' => 'getTankorDiakjaiByInterval', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'diakId', 'values' => $v + ), $olr); + $RETURN['nevek'] = getDiakokById($RETURN['idk'], $olr); + return $RETURN; + + } + + + function tankorTagjaE($diakId, $tankorId, $tanev = __TANEV, $tolDt = '', $igDt = '') { + + + initTolIgDt($tanev, $tolDt, $igDt); + + $q = "SELECT COUNT(tankorId) FROM tankorDiak + WHERE tankorId=%u AND diakId=%u + AND ('%s' <= kiDt OR kiDt IS NULL) + AND '%s' >= beDt"; + $v = array($tankorId, $diakId, $tolDt, $igDt); + $num = db_query($q, array('fv' => 'tankorTagjaE', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + return ($num > 0); + + } + + function tankorVegzosE($tankorId, $tanev = __TANEV, $SET = array('tagokAlapjan' => true, 'tolDt' => null, 'igDt' => null)) { + /* + Egy tankört akkor tekintünk végzősnek, ha csak végzős diákok a tagjai. De lehet, hogy egy diák több osztálynak is tagja. + Ha az egyik esetleg nem végzős, akkor a diákok osztályai közt lesz nem végzős. + + Tehát a tankörhöz rendelt osztályokon belül nézzük a tagok osztályait, mert elvileg ez a halmaz csak bővebb lehet a tankör + tagok osztályainak halmazánál. + */ + + if ($tankorId == '' || $tanev == '') return false; + + // Először lekérdezzük a tankörhöz rendelt nem végzős osztályok számát + $q = "SELECT COUNT(osztalyId) FROM tankorOsztaly LEFT JOIN osztaly USING (osztalyId) + WHERE tankorId=%u AND vegzoTanev != %u"; + $return = (db_query($q, array('fv' => 'tankorVegzosE', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($tankorId, $tanev))) == 0); + // Ha a tankörhöz csak végzős osztályok vannak rendelve, vagy a tényleges tagok vizsgálatára nincs szükség, akkor visszatérünk + if ($return || !$SET['tagokAlapjan']) return $return; + + // Lekérdezzük a tankör tagok osztályait (ez figyel a tankörhöz rendelt osztályokra való szűkítésre) + $vegzosOsztalyok = getVegzosOsztalyok(array('tanev' => $tanev, 'result' => 'id')); + $tankorOsztalyai = getTankorOsztalyaiByTanev( + $tankorId, $tanev = $tanev, + array('result' => 'id', 'tagokAlapjan' => true, 'tolDt' => $SET['tolDt'], 'igDt' => $SET['igDt']) + ); + // vizsgáljuk, hogy van-e benne nem végzős + for ($i = 0; $i < count($tankorOsztalyai); $i++) { + if (!in_array($tankorOsztalyai[$i], $vegzosOsztalyok)) return false; + } + return true; + + } + + function tankorokVegzosekE($tankorIds, $tanev = __TANEV, $SET = array('tagokAlapjan' => true, 'tolDt' => null, 'igDt' => null)) { + + if (!is_array($tankorIds) || count($tankorIds) == 0 || $tanev == '') return false; + + // Először lekérdezzük a tankörökhöz rendelt nem végzős osztályok számát + $q = "SELECT tankorId, COUNT(osztaly.osztalyId) AS db FROM tankorOsztaly + LEFT JOIN osztaly ON tankorOsztaly.osztalyId = osztaly.osztalyId AND vegzoTanev != %u + WHERE tankorId IN (".implode(',', $tankorIds).") + GROUP BY tankorId"; + array_unshift($tankorIds, $tanev); + $ret = db_query($q, array( + 'fv' => 'tankorokVegzosekE', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $tankorIds + )); + // Ha a tényleges tagok vizsgálatára is szükség van + if ($SET['tagokAlapjan']) { + // Lekérdezzük a tankör tagok osztályait (ez figyel a tankörhöz rendelt osztályokra való szűkítésre) + $vegzosOsztalyok = getVegzosOsztalyok(array('tanev' => $tanev, 'result' => 'id')); + foreach ($ret as $tankorId => $tAdat) { + $db = $tAdat['db']; + $return[$tankorId] = true; + if ($db != 0) { // Ha csak végzős osztálya van, akkor nem kell tovább nézni, különben... + $tankorOsztalyai = getTankorOsztalyaiByTanev( + $tankorId, $tanev = $tanev, + array('result' => 'id', 'tagokAlapjan' => true, 'tolDt' => $SET['tolDt'], 'igDt' => $SET['igDt']) + ); + // vizsgáljuk, hogy van-e benne nem végzős + for ($i = 0; $i < count($tankorOsztalyai); $i++) { + if (!in_array($tankorOsztalyai[$i], $vegzosOsztalyok)) $return[$tankorId] = false; + break; + } + } + } + } else { + foreach ($ret as $tankorId => $tAdat) { + $return[$tankorId] = ($tAdat['db'] == 0); + } + } + return $return; + + } + + + function tankorDiakKonzisztensE($diakId,$tankorId,$tanev,$tolDt,$igDt) + { + /* + Jelenlét analízis: + tankorDiak.jelenlet = diakJelenlet + */ + + if ($diakId=='' || $tankorId=='') return false; + initTolIgDt($tanev, $tolDt, $igDt); + $tanevDb = tanevDbNev(__INTEZMENY,$tanev); + + // 1. adott intervallumban tagsága + $DTW1 = $DTW2 = array(); + $q = "SELECT beDt, kiDt, kovetelmeny, jelenlet as diakJelenlet FROM tankorDiak WHERE diakId=%u AND tankorId=%u + AND (jelenlet='nem kötelező' OR kovetelmeny!='jegy')AND (kiDt>'%s' OR kiDt IS NULL) AND beDt<'%s' "; + $v = array($diakId, $tankorId, $tolDt, $igDt); + $r = db_query($q, array('fv' => 'tankorDiakKozisztensE', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + for ($i=0; $i0) { + // 2. hiányzásai + $q = "SELECT count(hianyzasId) FROM %1\$s.hianyzas LEFT JOIN ora USING (oraId) WHERE diakId=%2\$u + AND ora.tankorId=%3\$u AND (".implode(' OR ',$DTW1).")"; + $v = array($tanevDb, $diakId, $tankorId); + $dbHianyzas = db_query($q,array('fv' => 'tankorDiakKonzisztensE', 'modul' => 'naplo', 'result' => 'value', 'values' => $v)); + if ($dbHianyzas>0) $_SESSION['alert'][] = 'info:hibas_hianyzasok:'.$dbHianyzas; + + } + if (count($DTW2)>0) { + // 3. jegyei + $q = "SELECT count(jegyId) FROM %1\$s.jegy WHERE diakId=%2\$u AND tankorId=%3\$u AND (".implode(' OR ',$DTW2).")"; + $v = array($tanevDb, $diakId, $tankorId); + $dbJegy = db_query($q,array('fv' => 'tankorDiakKonzisztensE', 'modul' => 'naplo', 'result' => 'value', 'values' => $v)); + if ($dbJegy>0) $_SESSION['alert'][] = 'info:hibas_jegyek:'.$dbJegy; + } + + return ($dbHianyzas==0 && $dbJegy==0); + + } + + + // itt a nap/ora-t is figyelni kellene, ha az pl a felmentésénél adott + function tankorDiakHianyzasIdk($diakId, $tankorIds, $tanev, $tolDt, $igDt, $nap=null, $ora=null) + { + $SET = array('diakId'=>$diakId, 'tankorIds'=>$tankorIds, 'tanev'=>$tanev, 'tolDt'=>$tolDt, 'igDt'=>$igDt, 'nap'=>$nap, 'ora'=>$ora); + return tankorDiakHianyzasIdk2($SET); + } + + function tankorDiakHianyzasIdk2($SET = array('diakId', 'tankorIds', 'tanev', 'tolDt', 'igDt', 'nap'=>null, 'ora'=>null), $olr='') + { + + $diakId = $SET['diakId']; + $tanev = $SET['tanev']; + $tolDt = $SET['tolDt']; + $igDt = $SET['igDt']; + $nap = $SET['nap']; + $ora = $SET['ora']; + $tankorIds = $SET['tankorIds']; + + if (!is_array($tankorIds)) if ($tankorIds == '') return false; + else $tankorIds = array($tankorIds); + if ($diakId=='' || count($tankorIds) == 0) return false; + + // is_resource mysqli esetén nem jó (object) + if (!$olr) $lr = db_connect('naplo_intezmeny'); else $lr = $olr; + + initTolIgDt($tanev, $tolDt, $igDt); + $tanevDb = tanevDbNev(__INTEZMENY,$tanev); + + $v = mayor_array_join(array($tanevDb, $tanevDb, $diakId), $tankorIds, array($tanevDb, $tolDt, $igDt)); + + if (isset($nap) && is_numeric($nap)) { + $W1 = ' AND (DAYOFWEEK(`%s`.hianyzas.dt) -1) = %u '; + $v = mayor_array_join($v,array($tanevDb,$nap)); + } + if (isset($ora) && is_numeric($ora)) { + $W2 = ' AND `%s`.hianyzas.ora = %u '; + $v = mayor_array_join($v,array($tanevDb,$ora)); + } + + // 2. hiányzásai + $q = "SELECT hianyzasId FROM `%s`.hianyzas LEFT JOIN `%s`.ora USING (oraId) + WHERE diakId=%u AND ora.tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND `%s`.hianyzas.dt BETWEEN '%s' AND '%s'".$W1.$W2; + $H = db_query($q, array('debug'=>false,'fv' => 'tankorDiakHianyzasIdk', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v), $lr); + // if (count($H) > 0) $_SESSION['alert'][] = 'info:hibas_hianyzasok:db='.count($H); + + // is_resource mysqli esetén nem jó (object) + if (!$olr) db_close($lr); + return $H; + } + + //function tankorDiakJegyIdk($diakId, $tankorIds, $tanev, $tolDt, $igDt) + function tankorDiakJegyIdk($SET = array('diakId', 'tankorIds', 'tanev', 'tolDt', 'igDt'), $olr = '') + { + + $diakId = $SET['diakId']; + $tanev = $SET['tanev']; + $tolDt = $SET['tolDt']; + $igDt = $SET['igDt']; + $nap = $SET['nap']; + $ora = $SET['ora']; + $tankorIds = $SET['tankorIds']; + + if (!is_array($tankorIds)) if ($tankorIds == '') return false; + else $tankorIds = array($tankorIds); + + if ($diakId=='' || count($tankorIds) == 0) return false; + + // is_resource mysqli esetén nem jó (object) + if (!$olr) $lr = db_connect('naplo_intezmeny'); else $lr = $olr; + initTolIgDt($tanev, $tolDt, $igDt); + $tanevDb = tanevDbNev(__INTEZMENY,$tanev); + + // 3. jegyei + $q = "SELECT jegyId FROM `%s`.jegy + WHERE diakId=%u AND tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") AND jegy.dt BETWEEN '%s' AND '%s'"; + $v = mayor_array_join(array($tanevDb, $diakId), $tankorIds, array($tolDt, $igDt)); + $J = db_query($q, array('fv' => 'tankorDiakJegyIdk', 'modul' => 'naplo', 'result' => 'idonly', 'values' => $v)); + //if (count($J) > 0) $_SESSION['alert'][] = 'info:hibas_jegyek:db='.count($J); + + // is_resource mysqli esetén nem jó (object) + if (!$olr) db_close($lr); + return $J; + + } + + function getTankorCsoport($tanev, $olr='') { + + // is_resource mysqli esetén nem jó (object) + if (!$olr) $lr = db_connect('naplo_intezmeny'); else $lr = $olr; + + // A tankör csoportjának lekérdezése + $q = "SELECT * FROM ".__TANEVDBNEV.".csoport ORDER BY csoportNev,csoportId "; + $ret = db_query($q, array( + 'fv' => 'getTankorCsoport', 'modul' => 'naplo_intezmeny', 'result' => 'indexed' + ), $lr); + if (is_array($ret) && count($ret) == 0) $ret = array($tankorId); + + // is_resource mysqli esetén nem jó (object) + if (!$olr) db_close($lr); + + return $ret; + + } + + function getTankorCsoportTankoreiByTankorId($tankorId, $olr='') { + + // is_resource mysqli esetén nem jó (object) + if (!$olr) $lr = db_connect('naplo_intezmeny'); else $lr = $olr; + + // A tankör csoportjának lekérdezése + $q = "SELECT tankorId FROM ".__TANEVDBNEV.".tankorCsoport + WHERE csoportId=(SELECT csoportId FROM ".__TANEVDBNEV.".tankorCsoport + WHERE tankorId=%u)"; + $ret = db_query($q, array( + 'fv' => 'getTankorCsoportTankoreiByTankorId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tankorId) + ), $lr); + if (is_array($ret) && count($ret) == 0) $ret = array($tankorId); + + // is_resource mysqli esetén nem jó (object) + if (!$olr) db_close($lr); + + return $ret; + + } + + function getTankorLetszam($tankorId,$ADAT=array('refDt'=>'', 'tolDt'=>'', 'igDt'=>''),$olr='') { + + if ($olr!='') $lr = $olr; else $lr = db_connect('naplo_intezmeny'); + + if ($ADAT['refDt']!='') $tolDt=$igDt = $ADAT['refDt']; + else { + $tolDt = $ADAT['tolDt']; + $igDt = $ADAT['igDt']; + } + $q = "SELECT count(*) AS v FROM tankorDiak WHERE tankorId=%u AND beDt<='%s' AND (kiDt is null OR kiDt>='%s')"; + $v = array($tankorId, $igDt, $tolDt); + $r = db_query($q, array('fv' => 'getTankorLetszam(share)', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v),$lr); + + if ($olr=='') db_close($lr); + return $r; + + } + + function getTankorLetszamOsztalyonkent($tankorId,$ADAT=array('tanev'=>'','refDt'=>'', 'tolDt'=>'', 'igDt'=>''),$olr='') { + + if ($olr!='') $lr = $olr; else $lr = db_connect('naplo_intezmeny'); + + if ($ADAT['refDt']!='') $tolDt=$igDt = $ADAT['refDt']; + else { + $tolDt = $ADAT['tolDt']; + $igDt = $ADAT['igDt']; + } + $tanev = ($ADAT['tanev']=='') ? __TANEV : $ADAT['tanev']; + $q = "SELECT diakId FROM tankorDiak WHERE tankorId=%u AND tankorDiak.beDt<='%s' AND (tankorDiak.kiDt is null OR tankorDiak.kiDt>='%s') ORDER BY diakId"; + $v = array($tankorId, $igDt, $tolDt); + $r = db_query($q, array('fv' => 'getTankorLetszamOsztalyonkent(share)', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v),$lr); + + for ($i=0; $i$tanev,'tolDt'=>$tolDt,'igDt'=>$igDt),$lr); + $RE[$o[0]['osztalyJel']] ++; + } + if (is_array($RE)) ksort($RE); + if ($olr=='') db_close($lr); + return $RE ; + + } + + function getTankorOraszamByTanev($tanev, $tankorIds = array()) { + + global $_TANEV; + + if ($tanev == __TANEV) $TA = $_TANEV; + else $TA = getTanevAdat($tanev); + + $szemeszterSzam = count($TA['szemeszter']); + if ($szemeszterSzam == 0) { + return false; + } + + if (is_array($tankorIds) && count($tankorIds) > 0) { + $TANKOR_WHERE = ' tankorId IN ('.implode(',', array_fill(0, count($tankorIds), '%u')).') AND '; + $v = $tankorIds; + } else { + $TANKOR_WHERE = ''; + $v = array(); + } + $return = array(); + $q = "SELECT tankorId, SUM(oraszam)/%u AS oraszam FROM tankorSzemeszter WHERE $TANKOR_WHERE tanev=%u GROUP BY tankorId"; + array_unshift($v, $szemeszterSzam); $v[] = $tanev; + $ret = db_query($q, array( + 'fv' => 'getTankorOraszamByTanev', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'tankorId', 'values' => $v + )); + if (is_array($ret)) foreach ($ret as $tankorId => $tAdat) $return[$tankorId] = $tAdat['oraszam']; + + return $return; + + } + + function tankorTanarRendbenE($tanev, $dt) { + + + $q = "SELECT DISTINCT tankorSzemeszter.tankorId AS tankorId, tankorNev + FROM tankorSzemeszter LEFT JOIN tankorTanar + ON tankorSzemeszter.tankorId=tankorTanar.tankorId AND kiDt>='%s' AND beDt<='%s' + WHERE tanev=%u AND beDt IS NULL"; + $v = array($dt, $dt, $tanev); + $ret = db_query($q, array('fv' => 'tankorTanarRendbenE', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + if (count($ret) > 0) { + $T = array(); + for ($i = 0; $i < count($ret); $i++) { + $T[] = $ret[$i]['tankorNev'].' ('.$ret[$i]['tankorId'].')'; + } + $_SESSION['alert'][] = 'message:wrong_data:Hiányzó tanár hozzárendelés:'.implode(', ', $T); + return false; + } else { return true; } + + } + + function getTankorTipusok($SET = array('óratervi'=>null, 'tanórán kívüli'=>null)) { + + $q = "SELECT * FROM tankorTipus"; + if ($SET['óratervi'] == true) $q .= " WHERE oratervi='óratervi'"; + elseif ($SET['tanórán kívüli'] == true) $q .= " WHERE oratervi='tanórán kívüli'"; + $r = db_query($q, array('fv' => 'getTankorTipusok', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield'=>'tankorTipusId')); + return $r; + //return getEnumField('naplo_intezmeny', 'tankor', 'tankorTipus'); + + } + + function getTankorNevById($tankorId, $SET = array('tanev'=>__TANEV)) { + + $q = "SELECT DISTINCT tankorNev FROM tankor + LEFT JOIN tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId AND tankorSzemeszter.tanev=%u) + WHERE tankor.tankorId=%u"; + + return db_query($q, array('fv' => 'gettankorNevById', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => array($SET['tanev'],$tankorId))); + } + + function getTankorTervezettOraszamok($tankorIds) { + // A tankör adott tanévre tervezett óraszámai + $q = "select tankorId, szemeszter, oraszam from tankorSzemeszter + where tanev=".__TANEV." and tankorId in (".implode(',', array_fill(0, count($tankorIds), '%u')).") + order by tankorId, szemeszter"; + $ret = db_query($q, array('fv'=>'getTankorTervezettOraszamok/tsz','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$tankorIds)); + $return = array(); + foreach ($ret as $adat) { + $return[ $adat['tankorId'] ]['bontasOraszam'][0] = $return[ $adat['tankorId'] ]['bontasOraszam'][1] = array(); + if ($adat['szemeszter'] == 2 && !isset($return[ $adat['tankorId'] ]['oraszam'][0])) $return[ $adat['tankorId'] ]['oraszam'][0] = 0; + $return[ $adat['tankorId'] ]['oraszam'][ $adat['szemeszter']-1 ] = $adat['oraszam']; + } + // a bontásokkal tárgytípusonként lekötött óraszám - elvileg típusonként azonos hetiOraszam szerepelhet csak, ezét a max() ezek egyikét adja vissza + $q = "select tankorId, tipus, szemeszter, max(bontasTankor.hetiOraszam) as hetiOraszam + from bontasTankor left join kepzesTargyBontas using (bontasId) + left join ".__INTEZMENYDBNEV.".kepzesOraterv using (kepzesOratervId) + where tankorId in (".implode(',', array_fill(0, count($tankorIds), '%u')).") + group by tankorId, tipus, szemeszter;"; + $ret = db_query($q, array('fv'=>'getTankorTervezettOraszamok/bt','modul'=>'naplo','result'=>'indexed','values'=>$tankorIds)); + foreach ($ret as $adat) { + $return[ $adat['tankorId'] ]['bontasOraszam'][ $adat['szemeszter']-1 ][] = array('tipus'=>$adat['tipus'],'hetiOraszam'=>$adat['hetiOraszam']); + } + return $return; + } + + function getOratervenKivuliTankorIds() { + + global $_TANEV; + + $tankorTipusok = getTankorTipusok(array('óratervi'=>true)); + $oraterviTipusIds = array_keys($tankorTipusok); + // óratervi tankörök lekérdezése + $qOratervi = "SELECT tankorId FROM ".__INTEZMENYDBNEV.".tankor WHERE tankorTipusId IN (".implode(',', array_fill(0, count($oraterviTipusIds), '%u')).")"; + $v = $oraterviTipusIds; + // a bontásokkal tárgytípusonként lekötött óraszám - elvileg típusonként azonos hetiOraszam szerepelhet csak, ezét a max() ezek egyikét adja vissza + $subQ = "select tankorId, tipus, szemeszter, max(bontasTankor.hetiOraszam) as hetiOraszam + from bontasTankor left join kepzesTargyBontas using (bontasId) + left join ".__INTEZMENYDBNEV.".kepzesOraterv using (kepzesOratervId) + group by tankorId, tipus, szemeszter"; + // bontés óraszámok összesítése + $tblQ = "select tankorId, szemeszter, sum(hetiOraszam) as bontasOraszam from (".$subQ.") as subQuery group by tankorId, szemeszter"; + // bontás óraszámok és tankör óraszámok összevetése + $q = "select tankorId, tankorNev, sum(oraszam-bontasOraszam) as diff from ".__INTEZMENYDBNEV.".tankorSzemeszter + left join (".$tblQ.") as tankorBontasOraszam using (tankorId, szemeszter) + where tanev=".__TANEV." and (tankorBontasOraszam.tankorId is null or bontasOraszam<>oraszam) + and tankorId in (".$qOratervi.") + group by tankorId"; + // , tankorNev -- sql_mode=only_full_group_by miatt került be a tankorNev... + $return = db_query($q, array('debug'=>false,'fv'=>'getOratervenKivuliTankorIds','modul'=>'naplo','result'=>'indexed','values'=>$v)); + + return $return; + + } + + function getTankorJelenletKotelezoE($tankorId) { + $q = "SELECT jelenlet FROM tankor LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u"; + $v = array($tankorId); + $r = db_query($q, array('fv' => 'getTankorJelenletKotelezoE', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + return ($r == 'kötelező'); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorBlokk.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorBlokk.php new file mode 100644 index 00000000..04742e76 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorBlokk.php @@ -0,0 +1,83 @@ + 'getTankorBlokkByTankorId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $blokkIds)); + + } + + function getTankorBlokkByTankorId($tankorIds, $tanev = __TANEV, $SET= array('blokkNevekkel'=>FALSE)) { + + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + if (!is_array($tankorIds)) $tankorIds = array($tankorIds); + + if ($SET['blokkNevekkel']===true) { + $q = "SELECT blokkId,blokkNev FROM `%s`.tankorBlokk LEFT JOIN `%s`.blokk USING (blokkId) WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") GROUP BY blokkId"; + array_unshift($tankorIds, $tanevDb, $tanevDb); + return db_query($q, array('fv' => 'getTankorBlokkByTankorId', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $tankorIds)); + } else { + $q = "SELECT DISTINCT blokkId FROM `%s`.tankorBlokk WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")"; + array_unshift($tankorIds, $tanevDb); + return db_query($q, array('fv' => 'getTankorBlokkByTankorId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $tankorIds)); + } + } + + + function getTankorBlokkok($tanev = __TANEV) { + + $RET = array(); + + $v = array(tanevDbNev(__INTEZMENY, $tanev)); /* Lehet hogy még nincs megnyitva a tanév, nincs is ilyen adatbázis... */ + /* Létezik az adatbázis? */ + $q = "SELECT count(*) AS db FROM Information_schema.tables WHERE table_schema = '".$v[0]."'"; + $r = db_query($q, array('modul'=>'naplo', 'result'=>'value'), $lr); + if ($r==0) return false; + /* --- */ + + $TA = getTanevAdat($tanev); + // if ($TA['statusz']!='aktív') return false; // Ez miért kellene? Lekérdezni lehessen lezárt tanév blokkjait is... + + $lr = db_connect('naplo_intezmeny'); + + $q = "SELECT * FROM `%s`.blokk ORDER BY blokkNev"; + $r = db_query($q, array('fv' => 'getTankorBlokkok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $lr); + + $BID2ORASZAM = $BID2NEV = array(); + for ($i = 0; $i < count($r); $i++) { + $_bId = $r[$i]['blokkId']; + $BID2NEV[$_bId] = $r[$i]['blokkNev']; + $BID2ORASZAM[$_bId] = $r[$i]['exportOraszam']; + } + $q = "SELECT * FROM `%s`.tankorBlokk"; + $r = db_query($q, array('fv' => 'getTankorBlokkok', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v ), $lr); + if ($r !== false) { + for ($i = 0; $i < count($r); $i++) { + $RET['idk'][$r[$i]['blokkId']][] = $r[$i]['tankorId']; + } + $RET['blokkNevek'] = $BID2NEV; + $RET['exportOraszam'] = $BID2ORASZAM; + } + if (is_array($RET['blokkNevek'])) + foreach ($RET['blokkNevek'] as $bId => $bNev) { + if (is_array($RET['idk'][$bId])) { // Ha netán olyan blokk, aminek nincs tanköre... + $q = "SELECT MIN(oraszam) FROM tankorSzemeszter WHERE tanev = %u AND tankorId IN (".implode(',', array_fill(0, count($RET['idk'][$bId]), '%u')).")"; + $v = mayor_array_join(array($tanev), $RET['idk'][$bId]); + $RET['maxOraszam'][$bId] = db_query($q, array( + 'fv' => 'getTankorBlokkok', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v + ), $lr); + } + } + + db_close($lr); + return $RET; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorDiakModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorDiakModifier.php new file mode 100644 index 00000000..7f699aea --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorDiakModifier.php @@ -0,0 +1,518 @@ + $tolDt)); + + // Blokkba való tartozás + $Tanevek = getTanevekByDtInterval($tolDt,$igDt); + for ($i=0; $i$BTID) { + // Ellenőrzés megadott időintervallumban vizsgálva: + // Tagja-e a diák az adott intervallumban a blokk tanköreinek? + if ( in_array($tankorId,$BTID) ) { + $q = "SELECT tankorId FROM ".__INTEZMENYDBNEV.".tankorDiak + WHERE tankorId IN (".implode(',', array_fill(0, count($BTID), '%u')).") + AND diakId=%u + AND beDt <= '%s' AND (kiDt IS NULL OR kiDt >= '%s')"; + $v = mayor_array_join($BTID, array($diakId, $tolDt, $tolDt)); + $UTKOZO_TANKORIDS = db_query($q, array('fv' => 'tankorDiakFelvesz', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + if (count($UTKOZO_TANKORIDS)>0) { + $q = "SELECT tankorId FROM tankorDiakFelmentes WHERE tankorId IN (".implode(',',$UTKOZO_TANKORIDS).") AND diakId=%u AND felmentesTipus='óralátogatás alól' AND nap is null AND ora is null AND + beDt<='%s' AND (kiDt IS NULL or kiDt >='%s')"; + $values = array($diakId, $tolDt, $tolDt); + $FELMENTETTTANKORIDS = db_query($q, array('fv' => 'tankorDiakFelvesz', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $values)); + for ($j=0; $j1,'refDt'=>$ADAT['tolDt'])) == 'tankor_max_reached') + { + $_SESSION['alert'][] = 'info:tankor_max_reached'; + return false; + } + //-- + + // Main() + { + tankorDiakTorol( array('tankorIds'=>$TankorIds, 'diakId'=> $diakId, 'tolDt'=> $tolDt,'igDt'=> $igDt, 'utkozes'=>'nemEllenoriz', 'MIN_CONTROL'=>false) ); + + $v = array(); + for ($i = 0; $i < count($TankorIds); $i++) { + $_tankorId = $TankorIds[$i]; + //$_kovetelmeny = $TankorAdat[$_tankorId]['kovetelmeny']; // vagy nem ez. diák statusatol is függ... + //$_jelenlet = $TankorAdat[$_tankorId]['jelenlet']; // MIÉRT EZ??????????????????????????????????????????????????? + //$_jelenlet = "kötelező"; + //array_push($v, $_tankorId, $diakId, $tolDt, $igDt, $_jelenlet, $_kovetelmeny, $jovahagyva); + //$V[] = "(%u, %u, '%s', NULLIF('%s',''), '%s', '%s', %u)"; + array_push($v, $_tankorId, $diakId, $tolDt, $igDt); + $V[] = "(%u, %u, '%s', NULLIF('%s',''))"; + } + $q = "INSERT INTO tankorDiak (tankorId,diakId,beDt,kiDt) VALUES ". implode(',',$V); + db_query($q, array('fv' => 'tankorDiakFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v) ); + } + + } + + function diakTankorMagantanulo($diakId, $tolDt, $igDt = NULL, $utkozes = 'ellenorzes', $tanev = __TANEV) { + + die('FATAL ERROR in tankorDiakModifier.php -- diakTankorMagantanulo() -- OOOpps!'); + + } + + function tankorDiakModify($ADAT) { + /* + $ADAT = array( + tankorId - a módosítandó tankor + tolDt, igDt - A módosítás hatálya + diaktorol - torlendő diákok id-i + diakok - Az érintett diákok id-i + {OBSOLETE}DJ* - egy adott diák 'jelenlét' attribútuma (* a diakId) + {OBSOLETE}DK* - egy adott diák 'követelmény' attribútuma (* a diakId) + {OBSOLETE}DOK[diakId] - egy adott diák 'jovahagyva' attribútuma - ha nincs megadva akkor $ADAT['jovahagyva'] érvényes + {OBSOLETE}jovahagyva - a diákok 'jovahagyva' attribútumának alapértelmezése + utkozes - ha igaz akkor 'torles', ha hamis akkor 'ellenorzes' + ) + */ + + $tankorId = $ADAT['tankorId']; + $alapIgDt = $ADAT['igDt']; + $tolDt = $ADAT['tolDt']; + $jovahagyva = ($ADAT['jovahagyva']=='') ? 0:1; + + if ($alapIgDt!='' && strtotime($tolDt)>strtotime($alapIgDt)) { + $_SESSION['alert'][] = 'info::hibasdatum'; + return false; + } + // Kik lettek törlésre jelölve - ez az "erősebb" + for($i = 0; $i < count($ADAT['diaktorol']); $i++) $TORLENDOK[$ADAT['diaktorol'][$i]] = true; + // diákonként végezzük a módosításokat + for($i = 0; $i < count($ADAT['diakok']); $i++) { + + $diakId = $ADAT['diakok'][$i]; + //{OBSOLETE}$jelenlet = $ADAT['DJ'.$diakId]; + //{OBSOLETE}$kovetelmeny = $ADAT['DK'.$diakId]; // ezt már nem használjuk + //{OBSOLETE$jovahagyva = ($ADAT['DOK'.$diakId]!='') ? $ADAT['DOK'.$diakId]:$jovahagyva; + $igDt = $alapIgDt; + + $utkozes = ((bool)$ADAT['utkozes']) ? 'torles':'ellenorzes'; + + if ($TORLENDOK[$diakId]) { + //tankorDiakTorol( array('tankorId' => $tankorId, 'diakId' => $diakId, 'tolDt' => $tolDt, 'igDt' => $igDt, 'jovahagyva'=>$jovahagyva, 'utkozes' => $utkozes )); + tankorDiakTorol( array('tankorId' => $tankorId, 'diakId' => $diakId, 'tolDt' => $tolDt, 'igDt' => $igDt, 'utkozes' => $utkozes )); + } else { + // A tankörcsoportok miatt módosítani csak az aktuális intervallumon belül - tehát az első szakadásig - lehet! + $q = "SELECT beDt, kiDt, kiDt + INTERVAL 1 DAY AS kovDt FROM tankorDiak WHERE diakId=%u AND tankorId=%u + AND ('%s'<=kiDt OR kiDt IS NULL)"; + $v = array($diakId, $tankorId, $tolDt); + if ($igDt != '') { + $q .= " AND beDt<='%s' ORDER BY beDt,kiDt"; + array_push($v, $igDt); + } + $ret = db_query($q, array('fv' => 'tankorDiakModify', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + for ($j = 0; (($j < count($ret)-1) && ($ret[$j]['kovDt'] == $ret[$j+1]['beDt'])); $j++); + if ( + $ret[$j]['kiDt'] != '' + && ($igDt == '' || strtotime($ret[$j]['kiDt']) < strtotime($igDt)) + ) $igDt = $ret[$j]['kiDt']; + + // lekérdezzük, hogy módosul-e a jelenlét/követelményoralatogatasAlol, erdemjegyet paraméter + /* ERRE NINCS SZÜKSÉG! + $q = "SELECT COUNT(*) FROM tankorDiak WHERE diakId=%u AND tankorId=%u AND (kiDt>='%s' OR kiDt IS NULL) AND (oralatogatasAlol!='%s' OR erdemjegyet!='%s')"; + $v = array($diakId, $tankorId, $tolDt, $oralatogatasAlol, $erdemjegyet); + if ($igDt != '') { + $q .= " AND beDt<='$igDt'"; + array_push($v, $igDt); + } + $db = db_query($q, array('fv' => 'tankorDiakModify', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v)); + + if ($db > 0) { + if (// nem töröljük a tankörcsoport összes tanköréből, csak az adott tankörből!! + tankorDiakTorol( + array( + 'tankorId' => $tankorId, 'diakId' => $diakId, 'tolDt' => $tolDt, 'igDt' => $igDt, + 'tankorIds' => array($tankorId), 'utkozes' => $utkozes + ) + ) + ) { + $q = "INSERT INTO tankorDiak (diakId,tankorId,beDt,kiDt,erdemjegyet,oralatogatasAlol) + VALUES (%u, %u, '%s', NULLIF('%s', ''), '%s', '%s')"; + $v = array($diakId, $tankorId, $tolDt, $igDt, $erdemjegyet, $oralatogatasAlol); + + db_query($q, array('fv' => 'tankorDiakModify', 'modul' => 'naplo_intezmeny', 'values' => $v)); + } + } // $db>0 + */ + } + } + } + + + function tankorDiakTorol($ADAT, $olr = '') { + + /* + [TOL-IG] töröl zárt szigorú + Paraméterek: + diakId + utkozes - torles, ellenorzes, nemEllenoriz + tankorId + tankorIds + MIN_CONTROL - true/false + tolDt, igDt + */ + + + // esetleges külső tranzakciókhoz! + $lr = ($olr != '') ? $olr : db_connect('naplo_intezmeny'); + // A törlendő időszakra beírt hiányzás, vagy jegy okozhat ütközést. Ekkor vagy automatikusan töröljük a hibás bejegyzéseket, + // vagy hibajelzést adunk, vagy nem foglalkozunk az esetleges ütközésekkel + // (ez státuszmódosításkor lehet, mikor a törlés után rögtön vissza is írjuk a tagságot) + if (!in_array($ADAT['utkozes'], array('torles','ellenorzes','nemEllenoriz'))) $ADAT['utkozes'] = 'ellenorzes'; + + // Valódi törlésnél a tankörcsoport összes tagjából törölni kell, de pl. a tagság típusának módosításakor csak az érintett tankörből töröljük + // illetve, ha már valamiért lekérdeztük az érintett tanköröket, akkor át lehessen adni. + if (is_array($ADAT['tankorIds']) && count($ADAT['tankorIds']) > 0) $TANKORIDS = $ADAT['tankorIds']; + elseif (isset($ADAT['tankorId']) && $ADAT['tankorId'] != '') $TANKORIDS = getTankorCsoportTankoreiByTankorId($ADAT['tankorId'], $lr); + else { + $_SESSION['alert'][] = 'message:wrong_data:tankorDiakTorol:nincs tankör megadva:'.$ADAT['diakId']; + return false; + } + + // Ellenőrizzük a minimum és maximum létszámokat, ha kell + // Figyelem! pl. Előtárgyjelentkezési időszakban pl tilos vizsgálni... + if ($ADAT['MIN_CONTROL']===true) { + //for ($i=0; $i(-1),'refDt'=>$ADAT['tolDt'])) == 'tankor_min_reached') { + $_SESSION['alert'][] = 'info:tankor_min_reached'; + if ($olr == '') db_close($lr); + return false; + } + //} + } + // -- + $TH = $TJ = array(); + $HSUM = $JSUM = array(); + // A tol-ig dátumok által érintett aktív tanévek lekérdezése + $aktivTanevek = getTanevekByDtInterval($ADAT['tolDt'], $ADAT['igDt'], array('aktív')); // hiányzó link resource + if ($ADAT['utkozes'] != 'nemEllenoriz') { + // Az érintett tanéveken végigmenve + foreach ($aktivTanevek as $key => $tanev) { + for ($i = 0; $i < count($TANKORIDS); $i++) { + $_SET = array('diakId'=>$ADAT['diakId'], 'tankorIds'=>$TANKORIDS[$i], 'tanev'=>$tanev, 'tolDt'=>$ADAT['tolDt'], 'igDt'=>$ADAT['igDt']); + $H = tankorDiakHianyzasIdk2($_SET, $lr); + $J = tankorDiakJegyIdk($_SET, $lr); + if (count($H)>0) $TH[] = $TANKORIDS[$i]; + if (count($J)>0) $TJ[] = $TANKORIDS[$i]; + if (is_array($H)) $HSUM = array_merge($HSUM,$H); // $H lehet false is + if (is_array($J)) $JSUM = array_merge($JSUM,$J); // $J lehet false is + } + if (count($TH) > 0) $_SESSION['alert'][] = 'info:hibas_hianyzasok:'.count($HSUM).':tanev='.$tanev.':tankorIdk='.implode(',',$TH); + if (count($TJ) > 0) $_SESSION['alert'][] = 'info:hibas_jegyek:'.count($JSUM).':tanev='.$tanev.':tankorIdk='.implode(',',$TJ); + + // Modosítás: + if ($ADAT['utkozes']=='torles') { + // hiányzások és jegyek törlése... + hianyzasTorles($HSUM, $tanev, $lr); + jegyTorles($JSUM, null, $tanev, $lr); + $TH = $TJ = array(); + $HSUM = $JSUM = array(); + } + } + } + + if ( ((count($TH) == 0 && count($TJ) == 0)) || $ADAT['utkozes'] == 'torles' || $ADAT['utkozes'] == 'nemEllenoriz') { + + logAction( + array( + 'szoveg'=>'diakKilep: '.$ADAT['diakId'].', '.$ADAT['tolDt'].', '.$ADAT['igDt'].', '.implode(',',$TANKORIDS), + 'table'=>'tankorDiak' + ) + ); + + // A tol-ig közé esőket töröljük + $q = "DELETE FROM tankorDiak WHERE diakId=%u AND tankorId IN (".implode(',', array_fill(0, count($TANKORIDS), '%u')).") AND '%s'<=beDt"; + $v = mayor_array_join(array($ADAT['diakId']), $TANKORIDS, array($ADAT['tolDt'])); + if ($ADAT['igDt']!='') { + $q.= " AND kiDt<='%s'"; + array_push($v, $ADAT['igDt']); + } + $delResult = db_query($q, array('fv' => 'tankorDiakTorol', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr ); + + if ($ADAT['igDt'] != '') { + // a tol-ig intervallumot tartalmazókat ketté kell vágni, ezért a jobb oldali darabot felvesszük + $q = "INSERT INTO tankorDiak (tankorId,diakId,beDt,kiDt) + SELECT tankorId,diakId,'%s' + INTERVAL 1 DAY AS beDt,kiDt FROM tankorDiak + WHERE diakId=%u AND tankorId IN (".implode(',', array_fill(0, count($TANKORIDS), '%u')).") + AND beDt<'%s' AND (kiDt IS NULL OR '%s'< kiDt)"; + $v = mayor_array_join(array($ADAT['igDt'], $ADAT['diakId']), $TANKORIDS, array($ADAT['tolDt'], $ADAT['igDt'])); + $insResult = db_query($q, array('fv' => 'tankorDiakTorol', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr ); + } + + // A balról benyúló intervallumokat levágjuk (az "átnyúlókat" is! Így kapjuk a baloldali darabot) + $q = "UPDATE tankorDiak SET kiDt = '%s' - INTERVAL 1 DAY WHERE diakId=%u + AND tankorId IN (".implode(',', array_fill(0, count($TANKORIDS), '%u')).") + AND beDt<'%s' AND (kiDt IS NULL OR '%s'<=kiDt)"; + $v = mayor_array_join(array($ADAT['tolDt'], $ADAT['diakId']), $TANKORIDS, array($ADAT['tolDt'], $ADAT['tolDt'])); + $upResult1 = db_query($q, array('fv' => 'tankorDiakTorol', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + + if ($ADAT['igDt']!='') { + // A jobbról benyúló intervallumokat levágjuk ("átnyúló" darab már nincs!) + $q = "UPDATE tankorDiak SET beDt = '%s' + INTERVAL 1 DAY WHERE diakId=%u + AND tankorId IN (".implode(',', array_fill(0, count($TANKORIDS), '%u')).") + AND beDt<='%s' AND (kiDt IS NULL OR '%s'< kiDt) "; + $v = mayor_array_join(array($ADAT['igDt'], $ADAT['diakId']), $TANKORIDS, array($ADAT['igDt'], $ADAT['igDt'])); + $upResult2 = db_query($q, array('fv' => 'tankorDiakTorol', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr ); + } + + if ($delResult===false || $upResult1 === false || $upResult2 === false || $insResult===false) { + if ($olr == '') db_close($lr); + return false; + } + + if ($olr == '') db_close($lr); + return true; + + } else { + + if ($olr == '') db_close($lr); + return false; + } + + } + + + + + function _checkTankorMinMax($tankorId,$ADAT=array('diff'=>1,'refDt'=>'')) { + + $letszam = getTankorLetszam($tankorId, array('refDt'=>$ADAT['refDt'])); + $TankorAdat = getTankorAdatByIds(array($tankorId), array('dt' => $ADAT['refDt'])); + if ($ADAT['diff']>0) { + if ( + $TankorAdat[$tankorId]['max']!=0 && /* Ez a feltétel problémás. A tankörjelentkezés UI-n ugyanis nem engedjük meg a + 0-0-s tankörökbe bejelentkezést. Ezzel elérhető hogy az időközben 0-0ra állított + limitű tankörbe bejelentkezhessenek. Holott ez unlimited-et jelent? + */ + ($letszam+$ADAT['diff'])>$TankorAdat[$tankorId]['max']) { + $r = 'tankor_max_reached'; + } + } elseif ($ADAT['diff']<0) { + if ($TankorAdat[$tankorId]['min']!=0 && ($letszam+$ADAT['diff'])<$TankorAdat[$tankorId]['min']) { + $r = 'tankor_min_reached'; + } + } else { + $r = 'notChecked'; + } + return ($r=='') ? false : $r; + } + + + /* Adott zárt intervallumra felvesz egy bizonyos típusú felmentést */ + function tankorDiakFelmentesFelvesz($ADAT, $olr = '') { + + /* [TOL-IG] töröl zárt szigorú */ + $lr = ($olr != '') ? $olr : db_connect('naplo_intezmeny'); + if ($olr=='') db_start_strans($lr); + + $tankorId = $ADAT['tankorId']; + $diakId = $ADAT['diakId']; + $tolDt = $ADAT['tolDt']; + $igDt = $ADAT['igDt']; + $nap = $ADAT['nap']; + $ora = $ADAT['ora']; + $iktatoszam = $ADAT['iktatoszam']; + $felmentesTipus= $ADAT['felmentesTipus']; + + if (!in_array($ADAT['utkozes'], array('torles','ellenorzes','nemEllenoriz'))) $ADAT['utkozes'] = 'ellenorzes'; + // -- + $TH = $TJ = array(); + $HSUM = $JSUM = array(); + // A tol-ig dátumok által érintett aktív tanévek lekérdezése + $aktivTanevek = getTanevekByDtInterval($ADAT['tolDt'], $ADAT['igDt'], array('aktív')); + if ($ADAT['utkozes'] != 'nemEllenoriz') { + // Az érintett tanéveken végigmenve + foreach ($aktivTanevek as $key => $tanev) { + + if ($felmentesTipus=='óralátogatás alól') { + $H = tankorDiakHianyzasIdk($ADAT['diakId'], $tankorId, $tanev, $ADAT['tolDt'], $ADAT['igDt'], $nap, $ora); + } elseif ($felmentesTipus=='értékelés alól') { + $J = tankorDiakJegyIdk(array('diakId'=>$ADAT['diakId'], 'tankorIds'=>$tankorId, 'tanev'=>$tanev, 'tolDt'=>$ADAT['tolDt'], 'igDt'=>$ADAT['igDt'])); + } + + if (count($H)>0) $TH[] = $tankorId; + if (count($J)>0) $TJ[] = $tankorId; + if (is_array($H)) $HSUM = array_merge($HSUM,$H); // $H lehet false is + if (is_array($J)) $JSUM = array_merge($JSUM,$J); // $J lehet false is + + if (count($TH) > 0) $_SESSION['alert'][] = 'info:hibas_hianyzasok:'.count($HSUM).':tanev='.$tanev.':tankorIdk='.implode(',',$TH); + if (count($TJ) > 0) $_SESSION['alert'][] = 'info:hibas_jegyek:'.count($JSUM).':tanev='.$tanev.':tankorIdk='.implode(',',$TJ); + + // Modosítás: + if ($ADAT['utkozes']=='torles') { + // hiányzások és jegyek törlése... + hianyzasTorles($HSUM, $tanev, $lr); + jegyTorles($JSUM, null, $tanev, $lr); + $TH = $TJ = array(); + $HSUM = $JSUM = array(); + } + } + } + + if ( ((count($TH) == 0 && count($TJ) == 0)) || $ADAT['utkozes'] == 'torles' || $ADAT['utkozes'] == 'nemEllenoriz') { + + logAction( + array( + 'szoveg'=>'diakFelmentes: '.$ADAT['diakId'].', '.$ADAT['felmentesTipus'].', '.$ADAT['tolDt'].', '.$ADAT['igDt'].', '.$tankorId, + 'tabla'=>'tankorDiakFelmentes' + ) + ); + // A tol-ig közé esőket töröljük + $q = "DELETE FROM tankorDiakFelmentes WHERE diakId=%u AND tankorId=%u AND '%s'<=beDt AND felmentesTipus='%s'"; + $v = array($diakId, $tankorId,$tolDt,$felmentesTipus); + if ($ADAT['igDt']!='') { + $q.= " AND kiDt<='%s'"; + array_push($v, $ADAT['igDt']); + } + if ($ADAT['ora']!=='') { + $q .= " AND ora=%u "; + array_push($v, $ADAT['ora']); + } + if ($ADAT['nap']!='') { + $q .= " AND nap=%u "; + array_push($v, $ADAT['nap']); + } + $delResult = db_query($q, array('fv' => 'tankorDiakFelmentesFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr ); + + if ($ADAT['igDt'] != '') { + // a tol-ig intervallumot tartalmazókat ketté kell vágni, ezért a jobb oldali darabot felvesszük + $q = "INSERT INTO tankorDiakFelmentes (tankorId,diakId,beDt,kiDt,felmentesTipus,nap,ora,iktatoszam) + SELECT tankorId,diakId,'%s' + INTERVAL 1 DAY AS beDt,kiDt,felmentesTipus,nap,ora,iktatoszam FROM tankorDiakFelmentes + WHERE diakId=%u AND tankorId=%u + AND beDt<'%s' AND (kiDt IS NULL OR '%s'< kiDt) AND felmentesTipus='%s'"; +// $v = array_merge(array($ADAT['igDt'], $ADAT['diakId']), $TANKORIDS, array($ADAT['tolDt'], $ADAT['igDt'])); + $v = array($igDt, $diakId, $tankorId, $tolDt, $igDt, $felmentesTipus); + $insResult = db_query($q, array('fv' => 'tankorDiakFelmentesFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr ); + } + + // A balról benyúló intervallumokat levágjuk (az "átnyúlókat" is! Így kapjuk a baloldali darabot) + $q = "UPDATE tankorDiakFelmentes SET kiDt = '%s' - INTERVAL 1 DAY WHERE diakId=%u + AND tankorId=%u + AND beDt<'%s' AND (kiDt IS NULL OR '%s'<=kiDt) AND felmentesTipus='%s'"; + $v = array($tolDt,$diakId,$tankorId,$tolDt,$tolDt, $felmentesTipus); + if ($ADAT['ora']!=='') {$q .= " AND ora=%u ";array_push($v, $ADAT['ora']);} + $upResult1 = db_query($q, array('fv' => 'tankorDiakFelmentesFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + + if ($ADAT['igDt']!='') { + // A jobbról benyúló intervallumokat levágjuk ("átnyúló" darab már nincs!) + $q = "UPDATE tankorDiakFelmentes SET beDt = '%s' + INTERVAL 1 DAY WHERE diakId=%u + AND tankorId=%u + AND beDt<='%s' AND (kiDt IS NULL OR '%s'< kiDt) AND felmentesTipus='%s'"; + $v = array($igDt,$diakId,$tankorId,$igDt,$igDt, $felmentesTipus); + if ($ADAT['ora']!=='') {$q .= " AND ora=%u ";array_push($v, $ADAT['ora']);} + $upResult2 = db_query($q, array('fv' => 'tankorDiakFelmentesFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr ); + } + + if ($nap=='' && ($ora==='' || is_null($ora))) { + $q = "INSERT INTO tankorDiakFelmentes (tankorId,diakId,beDt,kiDt,felmentesTipus,iktatoszam) VALUES (%u,%u,'%s','%s','%s','%s')"; + $v = array($tankorId,$diakId,$tolDt,$igDt,$felmentesTipus,$iktatoszam); + } elseif ($nap=='' && $ora!=='') { + $q = "INSERT INTO tankorDiakFelmentes (tankorId,diakId,beDt,kiDt,felmentesTipus,ora,iktatoszam) VALUES (%u,%u,'%s','%s','%s',%u,'%s')"; + $v = array($tankorId,$diakId,$tolDt,$igDt,$felmentesTipus,$ora,$iktatoszam); + } elseif ($nap!='' && ($ora==='' || is_null($ora))) { + $q = "INSERT INTO tankorDiakFelmentes (tankorId,diakId,beDt,kiDt,felmentesTipus,nap,iktatoszam) VALUES (%u,%u,'%s','%s','%s',%u,'%s')"; + $v = array($tankorId,$diakId,$tolDt,$igDt,$felmentesTipus,$nap,$iktatoszam); + } else { + $q = "INSERT INTO tankorDiakFelmentes (tankorId,diakId,beDt,kiDt,felmentesTipus,nap,ora,iktatoszam) VALUES (%u,%u,'%s','%s','%s',%u,%u,'%s')"; + $v = array($tankorId,$diakId,$tolDt,$igDt,$felmentesTipus,$nap,$ora,$iktatoszam); + } + $result = db_query($q, array('fv' => 'tankorDiakFelmentesFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v),$lr ); + + if ($delResult===false || $upResult1 === false || $upResult2 === false || $insResult===false || $result === false) { + if ($olr == '') { + db_rollback($lr); + db_close($lr); + } + return false; + } + + if ($olr == '') { + db_commit($lr); + db_close($lr); + } + return true; + + } else { + + if ($olr == '') { + db_rollback($lr); + db_close($lr); + } + return false; + } + + } + + + function tankorDiakFelmentesLezar($ADAT, $olr = '') { + + + if (!is_numeric($ADAT['tankorDiakFelmentesId'])) return false; + + $lr = ($olr != '') ? $olr : db_connect('naplo_intezmeny'); + if ($olr=='') db_start_strans($lr); + + $q = "UPDATE tankorDiakFelmentes SET kiDt=('%s' - INTERVAL 1 DAY) WHERE tankorDiakFelmentesId=%u AND (kiDt>='%s' OR kiDt IS NULL)"; + $v = array($ADAT['kiDt'],$ADAT['tankorDiakFelmentesId'],$ADAT['kiDt']); // ha nem nagyobb, akkor nem bővítjük! + $result = db_query($q, array('fv' => 'tankorDiakFelmentesLezar', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr); + + + if ($result === false) { + if ($olr == '') { + db_rollback($lr); + db_close($lr); + } + return false; + + } else { + if ($olr == '') { + db_commit($lr); + db_close($lr); + } + return true; + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorModifier.php new file mode 100644 index 00000000..a344ab7b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorModifier.php @@ -0,0 +1,498 @@ + 'ujTankor')); + else $lr = $olr; + $O = getTankorOsztalyaiByTanev($tankorId, __TANEV, array('tagokAlapjan'=>true,'result'=>'id'),$lr); + if (count($O)>0) { + $q = "DELETE FROM tankorOsztaly WHERE tankorId=%u AND osztalyId NOT IN (".implode(',',$O).")"; + db_query($q, array('fv' => 'setTankorNevByDiakok', 'modul' => 'naplo_intezmeny', 'result'=>'delete','values' => array($tankorId)),$lr); + } + setTankorNev($tankorId,$tankorNevExtra,$olr); + if (!$olr) db_close($lr); + + } + // 2012.09. Az adott tanévtől! átnevezi a tankört! + function setTankorNev($tankorId, $tankorNevExtra = null, $olr = null) { // a függvényt a tankor.php / ujTankor() függvényéből örököltük. "Majdnem" ugyanaz + + require_once('include/modules/naplo/share/targy.php'); + require_once('include/modules/naplo/share/osztaly.php'); + require_once('include/modules/naplo/share/szemeszter.php'); + + if (!$olr) $lr = db_connect('naplo_intezmeny', array('fv' => 'ujTankor')); + else $lr = $olr; + + if (!$lr) return false; + + // adatgyűjtés tankorId alapján + $q = "SELECT targyId FROM tankor WHERE tankorId=%u"; + $targyId = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'value', 'values' => array($tankorId), 'debug'=>false), $lr); + $TARGYADAT = getTargyById($targyId,$lr); + + $q = "SELECT osztalyId FROM tankorOsztaly WHERE tankorId=%u"; + $ADAT['osztalyok'] = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'idonly', 'values' => array($tankorId), 'debug'=>false), $lr); + + if (is_null($tankorNevExtra)) { + $q = "SELECT IF(tankorJel IS NOT NULL AND INSTR(tankorNev,tankorJel)!=0, trim(substring(trim(substring_index(tankorNev,targyNev,-1)),length(tankorJel)+1)), trim(substring_index(tankorNev,targyNev,-1))) AS tankorNevExtra FROM tankorSzemeszter LEFT JOIN tankor USING (tankorId) LEFT JOIN targy USING (targyId) LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u AND tanev=%u ORDER BY tanev,szemeszter DESC LIMIT 1"; + $tankorNevExtra = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'value', 'values' => array($tankorId,__TANEV), 'debug'=>false), $lr); + } + + $q = "SELECT tankorJel FROM tankor LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u"; + $tankorJel = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'value', 'values' => array($tankorId), 'debug'=>false), $lr); + + $q = "SELECT DISTINCT szemeszterId FROM tankorSzemeszter LEFT JOIN szemeszter USING (tanev,szemeszter) WHERE tankorId=%u"; + $ADAT['szemeszterek'] = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'idonly', 'values' => array($tankorId), 'debug'=>false), $lr); + + $q = "SELECT jelleg FROM tankor LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u"; + $tankorTipusJelleg = db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'result'=>'value','values' => array($tankorId)),$lr); + + // -- + $kdt = '3000-01-01'; + $vdt = '1970-01-01'; + + if (is_array($ADAT['szemeszterek'])) + for ($j = 0; $j < count($ADAT['szemeszterek']); $j++) { + $nev = ''; + $szemeszterId = $ADAT['szemeszterek'][$j]; + $_SZ = getSzemeszterek(array('filter' => array("szemeszterId=$szemeszterId"))); + if ($_SZ[0]['kezdesDt'] < $kdt) $kdt = $_SZ[0]['kezdesDt']; + if ($_SZ[0]['zarasDt'] > $vdt) $vdt = $_SZ[0]['zarasDt']; + $_tanev = $_SZ[0]['tanev']; + $_szemeszter = $_SZ[0]['szemeszter']; +// $_oraszam = $ADAT['SZ'.$szemeszterId]; + if ($tankorTipusJelleg=='osztályfüggetlen') { + $nev = "Isk."; + } else { + $OSZTALYOK = getOsztalyok($_tanev,null,$lr); + if ($OSZTALYOK !== false && is_array($OSZTALYOK) && is_array($ADAT['osztalyok'])) { + $nev = ''; + $TMP = array(); + for($i = 0; $i < count($OSZTALYOK); $i++) { + // Ha évenként változik az osztály jele, akkor jobb, ha nem generáljuk, hanem a lekérdezett adatokat használjuk! + // $_oj = genOsztalyJel($_tanev, $OSZTALYOK[$i]); + $_oj = $OSZTALYOK[$i]['osztalyJel']; + if ($_oj!==false && !is_null($_oj)) { + list($e,$o) = explode('.',$_oj); + if (in_array($OSZTALYOK[$i]['osztalyId'], $ADAT['osztalyok'])) + $TMP[$e][]= $o; + } + } + if (count(array_keys($TMP)) == 1) { // évfolyamon belüli osztályok: + $nev = implode('||',array_keys($TMP)); + $nev .= '.'.implode('',$TMP[$nev]); + } elseif (count((array_keys($TMP)))>1) { // multi évfolyam: + $K = (array_keys($TMP)); + sort($K); + $nev = $K[0].'-'.$K[count($K)-1].'.'; + } else { // ekkorra már elballagott minden osztaly... + $nev = false; + $_SESSION['alert'][] = 'info:nem módosítható ebben a tanévben ez a tankör:'.$tankorId.' '.$_tanev; + } + } else { + $nev = false; // adott szemeszterbe nem jár osztály + $_SESSION['alert'][] = 'info::Az adott szemeszterbe nem jár osztály:tankorId('.$tankorId.')'; + } + } + if ($nev !== false) { + $nev .= ' '.$TARGYADAT['targyNev'].' '; + if ($tankorJel!='') $nev .= $tankorJel.' '.$tankorNevExtra; + else $nev .= $tankorNevExtra; + if ($_tanev >= __TANEV) { + $q = "UPDATE tankorSzemeszter SET tankorNev = '%s' WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; + $v = array($nev,$tankorId,$_tanev,$_szemeszter); + if ($nev!='') db_query($q, array('fv' => 'setTankorNev', 'modul' => 'naplo_intezmeny', 'values' => $v, 'debug'=>false), $lr); + } else { + // a neve már ne változzon, és az óraszáma? +/* $q1 = "SELECT tankorNev FROM tankorSzemeszter WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; + $orignev = db_query($q1, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'values' => array($tankorId,$_tanev,$_szemeszter), 'debug'=>false), $lr); + if ($orignev!='') $nev = $orignev; +*/ + } + } + + } + if (!$olr) db_close($lr); + return $nev; + + } + + function tankorTanarModosit($tankorId, $tanarId, $SET = array('tanev'=>'','tanevAdat'=>'', 'tolDt'=>'', 'igDt'=>'')) { + global $_TANEV; + $tanev = ($SET['tanev']!='') ? $SET['tanev'] : _TANEV; + $tanevAdat = (is_array($SET['tanevAdat'])) ? $SET['tanevAdat'] : (($SET['tanev']=='') ? $_TANEV : getTanevAdat($tanev)); + $tolDt = ($SET['tolDt']!='') ? $SET['tolDt'] : $tanevAdat['kezdesDt']; + $igDt = ($SET['igDt']!='') ? $SET['igDt'] : $tanevAdat['zarasDt']; + if (strtotime($tolDt)>strtotime($igDt)) $_SESSION['alert'][] = 'error:wrong_data:hibás intervallum ('.$tanev.', '.$tolDt.'-'.$igDt.')'; + + if (!is_numeric($tankorId)) return false; + $tankorIds = array($tankorId); // kompatibilitási okokból + $tankorTanarIds[$tankorId] = array($tanarId); // kompatibilitási okokból + $D = array(); + + $lr = db_connect('naplo_intezmeny', array('fv' => 'tankorTanarModosit')); + db_start_trans($lr); + + // Az intervallumban érintett tankör-tanár tagságok lekérdezése... + $v = array($tankorId, $igDt, $tolDt, $tanarId); // +tanarId, a többi tanár nem érdekes + $q = "SELECT tanarId, tankorId, min(bedt) AS mbe ,max(kidt) AS mki + FROM ".__INTEZMENYDBNEV.".tankorTanar WHERE tankorId = %u + AND bedt<='%s' AND kidt>='%s' AND tanarId=%u GROUP BY tankorId,tanarId"; + $ret = db_query($q, array('fv' => 'tankorTanarModosit', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v, 'rollback' => true), $lr); + if ($ret === false) { db_close($lr); return false; } + for ($i = 0; $i < count($ret); $i++) { + if ($tolDt < $ret[$i]['mbe']) $ret[$i]['mbe'] = $tolDt; + if ($igDt > $ret[$i]['mki']) $ret[$i]['mki'] = $igDt; + $D[ $ret[$i]['tankorId'] ][ $ret[$i]['tanarId'] ] = array('mbe' => $ret[$i]['mbe'], 'mki' => $ret[$i]['mki'], 'torlendo' => true); + } + + // Az érintett intervallumba eső tankör-tanár tagságok törlése + //$q = "DELETE FROM ".__INTEZMENYDBNEV.".tankorTanar WHERE tankorId = %u AND bedt<='%s' AND kidt>='%s'"; + $q = "DELETE FROM ".__INTEZMENYDBNEV.".tankorTanar WHERE tankorId = %u AND bedt<='%s' AND kidt>='%s' AND tanarId=%u"; + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + + // beszúrandó +// for ($i = 0; $i < count($tankorIds); $i++) { +// $tankorId = $tankorIds[$i]; +// $tanarIds = $tankorTanarIds[$tankorId]; +// for ($j = 0; $j < count($tanarIds); $j++) { +// $tanarId = $tanarIds[$j]; + if ($tanarId != '') { + $D[$tankorId][$tanarId]['torlendo'] = false; + if (($beDt = $D[$tankorId][$tanarId]['mbe']) == '') $beDt = $tolDt; + if (($kiDt = $D[$tankorId][$tanarId]['mki']) == '') $kiDt = $igDt; + $q = "INSERT INTO ".__INTEZMENYDBNEV.".tankorTanar (tankorId,tanarId,beDt,kiDt) VALUES (%u, %u, '%s', '%s')"; + $v = array($tankorId, $tanarId, $beDt, $kiDt); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + } +// } +// } + + // törlendők felvétele +// for ($i = 0; $i < count($tankorIds); $i++) { +// $tankorId = $tankorIds[$i]; + if (is_array($D[$tankorId])) + foreach($D[$tankorId] as $tanarId => $T) { + if ($T['torlendo']) { + if ($T['mbe'] < $tolDt) { + $beDt = $T['mbe']; + $kiDt = date('Y-m-d', strtotime('-1 days',strtotime($tolDt))); + $q = "INSERT INTO ".__INTEZMENYDBNEV.".tankorTanar (tankorId,tanarId,beDt,kiDt) VALUES (%u, %u, '%s', '%s')"; + $v = array($tankorId, $tanarId, $beDt, $kiDt); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + } + if ($T['mki'] > $igDt) { + $kiDt = $T['mki']; + $beDt = date('Y-m-d', strtotime('+1 days',strtotime($igDt))); + $q = "INSERT INTO ".__INTEZMENYDBNEV.".tankorTanar (tankorId,tanarId,beDt,kiDt) VALUES (%u, %u, '%s','%s')"; + $v = array($tankorId, $tanarId, $beDt, $kiDt); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + } + } + } +// } + + // tankörblokkok ellenőrzése - csak nem tervezett tanévben + // Érintett blokkok lekérdezése + if ($tanevAdat['statusz'] != 'tervezett') { + $blokkIds = getTankorBlokkByTankorId($tankorIds, $tanevAdat['tanev']); + if (is_array($blokkIds)) foreach ($blokkIds as $index => $blokkId) { + // A blokk tankörei + $bTankorIds = getTankorokByBlokkId($blokkId, $tanevAdat['tanev']); + + // Ellenőrizzük a tankör tanárokat - azonosak-e tankörönként + $q = "SELECT tanarId,COUNT(DISTINCT tankorId) AS c FROM ".__INTEZMENYDBNEV.".tankorTanar + WHERE tankorId IN (".implode(',', array_fill(0, count($bTankorIds), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR '%s' <= kiDt) + GROUP BY tanarId HAVING c>1 + ORDER BY tankorId,tanarId"; + $v = mayor_array_join($bTankorIds, array($igDt, $tolDt)); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz/BlokkEllenőrzés', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $lr); + if (is_array($r) && count($r) > 0) { + db_rollback($lr, 'Ütköző tanárt találtam egy blokkban ('.$blokkId.')! Visszaállítjuk az eredeti állapotot!'); + db_close($lr); + return false; + } + } + } + /* ======================================================== + Órarend módosítása + ======================================================== */ + + + if ($tanevAdat['statusz'] == 'aktív') { + + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanevAdat['tanev']); + + // ÓrarendiOraTankor bejegyzés ellenőrzés/készítés + $V = $v2 = array(); + foreach ($tankorIds as $i => $tankorId) { + if ($tankorTanarIds[$tankorId][0] != '') { // Ha akarunk egyáltalán tanárt hozzárendelni + // van-e már az igényeinknek megfelelő bejegyzés + $q = "SELECT * FROM `%s`.orarendiOraTankor WHERE tankorId=%u + AND tanarId IN (".implode(',', array_fill(0, count($tankorTanarIds[$tankorId]), '%u')).") LIMIT 1"; + $v = mayor_array_join(array($tanevDbNev, $tankorId), $tankorTanarIds[$tankorId]); + $ret = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v, 'rollback' => true), $lr); + if ($ret === false) { db_close($lr); return false; } + + if (count($ret) != 0) { // ha van, akkor az elsőt használjuk + $OOT[$tankorId] = $ret[0]; + } else { // ha nincs, akkor generálunk egy jót + $OOT[$tankorId] = array( + 'tanarId' => $tankorTanarIds[$tankorId][0], + 'osztalyJel' => 'NaN', + 'targyJel' => $tankorId.'-'.$tankorTanarIds[$tankorId][0], + 'tankorId' => $tankorId + ); + $V[] = "(%u, 'NaN', '%s', %u)"; + array_push($v2, $tankorTanarIds[$tankorId][0], $tankorId.'-'.$tankorTanarIds[$tankorId][0], $tankorId); + } + } + } + if (count($V) > 0) { // Az új bejegyzéseket felvesszük + $q = "INSERT INTO `%s`.orarendiOraTankor (tanarId,osztalyJel,targyJel,tankorId) VALUES ".implode(',', $V); + array_unshift($v2, $tanevDbNev); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v2, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + + } + + // Az érintett órarendi bejegyzések lekérdezése beDt szerint rendezve + $q = "SELECT tolDt,igDt,het,nap,ora,tankorId,tanarId,osztalyJel,targyJel,teremId + FROM `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + WHERE tolDt <= '%s' AND (igDt >= '%s' OR igDt IS NULL) + AND tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + ORDER BY tankorId,tolDt"; + $v = mayor_array_join(array($tanevDbNev, $tanevDbNev, $igDt, $tolDt), $tankorIds); + $ret = db_query($q, array( + 'fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'tankorId', 'values' => $v, 'rollback' => true + ), $lr); + if ($ret === false) { db_close($lr); return false; } + + foreach ($ret as $tankorId => $tankorOrarendiBejegyzesek) { + + // Ha van orarendiOra bejegyzés és nem akarunk tanárt hozzárendelni - az hiba!! + if (!is_array($OOT[$tankorId])) { + db_rollback($lr, 'Létező órarendi óra esetén a tanár nem törölhető:'.$tankorId); db_close($lr); return false; + }; + + $tanarId = $OOT[$tankorId]['tanarId']; + $osztalyJel = $OOT[$tankorId]['osztalyJel']; + $targyJel = $OOT[$tankorId]['targyJel']; + + foreach ($tankorOrarendiBejegyzesek as $i => $TOB) { + if ($TOB['teremId'] == '') { + $TOB['teremId'] = 'NULL'; + $valueStr = "(%u, %u, %u, %u, '%s', '%s', %s, '%s', '%s')"; + } else { + $valueStr = "(%u, %u, %u, %u, '%s', '%s', %u, '%s', '%s')"; + } + if ($TOB['tolDt'] < $tolDt) { // balról túlnyúlik - kettévágjuk + $q = "UPDATE `%s`.orarendiOra SET igDt='%s' - INTERVAL 1 DAY + WHERE tolDt='%s' AND tanarId=%u + AND het=%u AND nap=%u AND ora=%u"; + $v = array($tanevDbNev, $tolDt, $TOB['tolDt'], $TOB['tanarId'], $TOB['het'], $TOB['nap'], $TOB['ora']); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + $q = "INSERT INTO `%s`.orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt) VALUES $valueStr"; + $v = array( + $tanevDbNev, $TOB['het'], $TOB['nap'], $TOB['ora'], $TOB['tanarId'], $TOB['osztalyJel'], + $TOB['targyJel'], $TOB['teremId'], $tolDt, $TOB['igDt'] + ); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + $TOB['tolDt'] = $tolDt; // Az intervallumot lefedő bejegyzések miatt - három fele fogjuk vágni + } + if ($igDt < $TOB['igDt']) { // jobbról túlnyúlik - kettévágjuk !! igDt nem lehet NULL !! + $q = "UPDATE `%s`.orarendiOra SET tolDt='%s' + INTERVAL 1 DAY + WHERE igDt='%s' AND tanarId=%u AND het=%u AND nap=%u AND ora=%u"; + $v = array($tanevDbNev, $igDt, $TOB['igDt'], $TOB['tanarId'], $TOB['het'], $TOB['nap'], $TOB['ora']); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + $q = "INSERT INTO `%s`.orarendiOra (het,nap,ora,tanarId,osztalyJel,targyJel,teremId,tolDt,igDt) VALUES $valueStr"; + $v = array( + $tanevDbNev, $TOB['het'], $TOB['nap'], $TOB['ora'], $TOB['tanarId'], $TOB['osztalyJel'], + $TOB['targyJel'], $TOB['teremId'], $TOB['tolDt'], $igDt + ); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + + } + // A közbensőkben tanárt váltunk + if ($tanarId != $TOB['tanarId']) { + $q = "UPDATE `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + SET tanarId=%u, osztalyJel='%s', targyJel='%s' + WHERE '%s'<=tolDt AND igDt<='%s' AND tanarId=%u AND het=%u AND nap=%u AND ora=%u AND tankorId=%u"; + $v = array($tanevDbNev, $tanevDbNev, $tanarId, $osztalyJel, $targyJel, $tolDt, $igDt, $TOB['tanarId'], $TOB['het'], $TOB['nap'], $TOB['ora'], $tankorId); + $r = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + } + + } + + } // foreach + + // A módosított órarend ütközésellenőrzése - [k] munkatervenként külön. Itt most megengedjük, hogy ha több munkaterv is van, de egyszerre van órája a tanárnak... :/ +// $q = "SELECT tanarId, dt, ora, COUNT(*) AS db +// FROM `%s`.nap LEFT JOIN `%s`.orarendiOra +// ON (((DAYOFWEEK(dt)+5) MOD 7)+1 = orarendiOra.nap) +// AND orarendiOra.het=nap.orarendiHet +// AND orarendiOra.tolDt<=dt AND orarendiOra.igDt>=dt +// WHERE '%s' <= dt AND dt <= '%s' +// GROUP BY munkatervId,tanarId, dt, ora +// HAVING db > 1"; + // [bb] szerintem ez a jó: a hét-nap-óra-tanár-tolDt kulcs az orarendiOra táblában, így ha két sorban ezek megegyeznek, akkor nem kell külön számolni... + $q = "SELECT tanarId, dt, ora, COUNT(DISTINCT het, nap, ora, tanarId, tolDt) AS db + FROM `%s`.nap LEFT JOIN `%s`.orarendiOra + ON (((DAYOFWEEK(dt)+5) MOD 7)+1 = orarendiOra.nap) + AND orarendiOra.het=nap.orarendiHet + AND orarendiOra.tolDt<=dt AND orarendiOra.igDt>=dt + WHERE '%s' <= dt AND dt <= '%s' + GROUP BY tanarId, dt, ora + HAVING db > 1"; + $v = array($tanevDbNev, $tanevDbNev, $tolDt, $igDt); + $ret = db_query($q, array('fv' => 'tankorTanarFelvesz', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v, 'rollback' => true), $lr); + if ($ret === false) { db_close($lr); return false; } + + if (count($ret)) { // Van ütközés! + db_rollback($lr, 'Az összes ütközést ellenőriztem, és a megadott '.$tolDt.'-'.$igDt.' intervallumban egy (esetleg másik) tanárnak több órája van egy időben - így visszaállítjuk az eredeti állapotot...'); + db_close($lr); + return false; + } + + } // aktív tanév + + db_commit($lr); + db_close($lr); + return true; + + } + + function tankorTanarTorol($tankorId, $tanarId, $SET = array('tanev'=>'','tanevAdat'=>'', 'tolDt'=>'', 'igDt'=>'')) { // csak ebből a tankörből csak ezt a tanárt, csak ebben az intervallumban + global $_TANEV; + $tanev = ($SET['tanev']!='') ? $SET['tanev'] : _TANEV; + $tanevAdat = (is_array($SET['tanevAdat'])) ? $SET['tanevAdat'] : (($SET['tanev']=='') ? $_TANEV : getTanevAdat($tanev)); + $A = $tolDt = ($SET['tolDt']!='') ? $SET['tolDt'] : $tanevAdat['kezdesDt']; + $B = $igDt = ($SET['igDt']!='') ? $SET['igDt'] : $tanevAdat['zarasDt']; + if (strtotime($tolDt)>strtotime($igDt)) $_SESSION['alert'][] = 'error:wrong_data:hibás intervallum ('.$tanev.', '.$tolDt.'-'.$igDt.')'; + if (!is_numeric($tankorId)) return false; + + // [$A-$B] zárt intervallumban megszűnik a tankör tanárának lenni, de mást nem módosítunk + $q = "DELETE FROM tankorTanar WHERE tankorId=%u AND tanarId=%u AND beDt>='%s' AND beDt<='%s' AND kiDt<='%s'"; + $v = array($tankorId,$tanarId,$A,$B,$B); + db_query($q, array('debug'=>false,'fv'=>'tankorTanarTorol/delete','modul'=>'naplo_intezmeny','values'=>$v)); + + $q = "UPDATE tankorTanar SET kiDt='%s' - INTERVAL 1 DAY WHERE tankorId=%u AND tanarId=%u AND beDt<='%s' AND kiDt>='%s'"; + $v = array($A,$tankorId,$tanarId,$A,$A); + db_query($q, array('debug'=>false,'fv'=>'tankorTanarTorol/delete','modul'=>'naplo_intezmeny','values'=>$v)); + + $q = "UPDATE tankorTanar SET beDt='%s' + INTERVAL 1 DAY WHERE tankorId=%u AND tanarId=%u AND beDt<='%s' AND kiDt>='%s'"; + $v = array($B,$tankorId,$tanarId,$B,$B); + db_query($q, array('debug'=>false,'fv'=>'tankorTanarTorol/delete','modul'=>'naplo_intezmeny','values'=>$v)); + + return true; + } + + function tankorOsztalyHozzarendeles($tankorId, $osztalyIds) { + // Tankör-osztály hozzárendelés módosítása - az aktuális tanév figyelembevételével (diákok, bontások) + // !! A tankör nevét nem módosítja !! + $jelenlegiOsztalyIds = getTankorOsztalyai($tankorId); + $db = count($_SESSION['alert']); + $diakOsztalyIds = getTankorOsztalyaiByTanev($tankorId, __TANEV, $SET = array('result' => 'id', 'tagokAlapjan' => true, 'tolDt' => '', 'igDt' => '')); + if ($db < count($_SESSION['alert'])) $diakOsztalyIds = array(); // Ha nincs tagja az osztálynak, akkor - hibaüzenet mellett - visszaadja a függvény az összes hozzárendelt osztályt... + $bontasOsztalyIds = getTankorOsztalyaiByBontas($tankorId); + // diak vs. új + $tmp = array_diff($diakOsztalyIds, $osztalyIds); + if (count($tmp) > 0) $_SESSION['alert'] = 'info:wrong_data:diák:A következő osztályokhoz a tankör hozzá van rendelve diákokon keresztül, ezért bővül az osztályok köre:'.implode(',',$tmp); + // bontas vs. új + $tmp = array_diff($bontasOsztalyIds, $osztalyIds); + if (count($tmp) > 0) $_SESSION['alert'] = 'info:wrong_data:bontás:A következő osztályokhoz a tankör hozzá van rendelve bontásokon keresztül, ezért bővül az osztályok köre:'.implode(',',$tmp); + // A helyes osztály lista + $ujOsztalyIds = array_unique(array_merge($osztalyIds, $bontasOsztalyIds, $diakOsztalyIds)); + // Baj lehet még, ha üres az ujOsztalyIds tömb + if (count($ujOsztalyIds)==0) return false; + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + $ok = true; + // törlendők + $tmp = array_diff($jelenlegiOsztalyIds, $ujOsztalyIds); + if (is_array($tmp) && count($tmp)>0) { + $q = "DELETE FROM tankorOsztaly WHERE osztalyId IN (".implode(',', array_fill(0, count($tmp), '%u')).") AND tankorId=%u"; + $tmp[] = $tankorId; + $ok = $ok && db_query($q, array('fv'=>'tankorOsztalyHozzarendeles/delete','modul'=>'naplo_intezmeny','values'=>$tmp)); + } + // felveendők + $tmp = array_diff($ujOsztalyIds, $jelenlegiOsztalyIds); + if (is_array($tmp) && count($tmp)>0) foreach($tmp as $index=>$osztalyId) { + $q = "INSERT INTO tankorOsztaly (tankorId,osztalyId) VALUES (%u,%u)"; + $ok = $ok && db_query($q, array('fv'=>'tankorOsztalyHozzarendeles/insert','modul'=>'naplo_intezmeny','values'=>array($tankorId,$osztalyId))); + } + if ($ok) db_commit($lr); else db_rollback($lr); + db_close($lr); + return $ok; + } + + function tankorSzemeszterHozzarendeles($tankorId, $tankorSzemeszter) { + // !! A tankör nevét nem módosítja !! (új hozzárendelés esete...) + + // A tankör-szemeszter hozzárendelés módosítása. + $jelenlegiTsz = $delDisTsz = $ujTsz = array(); + foreach ($tankorSzemeszter as $index => $tszAdat) $ujTsz[$tszAdat['tanev'].'/'.$tszAdat['szemeszter']] = $tszAdat; + // Jelenlegi hozzárendelések + $tmp = getTankorSzemeszterei($tankorId); + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); $ok = true; + foreach ($tmp as $index => $tszAdat) { + + $tsz = $tszAdat['tanev'].'/'.$tszAdat['szemeszter']; + $jelenlegiTsz[$tsz] = $tszAdat; + + if (!is_array($ujTsz[$tsz])) { + // Törölni csak tervezett szemeszterből engedünk... + if ($tszAdat['statusz'] == 'tervezett') { + $q = "DELETE FROM tankorSzemeszter WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; + $v = array($tankorId, $tszAdat['tanev'], $tszAdat['szemeszter']); + $ok = $ok && db_query($q, array('fv'=>'tankorSzemeszterHozzarendeles/del','modul'=>'naplo_intezmeny','values'=>$v), $lr); + } else { + $delDisTsz[] = $tsz; + } + } else if ($ujTsz[$tsz]['oraszam'] != $tszAdat['oraszam']) { + // módosítunk, ha eltér az új óraszám a régitől + if ($tszAdat['tanev'] == __TANEV) { // A jelenlegi tanévben a bontás óraszámot ellenőrizzük. + $TO = getTankorTervezettOraszamok(array($tankorId)); + $sumBontasOraszam = 0; + foreach ($TO[$tankorId]['bontasOraszam'][$tszAdat['szemeszter']] as $idx => $oAdat) $sumBontasOraszam += $oAdat['hetiOraszam']; + if ($sumBontasOraszam <= $ujTsz[$tsz]['oraszam']) { $ok = true; } + else { $ok = false; $_SESSION['alert'][] = 'message:wrong_data:A bontásokban lekötött összóraszámnál kisebb óraszám nem állítható be.'; } + } else { $ok = true; } // egyéb évkben hagyjuk módosítani + if ($ok) { + $q = "UPDATE tankorSzemeszter SET oraszam = %f WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; + $v = array($ujTsz[$tsz]['oraszam'], $tankorId, $tszAdat['tanev'], $tszAdat['szemeszter']); + $ok = $ok && db_query($q, array('fv'=>'tankorSzemeszterHozzarendeles/update','modul'=>'naplo_intezmeny','values'=>$v), $lr); + } + } + } + // új hozzárendeléseket korlátozás nélkül fel lehet venni... a tankör neve generált név... + foreach ($ujTsz as $tsz => $tszAdat) { + if (!is_array($jelenlegiTsz[$tsz])) { + $q = "INSERT INTO tankorSzemeszter (tankorId, tanev, szemeszter, oraszam, tankorNev) VALUES (%u, %u, %u, %f, '%s')"; + $v = array($tankorId, $tszAdat['tanev'], $tszAdat['szemeszter'], $tszAdat['oraszam'], 'tankor-'.$tankorId); + $ok = $ok && db_query($q, array('fv'=>'tankorSzemeszterHozzarendeles/ins','modul'=>'naplo_intezmeny','values'=>$v), $lr); + } + } + if (count($delDisTsz) > 0) { + $_SESSION['alert'][] = 'info:wrong_data:Nem tervezett tanév esetén nem szüntethető meg a tankör hozzárendelés! ('.implode(', ', $delDisTsz).')'; + } + if ($ok) db_commit($lr); + else db_rollback($lr); + + db_close($lr); + return $ok; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanmenet.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanmenet.php new file mode 100644 index 00000000..fe26de8f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tanmenet.php @@ -0,0 +1,208 @@ + false)) { + if (!is_numeric($tanmenetId)) return false; + $v = array($tanmenetId); + if ($force !== true) { + // Ellenőrizzük, hogy nincs-e tankörhöz rendelve az adott tanmenet + $q = "SELECT tankorId FROM tanmenetTankor WHERE tanmenetId=%u"; + $tankorIds = db_query($q, array('fv' => 'tanmenetTorol/ellenőrzés', 'modul' => 'naplo_intezmeny', 'result'=>'idonly', 'values' => $v)); + if (is_array($tankorIds) && count($tankorIds) > 0) { + $_SESSION['alert'][] = 'message:wrong_data:tankörhöz rendelt tanmenet nem törölhető:tankorIds='.implode(', ', $tankorIds); + return false; + } + } + $q = "DELETE FROM tanmenet WHERE tanmenetId=%u"; + return db_query($q, array('fv' => 'tanmenetTorol/törlés', 'modul' => 'naplo_intezmeny', 'values' => $v)); + } + + function ujTanmenet($ADAT) { + + $q = "INSERT INTO tanmenet (targyId, evfolyamJel, tanmenetNev, oraszam, tanarId, dt) VALUES (%u, '%s', '%s', %u, %u, CURDATE())"; + $v = array($ADAT['targyId'], $ADAT['evfolyamJel'], $ADAT['tanmenetNev'], $ADAT['oraszam'], $ADAT['tanarId']); + return db_query($q, array('fv' => 'ujTanmenet', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v)); + + } + + function tanmenetTemakorModositas($ADAT) { + + $lr = db_connect('naplo_intezmeny', array('fv' => 'tanmenetTemakorModositas/connect')); + db_start_trans($lr); + + // Eddigi témakörök törlése + $q = "DELETE FROM tanmenetTemakor WHERE tanmenetId=%u"; + $v = array($ADAT['tanmenetId']); + $r = db_query($q, array('fv' => 'tanmenetTemakorModositas/delete', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r) { + + // Új témakörök felvétele + $v = $VALUE = array(); + for ($i = 0; $i < count($ADAT['temakor']['oraszam']); $i++) { + if ($ADAT['temakor']['temakorMegnevezes'][$i] != '' && $ADAT['temakor']['oraszam'][$i] != 0) { + $v[] = $ADAT['tanmenetId']; $v[] = $i; $v[] = $ADAT['temakor']['temakorMegnevezes'][$i]; + $v[] = $ADAT['temakor']['oraszam'][$i]; + $VALUE[] = "(%u, %u, '%s', %u)"; + } + } + if (count($VALUE) > 0) { // Ha van egyáltalán beírandó adat + $q = "INSERT INTO tanmenetTemakor (tanmenetId, sorszam, temakorMegnevezes, oraszam) VALUES ".implode(',', $VALUE); + $r = db_query($q, array('fv' => 'tanmenetTemakorModositas/insert', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + } + if ($r) db_commit($lr); + } + + db_close($lr); + return $r; + + } + + function tankorTanmenetHozzarendeles($ADAT) { + $lr = db_connect('naplo_intezmeny', array('fv' => 'tankorTanemenetHozzárendeles/connect')); + db_start_trans($lr); + + $q = "DELETE FROM tanmenetTankor WHERE tankorId=%u AND tanev=%u"; + $v = array($ADAT['tankorId'], $ADAT['tanev']); + $r = db_query($q, array('fv' => 'tankorTanmenetHozzarendeles/delete', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r) { + if ($ADAT['tanmenetId']!=0) { + $q = "INSERT INTO tanmenetTankor (tankorId, tanev, tanmenetId) VALUES (%u, %u, %u)"; + $v = array($ADAT['tankorId'], $ADAT['tanev'], $ADAT['tanmenetId']); + $r = db_query($q, array('fv' => 'tankorTanmenetHozzarendeles/insert', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r) db_commit($lr); + } else { + if ($r) db_commit($lr); + } + } + db_close($lr); + return $r; + + } + + function tanmenetDuplikalas($eTanmenetId, $tanarId) { + + $q = "INSERT INTO tanmenet (targyId, evfolyamJel, tanmenetNev, oraszam, tanarId, dt, statusz) + SELECT targyId, evfolyamJel, tanmenetNev, oraszam, %u AS tanarId, CURDATE() AS dt, 'új' AS statusz FROM tanmenet WHERE tanmenetId=%u"; + $v = array($tanarId, $eTanmenetId); + $tanmenetId = db_query($q, array('fv' => 'tanmenetDuplikalas/tanmenet', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v)); + $q = "INSERT INTO tanmenetTemakor (tanmenetId, sorszam, oraszam, temakorMegnevezes) + SELECT %u AS tanmenetId, sorszam, oraszam, temakorMegnevezes FROM tanmenetTemakor WHERE tanmenetId=%u"; + $v = array($tanmenetId, $eTanmenetId); + db_query($q, array('fv' => 'tanmenetDuplikalas/tanmenetTemakor', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + return $tanmenetId; + + } + + function tanmenetAdatModositas($ADAT) { + + + // Ha státusz != 'új' || 'elavult', akkor az óraszámnak legalább stimmelnie kellene! + if ($ADAT['ujStatusz'] != 'új' && $ADAT['ujStatusz'] != 'elavult') { + $q = "select tanmenet.oraszam as tervezett, sum(tanmenetTemakor.oraszam) as osszes + from tanmenet left join tanmenetTemakor using(tanmenetId) where tanmenetId=%u GROUP BY tanmenetId"; + $ret = db_query($q, array('fv' => 'tanmenetAdatModositas', 'modul'=> 'naplo_intezmeny', 'values' => array($ADAT['tanmenetId']), 'result' => 'record')); + if ($ADAT['oraszam'] != $ret['osszes']) { + // A tanmenet státuszát 'új'-ra állítjuk + $q = "UPDATE tanmenet SET statusz='új' WHERE tanmenetId=%u"; + db_query($q, array('fv' => 'tanmenetAdatModositas', 'modul' => 'naplo_intezmeny', 'values' => array($ADAT['tanmenetId']))); + + $_SESSION['alert'][] = 'message:wrong_data:A tervezett óraszám ('.$ADAT['oraszam'].') nem egyenlő az összóraszámmal ('.$ret['osszes'].')'; + return false; + } + } + $q = "UPDATE tanmenet SET tanmenetNev='%s', oraszam=%u, evfolyamJel='%s', statusz='%s' WHERE tanmenetId=%u"; + $v = array($ADAT['tanmenetNev'], $ADAT['oraszam'], $ADAT['evfolyamJel'], $ADAT['ujStatusz'], $ADAT['tanmenetId']); + return db_query($q, array('fv' => 'tanmenetAdatModositas', 'modul' => 'naplo_intezmeny', 'values' => $v)); + + } + + function getTanmenetek($SET = array('result' => 'assoc')) { + + $result = readVariable($SET['result'], 'enum', 'assoc', array('indexed','assoc')); + + $q = "SELECT * FROM tanmenet ORDER BY targyId, dt DESC"; + return db_query($q, array('fv' => 'getTanmenetek', 'modul' => 'naplo_intezmeny', 'result' => $result, 'keyfield' => 'tanmenetId')); + + } + + function getTanmenetAdat($tanmenetId, $SET = array('tanev' => __TANEV)) { + + if ($SET['tanev']=='') $SET['tanev'] = __TANEV; + $v = array($tanmenetId,$SET['tanev']); + + + $q = "SELECT * FROM tanmenet WHERE tanmenetId=%u"; + $ret = db_query($q, array('fv' => 'getTanmenetAdat', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v)); + + $q = "SELECT * FROM tanmenetTemakor WHERE tanmenetId=%u ORDER BY sorszam"; + $ret['temakor'] = db_query($q, array('fv' => 'getTanmenetAdat/témakör', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + $q = "SELECT * FROM tanmenetTankor WHERE tanmenetId=%u AND tanev=%u"; + $ret['tankor'] = db_query($q, array('fv' => 'getTanmenetAdat/tankör', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + if (is_array($ret['tankor'])) for ($i = 0; $i < count($ret['tankor']); $i++) { + $ret['tankor'][$i]['tankorNev'] = getTankorNevById($ret['tankor'][$i]['tankorId'], array('tanev' => $SET['tanev'])); + } + + $q = "SELECT * FROM tanmenetTankor WHERE tanmenetId=%u AND tanev!=%u"; + $ret['tankorNemAktualis'] = db_query($q, array('fv' => 'getTanmenetAdat/tankör/2', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + if (is_array($ret['tankorNemAktualis'])) for ($i = 0; $i < count($ret['tankorNemAktualis']); $i++) { + $ret['tankorNemAktualis'][$i]['tankorNev'] = $ret['tankorNemAktualis'][$i]['tanev'].'-'.getTankorNevById($ret['tankorNemAktualis'][$i]['tankorId'], array('tanev' => $ret['tankorNemAktualis'][$i]['tanev'])); + } + + $targyAdat = getTargyById($ret['targyId']); + $ret['targyNev'] = $targyAdat['targyNev']; + $ret['tanarNev'] = getTanarNevById($ret['tanarId']); + + return $ret; + } + + function getTanmenetByTankorIds($tankorIds, $SET = array('tanev' => __TANEV, 'jovahagyva' => false)) { + + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + + $W = array(); + if ($SET['jovahagyva']===true) $W[] = " AND statusz='publikus'"; + + $q = "SELECT tankorId, tanmenetId FROM tanmenetTankor LEFT JOIN tanmenet USING (tanmenetId) WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") AND tanev=%u".implode($W,' '); + $tankorIds[] = $tanev; + return db_query($q, array('fv' => 'getTanmenetByTankorIds', 'modul' => 'naplo_intezmeny', 'result' => 'keyvaluepair', 'values' => $tankorIds)); + + } + + function getTanmenetByTargyId($targyId, $SET = array('result' => 'indexed')) { + + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed', 'assoc')); + $targyAdat = getTargyById($targyId); + + $q = "SELECT * FROM tanmenet WHERE targyId=%u ORDER BY evfolyamJel,dt DESC"; + $v = array($targyId); + $ret = db_query($q, array('fv' => 'getTanmenetByTargyId', 'modul' => 'naplo_intezmeny', 'result' => $result, 'keyfield' => 'tanmenetId', 'values' => $v)); + + if (is_array($ret)) foreach ($ret as $key => $tAdat) { + $ret[$key]['tanarNev'] = getTanarNevById($tAdat['tanarId']); + $ret[$key]['targyNev'] = $targyAdat['targyNev']; + } + + return $ret; + } + + function getTanmenetByTanarId($tanarId, $SET = array('result' => 'indexed')) { + + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed', 'assoc')); + + $q = "SELECT * FROM tanmenet WHERE tanarId=%u ORDER BY targyId,evfolyamJel,dt DESC"; + $v = array($tanarId); + $ret = db_query($q, array('fv' => 'getTanmenetByTanarId', 'modul' => 'naplo_intezmeny', 'result' => $result, 'keyfield' => 'tanmenetId', 'values' => $v)); + + if (is_array($ret)) foreach ($ret as $key => $tAdat) { + $targyAdat = getTargyById($tAdat['targyId']); + $ret[$key]['targyNev'] = $targyAdat['targyNev']; + $ret[$key]['tanarNev'] = getTanarNevById($tAdat['tanarId']); + } + + return $ret; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/targy.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/targy.php new file mode 100644 index 00000000..2831e4cc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/targy.php @@ -0,0 +1,432 @@ + 'indexed')) { + + $q = "SELECT * FROM targy WHERE mkId=%u"; + $v = array($mkId); + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed', 'idonly', 'assoc')); + return db_query($q, array('fv' => 'getTargyakByMkId', 'modul' => 'naplo_intezmeny', 'result' => $result, 'values' => $v)); + + } + + // Miért van három szinte azonos függvény? + function getTargyById($targyId) { + + $q = "SELECT * FROM targy WHERE targyId=%u"; + $v = array($targyId); + return db_query($q, array('fv' => 'getTargyById', 'modul' => 'naplo_intezmeny', 'result'=> 'record', 'values'=>$v)); + + } + + function getTargyAdatByIds($targyIds=null) { //2009 // esetleg ByIds nélkül kifejezőbb lenne a név... + if (is_array($targyIds) && count($targyIds) > 0) { + $q = "SELECT * FROM targy WHERE targyId IN (".implode(',', array_fill(0, count($targyIds), '%u')).") ORDER BY targyNev"; + $v = $targyIds; + } else { + $q = "SELECT * FROM targy ORDER BY targyNev"; + $v = array(); + } + $R = db_query($q, array('fv' => 'getTargyAdatByIds', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'targyId','values'=>$v)); + return $R; + } + + function getTargyak($SET = array('mkId' => null, 'targySorrendNev' => null, 'tanev' => __TANEV, 'osztalyId' => null, 'arraymap' => null) ) { + + if (isset($SET['tanev']) && $SET['tanev'] != __TANEV) $tanevDb = tanevDbNev(__INTEZMENY, $SET['tanev']); + else $tanevDb = __TANEVDBNEV; + $targySorrendNev = readVariable($SET['targySorrendNev'], 'enum', null, getTargySorrendNevek()); + + if (isset($SET['mkId'])) { + $W = 'WHERE mkId = %u '; $v = array($SET['mkId']); + } else { + $W = ''; $v = array(); + } + if ($targySorrendNev != '' && $SET['osztalyId'] != '') { + $q = "SELECT targy.* FROM targy LEFT JOIN $tanevDb.targySorszam + ON targy.targyId = targySorszam.targyId AND osztalyId=%u AND sorrendNev='%s' + $W ORDER BY IF(sorszam IS NULL,100,sorszam), targyNev"; + array_unshift($v, $SET['osztalyId'], $targySorrendNev); + } else { + $q = "SELECT * FROM targy $W ORDER BY targyNev"; + } + $r = db_query($q, array('modul' => 'naplo_intezmeny', 'result' => 'indexed', 'fv' => 'getTargyak', 'values' => $v)); + + if (is_array($SET['arraymap'])) { + $RE = reindex($r,$SET['arraymap']); + } else { + $RE = $r; + } + + return $RE; + } + + function getTargySorrendNevek($tanev = __TANEV) { + require_once('include/modules/naplo/share/file.php'); + return getEnumField('naplo_base', tanevDbNev(__INTEZMENY, $tanev).'.targySorszam', 'sorrendNev'); + } + + function getTanevTargySorByOsztalyId($osztalyId, $tanev = __TANEV, $sorrendNev = 'bizonyítvány') { + + global $_TANEV; + + if ($tanev != __TANEV) $Tanev = getTanevAdat($tanev); + else $Tanev = $_TANEV; + + // Az összes diákra szükség van aktív tanévben is - év végén a végzősök már nincsenek jogviszonyban... + $Statusz = array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva'); + $diakIds = array(); + $Diak = getDiakok(array('osztalyId' => $osztalyId, 'tanev' => $tanev, 'statusz' => $Statusz)); + for ($i = 0; $i < count($Diak); $i++) $diakIds[] = $Diak[$i]['diakId']; + + + if (count($diakIds) > 0) { + + // a második paraméter $Tanev, de kompatibilis a $szemeszteradattal) + $targyak = getTargyakByDiakIds($diakIds,$Tanev,$osztalyId,$sorrendNev, array('csakOratervi'=>false,'filter'=>'')); + return $targyak; + } + else + { + return false; + } + + } +/* + Egy osztályhoz rendelt tankörök tárgyai - lehet, hogy valójában nincs is olyan diák, aki tanulja ezt a tárgyat. + Magatartás/szorgalom nincs benne... Miért is ne lenne benne? Én nem látom, hogy ki lenne szűrve... + nyomtatas/haladasinaplo-ban használt függvény! +*/ + function getTargyakByOsztalyId($osztalyId, $tanev = __TANEV, $SET = array('targySorrendNev' => 'napló', 'result' => 'indexed')) { + if ($tanev != __TANEV) $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev); + else $tanevDbNev = __TANEVDBNEV; + $q = "SELECT DISTINCT targy.targyId AS targyId, targyNev, targyRovidNev FROM targy + LEFT JOIN tankor USING (targyId) + LEFT JOIN tankorOsztaly USING (tankorId) + LEFT JOIN ".$tanevDbNev.".targySorszam + ON tankorOsztaly.osztalyId=targySorszam.osztalyId AND targy.targyId=targySorszam.targyId AND sorrendNev = '%s' + LEFT JOIN tankorSzemeszter USING (tankorId) + WHERE tanev=%u AND tankorOsztaly.osztalyId=%u ORDER BY IFNULL(sorszam,1000),targyNev"; + return db_query($q, array('fv' => 'getTargyByOsztalyId', 'modul' => 'naplo_intezmeny', 'result' => $SET['result'], 'values' => array($SET['targySorrendNev'],$tanev,$osztalyId))); + } + + function getTargyakByDiakId($diakId, + $SET = array('tanev' => __TANEV, 'dt' => null, 'tolDt' => null, 'igDt' => null, 'result' => 'indexed','csakOratervi'=>false, 'osztalyId' => null, 'filter' => null, 'targySorrendNev' => null)) { + /* + A függvény először lekérdezi a diák osztályait az adott időintervallumban. Ha van megadva osztalyId paraméter, akkor csak + azt veszi a továbbiakban figyelembe! Majd a diák és az egyes osztályok képzéseit is lekérdezzük (az intervallum végi dátummal!). + + Ha van megadva osztalyId, akkor csak az oda sorolható tárgyakat kérdezzük le, illetve a más osztályhoz nem sorolható, de évfolyamban megfelelőket + (ld. szűrés) + + Ezek után a tárgyakat három forrásból veszi: + 1. A diák adott időintervallumbeli tankör tagságaiból vett tárgyakat osztályokhoz rendeli, vagy az egyéb kategóriába teszi + 2. Az adott időintervallumba eső zárójegyek tárgyait a korábbi tankörök alapján rendeli osztályokhoz, a maradék, de évfolyamban + a diák valamely osztályának megfelelő tárgyat az egyéb kategóriába sorolja. Azok a zárójegy tárgyak tehát sose kerülnek be, + amik évfolyamban nem felelnek meg... + 3. A diák esetleges képzései egyben osztályhoz is rendelik az onnan származó tárgyakat. + + A keletkező adatszerkezet: + array( + osztaly => array($osztalyId1 => array( .... tárgyId-k ....), $osztalyId2 => array( ... ), ...), + egyeb => array( ... tárgyId-k ...), + targyAdat => array( + $targyId1 => array(targyNev => ..., evkoziKovetelmeny => ..., zaroKovetelmeny => ..., jegyTipus => ..., evfolyam => ..., evfolyamJel =>) // nem mindegyik van mindig!! + ) + ) + + Ha nincs megadva 'result' paraméter akkor a teljes tömböt adja vissza a fv. + + Ha van megadva 'result', akkor figyelembe vesszi a 'filter' paramétert is - eddig egy értéket vesz figyelembe: kovetelmeny + Ezután a függvény $result-nak megfelelően átalakítva adja vissza a szelektált tárgyak listáját (idonly, assoc, indexed) + + */ + // ERŐS TANÉVFÜGGŐSÉG! + $tanev = readVariable($SET['tanev'], 'numeric unsigned', __TANEV); + + // A tárgysorrend tanév függő + if ($tanev != __TANEV) $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + else $tanevDb = __TANEVDBNEV; + + $dt = readVariable($SET['dt'], 'datetime', null); + $tolDt = readVAriable($SET['tolDt'], 'date', $dt); + $igDt = readVAriable($SET['igDt'], 'date', $dt); + initTolIgDt($tanev, $tolDt, $igDt); + if (is_null($dt)) $dt = $igDt; + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed','assoc','keyvaluepair','idonly')); +//!!!! + $targySorrendNev = readVariable($SET['targySorrendNev'], 'sql', null, array('napló','anyakönyv','ellenőrző','bizonyítvány','egyedi')); + $return = array('egyeb' => array(), 'osztaly' => array(), 'targyAdat' => array()); + + if ($SET['csakOratervi']===true) { + $LEFTJOIN = " LEFT JOIN tankorTipus USING (tankorTipusId) "; + $W = " AND tankorTipus.oratervi='óratervi' "; + } + + // A diák osztályai, képzései - a tárgyak csoportosításához! + $diakOsztalyIds = getDiakOsztalya($diakId, array('tanev' => $tanev, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result' => 'idonly')); + if (isset($SET['osztalyId'])) { + if (!in_array($SET['osztalyId'], $diakOsztalyIds)) { + // Nem biztos, hogy hiba. Pl. zárási stat-ban, ha első félévben osztályt vált, akkor második félévben ebbe az ágba kerül a lekérdezés... + if (__NAPLOADMIN) $_SESSION['alert'][] = 'info:wrong_data:getTargyakByDiakId:A diák ('.$diakId.') nem tagja az osztalynak ('.$SET['osztalyId'].')'; + return false; + } else { + $diakOsztalyIds = array($SET['osztalyId']); + } + } + $diakEvfolyamJel = array(); + if (count($diakOsztalyIds)==0) { + // --TODO, ilyenkor mi van? + // Pl. ha év közben elmegy a tanuló az iskolából... + // Mindenesetre ne jelenjen meg mindig mindenkinek ez az üzenet, mert idegesítő... elég az adminnak + if (__NAPLOADMIN) $_SESSION['alert'][] = 'info:not_implemented:nincs_osztaly,getTargyakByDiakId:diakId='.$diakId; + } else { + $osztalyKepzes = getKepzesByOsztalyId($diakOsztalyIds, array('result' => 'indexed', 'arraymap' => array('osztalyId','kepzesId'))); + foreach ($diakOsztalyIds as $osztalyId) { + $return['osztaly'][$osztalyId] = array(); + $osztalyAdat[$osztalyId] = array( + 'targy' => getTargyakByOsztalyId($osztalyId, $tanev, array('result' => 'idonly')), + 'evfolyam'=>getEvfolyam($osztalyId,$tanev), + 'evfolyamJel'=>getEvfolyamJel($osztalyId,$tanev) + ); + if (is_array($osztalyKepzes[$osztalyId])) foreach ($osztalyKepzes[$osztalyId] as $kepzesId => $kAdat) { + if (isset($kepzesOsztaly[$kepzesId])) { + // Ha azonos évfolyamon vannak a képzéshez rendelt osztályok, akkor nem okoz gondot a több osztály a képzésből jövő tárgyak lekérdezésénél - ezért nem üzenünk hibát + if ($osztalyAdat[$osztalyId]['evfolyamJel'] != $osztalyAdat[ $kepzesOsztaly[$kepzesId] ]['evfolyamJel']) { + $_SESSION['alert'][] = 'message:wrong_data:getTargyakByDiakId:egy képzés több különböző évfolyamú osztályhoz tartozik'; + } + // TODO , evfolyamJel re való áttérés a képzéseknél - ellenőrzés, tesztelés... + if ($osztalyAdat[$osztalyId]['evfolyamJel'] != $osztalyAdat[ $kepzesOsztaly[$kepzesId] ]['evfolyamJel']) { + $_SESSION['alert'][] = 'message:wrong_data:getTargyakByDiakId:egy képzés több különböző évfolyamú osztályhoz tartozik.:osztalyAdat('.$osztalyAdat[$osztalyId]['evfolyamJel'].' vs. '.$osztalyAdat[ $kepzesOsztaly[$kepzesId] ]['evfolyamJel'].')'; + } + } else { + $kepzesOsztaly[$kepzesId] = $osztalyId; + } + } + if (!in_array($osztalyAdat[$osztalyId]['evfolyamJel'], $diakEvfolyamJel)) $diakEvfolyamJel[] = $osztalyAdat[$osztalyId]['evfolyamJel']; + } + } + + if (count($diakEvfolyamJel)==0) { + // --TODO, ilyenkor mi van? + // Pl. ha év közben elmegy a tanuló az iskolából... + // Legalább ne mindenkinek, csak az adminnak jelenjen meg a hibaüzenet... + if (__NAPLOADMIN) $_SESSION['alert'][] = 'info:not_implemented:nincs_evfolyam,getTargyakByDiakId'; + } + + // Tárgyak lekérdezése a diák aktuális tankör-tagságai alapján + $q = "SELECT DISTINCT targyId,targyNev, zaroKovetelmeny, tankor.kovetelmeny AS evkoziKovetelmeny + FROM targy + LEFT JOIN tankor USING (targyId) + LEFT JOIN tankorSzemeszter USING (tankorId) + $LEFTJOIN + LEFT JOIN tankorDiak USING (tankorId) + WHERE diakId=%u AND tanev=%u AND beDt <= '%s' AND ('%s' <= kiDt OR kiDt IS NULL) + $W + ORDER BY targyNev, tankor.kovetelmeny DESC"; // Ha több tankör van egy tárgyhoz különböző követelményekkel, akkor ne a "nincs" legyen az utolsó! + $v = array($diakId, $tanev, $igDt, $tolDt); + + $return['targyAdat'] = db_query($q, array('fv' => 'getTargyByDiakId', 'modul' => 'naplo_intezmeny', 'keyfield' => 'targyId', 'result' => 'assoc', 'values' => $v)); + + foreach ($return['targyAdat'] as $targyId => $tAdat) { + $osztalybaSorolva = false; + foreach ($diakOsztalyIds as $osztalyId) { + if (in_array($targyId, $osztalyAdat[$osztalyId]['targy'])) { + $return['osztaly'][$osztalyId][] = $targyId; + $osztalybaSorolva = true; + } + } + if (!$osztalybaSorolva) $return['egyeb'][] = $targyId; + } + + // Tárgyak lekérdezése a beírt zárójegyek, osztályzatok alapján + if (count($diakEvfolyamJel)>0) { + // Ez lenne az új javaslat: az adott tolDt-igDt közötti VAGY adott évfolyamokra illeszkedő zárójegyek legyenek lekérdezve - ez így bővebb... (evfolyam-->evfolyamJel tesztelendő) + $q = "SELECT targyId, targyNev, evfolyam, evfolyamJel, jegyTipus FROM zaroJegy LEFT JOIN targy USING (targyId) + WHERE diakId=%u AND (('%s' <= hivatalosDt AND hivatalosDt <= '%s') OR evfolyamJel IN (".implode(',', array_fill(0, count($diakEvfolyamJel), '%u'))."))"; + // Ez az eredeti tolDt-igDt közötti ÉS adott évfolyamokra illeszkedő jegyek... (evfolyam-->evfolyamJel tesztelendő) + $q = "SELECT targyId, targyNev, evfolyam, evfolyamJel, jegyTipus FROM zaroJegy LEFT JOIN targy USING (targyId) + WHERE diakId=%u AND '%s' <= hivatalosDt AND hivatalosDt <= '%s' AND evfolyamJel IN (".implode(',', array_fill(0, count($diakEvfolyamJel), '%u')).")"; + $v = $diakEvfolyamJel; + array_unshift($v, $diakId, $tolDt, $igDt); + $retZJ = db_query($q, array('fv' => 'getTargyByDiakId/zárójegyek', 'modul' => 'naplo_intezmeny', 'keyfield' => 'targyId', 'result' => 'assoc', 'values' => $v)); + foreach ($retZJ as $targyId => $tAdat) { + $osztalybaSorolva = false; + if (isset($return['targyAdat'][$targyId])) $return['targyAdat'][$targyId]['jegyTipus'] = $tAdat['jegyTipus']; + else $return['targyAdat'][$targyId] = $tAdat; + foreach ($diakOsztalyIds as $osztalyId) { + if (in_array($targyId, $osztalyAdat[$osztalyId]['targy'])) { + if (!in_array($targyId, $return['osztaly'][$osztalyId])) $return['osztaly'][$osztalyId][] = $targyId; + $osztalybaSorolva = true; + } + } + if (!$osztalybaSorolva && !in_array($targyId, $return['egyeb'])) $return['egyeb'][] = $targyId; + } + } + + // Tárgyak lekérdezése képzés alapján + // - van-e a diáknak képzése? + $kepzesIds = getKepzesByDiakId($diakId, array('dt'=>$dt, 'result' => 'idonly')); + if (is_array($kepzesIds) && count($kepzesIds) > 0) { + foreach ($kepzesIds as $kepzesId) { + $osztalyId = $kepzesOsztaly[$kepzesId]; + $evfolyamJel = $osztalyAdat[$osztalyId]['evfolyamJel']; + $retK = getKepzesOraterv($kepzesId, array('arraymap' => array('evfolyamJel', 'targyId'))); + if (is_array($retK[$evfolyamJel])) foreach ($retK[$evfolyamJel] as $targyId => $tAdat) { + if ($targyId != '') { + if (!in_array($targyId, $return['osztaly'][$osztalyId])) $return['osztaly'][$osztalyId][] = $targyId; //Ne üzenjünk hibát? Ezek szerint egy képzésben előírt tárgy nem szerepelt a tankörök között... + if (is_array($return['targyAdat'][$targyId])) $return['targyAdat'][$targyId]['zaroKovetelmeny'] = $tAdat[ (count($tAdat)-1) ]['kovetelmeny']; // A képzés követelménye felülírja a tárgyét... + else $return['targyAdat'][$targyId] = array_merge(getTargyById($targyId), array('evfolyamJel' => $evfolyamJel, 'zaroKovetelmeny' => $tAdat[ (count($tAdat)-1) ]['kovetelmeny'])); // Ha még nem szerepelt a tárgy, akkor vegyük fel az adatait... + } + } + } + } + // Kellene még szűrni - követelmény, vagy jelenlét szerint, és le kellene kezelni a $result paramétert... (rev. 2251)) + if ($SET['result'] == '') return $return; // Ha nincs visszatérési forma megadva, akkor adjuk vissza az egész tömböt! + + if ($targySorrendNev != '' && is_array($return['targyAdat']) && count($return['targyAdat'])>0) { + // Rendezés... a $diakOsztalyIds[0] alapján! + $q = "SELECT targy.targyId FROM targy LEFT JOIN ".$tanevDb.".targySorszam + ON targy.targyId = targySorszam.targyId AND osztalyId=%u AND sorrendNev='%s' + WHERE targy.targyId IN (".implode(',', array_fill(0, count(array_keys($return['targyAdat'])), '%u')).") ORDER BY sorszam, targyNev"; + $v = array_keys($return['targyAdat']); + array_unshift($v, $diakOsztalyIds[0], $targySorrendNev); + $sorrend = db_query($q, array('fv' => 'getTargyakByDiakId/targySorrend', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => $v)); + } else { + $sorrend = array_keys($return['targyAdat']); + } + + // Szűrés + $ret = array(); + if (isset($SET['osztalyId'])) $osztalyId = $SET['osztalyId']; // Ha van szűrés az osztályra... + foreach ($sorrend as $targyId) { + $tAdat = $return['targyAdat'][$targyId]; + + if ( // szűrés az osztályra + !isset($SET['osztalyId']) // nincs osztályra szűrés... + || (is_array($return['osztaly'][$osztalyId]) && in_array($targyId, $return['osztaly'][$osztalyId])) // vagy a szűrendő osztályhoz kapcsolódó tárgy + || (in_array($targyId, $return['egyeb']) && isset($tAdat['evfolyamJel']) && in_array($tAdat['evfolyamJel'], $diakEvfolyamJel)) // vagy nem kapcsolható más osztályhoz, évfolyama viszont megfelel a szűrendő évfolyamnak + ) { + if ( + $SET['filter'] != 'kovetelmeny' || // ha nincs követelmény szerinti szűrés... + ( // Szűrés a követelményre + (isset($tAdat['evkoziKovetelmeny']) && $tAdat['evkoziKovetelmeny'] != 'nincs') // vagy van/lehet évközi értékelése ... + || (isset($tAdat['zaroKovetelmeny']) && $tAdat['zaroKovetelmeny'] != 'nincs' && $tAdat['zaroKovetelmeny'] != '') // vagy év végi osztályzata... + || (isset($tAdat['jegyTipus'])) // vagy van már beírva osztályzata + ) + ) { // Megfelelő adatforma kialakítása + if ($SET['result'] == 'idonly') $ret[] = $targyId; + elseif ($SET['result'] == 'indexed') $ret[] = $tAdat; + elseif ($SET['result'] == 'assoc') $ret[$targyId] = $tAdat; + } + } + } + + return $ret; + + } + + function getTargyakByDiakIds($diakIds, $szemeszterAdat, $osztalyId, $sorrendNev, $SET = array('result' => 'indexed', 'keyfield' => null,'csakOratervi'=>true,'filter'=>'kovetelmeny')) { + /* + A függvény lekérdezi az összes diák tárgyait a share/targy/getTargyakByDiakId függvénnyel, + majd ezen id-k alapján kérdezi le a rendezett tárgy listát - névvel és egyéb adatokkal indexelt tömbként. + */ + + if ( !isset($SET['csakOratervi']) ) $SET['csakOratervi'] = true; + if ( !isset($SET['filter']) ) $SET['filter'] = 'kovetelmeny'; + if ( !isset($SET['result']) ) $SET['result'] = 'indexed'; + + if ($szemeszterAdat['tanev'] == __TANEV) $tanevDb = __TANEVDBNEV; + else $tanevDb = tanevDbNev(__INTEZMENY, $szemeszterAdat['tanev']); + + $targyIds = $tmp = array(); + foreach ($diakIds as $key => $diakId) { + $ret = getTargyakByDiakId($diakId, array('osztalyId' => $osztalyId, 'result' => 'idonly', 'csakOratervi' => $SET['csakOratervi'], 'filter' => $SET['filter'], + 'tanev' => $szemeszterAdat['tanev'], 'tolDt' => $szemeszterAdat['kezdesDt'], 'igDt' => $szemeszterAdat['zarasDt'])); + if (is_array($ret)) { + $targyIds = array_unique(array_merge($tmp, $ret)); + $tmp = $targyIds; + } + } + if (is_array($targyIds) && count($targyIds)>0) { + $q = "SELECT kirTargyId,targy.targyId AS targyId, IF(targyRovidNev='' OR targyRovidNev IS NULL,targyNev,targyRovidNev) as targyRovidNev, targyNev, sorszam, targy.zaroKovetelmeny + FROM targy LEFT JOIN ".$tanevDb.".targySorszam + ON targy.targyId = targySorszam.targyId AND osztalyId=%u AND sorrendNev='%s' + WHERE targy.targyId IN (".implode(',', array_fill(0, count($targyIds), '%u')).") + ORDER BY sorszam,targyNev"; + $v = mayor_array_join(array($osztalyId, $sorrendNev,), $targyIds); + return db_query($q, array('fv' => 'getTargyakByDiakIds', 'modul' => 'naplo_intezmeny', 'result' => $SET['result'], 'keyfield' => $SET['keyfield'], 'values' => $v)); + } else { + return false; + } + } + + function getTargyIdsByTanarId($tanarId) { + + $q1 = "SELECT targyId FROM kepesitesTargy LEFT JOIN tanarKepesites USING (kepesitesId) WHERE tanarId=%u"; + $q2 = "SELECT targyId FROM targy LEFT JOIN mkTanar USING (mkId) WHERE tanarId=%u"; + $q = "($q1) UNION DISTINCT ($q2)"; + + return db_query($q, array('fv'=>'getTargyIdsByTanarId','modul'=>'naplo_intezmeny','result'=>'idonly','values'=>array($tanarId, $tanarId))); + + } + + function getMagatartas($SET = array('csakId' => true, 'result' => 'idonly')) { // Nekem szimpatikusabb a result paraméter... [bb] :) + if ($SET['csakId']===true || $SET['result'] == 'idonly') { $w='targyId'; $r='idonly'; } + elseif ($SET['result'] == 'value') { $w ='targyId'; $r='value'; } + else {$w='*';$r='indexed'; } + $q = "SELECT $w FROM targy WHERE targyJelleg='magatartás'"; + $ret=db_query($q, array('fv' => 'getMagatartas', 'modul' => 'naplo_intezmeny', 'result' => $r)); + if (count($ret)==0) $_SESSION['alert'][]='message:nincs_targy:magatartás'; + return $ret; + } + function getSzorgalom($SET = array('csakId' => true, 'result' => 'idonly')) { + if ($SET['csakId']===true || $SET['result'] == 'idonly') { $w='targyId'; $r='idonly'; } + elseif ($SET['result'] == 'value') { $w ='targyId'; $r='value'; } + else {$w='*';$r='indexed'; } + $q = "SELECT $w FROM targy WHERE targyJelleg='szorgalom'"; + $ret=db_query($q, array('fv' => 'getSzorgalom', 'modul' => 'naplo_intezmeny', 'result' => $r)); + if (count($ret)==0) $_SESSION['alert'][]='message:nincs_targy:szorgalom'; + return $ret; + } + function getOsztalyfonoki($SET = array('csakId' => true, 'result' => 'idonly')) { + if ($SET['csakId']===true || 'result' == 'idonly') { $w='targyId'; $r='idonly'; } + elseif ($SET['result'] == 'value') { $w ='targyId'; $r='value'; } + else {$w='*';$r='indexed'; } + // még nincs "osztályfőnöki" tárgy jelleg - de kéne, nem? + $q = "SELECT $w FROM targy WHERE targyJelleg='osztályfőnöki' or targyNev = 'osztályfőnöki'"; + $ret=db_query($q, array('fv' => 'getSzorgalom', 'modul' => 'naplo_intezmeny', 'result' => $r)); + if (count($ret)==0) $_SESSION['alert'][]='message:nincs_targy:szorgalom'; + return $ret; + } + + + function getKirTargyak() { + $q = "SELECT * FROM kirTargy"; + return db_query($q, array('fv'=>'getKirTargyak','modul'=>'naplo_base','result'=>'indexed')); + } + + function getTargyTargy($SET=array()) { + + $q = "SELECT * FROM targyTargy"; + $r = db_query($q, array('fv'=>'getTargyTargy','modul'=>'naplo_intezmeny','result'=>'indexed')); + //$R = reindex($r,array('foTargyId')); + for ($i=0; $i'getTargyNev','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v)); + } + + function getTargyByJelleg($targyJelleg) { + $q = "SELECT targyNev,targyId FROM targy WHERE targyJelleg='%s'"; + $v = array($targyJelleg); + return $r = db_query($q, array('fv'=>'getTargyByJelleg','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/terem.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/terem.php new file mode 100644 index 00000000..0c00c89a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/terem.php @@ -0,0 +1,151 @@ + 'getTeremAdatById', 'modul' => 'naplo_intezmeny', 'values' => array($teremId), 'result' => 'record')); + + } + + function getTermek($SET = array('result' => 'indexed', 'tipus' => array(), 'telephelyId' => null), $olr = null) { + $result = readVariable($SET['result'], 'enum', 'indexed', array('indexed', 'idonly', 'assoc')); + $v = array(); + + if (is_array($SET['tipus']) && count($SET['tipus'])>0) { + $W[] = " tipus IN ('".implode("','", array_fill(0, count($SET['tipus']), '%s'))."')"; + $v = $SET['tipus']; + } else { + $W[] = " tipus != 'megszűnt' "; + } + if ($SET['telephelyId']!='') { + $W[] = " (telephelyId=%u OR telephelyId IS NULL) "; // vagy set vagy null + $v[] = $SET['telephelyId']; + } + + if (count($W) > 0) $WHERE = ' WHERE '.implode(' AND ', $W); + + if ($result == 'idonly') { + $q = "SELECT teremId FROM ".__INTEZMENYDBNEV.".terem".$WHERE." ORDER BY teremId"; + } else { + $q = "SELECT * FROM ".__INTEZMENYDBNEV.".terem".$WHERE." ORDER BY teremId"; + } + $R = db_query($q, array('fv' => 'getTerem', 'modul' => 'naplo_intezmeny', 'result' => $result, 'values' => $v, 'keyfield' => 'teremId'), $olr); + return $R; + } + + function getSzabadTermekByDt($dt, $teremIds = array(), $forras = 'orarendiOra', $olr = '') { + + if (!is_array($teremIds) || count($teremIds) == 0) $teremIds = getTermek(array('result' => 'idonly', 'tipus'=>array('tanterem','labor')), $olr); + $szabadTermek = $foglaltTermek = array(); + if ($forras == 'ora') + $q = "SELECT DISTINCT ora,teremId FROM ".__TANEVDBNEV.".ora + WHERE dt='%s' ORDER BY ora,teremId"; + else + $q = "SELECT DISTINCT ora,teremId FROM ".__TANEVDBNEV.".nap LEFT JOIN ".__TANEVDBNEV.".orarendiOra + ON (((DAYOFWEEK(dt)+5) MOD 7)+1 = orarendiOra.nap) + AND orarendiOra.het=nap.orarendiHet + AND orarendiOra.tolDt<=dt AND orarendiOra.igDt>=dt + WHERE dt='%s' ORDER BY ora,teremId"; + $ret = db_query($q, array('fv' => 'getSzabadTermekByDt', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => array($dt)), $olr); + for ($i = 0; $i < count($ret); $i++) $foglaltTermek[$ret[$i]['ora']][] = $ret[$i]['teremId']; + foreach ($foglaltTermek as $ora => $fTermek) { + $szT = array_diff($teremIds, $fTermek); + // reindex + foreach($szT as $_key => $_value) + $szabadTermek[$ora][] = intval($_value); + } + return $szabadTermek; + + } + + function getSzabadTermekByDtInterval($tolDt, $igDt, $teremIds, $forras = 'orarendiOra') { + + if (!is_array($teremIds)) $teremIds = getTermek(array('result' => 'idonly', 'tipus'=>array('tanterem','szaktanterem','osztályterem','labor','gépterem','tornaterem','előadó'))); + + for ($dt = $tolDt; strtotime($dt) <= strtotime($igDt); $dt = date('Y-m-d', strtotime('+1 days', strtotime($dt)))) { + $szabadTermek[$dt] = getSzabadTermekByDt($dt, $teremIds, $forras); + } + + return $szabadTermek; + } + + function getFoglaltTeremekByOrarendiOra($SET = array('tanev' => __TANEV, 'dt' => null, 'het' => null, 'nap' => null, 'ora' => null)) { + + + $dt = readVariable($SET['dt'], 'datetime', null); + initTolIgDt($SET['tanev'], $dt, $dt); + + // Ha van dátum, de nincs hét, nap óra, akkor azt a dátum alapján kellene beállítani) + if (isset($SET['het']) && isset($SET['nap']) && isset($SET['ora']) && isset($dt) && isset($SET['tanev'])) { + + $tanevDb = tanevDbNev(__INTEZMENY, $SET['tanev']); + $q = "SELECT * FROM `%s`.orarendiOra LEFT JOIN `%s`.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) + WHERE tolDt <= '%s' AND '%s' <= igDt + AND het=%u AND nap=%u AND ora=%u + AND teremId IS NOT NULL + ORDER BY teremId"; + $v = array($tanevDb, $tanevDb, $dt, $dt, $SET['het'], $SET['nap'], $SET['ora']); + return db_query($q, array('fv' => 'getFoglaltTermekByOrarendiOra', 'modul' => 'naplo_intezmeny', 'keyfield' => 'teremId', 'result' => 'assoc', 'values' => $v)); + + } else { + $_SESSION['alert'][] = 'message:empty_field:het,nap,ora,tanev,dt'; + return false; + } + + + } + + function getTeremPreferencia($SET = array('telephelyId' => null,'teremPreferenciaId'=>null)) { + + if ($SET['teremPreferenciaId']!='') { + $W = 'WHERE teremPreferenciaId=%u'; + $v = array($SET['teremPreferenciaId']); + } else { + $W=''; + $v = array(); + } + $q = "SELECT * FROM teremPreferencia $W ORDER BY teremPreferenciaId"; + return db_query($q, array('fv' => 'getFoglaltTermekByOrarendiOra', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + + } + + // teremModifier + + function teremModositas($ADAT) { + + if (MAYOR_SOCIAL === true) $ADAT['tanev'] = __TANEV; + + $dt = readVariable($ADAT['dt'], 'datetime', null); + initTolIgDt($ADAT['tanev'], $dt, $dt); + $tanevDb = tanevDbNev(__INTEZMENY, $ADAT['tanev']); + + $return = false; + + if (is_array($ADAT['foglaltTermek'][ $ADAT['teremId'] ])) { + $return = $ADAT['foglaltTermek'][ $ADAT['teremId'] ]['tanarId']; + // A foglalt terem felszabadítása + $q = "UPDATE `%s`.orarendiOra SET teremId=NULL WHERE tolDt<='%s' AND ('%s'<=igDt OR igDt IS NULL) AND het=%u AND nap=%u AND ora=%u AND teremId=%u"; + $v = array($tanevDb, $dt, $dt, $ADAT['het'], $ADAT['nap'], $ADAT['ora'], $ADAT['teremId']); + db_query($q, array('fv' => 'teremModositas/foglalt terem felszabadítása', 'modul' => 'naplo', 'values' => $v)); + } + // teremhozzárendelés módosítása + if ($ADAT['teremId']>0) { + $q = "UPDATE `%s`.orarendiOra SET teremId=%u WHERE tolDt <= '%s' AND ('%s' <= igDt OR igDt IS NULL) AND het=%u AND nap=%u AND ora=%u AND tanarId=%u"; + $v = array($tanevDb, $ADAT['teremId'], $dt, $dt, $ADAT['het'], $ADAT['nap'], $ADAT['ora'], $ADAT['tanarId']); + } else { + $q = "UPDATE `%s`.orarendiOra SET teremId=NULL WHERE tolDt <= '%s' AND ('%s' <= igDt OR igDt IS NULL) AND het=%u AND nap=%u AND ora=%u AND tanarId=%u AND teremId IS NOT NULL"; + $v = array($tanevDb, $dt, $dt, $ADAT['het'], $ADAT['nap'], $ADAT['ora'], $ADAT['tanarId']); + } + db_query($q, array('debug'=>false,'fv' => 'teremModositas/foglalt terem felszabadítása', 'modul' => 'naplo', 'values' => $v)); + + if (MAYOR_SOCIAL === true && $ADAT['oraId']>0) { + $q = "UPDATE ora SET teremId = NULL WHERE ora=%u AND oraId=%u"; + $v = array($ADAT['ora'], $ADAT['oraId']); + db_query($q, array('fv' => 'teremModositas/foglalt terem felszabadítása', 'modul' => 'naplo', 'values' => $v)); + } + + return $return; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/verseny.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/verseny.php new file mode 100644 index 00000000..29700181 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/verseny.php @@ -0,0 +1,20 @@ +'naplo_intezmeny')); + + } + + function ujVerseny($ADAT) { + + + $q = "INSERT INTO verseny (targyId,versenyNev) VALUES (%u,'%s')"; + $v = array($ADAT['targyId'],$ADAT['versenyNev']); + + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/vizsga.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/vizsga.php new file mode 100644 index 00000000..1154d9b4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/vizsga.php @@ -0,0 +1,41 @@ + 'naplo_intezmeny', 'fv' => 'getVizsgak', 'result' => 'indexed', 'values' => $v) + ); + + return $ret; + + } + + function getVizsgaAdatById($vizsgaId) { + + $q = "SELECT *, vizsga.evfolyam AS evfolyam, vizsga.evfolyamJel AS evfolyamJel FROM vizsga + LEFT JOIN zaradek USING (zaradekId,diakId) + LEFT JOIN zaroJegy USING (zaroJegyId,diakId,targyId,felev) + WHERE vizsgaId=%u"; + $v = array($vizsgaId); + return db_query($q, array( + 'modul' => 'naplo_intezmeny', 'fv' => 'getVizsgaAdatById', 'result' => 'record', 'values' => $v) + ); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/zaradek.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/zaradek.php new file mode 100644 index 00000000..edc432b4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/zaradek.php @@ -0,0 +1,543 @@ + mire...) + * zaradekId - a lecserélendő záradék (optional) + * diakId, dt, zaradekIndex (require) + **/ + + global $Zaradek; + + $lr = ($olr=='') ? db_connect('naplo_intezmeny') : $olr; + if (!is_array($ADAT['csere'])) $ADAT['csere'] = array(); + + if (isset($ADAT['zaradekId'])) { + $q = "UPDATE zaradek SET diakId=%u,dt='%s',sorszam='%s',dokumentum='%s',szoveg='%s',zaradekIndex=%u WHERE zaradekId=%u"; + $v = array( + $ADAT['diakId'], $ADAT['dt'], $Zaradek[$ADAT['zaradekIndex']]['sorszam'], + str_replace(', ', ',', $Zaradek[$ADAT['zaradekIndex']]['dokumentum']), + str_replace(array_keys($ADAT['csere']), array_values($ADAT['csere']), $Zaradek[$ADAT['zaradekIndex']]['szoveg']), + $ADAT['zaradekIndex'], $ADAT['zaradekId'] + ); + $ret = db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'zaradekRogzites', 'values' => $v), $lr); + } else { + $q = "INSERT INTO zaradek (diakId, dt, sorszam, dokumentum, szoveg, zaradekIndex,iktatoszam) VALUES + (%u, '%s', '%s', '%s', '%s', %u,'%s')"; + $v = array( + $ADAT['diakId'], $ADAT['dt'], $Zaradek[$ADAT['zaradekIndex']]['sorszam'], + str_replace(', ', ',', $Zaradek[$ADAT['zaradekIndex']]['dokumentum']), + str_replace(array_keys($ADAT['csere']), array_values($ADAT['csere']), $Zaradek[$ADAT['zaradekIndex']]['szoveg']), + $ADAT['zaradekIndex'], $ADAT['iktatoszam'] + ); + $ret = db_query($q, array('modul' => 'naplo_intezmeny', 'fv' => 'zaradekRogzites', 'result' => 'insert', 'values' => $v), $lr); + } + + if ($olr=='') db_close($lr); + return $ret; + } + + function getZaradekok() { + global $Zaradek; + return $Zaradek; + } + + function getDiakZaradekok($diakId, $SET = array('tolDt' => null, 'igDt' => null, 'dokumentum' => null, 'tipus' => null, 'result' => 'indexed', 'keyfield' => null)) { + + global $Zaradek, $ZaradekIndex; + + $dokumentum = readVariable($SET['dokumentum'], 'enum', null, array('beírási napló','osztálynapló','törzslap','bizonyítvány')); + $tolDt = readVariable($SET['tolDt'], 'datetime', '1940-01-01'); + $igDt = readVariable($SET['igDt'], 'datetime', '2050-01-01'); + $tipus = readVariable($SET['tipus'], 'enum', null, array_keys($ZaradekIndex)); + if ($SET['result']=='') $SET['result'] = 'indexed'; + + $q = "SELECT zaradekId,diakId,dt,sorszam,dokumentum,IF(iktatoszam!='',CONCAT(szoveg,' (',iktatoszam,')'),szoveg) AS szoveg,zaradekIndex,iktatoszam FROM zaradek WHERE diakId=%u AND '%s' <= dt AND dt <= '%s'"; + $v = array($diakId, $tolDt, $igDt); + if (isset($dokumentum)) { + $q .= " AND dokumentum LIKE '%%%s%%'"; + $v[] = $dokumentum; + } + if (isset($tipus)) { + $q .= " AND zaradekIndex IN (".implode(',',array_values($ZaradekIndex[$tipus])).")"; + } + $q .= " ORDER BY dt,zaradekId,sorszam"; + return db_query($q, array( + 'modul' => 'naplo_intezmeny', 'fv' => 'getDiakZaradekok', 'result' => $SET['result'], 'keyfield' => $SET['keyfield'], 'values' => $v) + ); + + } + + function getZaradekokByDiakIds($diakIds, $SET = array('tolDt' => null, 'igDt' => null, 'dokumentum' => null, 'tipus' => null, 'result' => 'indexed', 'keyfield' => null)) { + + global $Zaradek, $ZaradekIndex; + + if (!is_array($diakIds) || count($diakIds) < 1) return false; + + $dokumentum = readVariable($SET['dokumentum'], 'enum', null, array('beírási napló','osztálynapló','törzslap','bizonyítvány')); + $tolDt = readVariable($SET['tolDt'], 'datetime', '1940-01-01'); + $igDt = readVariable($SET['igDt'], 'datetime', '2050-01-01'); + $tipus = readVariable($SET['tipus'], 'enum', null, array_keys($ZaradekIndex)); + if ($SET['result']=='') { $SET['result'] = 'assoc'; $SET['keyfield'] = 'diakId'; } + + $q = "SELECT * FROM zaradek WHERE diakId IN (".implode(',', array_fill(0, count($diakIds), '%u')).") AND '%s' <= dt AND dt <= '%s'"; + $v = $diakIds; + $v[] = $tolDt; $v[] = $igDt; + if (isset($dokumentum)) { + $q .= " AND dokumentum LIKE '%%%s%%'"; + $v[] = $dokumentum; + } + if (isset($tipus)) { + $q .= " AND zaradekIndex IN (".implode(',',array_values($ZaradekIndex[$tipus])).")"; + } + $q .= " ORDER BY dt,sorszam,zaradekId"; + return db_query($q, array( + 'modul' => 'naplo_intezmeny', 'fv' => 'getDiakZaradekok', 'result' => $SET['result'], 'keyfield' => $SET['keyfield'], 'values' => $v) + ); + + } + + function getZaradekokByIndexes($zaradekIndexes) { + + global $Zaradek; + + $ret = array(); + if (is_array($zaradekIndexes)) foreach ($zaradekIndexes as $key => $zaradekIndex) { + $ret[$zaradekIndex] = $Zaradek[$zaradekIndex]; + } + return $ret; + + } + + function getZaradekokByTipus($tipus) { + /** + * A tipus paraméter vesszővel elválasztva több típust is tartalmazhat. + **/ + global $ZaradekIndex; + + foreach (explode(',', $tipus) as $idx => $_tipus) { + foreach ($ZaradekIndex[trim($_tipus)] as $key => $zIndex) $zaradekIndexes[] = $zIndex; + } + return getZaradekokByIndexes($zaradekIndexes); + + } + + function zaradekTorles($zaradekId) { + $q = "DELETE FROM zaradek WHERE zaradekId=%u"; + return db_query($q, array('fv'=>'zaradekTorles','modul'=>'naplo_intezmeny','values'=>array($zaradekId))); + } + +if (__TANEV < 2013) { + +$Zaradek = array( +1 => array('sorszam' => '1.', 'szoveg' => 'Felvéve a(z) %iskola címe% iskolába.', 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +2 => array('sorszam' => '1.', 'szoveg' => 'Átvéve a(z) %iskola címe% iskolába.', 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +3 => array('sorszam' => '1.', 'szoveg' => 'A(z) %határozat száma% számú határozattal áthelyezve a(z) %iskola címe% iskolába.', 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +4 => array('sorszam' => '1/A', 'szoveg' => 'Az első évfolyam követelményeit nem teljesítette, munkája előkészítőnek minősül, tanulmányait az első évfolyamon folytathatja.', 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +5 => array('sorszam' => '2.', 'szoveg' => 'A %fordítás száma% számú fordítással hitelesített bizonyítvány alapján tanulmányait a(z) %évfolyam betűvel% évfolyamon folytatja.', 'dokumentum' => 'beírási napló, törzslap'), +6 => array('sorszam' => '3.', 'szoveg' => 'Felvette a(z) %iskola címe% iskola.', 'dokumentum' => 'beírási napló, törzslap, osztálynapló'), +7 => array('sorszam' => '4.', 'szoveg' => 'Tanulmányait évfolyamismétléssel kezdheti meg, illetve osztályozó vizsga letételével folytathatja.', 'dokumentum' => 'beírási napló, törzslap, osztálynapló'), +8 => array('sorszam' => '4/A', 'szoveg' => '%Tantárgy% tantárgyból tanulmányait egyéni továbbhaladás szerint végzi.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +9 => array('sorszam' => '4/B', 'szoveg' => 'Mentesítve %tantárgy% tantárgyból az értékelés és a minősítés alól.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +10 => array('sorszam' => '4/C', 'szoveg' => '%Tantárgy% tantárgy %évfolyamok% évfolyamainak követelményeit egy tanévben teljesítette a következők szerint: %jegyek%', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +11 => array('sorszam' => '5.', 'szoveg' => 'Egyes tantárgyak tanórai látogatása alól az %tanév jele% tanévben felmentve %felmentés oka% miatt.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány)'), +12 => array('sorszam' => '5.', 'szoveg' => 'Egyes tantárgyak tanórai látogatása alól az %tanév jele% tanévben felmentve %felmentés oka% miatt. Osztályozó vizsgát köteles tenni', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +13 => array('sorszam' => '6.', 'szoveg' => 'Tanulmányait a szülő kérésére (szakértői vélemény alapján) magántanulóként folytatja.', 'dokumentum' => 'osztálynapló, törzslap'), +14 => array('sorszam' => '7.', 'szoveg' => 'Mentesítve a(z) %tantárgyak neve% tantárgy tanulása alól.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +15 => array('sorszam' => '8.', 'szoveg' => 'Tanulmányi idejének megrövidítése miatt a(z) %évfolyam% évfolyam tantárgyból osztályozó vizsgát köteles tenni.', 'dokumentum' => 'osztálynapló, törzslap'), +16 => array('sorszam' => '9.', 'szoveg' => 'A(z) évfolyamra megállapított tantervi követelményeket a tanulmányi idő megrövidítésével teljesítette.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +17 => array('sorszam' => '10.', 'szoveg' => 'A(z) %tantárgy% tantárgy %ezen óráinak% óráinak látogatása alól felmentve %tólDt%-tól %igDt%-ig.', 'dokumentum' => 'osztálynapló'), +18 => array('sorszam' => '10.', 'szoveg' => 'A(z) %tantárgy% tantárgy %ezen óráinak% óráinak látogatása alól felmentve %tólDt%-tól %igDt%-ig. Osztályozó vizsgát köteles tenni.', 'dokumentum' => 'osztálynapló'), +19 => array('sorszam' => '11.', 'szoveg' => 'Mulasztása miatt nem osztályozható, a nevelőtestület határozata értelmében osztályozó vizsgát tehet.', 'dokumentum' => 'osztálynapló, törzslap'), +20 => array('sorszam' => '12.', 'szoveg' => 'A nevelőtestület határozata: a(z) %évfolyam betűvel% évfolyamba léphet.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +21 => array('sorszam' => '12.', 'szoveg' => 'A nevelőtestület határozata: iskolai tanulmányait befejezte, tanulmányait %évfolyam% évfolyamon folytathatja.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +22 => array('sorszam' => '13.', 'szoveg' => 'A tanuló az %évfolyam% évfolyam követelményeit egy tanítási évnél hosszabb ideig, %hónap szám% hónap alatt teljesítette.', 'dokumentum' => 'osztálynapló, törzslap'), +23 => array('sorszam' => '14.', 'szoveg' => 'A(z) %tantárgy% tantárgyból javítóvizsgát tehet.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +24 => array('sorszam' => '14.', 'szoveg' => 'A javítóvizsgán %tantárgy% tantárgyból %osztályzat% osztályzatot kapott, %évfolyam% évfolyamba léphet.', 'dokumentum' => 'törzslap, bizonyítvány'), +25 => array('sorszam' => '15.', 'szoveg' => 'A(z) %évfolyam% évfolyam követelményeit nem teljesítette, az évfolyamot megismételheti.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +26 => array('sorszam' => '15/A', 'szoveg' => 'Az %évfolyam% évfolyamot az 1993. évi LXXIX. törvény 72. §-ának (4) bekezdésében foglaltak alapján megismételte.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +27 => array('sorszam' => '16.', 'szoveg' => 'A javítóvizsgán %tantárgy% tantárgyból elégtelen osztályzatot kapott. Évfolyamot ismételni köteles.', 'dokumentum' => 'törzslap, bizonyítvány'), +28 => array('sorszam' => '17.', 'szoveg' => 'A(z) %tantárgy% tantárgyból %dátum%-án osztályozó vizsgát tett.', 'dokumentum' => 'osztálynapló, törzslap'), +29 => array('sorszam' => '18.', 'szoveg' => 'Osztályozó vizsgát tett.', 'dokumentum' => 'törzslap, bizonyítvány'), +30 => array('sorszam' => '19.', 'szoveg' => 'A(z) %tantárgy% tantárgy alól %felmentés oka% okból felmentve.', 'dokumentum' => 'törzslap, bizonyítvány'), +31 => array('sorszam' => '20.', 'szoveg' => 'A(z) %tanóra% tanóra alól %felmentés oka% okból felmentve.', 'dokumentum' => 'törzslap, bizonyítvány'), +32 => array('sorszam' => '21.', 'szoveg' => 'Az osztályozóvizsga letételére %igDt%-ig halasztást kapott.', 'dokumentum' => 'törzslap, bizonyítvány'), +33 => array('sorszam' => '21.', 'szoveg' => 'Az beszámoltatóvizsga letételére %igDt%-ig halasztást kapott.', 'dokumentum' => 'törzslap, bizonyítvány'), +34 => array('sorszam' => '21.', 'szoveg' => 'Az különbözetivizsga letételére %igDt%-ig halasztást kapott.', 'dokumentum' => 'törzslap, bizonyítvány'), +35 => array('sorszam' => '21.', 'szoveg' => 'Az javítóvizsga letételére %igDt%-ig halasztást kapott.', 'dokumentum' => 'törzslap, bizonyítvány'), +36 => array('sorszam' => '22.', 'szoveg' => 'Az osztályozó vizsgát engedéllyel a(z) %iskola% iskolában független vizsgabizottság előtt tette le.', 'dokumentum' => 'törzslap, bizonyítvány'), +37 => array('sorszam' => '22.', 'szoveg' => 'Az javítóvizsgát engedéllyel a(z) %iskola% iskolában független vizsgabizottság előtt tette le.', 'dokumentum' => 'törzslap, bizonyítvány'), +38 => array('sorszam' => '23.', 'szoveg' => 'A(z) %szakképesítés% szakképesítés évfolyamán folytatja tanulmányait.', 'dokumentum' => 'törzslap, bizonyítvány, osztálynapló'), +39 => array('sorszam' => '24.', 'szoveg' => 'Tanulmányait %ok% okból megszakította, a tanulói jogviszonya %igDt%-ig szünetel.', 'dokumentum' => 'beírási napló, törzslap'), +40 => array('sorszam' => '25.', 'szoveg' => 'A tanuló jogviszonya kimaradással megszűnt, a létszámból törölve.', 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +41 => array('sorszam' => '25.', 'szoveg' => 'A tanuló jogviszonya %igazolatlan órák száma% óra igazolatlan mulasztás miatt megszűnt, a létszámból törölve.', 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +42 => array('sorszam' => '25.', 'szoveg' => 'A tanuló jogviszonya egészségügyi alkalmasság miatt megszűnt, a létszámból törölve.', 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +43 => array('sorszam' => '25.', 'szoveg' => 'A tanuló jogviszonya térítési díj fizetési hátralék miatt megszűnt, a létszámból törölve.', 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +44 => array('sorszam' => '25.', 'szoveg' => 'A tanuló jogviszonya tandíj fizetési hátralék miatt megszűnt, a létszámból törölve.', 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +45 => array('sorszam' => '25.', 'szoveg' => 'A tanuló jogviszonya %iskola% iskolába való átvétel miatt megszűnt, a létszámból törölve.', 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +46 => array('sorszam' => '26.', 'szoveg' => '%Fegyelmező intézkedés% fegyelmező intézkedésben részesült.', 'dokumentum' => 'osztálynapló'), +47 => array('sorszam' => '27.', 'szoveg' => '%Fegyelmi büntetés% fegyelmi büntetésben részesült. A büntetés végrehajtása %igDt%-ig felfüggesztve.', 'dokumentum' => ''), +48 => array('sorszam' => '28.', 'szoveg' => 'Tanköteles tanuló igazolatlan mulasztása esetén a tanuló %igazolatlan órák száma% óra igazolatlan mulasztása miatt a szülőt felszólítottam.', 'dokumentum' => 'osztálynapló'), +49 => array('sorszam' => '28.', 'szoveg' => 'Tanköteles tanuló igazolatlan mulasztása esetén a tanuló ismételt %igazolatlan órák száma% óra igazolatlan mulasztása miatt a szülő ellen szabálysértési eljárást kezdeményeztem.', 'dokumentum' => 'beírási napló, törzslap, osztálynapló'), +50 => array('sorszam' => '29.', 'szoveg' => 'Tankötelezettség megszűnt.', 'dokumentum' => 'beírási napló'), +51 => array('sorszam' => '30.', 'szoveg' => 'A %szó% szót %helyesbítés%-ra/re helyesbítettem.', 'dokumentum' => 'törzslap, bizonyítvány'), +52 => array('sorszam' => '30.', 'szoveg' => 'A %szavak% szavakat %helyesbítés%-ra/re helyesbítettem.', 'dokumentum' => 'törzslap, bizonyítvány'), +53 => array('sorszam' => '30.', 'szoveg' => 'A %osztályzat% osztályzatot %helyesbítés%-ra/re helyesbítettem.', 'dokumentum' => 'törzslap, bizonyítvány'), +54 => array('sorszam' => '30.', 'szoveg' => 'A %osztályzatok% osztályzatokat %helyesbítés%-ra/re helyesbítettem.', 'dokumentum' => 'törzslap, bizonyítvány'), +55 => array('sorszam' => '31.', 'szoveg' => 'A bizonyítvány %lap% lapját téves bejegyzés miatt érvénytelenítettem.', 'dokumentum' => 'bizonyítvány'), +56 => array('sorszam' => '32.', 'szoveg' => 'Ezt a póttörzslapot a(z) %ok% következtében elvesztett (megsemmisült) eredeti helyett %adatforrás% adatai (adatok) alapján állítottam ki.', 'dokumentum' => 'Pót. törzslap'), +57 => array('sorszam' => '33.', 'szoveg' => 'Ezt a bizonyítványmásodlatot az elveszett (megsemmisült) eredeti helyett %adatforrás% adatai (adatok) alapján állítottam ki.', 'dokumentum' => 'Pót. törzslap'), +58 => array('sorszam' => '33/A', 'szoveg' => 'A bizonyítványt %kérelmező% kérelmére a %bizonyítványszám% számú bizonyítvány alapján, téves bejegyzés miatt állítottam ki.', 'dokumentum' => 'törzslap, bizonyítvány'), +59 => array('sorszam' => '34.', 'szoveg' => 'Pótbizonyítvány. Igazolom, hogy név %Név%, anyja neve %Anyja neve% a(z) %iskola% iskola %szak% szak (szakmai, speciális osztály, két tanítási nyelvű osztály, tagozat) %évfolyam% évfolyamát a(z) %tanév jele% tanévben eredményesen elvégezte.', 'dokumentum' => 'Pót. bizonyítvány'), +60 => array('sorszam' => '35.', 'szoveg' => 'Az iskola a tanulmányi eredmények bejegyzéséhez, a kiemelkedő tanulmányi eredmények elismeréséhez, a felvételi vizsga eredményeinek bejegyzéséhez %vizsga% vizsga eredményének befejezéséhez vagy egyéb, a záradékok között nem szereplő, a tanulóval kapcsolatos közlés dokumentálásához a záradékokat megfelelően alkalmazhatja, illetve megfelelően záradékot alakíthat ki.', 'dokumentum' => ''), +61 => array('sorszam' => '36.', 'szoveg' => 'Érettségi vizsgát tehet.', 'dokumentum' => 'törzslap, bizonyítvány'), +62 => array('sorszam' => '37.', 'szoveg' => 'Gyakorlati képzésről mulasztását %tólDt%-tól %igDt%-ig pótolhatja.', 'dokumentum' => 'törzslap, bizonyítvány, osztálynapló'), +63 => array('sorszam' => '38.', 'szoveg' => 'Beírtam a %iskola% iskola első osztályába.', 'dokumentum' => ''), +64 => array('sorszam' => '39.', 'szoveg' => 'Ezt a haladási naplót %tanítási napok száma% tanítási nappal lezártam.', 'dokumentum' => 'osztálynapló'), +65 => array('sorszam' => '39.', 'szoveg' => 'Ezt a haladási naplót %tanítási órák száma% tanítási órával lezártam.', 'dokumentum' => 'osztálynapló'), +66 => array('sorszam' => '40.', 'szoveg' => 'Ezt az osztályozó naplót %tanulók száma% azaz %tanulók száma betűvel% osztályozott tanulóval lezártam.', 'dokumentum' => 'osztálynapló'), + +67 => array('sorszam' => '1/B', 'szoveg' => 'Felvéve a(z) %iskola címe% %osztály% osztályába.', 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +68 => array('sorszam' => '17/A', 'szoveg' => 'A(z) %tantárgy% tantárgyból %dátum%-án beszámoltatóvizsgát tett.', 'dokumentum' => 'osztálynapló, törzslap'), +69 => array('sorszam' => '17/B', 'szoveg' => 'A(z) %tantárgy% tantárgyból %dátum%-án különbözetivizsgát tett.', 'dokumentum' => 'osztálynapló, törzslap'), +70 => array('sorszam' => '12/A', 'szoveg' => 'A nevelőtestület határozata: iskolai tanulmányait befejezte.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +71 => array('sorszam' => '35/D', 'szoveg' => 'A %iktatószám% alapján tanulmányait a %osztály% osztályban folytatja.', 'dokumentum' => 'beírási napló, törzslap'), +72 => array('sorszam' => '16/A', 'szoveg' => 'Az osztályozó vizsgán a %tantárgy% tantárgy követelményeit nem teljesítette - %osztályzat%.', 'dokumentum' => 'törzslap, bizonyítvány'), +73 => array('sorszam' => '16/B', 'szoveg' => 'A beszámoltatóvizsgán a %tantárgy% tantárgy követelményeit nem teljesítette - %osztályzat%.', 'dokumentum' => 'törzslap, bizonyítvány'), +74 => array('sorszam' => '16/C', 'szoveg' => 'A különbözetivizsgán a %tantárgy% tantárgy követelményeit nem teljesítette - %osztályzat%.', 'dokumentum' => 'törzslap, bizonyítvány'), +75 => array('sorszam' => '16/D', 'szoveg' => 'A javítóvizsgán a %tantárgy% tantárgy követelményeit nem teljesítette - %osztályzat%. Évfolyamot ismételni köteles.', 'dokumentum' => 'törzslap, bizonyítvány'), + +100 => array('sorszam' => '35/A', 'szoveg' => '%Egyedi osztálynapló záradék%', 'dokumentum' => 'osztálynapló'), +101 => array('sorszam' => '35/B', 'szoveg' => '%Egyedi törzslap záradék%', 'dokumentum' => 'törzslap'), +102 => array('sorszam' => '35/C', 'szoveg' => '%Egyedi bizonyítvány záradék%', 'dokumentum' => 'bizonyítvány'), +103 => array('sorszam' => '35/F', 'szoveg' => 'A(z) %zaradekId% nyilvántartási számú záradékban rögzített felmentést %dt% napon hatályon kívül helyeztem. ', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +104 => array('sorszam' => '4/C', 'szoveg' => '%miatt% miatt mentesítve a(z) %mi% értékelés(e) és a minősítés(e) alól.', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +105 => array('sorszam' => '35/E', 'szoveg' => 'A(z) %tankorDiakFelmentesId% nyilvántartási számú felmentést %dt% napon hatályon kívül helyeztem. ', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +106 => array('sorszam' => '17/C', 'szoveg' => 'A(z) %tantárgy% tantárgyból a(z) %évfolyam% évfolyam anyagából %dátum% napon %osztályzat% eredménnyel osztályozó vizsgát tett.', 'dokumentum' => 'osztálynapló, törzslap'), + +107 => array('sorszam' => '25/A', 'szoveg' => 'A tanuló jogviszonya haláleset miatt megszűnt, a létszámból törölve.', 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), + +); + +$ZaradekIndex = array( + 'konferencia' => array( + // továbbléphet + 'következő évfolyamba léphet' => 20, // %évfolyam betűvel% + 'tanulmányait befejezte' => 70, + // vizsgázhat + 'mulasztás miatt osztályozóvizsga' => 19, + 'javítóvizsgát tehet' => 23, // %tantárgy% + // évfolyamot ismételhet + 'előkészítőt végzett' => 4, + 'követelményeket nem teljesítette, évfolyamot ismételhet' => 25, // %évfolyam% + ), + 'jogviszony' => array( + 'megnyitás' => array( + 'felvétel' => 1, + 'felvétel osztályba' => 67, + 'átvétel' => 2, + 'áthelyezés' => 3 + ), + 'változás' => array( + 'magántanuló' => 13, + 'felfüggesztés' => 39 + ), + 'lezárás' => array( + 'kimaradás' => 40, + 'igazolatlan órák' => 41, + 'egészségügyi alkalmasság' => 42, + 'térítési díj hátralék' => 43, + 'tandíj hátralék' => 44, + 'átvétel' => 45, + 'haláleset' => 107, + 'tanulmányait folytathatja' => 21, + 'tanulmányait befejezte' => 70 + ) + ), + 'vizsga halasztás' => array( + 'osztályozó vizsga' => 32, + 'beszámoltatóvizsga' => 33, + 'különbözetivizsga' => 34, + 'javítóvizsga' => 35, + ), + 'vizsga' => array( + 'osztályozó vizsga' => 106, // 28 volt + 'osztályozó vizsga bukás' => 72, + 'beszámoltatóvizsga' => 68, + 'beszámoltatóvizsga bukás' => 73, + 'különbözetivizsga' => 69, + 'különbözetivizsga bukás' => 74, + 'javítóvizsga' => 24, + 'javítóvizsga bukás' => 27, + 'javítóvizsga nem teljesített' => 75, + ), + 'felmentés' => array( + 'értékelés alól' =>9, + 'értékelés és minősítés alól' => 104, + 'óra látogatása alól' => 17, + 'óra látogatása alól osztályozóvizsgával' => 18, + 'tárgy tanulása alól' => 14, + 'törlés' => 105 + ), + 'törzslap feljegyzés' => array( + 'egyedi törzslap záradék' => 101 + ) + +); + +} else { // 20/2012 EMMI rendelet + +$Zaradek = array( +1 => array('sorszam' => '1.', 'szoveg' => 'Felvéve a(z) %iskola címe% iskolába.', + 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +2 => array('sorszam' => '1.', 'szoveg' => 'Átvéve a(z) %iskola címe% iskolába.', + 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +3 => array('sorszam' => '1.', 'szoveg' => 'A(z) %határozat száma% számú határozattal áthelyezve a(z) %iskola címe% iskolába.', + 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +4 => array('sorszam' => '1/A', 'szoveg' => 'Az első évfolyam követelményeit nem teljesítette, munkája előkészítőnek minősül, tanulmányait az első évfolyamon folytathatja.', + 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +5 => array('sorszam' => '2.', 'szoveg' => 'A %fordítás száma% számú fordítással hitelesített bizonyítvány alapján tanulmányait a(z) %évfolyam betűvel% évfolyamon folytatja.', + 'dokumentum' => 'beírási napló, törzslap'), +6 => array('sorszam' => '3.', 'szoveg' => 'Felvette a(z) %iskola címe% iskola.', + 'dokumentum' => 'beírási napló, törzslap, osztálynapló'), +7 => array('sorszam' => '4.', 'szoveg' => 'Tanulmányait évfolyamismétléssel kezdheti meg, vagy osztályozó vizsga letételével folytathatja.', + 'dokumentum' => 'beírási napló, törzslap, osztálynapló'), +8 => array('sorszam' => '5.', 'szoveg' => '%Tantárgy% tantárgyból tanulmányait egyéni továbbhaladás szerint végzi.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +9 => array('sorszam' => '6.', 'szoveg' => 'Mentesítve %tantárgy% tantárgyból az értékelés és a minősítés alól.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +10 => array('sorszam' => '7.', 'szoveg' => '%Tantárgy% tantárgy %évfolyamok% évfolyamainak követelményeit egy tanévben teljesítette a következők szerint: %jegyek%', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +11 => array('sorszam' => '8.', 'szoveg' => 'Egyes tantárgyak tanórai látogatása alól az %tanév jele% tanévben felmentve %felmentés oka% miatt.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány)'), +12 => array('sorszam' => '8.', 'szoveg' => 'Egyes tantárgyak tanórai látogatása alól az %tanév jele% tanévben felmentve %felmentés oka% miatt. Osztályozó vizsgát köteles tenni', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +13 => array('sorszam' => '9.', 'szoveg' => 'Tanulmányait a szülő kérésére (szakértői vélemény alapján) magántanulóként folytatja.', + 'dokumentum' => 'osztálynapló, törzslap'), +14 => array('sorszam' => '10.', 'szoveg' => 'Mentesítve a(z) %tantárgyak neve% tantárgy tanulása alól.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +15 => array('sorszam' => '11.', 'szoveg' => 'Tanulmányi idejének megrövidítése miatt a(z) %évfolyam% évfolyam tantárgyaiból osztályozó vizsgát köteles tenni.', + 'dokumentum' => 'osztálynapló, törzslap'), +16 => array('sorszam' => '12.', 'szoveg' => 'A(z) %évfolyam% évfolyamra megállapított tantervi követelményeket a tanulmányi idő megrövidítésével teljesítette.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), // %evfolyam% paraméter nincs a rendeletben +17 => array('sorszam' => '13.', 'szoveg' => 'A(z) %tantárgy% tantárgy %ezen óráinak% óráinak látogatása alól felmentve %tólDt%-tól %igDt%-ig.', + 'dokumentum' => 'osztálynapló'), // %ezen óráinak% paraméter nincs a rendeletben +18 => array('sorszam' => '13.', 'szoveg' => 'A(z) %tantárgy% tantárgy %ezen óráinak% óráinak látogatása alól felmentve %tólDt%-tól %igDt%-ig. Osztályozó vizsgát köteles tenni.', + 'dokumentum' => 'osztálynapló'), // %ezen óráinak% paraméter nincs a rendeletben +19 => array('sorszam' => '14.', 'szoveg' => 'Mulasztása miatt nem osztályozható, a nevelőtestület határozata értelmében osztályozó vizsgát tehet.', + 'dokumentum' => 'osztálynapló, törzslap'), +20 => array('sorszam' => '15.', 'szoveg' => 'A nevelőtestület határozata: a(z) %évfolyam betűvel% évfolyamba léphet.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +21 => array('sorszam' => '15.', 'szoveg' => 'A nevelőtestület határozata: iskolai tanulmányait befejezte, tanulmányait %évfolyam% évfolyamon folytathatja.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), // csak "iskolai tanulmányait befejezte - nincs? +22 => array('sorszam' => '16.', 'szoveg' => 'A tanuló az %évfolyam% évfolyam követelményeit egy tanítási évnél hosszabb ideig, %hónap szám% hónap alatt teljesítette.', + 'dokumentum' => 'osztálynapló, törzslap'), +23 => array('sorszam' => '17.', 'szoveg' => 'A(z) %tantárgy% tantárgyból javítóvizsgát tehet.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +24 => array('sorszam' => '17.', 'szoveg' => 'A javítóvizsgán %tantárgy% tantárgyból %osztályzat% osztályzatot kapott, %évfolyam% évfolyamba léphet.', + 'dokumentum' => 'törzslap, bizonyítvány'), +25 => array('sorszam' => '18.', 'szoveg' => 'A(z) %évfolyam% évfolyam követelményeit nem teljesítette, az évfolyamot meg kell ismételnie.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +26 => array('sorszam' => '', 'szoveg' => '', 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +27 => array('sorszam' => '19', 'szoveg' => 'A javítóvizsgán %tantárgy% tantárgyból elégtelen osztályzatot kapott. Évfolyamot ismételni köteles.', + 'dokumentum' => 'törzslap, bizonyítvány'), +28 => array('sorszam' => '20.', 'szoveg' => 'A(z) %tantárgy% tantárgyból %dátum%-án osztályozó vizsgát tett.', + 'dokumentum' => 'osztálynapló, törzslap'), +29 => array('sorszam' => '21.', 'szoveg' => 'Osztályozó vizsgát tett.', + 'dokumentum' => 'törzslap, bizonyítvány'), +30 => array('sorszam' => '22.', 'szoveg' => 'A(z) %tantárgy% tantárgy alól %felmentés oka% okból felmentve.', + 'dokumentum' => 'törzslap, bizonyítvány'), +31 => array('sorszam' => '23.', 'szoveg' => 'A(z) %tanóra% tanóra alól %felmentés oka% okból felmentve.', + 'dokumentum' => 'törzslap, bizonyítvány'), +32 => array('sorszam' => '24.', 'szoveg' => 'Az osztályozóvizsga letételére %igDt%-ig halasztást kapott.', + 'dokumentum' => 'törzslap, bizonyítvány'), +33 => array('sorszam' => '24.', 'szoveg' => 'Az beszámoltatóvizsga letételére %igDt%-ig halasztást kapott.', + 'dokumentum' => 'törzslap, bizonyítvány'), +34 => array('sorszam' => '24.', 'szoveg' => 'Az különbözetivizsga letételére %igDt%-ig halasztást kapott.', + 'dokumentum' => 'törzslap, bizonyítvány'), +35 => array('sorszam' => '24.', 'szoveg' => 'Az javítóvizsga letételére %igDt%-ig halasztást kapott.', + 'dokumentum' => 'törzslap, bizonyítvány'), +36 => array('sorszam' => '25.', 'szoveg' => 'Az osztályozó vizsgát engedéllyel a(z) %iskola% iskolában független vizsgabizottság előtt tette le.', + 'dokumentum' => 'törzslap, bizonyítvány'), +37 => array('sorszam' => '25.', 'szoveg' => 'Az javítóvizsgát engedéllyel a(z) %iskola% iskolában független vizsgabizottság előtt tette le.', + 'dokumentum' => 'törzslap, bizonyítvány'), +38 => array('sorszam' => '26.', 'szoveg' => 'A(z) %szakképesítés% szakképesítés évfolyamán folytatja tanulmányait.', + 'dokumentum' => 'törzslap, bizonyítvány, osztálynapló'), +39 => array('sorszam' => '27.', 'szoveg' => 'Tanulmányait %ok% okból megszakította, a tanulói jogviszonya %igDt%-ig szünetel.', + 'dokumentum' => 'beírási napló, törzslap'), +40 => array('sorszam' => '28.', 'szoveg' => 'A tanuló jogviszonya kimaradással megszűnt, a létszámból törölve.', + 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +41 => array('sorszam' => '28.', 'szoveg' => 'A tanuló jogviszonya %igazolatlan órák száma% óra igazolatlan mulasztás miatt megszűnt, a létszámból törölve.', + 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +42 => array('sorszam' => '28.', 'szoveg' => 'A tanuló jogviszonya egészségügyi alkalmasság miatt megszűnt, a létszámból törölve.', + 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +43 => array('sorszam' => '28.', 'szoveg' => 'A tanuló jogviszonya térítési díj fizetési hátralék miatt megszűnt, a létszámból törölve.', + 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +44 => array('sorszam' => '28.', 'szoveg' => 'A tanuló jogviszonya tandíj fizetési hátralék miatt megszűnt, a létszámból törölve.', + 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +45 => array('sorszam' => '28.', 'szoveg' => 'A tanuló jogviszonya %iskola% iskolába való átvétel miatt megszűnt, a létszámból törölve.', + 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +46 => array('sorszam' => '29.', 'szoveg' => '%Fegyelmező intézkedés% fegyelmező intézkedésben részesült.', + 'dokumentum' => 'osztálynapló'), +47 => array('sorszam' => '30.', 'szoveg' => '%Fegyelmi büntetés% fegyelmi büntetésben részesült. A büntetés végrehajtása %igDt%-ig felfüggesztve.', + 'dokumentum' => 'törzslap'), +48 => array('sorszam' => '31.', 'szoveg' => 'A tanuló %igazolatlan órák száma% óra igazolatlan mulasztása miatt a szülőt felszólítottam.', + 'dokumentum' => 'osztálynapló'), // A "Tanköteles tanuló igazolatlan mulasztása esetén" szöveget magyarázatnak tekintettem +49 => array('sorszam' => '31.', 'szoveg' => 'A tanuló ismételt %igazolatlan órák száma% óra igazolatlan mulasztása miatt a szülő ellen szabálysértési eljárást kezdeményeztem.', + 'dokumentum' => 'beírási napló, törzslap, osztálynapló'), // A "Tanköteles tanuló igazolatlan mulasztása esetén" szöveget magyarázatnak tekintettem +50 => array('sorszam' => '32.', 'szoveg' => 'Tankötelezettség megszűnt.', 'dokumentum' => 'beírási napló'), +51 => array('sorszam' => '33.', 'szoveg' => 'A %szó% szót %helyesbítés%-ra/re helyesbítettem.', + 'dokumentum' => 'törzslap, bizonyítvány'), +52 => array('sorszam' => '33.', 'szoveg' => 'A %szavak% szavakat %helyesbítés%-ra/re helyesbítettem.', + 'dokumentum' => 'törzslap, bizonyítvány'), +53 => array('sorszam' => '33.', 'szoveg' => 'A %osztályzat% osztályzatot %helyesbítés%-ra/re helyesbítettem.', + 'dokumentum' => 'törzslap, bizonyítvány'), +54 => array('sorszam' => '33.', 'szoveg' => 'A %osztályzatok% osztályzatokat %helyesbítés%-ra/re helyesbítettem.', + 'dokumentum' => 'törzslap, bizonyítvány'), +55 => array('sorszam' => '34.', 'szoveg' => 'A bizonyítvány %lap% lapját téves bejegyzés miatt érvénytelenítettem.', + 'dokumentum' => 'bizonyítvány'), +56 => array('sorszam' => '35.', 'szoveg' => 'Ezt a póttörzslapot a(z) %ok% következtében elvesztett (megsemmisült) eredeti helyett %adatforrás% adatai (adatok) alapján állítottam ki.', + 'dokumentum' => 'Pót. törzslap'), +57 => array('sorszam' => '36.', 'szoveg' => 'Ezt a bizonyítványmásodlatot az elveszett (megsemmisült) eredeti helyett %adatforrás% adatai (adatok) alapján állítottam ki.', + 'dokumentum' => 'Pót. törzslap'), +58 => array('sorszam' => '37.', 'szoveg' => 'A bizonyítványt %kérelmező% kérelmére a %bizonyítványszám% számú bizonyítvány alapján, téves bejegyzés miatt állítottam ki.', + 'dokumentum' => 'törzslap, bizonyítvány'), +59 => array('sorszam' => '38.', 'szoveg' => 'Pótbizonyítvány. Igazolom, hogy név %Név%, anyja neve %Anyja neve% a(z) %iskola% iskola %szak% szak (szakmai, speciális osztály, két tanítási nyelvű osztály, tagozat) %évfolyam% évfolyamát a(z) %tanév jele% tanévben eredményesen elvégezte.', + 'dokumentum' => 'Pót. bizonyítvány'), +60 => array('sorszam' => '39.', 'szoveg' => 'Az iskola a tanulmányi eredmények bejegyzéséhez, a kiemelkedő tanulmányi eredmények elismeréséhez, a felvételi vizsga eredményeinek bejegyzéséhez %vizsga% vizsga eredményének befejezéséhez vagy egyéb, a záradékok között nem szereplő, a tanulóval kapcsolatos közlés dokumentálásához a záradékokat megfelelően alkalmazhatja, illetve megfelelően záradékot alakíthat ki.', + 'dokumentum' => ''), +61 => array('sorszam' => '40.', 'szoveg' => 'Érettségi vizsgát tehet.', + 'dokumentum' => 'törzslap, bizonyítvány'), +62 => array('sorszam' => '41.', 'szoveg' => 'Gyakorlati képzésről mulasztását %tólDt%-tól %igDt%-ig pótolhatja.', + 'dokumentum' => 'törzslap, bizonyítvány, osztálynapló'), +63 => array('sorszam' => '42.', 'szoveg' => 'Beírtam a %iskola% iskola első osztályába.', + 'dokumentum' => ''), +64 => array('sorszam' => '43.', 'szoveg' => 'Ezt a naplót %tanítási napok száma% tanítási nappal lezártam.', + 'dokumentum' => 'osztálynapló'), +65 => array('sorszam' => '43.', 'szoveg' => 'Ezt a naplót %tanítási órák száma% tanítási órával lezártam.', + 'dokumentum' => 'osztálynapló'), +66 => array('sorszam' => '44.', 'szoveg' => 'Ezt az osztályozó naplót %tanulók száma% azaz %tanulók száma betűvel% osztályozott tanulóval lezártam.', + 'dokumentum' => 'osztálynapló'), +67 => array('sorszam' => '45.', 'szoveg' => 'Ezt az osztályozó naplót %tanulók száma% azaz %tanulók száma betűvel% osztályozott tanulóval lezártam.', + 'dokumentum' => 'osztálynapló'), +68 => array('sorszam' => '46.', 'szoveg' => 'Igazolom, hogy a tanuló a %tanév jele% tanévig %elvégzett órák száma% óra közösségi szolgálatot teljesített.', + 'dokumentum' => 'bizonyítvány'), +69 => array('sorszam' => '47.', 'szoveg' => 'A tanuló teljesítette az érettségi bizonyítvány kiadásához szükséges közösségi szolgálatot', + 'dokumentum' => 'törzslap'), +70 => array('sorszam' => '48.', 'szoveg' => '%nemzetiség megnevezése% kiegészítő nemzetiségi tanulmányait a nyolcadik/tizenkettedik évfolyamon befejezte', + 'dokumentum' => 'törzslap, bizonyítvány'), + + + + +100 => array('sorszam' => '1/A', 'szoveg' => 'Felvéve a(z) %iskola címe% %osztály% osztályába.', + 'dokumentum' => 'beírási napló, osztálynapló, törzslap, bizonyítvány'), +101 => array('sorszam' => '6/B', 'szoveg' => '%miatt% miatt mentesítve a(z) %mi% értékelés(e) és a minősítés(e) alól.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +102 => array('sorszam' => '15/A', 'szoveg' => 'A nevelőtestület határozata: iskolai tanulmányait befejezte.', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +103 => array('sorszam' => '19/A', 'szoveg' => 'Az osztályozó vizsgán a %tantárgy% tantárgy követelményeit nem teljesítette - %osztályzat%.', + 'dokumentum' => 'törzslap, bizonyítvány'), +104 => array('sorszam' => '19/B', 'szoveg' => 'A beszámoltatóvizsgán a %tantárgy% tantárgy követelményeit nem teljesítette - %osztályzat%.', + 'dokumentum' => 'törzslap, bizonyítvány'), +105 => array('sorszam' => '19/C', 'szoveg' => 'A különbözetivizsgán a %tantárgy% tantárgy követelményeit nem teljesítette - %osztályzat%.', + 'dokumentum' => 'törzslap, bizonyítvány'), +106 => array('sorszam' => '19/D', 'szoveg' => 'A javítóvizsgán a %tantárgy% tantárgy követelményeit nem teljesítette - %osztályzat%. Évfolyamot ismételni köteles.', + 'dokumentum' => 'törzslap, bizonyítvány'), // Ez nem kell, mert az eredeti 19-es épp erről az esetről szól - nem? +107 => array('sorszam' => '20/A', 'szoveg' => 'A(z) %tantárgy% tantárgyból %dátum%-án beszámoltatóvizsgát tett.', + 'dokumentum' => 'osztálynapló, törzslap'), +108 => array('sorszam' => '20/B', 'szoveg' => 'A(z) %tantárgy% tantárgyból %dátum%-án különbözetivizsgát tett.', + 'dokumentum' => 'osztálynapló, törzslap'), +109 => array('sorszam' => '20/C', 'szoveg' => 'A(z) %tantárgy% tantárgyból a(z) %évfolyam% évfolyam anyagából %dátum% napon %osztályzat% eredménnyel osztályozó vizsgát tett.', + 'dokumentum' => 'osztálynapló, törzslap'), +110 => array('sorszam' => '28/A', 'szoveg' => 'A tanuló jogviszonya haláleset miatt megszűnt, a létszámból törölve.', + 'dokumentum' => 'beírási napló, törzslap, bizonyítvány, osztálynapló'), +111 => array('sorszam' => '39/A', 'szoveg' => '%Egyedi osztálynapló záradék%', + 'dokumentum' => 'osztálynapló'), +112 => array('sorszam' => '39/B', 'szoveg' => '%Egyedi törzslap záradék%', + 'dokumentum' => 'törzslap'), +113 => array('sorszam' => '39/C', 'szoveg' => '%Egyedi bizonyítvány záradék%', + 'dokumentum' => 'bizonyítvány'), +114 => array('sorszam' => '39/D', 'szoveg' => 'A %iktatószám% alapján tanulmányait a %osztály% osztályban folytatja.', + 'dokumentum' => 'beírási napló, törzslap'), +115 => array('sorszam' => '39/E', 'szoveg' => 'A(z) %tankorDiakFelmentesId% nyilvántartási számú felmentést %dt% napon hatályon kívül helyeztem. ', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +116 => array('sorszam' => '39/F', 'szoveg' => 'A(z) %zaradekId% nyilvántartási számú záradékban rögzített felmentést %dt% napon hatályon kívül helyeztem. ', + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), +117 => array('sorszam' => '18/A', 'szoveg' => 'A(z) %évfolyam% évfolyam követelményeit nem teljesítette, az évfolyamot megismételheti.', // nem tanköteles diák esetén + 'dokumentum' => 'osztálynapló, törzslap, bizonyítvány'), + +); + +$ZaradekIndex = array( + 'konferencia' => array( + // továbbléphet + 'következő évfolyamba léphet' => 20, // %évfolyam betűvel% + 'tanulmányait befejezte, következő évfolyamon folytathatja' => 21, // %évfolyam% + 'tanulmányait befejezte' => 102, + 'szakképző évfolyamba léphet' => 38, // %szakképesítés% + // mulasztás - de vizsgázat + 'mulasztás miatt osztályozóvizsga' => 19, + ), + 'konferencia bukás' => array( + 'javítóvizsgát tehet' => 23, // %tantárgy% + 'előkészítőt végzett' => 4, // csak első évfolyamon!! + 'követelményeket nem teljesítette, évfolyamot ismétel' => 25, // %évfolyam% - tanköteles eset + 'követelményeket nem teljesítette, évfolyamot ismételhet' => 117, // %évfolyam% - nem tanköteles eset + ), + 'jogviszony megnyitás' => array( + 'felvétel' => 1, + 'felvétel osztályba' => 100, // %iskola címe%, %osztály% + 'átvétel' => 2, // %iskola címe% + 'áthelyezés' => 3, // %határozat száma%, %iskola címe% + ), + 'jogviszony változás' => array( + 'magántanuló' => 13, + 'felfüggesztés' => 39 // %ok%, %igDt% + ), + 'jogviszony lezárás' => array( + 'kimaradás' => 40, + 'igazolatlan órák' => 41, // %igazolatlan órák száma% + 'egészségügyi alkalmasság' => 42, + 'térítési díj hátralék' => 43, + 'tandíj hátralék' => 44, + 'átvétel' => 45, // %iskola% + 'haláleset' => 110, + 'tanulmányait folytathatja' => 21, // %évfolyam% + 'tanulmányait befejezte' => 102, + ), + 'vizsga halasztás' => array( + 'osztályozó vizsga' => 32, // %igDt% + 'beszámoltatóvizsga' => 33, // %igDt% + 'különbözetivizsga' => 34, // %igDt% + 'javítóvizsga' => 35, // %igDt% + ), + 'vizsga' => array( + 'osztályozó vizsga' => 109, // %tantárgy%, %évfolyam%, %dátum%, %osztályzat% + 'osztályozó vizsga bukás' => 103, // %tantárgy%, %osztályzat% + 'beszámoltatóvizsga' => 107, // %tantárgy% + 'beszámoltatóvizsga bukás' => 104, // %tantárgy%, %osztályzat% + 'különbözetivizsga' => 108, // %tantárgy% + 'különbözetivizsga bukás' => 105, // %tantárgy%, %osztályzat% + 'javítóvizsga' => 24, // %tárgy%, %osztályzat%, %évfolyam% + 'javítóvizsga bukás' => 27, // %tantárgy% + 'javítóvizsga nem teljesített' => 25, // %évfolyam% (az évfolyam követelményeit) + ), + 'felmentés' => array( + 'értékelés alól' => 9, // %tantárgy% + 'értékelés és minősítés alól' => 101, // %miatt%, %mi% + 'óra látogatása alól' => 17, // %tantárgy%, %ezen óráinka%, %tólDt%, %igDt% + 'óra látogatása alól osztályozóvizsgával' => 18, // %tantárgy%, %ezen óráinka%, %tólDt%, %igDt% + 'tárgy tanulása alól' => 14, // %tantárgyak neve% + 'törlés' => 115, // %tankorDiakFelmentesId% + ), + 'törzslap feljegyzés' => array( + 'egyedi törzslap záradék' => 112 + ) + +); + +} // __TANEV > 2012 + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/zaroJegyModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/zaroJegyModifier.php new file mode 100644 index 00000000..48c5cfe9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/zaroJegyModifier.php @@ -0,0 +1,156 @@ + 'naplo_intezmeny','values' => $v, 'fv' => 'zaroJegyBeiras', 'result' => 'insert'), $lr); + } + } + + if ($olr=='') db_close($lr); //+++ MISSING hibakezelés, tranzakciókezelés??? + + if (is_array($results) && count($results) == 1) return $results[0]; // vizsga oldal használja lastInsertId miatt + else return false; + + } + + // Tanev/Szemeszter zárónapjával meghatározva + function generateDiakEvfolyamJel($diakId,$tanev,$szemeszter) { return _generateEvfolyamJel($diakId,$tanev,$szemeszter); } + + function _generateEvfolyamJel($diakId,$tanev,$szemeszter) { // returns INTEGER || FALSE --> STRING || FALSE + + /* + milyen evfolyamos? + diakId-->(tanev/szemeszter.zaroDt)osztaly-->evfolyamJel + + + kiegészítés: diák osztályai és tankör osztályainak metszete 1 osztály kell hogy legyen. + - getTankorOsztalyai($tankorId, $SET = array('result' => 'id'), $olr=''); + - ezt sajnos nem tudujk itt meghívni! + */ + // getSzemeszterAdat + $q = "SELECT zarasDt FROM szemeszter WHERE tanev=%u AND szemeszter=%u"; + $v = array($tanev,$szemeszter); + $zarasDt = db_query($q, array('fv'=>'inner_generateEvfolyam','modul'=>'naplo_intezmeny','result'=>'value', 'values'=>$v)); + // melyik osztályba járt? + $OSZTALYOK = getDiakOsztalya($diakId,array('tanev'=>$tanev,'tolDt'=>$zarasDt,'igDt'=>$zarasDt)); + if (count($OSZTALYOK)===1) { // ha több osztályba is jár, de azok évfolyamjele azonos, akkor nem kellene hibával kilépni... + $_osztalyId = $OSZTALYOK[0]['osztalyId']; + $OA = getOsztalyAdat($_osztalyId); + return $OA['evfolyamJel']; + } else { + $_SESSION['alert'][] = '::nem tudom kitalálni az évfolyamot (db osztály: '.count($OSZTALYOK).", diakId: $diakId, tanev: $tanev, szemeszter: $szemeszter)"; + return false; + } + + } + + function _generateTanevSzemeszter($dt) { + + + $q = "SELECT tanev,szemeszter FROM szemeszter WHERE kezdesDt < '%s' ORDER BY tanev DESC, szemeszter DESC LIMIT 1"; + $v = array($dt); + return db_query($q, array('fv' => '_generateTanevSzemeszter', 'modul' => 'naplo_intezmeny', 'result' => 'record', 'values' => $v)); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/diakAllapot.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/diakAllapot.php new file mode 100644 index 00000000..6236e3e4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/diakAllapot.php @@ -0,0 +1,91 @@ + 'getDiakAllapot','modul' => 'naplo','values' => $v, 'result' => 'assoc', 'keyfield' => 'szemeszter')); + // Gyengeségek és erősségek riorizált listája + $q = "SELECT * FROM sniDiakGyengesegErosseg WHERE diakId=%u ORDER BY prioritas"; + $ret2 = db_query($q, array('fv' => 'getDiakAllapot/gyengeségek, erősségek','modul' => 'naplo','values' => $v, 'result' => 'multiassoc', 'keyfield' => 'szemeszter')); + foreach ($ret2 as $szemeszter => $gyeAdat) { + foreach ($gyeAdat as $key => $value) { + $ret[ $value['szemeszter'] ][ $value['gyengesegErosseg'] ][] = array( + 'leiras' => $value['leiras'], + 'prioritas' => $value['prioritas'] + ); + } + } + + return $ret; + + + } + + function sniDiakAllapotRogzites($Parameters) { + + $lr = db_connect('naplo', array('fv' => 'sniDiakAllapotRogzites')); + db_start_trans($lr); + + $Param = $Parameters['diakAllapot']; + $diakId = $Param['diakId']; $szemeszter = $Param['szemeszter']; + // Korábbi bejegyzés törlése + $val = array($Param['diakId'], $Param['szemeszter']); + $q = "DELETE FROM `sniDiakAllapot` WHERE `diakId` = %u AND `szemeszter` = %u"; + db_query($q, array('fv' => 'sniDiakAllapotRogzites', 'modul' => 'naplo', 'values' => $val), $lr); + $q = "DELETE FROM `sniDiakGyengesegErosseg` WHERE `diakId` = %u AND `szemeszter` = %u"; + db_query($q, array('fv' => 'sniDiakAllapotRogzites', 'modul' => 'naplo', 'values' => $val), $lr); + // Paraméterek feldolgozása + $pattern = $v = array(); + foreach ($Param as $attr => $value) { + if (in_array($attr, array('gyengesegLeiras','gyengesegPrioritas','erossegLeiras','erossegPrioritas'))) continue; + if (in_array($attr, array('diakId','szemeszter','vizsgalatTanarId','priorizalas'))) + if ($value == '') { $pattern[] = '%s'; $value = 'NULL'; } + else $pattern[] = "%u"; + else + if ($attr == 'vizsgalatDt' && $value == '') { $pattern[] = '%s'; $value = 'NULL'; } + else $pattern[] = "'%s'"; + $v[] = $value; + } + // új bejegyzés beszúrása + $q = "INSERT INTO `sniDiakAllapot` (`".implode('`,`',array_keys($Param))."`) VALUES (".implode(',', $pattern).")"; + $ret = db_query($q, array('fv' => 'sniDiakAllapotRogzites', 'modul' => 'naplo', 'values' => $v), $lr); + if (!$ret) { + db_rollback($lr, 'Az SNI adatok módosítása nem sikerült. Visszaállítjuk az eredeti állapotot...'); + db_close($lr); return false; + } + // Gyengeségek/Erősségek rögzítése + $Param = $Parameters['gyengesegekErossegek']; + $v = array(); + foreach (array('gyengeseg','erosseg') as $key => $gye) { + if (is_array($Param[$gye.'Leiras'])) { + foreach ($Param[$gye.'Leiras'] as $index => $leiras) if ($leiras != '') { // Lehessen törölni így... + array_push($v, $diakId, $szemeszter, ($key+1), $leiras, $Param[$gye.'Prioritas'][$index]); + } + } + } + if (count($v) != 0) { + $q = "INSERT INTO `sniDiakGyengesegErosseg` VALUES ".implode(',', array_fill(0, (count($v)/5), "(%u,%u,%u,'%s',%u)")); + $ret = db_query($q, array('fv' => 'sniDiakAllapotRogzites/Gyengeségek-erősségek', 'modul' => 'naplo', 'values' => $v), $lr); + var_dump($Param); + } + + db_commit($lr); + db_close($lr); + return true; + + } + + function sniDiakAdatRogzites($Param) { + + // diak.fogytekossag módosítása + $q = "UPDATE diak SET `fogyatekossag`='%s' WHERE diakId=%u"; + db_query($q, array('fv' => 'sniDiakAdatRogzites', 'modul' => 'naplo_intezmeny', 'values' => array(implode(',', $Param['fogyatekossag']), $Param['diakId']))); + unset($Param['fogyatekossag']); + // sniDiakAdat modosítás + $q = "REPLACE INTO `sniDiakAdat` (`diakId`, `kulsoInfo`, `mentorTanarId`) VALUES (%u, '%s', %u)"; + return db_query($q, array('fv' => 'sniDiakAdatRogzites', 'modul' => 'naplo', 'values' => $Param)); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/fejlesztesiTerv.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/fejlesztesiTerv.php new file mode 100644 index 00000000..8485f20e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/fejlesztesiTerv.php @@ -0,0 +1,45 @@ + 'getHaviOsszegzes', 'modul' => 'naplo', 'values' => $v, 'result' => 'record')); + + $q = "SELECT tanarId FROM sniHaviOsszegzesFelelos WHERE haviOsszegzesId = %u"; + $ret['felelos'] = db_query($q, array('fv' => 'getHaviOsszegzes', 'modul' => 'naplo', 'values' => array($ret['haviOsszegzesId']), 'result' => 'idonly')); + + return $ret; + + } + + function sniHaviOsszegzesRogzites($Param) { + + $Felelos = $Param['felelos']; unset($Param['felelos']); + // Korábbi bejegyzés törlése + $q = "SELECT haviOsszegzesId FROM sniHaviOsszegzes WHERE diakId = %u AND dt = '%s'"; + $v = array($Param['diakId'], $Param['dt']); + $Param['haviOsszegzesId'] = db_query($q, array('fv' => 'sniHaviOsszesitesRogzites', 'modul' => 'naplo', 'values' => $v, 'result' => 'value')); + // Paraméterek feldolgozása + $pattern = $v = array(); + foreach ($Param as $attr => $value) { + if (in_array($attr, array('diakId','haviOsszegzesId','valtozas'))) + if ($value == '') { $pattern[] = '%s'; $value = 'NULL'; } + else $pattern[] = "%u"; + else + $pattern[] = "'%s'"; + $v[] = $value; + } + // új bejegyzés beszúrása + $q = "REPLACE INTO `sniHaviOsszegzes` (`".implode('`,`',array_keys($Param))."`) VALUES (".implode(',', $pattern).")"; + $id = db_query($q, array('fv' => 'sniHaviOsszegzesRogzites', 'modul' => 'naplo', 'values' => $v, 'result' => 'insert')); + // felelosok törlése + $q = "DELETE FROM `sniHaviOsszegzesFelelos` WHERE haviOsszegzesId = %u"; + db_query($q, array('fv' => 'sniHaviOsszegzesRogzites', 'modul' => 'naplo', 'values' => array($id))); + // új felelősök felvétele + $q = "INSERT INTO `sniHaviOsszegzesFelelos` (`haviOsszegzesId`,`tanarId`) VALUES ".implode(',', array_fill(0, count($Felelos), "($id, %u)")); + return db_query($q, array('fv' => 'sniHaviOsszegzesRogzites', 'modul' => 'naplo', 'values' => $Felelos)); + } +*/ +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/tantargyiFeljegyzesek.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/tantargyiFeljegyzesek.php new file mode 100644 index 00000000..c11be93b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/sni/tantargyiFeljegyzesek.php @@ -0,0 +1,26 @@ + 'getDiakFeljegyzesByTankorId', 'modul' => 'naplo', 'values' => $v, 'result' => 'keyvaluepair')); + + } + + function getDiakFeljegyzesByDt($ADAT) { + + $q = "SELECT tankorId, megjegyzes FROM sniTantargyiFeljegyzes WHERE diakId = %u AND dt = '%s'"; + $v = array($ADAT['diakId'], $ADAT['dt']); + return db_query($q, array('fv' => 'getDiakFeljegyzesByDt', 'modul' => 'naplo', 'values' => $v, 'result' => 'keyvaluepair')); + + } + + function tantargyiFeljegyzesRogzites($Param) { + + $q = "REPLACE INTO sniTantargyiFeljegyzes (diakId, tankorId, dt, megjegyzes) VALUES (%u, %u, '%s', '%s')"; + return db_query($q, array('fv' => 'tantargyiFeljegyzesRogzites', 'modul' => 'naplo', 'values' => $Param)); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/stat/lemorzsolodas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/stat/lemorzsolodas.php new file mode 100644 index 00000000..bb1700f6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/stat/lemorzsolodas.php @@ -0,0 +1,223 @@ +=1,1 romlás + // !! csak a jegy típusokra értelmezhető az átlagolás + + //elozo + $q = "SELECT diakId,avg(jegy) AS avg FROM zaroJegy WHERE hivatalosDt = '%s' AND jegyTipus IN ('jegy') GROUP BY diakId"; + $v = array($elozoDt); + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','keyfield'=>'diakId','values'=>$v)); + for ($i=0; $i'naplo_intezmeny','result'=>'indexed','values'=>$v)); + for ($i=0; $i=1.1) { + $_diakId = $r[$i]['diakId']; + if (!is_array($DIAKADAT[$_diakId])) { + $DIAKADAT[$_diakId] = getDiakAdatById($_diakId); + $DIAKADAT[$_diakId]['diakOsztalya'] = getDiakOsztalya($_diakId, array('tanev'=>__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $R['ronto'][] = array( + 'diakId' => $r[$i]['diakId'], + 'avg' => $r[$i]['avg'], + 'elozoAvg' => $A[$r[$i]['diakId']], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + + ); + } + } + + // -- a félév végén (év végén) a tanulmányi átlaga< 3,0 + //kivalasztott + $q = "SELECT diakId,avg(jegy) AS atlag FROM zaroJegy WHERE hivatalosDt = '%s' AND jegyTipus IN ('jegy') GROUP BY diakId HAVING atlag<3"; + $v = array($dt); + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + for ($i=0; $i__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $R['rosszTanulo'][] = array( + 'diakId' => $r[$i]['diakId'], + 'atlag' => $r[$i]['atlag'], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + + ); + } + + // -- a félév végén (év végén) a tanulmányi átlaga< 2,5 + //kivalasztott + $q = "SELECT diakId,avg(jegy) AS atlag FROM zaroJegy WHERE hivatalosDt = '%s' AND jegyTipus IN ('jegy') GROUP BY diakId HAVING atlag<2.5"; + $v = array($dt); + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + for ($i=0; $i__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $R['nagyonRosszTanulo'][] = array( + 'diakId' => $r[$i]['diakId'], + 'atlag' => $r[$i]['atlag'], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + + ); + } + + // -- egy-vagy több tárgyból bukik (ez lényegében most is benne van már) + $q = "SELECT diakId,count(*) as dbBukas FROM zaroJegy WHERE hivatalosDt = '%s' AND jegyTipus IN ('jegy') AND jegy='1.0' GROUP BY diakId"; + $v = array($dt); + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + for ($i=0; $i__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $R['bukott'][] = array( + 'diakId' => $r[$i]['diakId'], + 'dbBukas' => $r[$i]['dbBukas'], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + ); + } + + // -- magatartása rossz + $q = "SELECT diakId FROM zaroJegy WHERE hivatalosDt = '%s' AND jegyTipus IN ('magatartás') AND jegy='2.0' GROUP BY diakId"; + $v = array($dt); + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + for ($i=0; $i__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $R['rosszMagatartasu'][] = array( + 'hivatalosDt' => $dt, + 'diakId' => $r[$i]['diakId'], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + ); + } + // -- szorgalma hanyag + $q = "SELECT diakId FROM zaroJegy WHERE hivatalosDt = '%s' AND jegyTipus IN ('szorgalom') AND jegy='2.0' GROUP BY diakId"; + $v = array($dt); + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + for ($i=0; $i__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $R['hanyagSzorgalmu'][] = array( + 'diakId' => $r[$i]['diakId'], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + ); + } + // -- 50 órát elérő igazolatlan hiányzás + // --TODO TANÉV!!! + $q = "SELECT diakId,count(*) as dbHianyzas FROM hianyzas + LEFT JOIN " .__INTEZMENYDBNEV. ".diak USING (diakId) + WHERE dt<= '%s' AND tipus='hiányzás' AND igazolas='' AND diak.statusz='jogviszonyban van' GROUP BY diakId HAVING dbHianyzas>=50"; + $v = array($dt); + $r = db_query($q, array('modul'=>'naplo','result'=>'indexed','values'=>$v)); + for ($i=0; $i__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $_jogviszonya = getDiakJogviszonyByDts(array($_diakId),array($dt)); + if ($_jogviszonya[$_diakId][$dt]['statusz']=='jogviszonyban van') { + $R['igazolatlanHianyzo_50'][] = array( + 'diakId' => $r[$i]['diakId'], + 'dbHianyzas' => $r[$i]['dbHianyzas'], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakJogviszony' => $_jogviszonya[$_diakId][$dt]['statusz'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + ); + } + } + + // -- 100 órát elérő igazolt hiányzás + // --TODO TANÉV!!! + $q = "SELECT diakId,count(*) as dbHianyzas FROM hianyzas + WHERE dt<= '%s' AND tipus='hiányzás' AND igazolas!='' + GROUP BY diakId HAVING dbHianyzas>=100"; + $v = array($dt); + $r = db_query($q, array('modul'=>'naplo','result'=>'indexed','values'=>$v)); + for ($i=0; $i__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $_jogviszonya = getDiakJogviszonyByDts(array($_diakId),array($dt)); + if ($_jogviszonya[$_diakId][$dt]['statusz']=='jogviszonyban van') { + $R['igazoltanHianyzo_100'][] = array( + 'diakId' => $r[$i]['diakId'], + 'dbHianyzas' => $r[$i]['dbHianyzas'], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakJogviszony' => $_jogviszonya[$_diakId][$dt]['statusz'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + ); + } + } + // -- magántanulóvá vált + $q = "SELECT diakId FROM diakJogviszony WHERE dt BETWEEN '%s' AND '%s' AND statusz='magántanuló'"; + $v = array($elozoDt,$dt); + $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + for ($i=0; $i__TANEV,'tolDt'=>$dt,'igDt'=>$dt), $intezmeny_lr); + } + $_jogviszonya = getDiakJogviszonyByDts(array($_diakId),array($dt)); + if ($_jogviszonya[$_diakId][$dt]['statusz']=='magántanuló') { // még mindig + $R['magantanuloLett'][] = array( + 'diakId' => $r[$i]['diakId'], + 'diakNev' => $DIAKADAT[$_diakId]['diakNev'], + 'diakOsztalya' => ($DIAKADAT[$_diakId]['diakOsztalya'][0]['osztalyJel']) + ); + } + } + + // -- magántanulóvá minősítése folyamatban - ezt nem tudjuk + // -- oltalmazott / menekült / menedékes - ezt nem tudjuk + // -- veszélyeztetetté vált - ez mi? + // -- egyéb nehezen értelmezhető feltételek... - ez mi? + + db_close($intezmeny_lr); + + return $R; + + } + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/stat/tantargyFelosztas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/stat/tantargyFelosztas.php new file mode 100644 index 00000000..a78cb70b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/stat/tantargyFelosztas.php @@ -0,0 +1,236 @@ +'getDiakLetszamByStatusz','modul'=>'naplo_intezmeny','result'=>'keyvaluepair')); + $q = "select statusz, count(*) as letszam from diak where nem='fiú' group by statusz"; + $ret['fiú'] = db_query($q, array('fv'=>'getDiakLetszamByStatusz/fiú','modul'=>'naplo_intezmeny','result'=>'keyvaluepair')); + $q = "select statusz, count(*) as letszam from diak where nem='lány' group by statusz"; + $ret['lány'] = db_query($q, array('fv'=>'getDiakLetszamByStatusz/lány','modul'=>'naplo_intezmeny','result'=>'keyvaluepair')); + + return $ret; + + } + + function getDiakLetszamByOsztalyId($osztalyIds) { + if (is_array($osztalyIds) && count($osztalyIds)>0) { + $q = "select osztalyId, count(*) as letszam from diak left join osztalyDiak using (diakId) + where statusz in ('jogviszonyban van','magántanuló') and osztalyId in (".implode(',', array_fill(0, count($osztalyIds), '%u')).") group by osztalyId"; + $ret = db_query($q, array('fv'=>'getDiakLetszamByStatusz','modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$osztalyIds)); + $q = "select osztalyId, count(*) as letszam from diak left join osztalyDiak using (diakId) + where statusz in ('jogviszonyban van','magántanuló') and osztalyId in (".implode(',', array_fill(0, count($osztalyIds), '%u')).") and nem='fiú' group by osztalyId"; + $ret['fiú'] = db_query($q, array('fv'=>'getDiakLetszamByStatusz/fiú','modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$osztalyIds)); + $q = "select osztalyId, count(*) as letszam from diak left join osztalyDiak using (diakId) + where statusz in ('jogviszonyban van','magántanuló') and osztalyId in (".implode(',', array_fill(0, count($osztalyIds), '%u')).") and nem='lány' group by osztalyId"; + $ret['lány'] = db_query($q, array('fv'=>'getDiakLetszamByStatusz/lány','modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$osztalyIds)); + + return $ret; + + } else { + return false; + } + } + + function getTanarLetszamByBesorolas() { + $q = "select besorolas, count(*) as letszam from tanar where statusz<>'jogviszonya lezárva' and statusz<>'külső óraadó' group by besorolas"; + return db_query($q, array('fv'=>'getTanarLetszamByBesorolas','modul'=>'naplo_intezmeny','result'=>'keyvaluepair')); + } + + function getTanarLetszamByStatusz() { + $q = "select statusz, count(*) as letszam from tanar group by statusz"; + return db_query($q, array('fv'=>'getTanarLetszamByBesorolas','modul'=>'naplo_intezmeny','result'=>'keyvaluepair')); + } + + function getTankorOraszamOsszesites($tankorTipusIds) { + + $q = "select sum(oraszam/2) from tankorSzemeszter where tanev=".__TANEV; + $ret['összes'] = db_query($q, array('fv'=>'getTankorOraszamOsszesites','modul'=>'naplo_intezmeny','result'=>'value')); + $q = "select sum(oraszam/2) from tankorSzemeszter left join tankor using (tankorId) + where tankorTipusId in (".implode(',', array_fill(0, count($tankorTipusIds['óratervi']), '%u')).") and tanev=".__TANEV; + $ret['óratervi'] = db_query($q, array('fv'=>'getTankorOraszamOsszesites/óratervi','modul'=>'naplo_intezmeny','result'=>'value','values'=>$tankorTipusIds['óratervi'])); + $q = "select sum(oraszam/2) from tankorSzemeszter left join tankor using (tankorId) + where tankorTipusId in (".implode(',', array_fill(0, count($tankorTipusIds['tanórán kívüli']), '%u')).") and tanev=".__TANEV; + $ret['tanórán kívüli'] = db_query($q, array('fv'=>'getTankorOraszamOsszesites/tanórán kívüli','modul'=>'naplo_intezmeny','result'=>'value','values'=>$tankorTipusIds['tanórán kívüli'])); + + return $ret; + } + + function getTargyOraszamok($tankorTipusIds) { + + $q = "select targyId, sum(oraszam/2) from tankorSzemeszter left join tankor using (tankorId) + where tanev=".__TANEV." group by targyId"; + $ret['összes'] = db_query($q, array('fv'=>'getTargyOraszamok','modul'=>'naplo_intezmeny','result'=>'keyvaluepair')); + $q = "select targyId, sum(oraszam/2) from tankorSzemeszter left join tankor using (tankorId) + where tankorTipusId in (".implode(',', array_fill(0, count($tankorTipusIds['óratervi']), '%u')).") and tanev=".__TANEV." group by targyId"; + $ret['óratervi'] = db_query($q, array('fv'=>'getTargyOraszamok/óratervi','modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$tankorTipusIds['óratervi'])); + $q = "select targyId, sum(oraszam/2) from tankorSzemeszter left join tankor using (tankorId) + where tankorTipusId in (".implode(',', array_fill(0, count($tankorTipusIds['tanórán kívüli']), '%u')).") and tanev=".__TANEV." group by targyId"; + $ret['tanórán kívüli'] = db_query($q, array('fv'=>'getTargyOraszamok/tanórán kívüli','modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$tankorTipusIds['tanórán kívüli'])); + + return $ret; + } + + function getOsztalyOraszamok($osztalyIds, $tankorTipusIds) { + + $q = "select osztalyId, sum(oraszam/2) from tankorSzemeszter left join tankorOsztaly using (tankorId) + where osztalyId in (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + and tanev=".__TANEV." group by osztalyId"; + $ret['összes'] = db_query($q, array('fv'=>'getOsztalyOraszamok','modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$osztalyIds)); + $q = "select osztalyId, sum(oraszam/2) from tankorSzemeszter left join tankor using (tankorId) left join tankorOsztaly using (tankorId) + where tankorTipusId in (".implode(',', array_fill(0, count($tankorTipusIds['óratervi']), '%u')).") + and osztalyId in (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + and tanev=".__TANEV." group by osztalyId"; + $v = array_merge($tankorTipusIds['óratervi'], $osztalyIds); + $ret['óratervi'] = db_query($q, array('fv'=>'getOsztalyOraszamok/óratervi','modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$v)); + $q = "select osztalyId, sum(oraszam/2) from tankorSzemeszter left join tankor using (tankorId) left join tankorOsztaly using (tankorId) + where tankorTipusId in (".implode(',', array_fill(0, count($tankorTipusIds['tanórán kívüli']), '%u')).") + and osztalyId in (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + and tanev=".__TANEV." group by osztalyId"; + $v = array_merge($tankorTipusIds['tanórán kívüli'], $osztalyIds); + $ret['tanórán kívüli'] = db_query($q, array('fv'=>'getOsztalyOraszamok/tanórán kívüli','modul'=>'naplo_intezmeny','result'=>'keyvaluepair','values'=>$v)); + + return $ret; + } + + function getTankorLetszamStat() { + global $_TANEV; + $r = getTankorByTanev(__TANEV); + foreach ($r as $idx => $tAdat) { + $return[ $tAdat['targyId'] ]['tankorIds'][] = $tAdat['tankorId']; + $letszam = getTankorLetszam($tAdat['tankorId'], array('refDt'=>$_TANEV['kezdesDt'])); + $return[ $tAdat['targyId'] ]['sum'] += $letszam; + $return[ $tAdat['targyId'] ]['db']++; + if ($return[ $tAdat['targyId'] ]['max'] < $letszam) $return[ $tAdat['targyId'] ]['max'] = $letszam; + if (!isset($return[ $tAdat['targyId'] ]['min']) || $return[ $tAdat['targyId'] ]['min'] > $letszam) $return[ $tAdat['targyId'] ]['min'] = $letszam; + } + return $return; + } + + +function getTantargyfelosztasStat() { + + // __TANEV és __INTEZMENY függés!! + + global $ADAT; + + // ---- ---- ---- ---- + $ADAT['evfolyamJelek'] = getEvfolyamJelek(array('result'=>'idonly')); + $ADAT['tankorTipusok'] = getTankorTipusok(); + foreach ($ADAT['tankorTipusok'] as $tankorTipusId => $tAdat) $ADAT['tankorTipusIds'][$tAdat['oratervi']][] = $tankorTipusId; + // Ha módosul, akkor javítani kell a fenntarto/naplo/tantargyfelosztas alatt is!! + $ADAT['finanszírozott pedagógus létszám'] = array( + 'általános iskola' => 11.8, // 11.8 tanuló / 1 pedagógus + 'gimnázium' => 12.5, // 12.5 tanuló / 1 pedagógus + 'szakiskola, Híd programok' => 12, // ... + 'szakközépiskola, nem szakkképző évfolyam' => 12.4, + 'szakközépiskola, szakkképző évfolyam' => 13.7 + ); // -- TODO szakgimnázium??? + + + + $IA['intezmenyAdat'] = getIntezmenyByRovidnev(__INTEZMENY); + $IA['osztalyAdat'] = getOsztalyok(__TANEV, array('result' => 'assoc', 'minden'=>false, 'telephelyId' => null)); + foreach ($IA['osztalyAdat'] as $idx => $oAdat) $IA['osztalyIds'][] = $oAdat['osztalyId']; + $IA['targyAdat'] = getTargyAdatByIds(); + + $IA['diakLetszam']['statusz'] = getDiakLetszamByStatusz(); + $IA['diakLetszam']['osztaly'] = getDiakLetszamByOsztalyId($IA['osztalyIds']); + foreach ($IA['diakLetszam']['osztaly'] as $osztalyId => $letszam) + if (is_numeric($osztalyId)) $IA['diakLetszam']['evfolyamJel'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ]['összes'] += intval($letszam); + foreach ($IA['diakLetszam']['osztaly']['fiú'] as $osztalyId => $letszam) + if (is_numeric($osztalyId)) $IA['diakLetszam']['evfolyamJel'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ]['fiú'] += intval($letszam); + foreach ($IA['diakLetszam']['osztaly']['lány'] as $osztalyId => $letszam) + if (is_numeric($osztalyId)) $IA['diakLetszam']['evfolyamJel'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ]['lány'] += intval($letszam); + $IA['tanarLetszam']['besorolas'] = getTanarLetszamByBesorolas(); + $IA['tanarLetszam']['statusz'] = getTanarLetszamByStatusz(); + $IA['oraszamok'] = getTankorOraszamOsszesites($ADAT['tankorTipusIds']); + $IA['targyOraszamok'] = getTargyOraszamok($ADAT['tankorTipusIds']); + $IA['osztalyOraszamok'] = getOsztalyOraszamok($IA['osztalyIds'], $ADAT['tankorTipusIds']); + foreach ($IA['osztalyOraszamok']['összes'] as $osztalyId => $oraszam) { + $IA['evfolyamOraszamok']['összes'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ] += intval($oraszam); + $IA['evfolyamOraszamok']['óratervi'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ] += intval($IA['osztalyOraszamok']['óratervi'][$osztalyId]); + $IA['evfolyamOraszamok']['tanórán kívüli'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ] += intval($IA['osztalyOraszamok']['tanórán kívüli'][$osztalyId]); + } + $egyhaziE = ($IA['intezmenyAdat']['fenntarto']=='egyházi'); + foreach ($IA['osztalyAdat'] as $osztalyId => $osztalyAdat) { + $IA['osztalyIdokeret'][$osztalyId] = getOsztalyHetiIdokeret($osztalyId, $osztalyAdat, array('egyhaziE'=>$egyhaziE)); + $IA['osztalyIdokeret']['összesen']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes']; + $IA['osztalyIdokeret']['összesen']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett']; + $IA['osztalyIdokeret']['összesen']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás']; + $IA['osztalyIdokeret']['összesen']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi']; + $IA['osztalyIdokeret']['összesen']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium']; + $IA['osztalyIdokeret']['összesen']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi']; + if (in_array($osztalyAdat['osztalyJellegId'], array(21,22)) && in_array($osztalyAdat['evfolyamJel'], array('1','2','3','4'))) { + $IA['osztalyIdokeret']['alsó']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes']; + $IA['osztalyIdokeret']['alsó']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett']; + $IA['osztalyIdokeret']['alsó']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás']; + $IA['osztalyIdokeret']['alsó']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi']; + $IA['osztalyIdokeret']['alsó']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium']; + $IA['osztalyIdokeret']['alsó']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi']; + } + if (in_array($osztalyAdat['osztalyJellegId'], array(21,23)) && in_array($osztalyAdat['evfolyamJel'], array('5','6','7','8'))) { + $IA['osztalyIdokeret']['felső']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes']; + $IA['osztalyIdokeret']['felső']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett']; + $IA['osztalyIdokeret']['felső']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás']; + $IA['osztalyIdokeret']['felső']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi']; + $IA['osztalyIdokeret']['felső']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium']; + $IA['osztalyIdokeret']['felső']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi']; + } + if (in_array($osztalyAdat['osztalyJellegId'], array(21,22,23)) && in_array($osztalyAdat['evfolyamJel'], array('1','2','3','4','5','6','7','8'))) { + $IA['osztalyIdokeret']['általános']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes']; + $IA['osztalyIdokeret']['általános']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett']; + $IA['osztalyIdokeret']['általános']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás']; + $IA['osztalyIdokeret']['általános']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi']; + $IA['osztalyIdokeret']['általános']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium']; + $IA['osztalyIdokeret']['általános']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi']; + } + if (in_array($osztalyAdat['osztalyJellegId'], array(51,52,53,61,62,63)) && in_array($osztalyAdat['evfolyamJel'], array('1','2','3','4','5','6','7','8'))) { + $IA['osztalyIdokeret']['gimnázium18']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes']; + $IA['osztalyIdokeret']['gimnázium18']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett']; + $IA['osztalyIdokeret']['gimnázium18']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás']; + $IA['osztalyIdokeret']['gimnázium18']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi']; + $IA['osztalyIdokeret']['gimnázium18']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium']; + $IA['osztalyIdokeret']['gimnázium18']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi']; + } + if (in_array($osztalyAdat['osztalyJellegId'], array(31,32,33,34,35,36,51,52,53,61,62,63)) && in_array($osztalyAdat['evfolyamJel'], array('9','10','11','12'))) { + $IA['osztalyIdokeret']['gimnázium92']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes']; + $IA['osztalyIdokeret']['gimnázium92']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett']; + $IA['osztalyIdokeret']['gimnázium92']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás']; + $IA['osztalyIdokeret']['gimnázium92']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi']; + $IA['osztalyIdokeret']['gimnázium92']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium']; + $IA['osztalyIdokeret']['gimnázium92']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi']; + } + if (in_array($osztalyAdat['osztalyJellegId'], array(31,32,33,34,35,36,51,52,53,61,62,63))) { + $IA['osztalyIdokeret']['gimnázium']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes']; + $IA['osztalyIdokeret']['gimnázium']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett']; + $IA['osztalyIdokeret']['gimnázium']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás']; + $IA['osztalyIdokeret']['gimnázium']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi']; + $IA['osztalyIdokeret']['gimnázium']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium']; + $IA['osztalyIdokeret']['gimnázium']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi']; + } + // Finanszírozott pedagógus létszámhoz diáklészámok osztály-típusonként + if (in_array($osztalyAdat['osztalyJellegId'], array(21,22,23))) { // általános iskola + $IA['diakLetszam']['általános iskola'] += $IA['diakLetszam']['osztaly'][$osztalyId]; + } else if (in_array($osztalyAdat['osztalyJellegId'], array(31,32,33,34,35,36,51,52,53,61,62,63,65))) { // gimnázium + $IA['diakLetszam']['gimnázium'] += $IA['diakLetszam']['osztaly'][$osztalyId]; + } else if (in_array($osztalyAdat['osztalyJellegId'], array(82,83,84,85,91,92,93))) { // szakiskola, Híd programok + $IA['diakLetszam']['szakiskola, Híd programok'] += $IA['diakLetszam']['osztaly'][$osztalyId]; + } else if (in_array($osztalyAdat['osztalyJellegId'], array(71,72,73,74,75,76,77,78,79))) { // szakközépiskola, nem szakképző évfolyam + $IA['diakLetszam']['szakközépiskola, nem szakkképző évfolyam'] += $IA['diakLetszam']['osztaly'][$osztalyId]; + } else if (in_array($osztalyAdat['osztalyJellegId'], array())) { // szakközépiskola, szakképző évfolyam + $IA['diakLetszam']['szakközépiskola, szakképző évfolyam'] += $IA['diakLetszam']['osztaly'][$osztalyId]; + } + } // osztályok + $IA['tankorLetszamStat'] = getTankorLetszamStat(); + // ---- ---- ---- ---- + + return $IA; + +} + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/checkStatus.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/checkStatus.php new file mode 100644 index 00000000..a2d97afb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/checkStatus.php @@ -0,0 +1,33 @@ + 'checkStatus/1', 'modul' => 'naplo', 'result' => 'value'), $lr); + + $q = "SELECT COUNT(*) AS db FROM orarendiOra WHERE tolDt <= curdate() AND igDt >= curdate()"; + $R['orakSzama'] = db_query($q, array('fv' => 'checkStatus/2', 'modul' => 'naplo', 'result' => 'value'), $lr); + + $q = "SELECT DISTINCT orarendiOra.tanarId, orarendiOra.targyJel, orarendiOra.osztalyJel + FROM orarendiOra LEFT JOIN orarendiOraTankor USING(tanarId, targyJel, osztalyJel) + WHERE tankorId IS NULL"; + + $R['hianyzoTankor'] = db_query($q, array('fv' => 'checkStatus/3', 'modul' => 'naplo', 'result' => 'indexed'),$lr); + + $q = "SELECT DISTINCT orarendiOra.tanarId, orarendiOra.targyJel, orarendiOra.osztalyJel + FROM orarendiOraTankor LEFT JOIN orarendiOra USING(tanarId, targyJel, osztalyJel) + WHERE tanarId IS NULL"; + + $R['hianyzoOra'] = db_query($q, array('fv' => 'checkStatus/3', 'modul' => 'naplo', 'result' => 'indexed'),$lr); + + $R['vizsgaltDt'] = date('Y-m-d'); + + if ($olr == '') db_close($lr); + + return $R; + + } +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/fogadoOra.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/fogadoOra.php new file mode 100644 index 00000000..4aaf4016 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/fogadoOra.php @@ -0,0 +1,142 @@ +NOW() ORDER BY tol"; + $dts = db_query($q, array('fv' => 'getKovetkezoFogadoDt', 'modul' => 'naplo', 'result' => 'indexed')); + $ret = array('dates' => array(), 'tol' => array(), 'ig' => array()); + if (is_array($dts)) for ($i = 0; $i < count($dts); $i++) { + $dt = substr($dts[$i]['tol'],0,10); + if (!in_array($dt, $ret['dates'])) $ret['dates'][] = $dt; + $ret['tol'][] = $dts[$i]['tol']; + $ret['ig'][] = $dts[$i]['ig']; + } + return $ret; + } + + function getTanarFogadoOra($tanarId) { + $v = array($tanarId); + $q = "SELECT * FROM ".__TANEVDBNEV.".fogadoOra WHERE tanarId=%u AND ig>=NOW()"; + $ret['adatok'] = db_query($q, array('fv' => 'getTanarFogadoOra', 'modul' => 'naplo', 'result' => 'record', 'values' => $v)); + if (!is_array($ret['adatok']) || count($ret['adatok']) == 0) $ret['adatok'] = array('tanarId' => $tanarId); + + $q = "SELECT * FROM ".__TANEVDBNEV.".fogadoOraJelentkezes WHERE tanarId=%u AND tol>=CURDATE()"; + $ret['jelentkezesek'] = db_query($q, array('fv' => 'getTanarFogadoOra', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'tol', 'values' => $v)); + + return $ret; + } + + function getFogadoOsszes() { + // Hogy ABC szerint legyen inkább... + $q = "SELECT fogadoOra.* FROM ".__TANEVDBNEV.".fogadoOra LEFT JOIN ".__INTEZMENYDBNEV.".tanar USING (tanarId) WHERE ig>=NOW() + ORDER BY CONCAT_WS(' ',viseltCsaladinev,viseltUtonev),tol,ig,teremId"; + $ret = db_query($q, array('fv' => 'getFogadoOsszes', 'modul' => 'naplo', 'result' => 'indexed')); + return $ret; + } + + function kovetkezoFogadoOraInit($tol, $ig) { + // Egyszerre mindig csak egy következő fogadó óra lehet - törlés + $q = "DELETE FROM fogadoOra WHERE tol>=NOW() OR tol>='$tol'"; + $r = db_query($q, array('fv' => 'kovetkezoFogadoFelvetele', 'modul' => 'naplo')); + // A szülői jelentkezések is törlődnek ekkor + $q = "DELETE FROM fogadoOraJelentkezes WHERE tol>=NOW() OR tol>='$tol'"; + $r = db_query($q, array('fv' => 'kovetkezoFogadoFelvetele', 'modul' => 'naplo')); + // minden tanárra beállítjuk a megadott tol-ig értéket + $q = "INSERT INTO fogadoOra (tanarId,tol,ig) + SELECT tanarId, '%s','%s' FROM ".__INTEZMENYDBNEV.".tanar + WHERE beDt<='%s' and (kiDt is null or kiDt >= '%s');"; + $r = db_query($q, array('fv' => 'kovetkezoFogadoFelvetele', 'modul' => 'naplo', 'values' => array($tol, $ig, $ig, $tol))); + } + + function tanarFogadoOra($tanarId, $tol, $ig, $teremId) { + if ($teremId == '') $teremId = 'NULL'; + // Ha van bejegyzett fogadóóra, akkor töröljük + $q = "DELETE FROM fogadoOra WHERE ig>NOW() AND tanarId=%u"; + db_query($q, array('fv' => 'tanarFogadoOra', 'modul' => 'naplo', 'values' => array($tanarId))); + // Új fogadóóra felvétele + if (isset($teremId) && $teremId > 0) { + $q = "INSERT INTO fogadoOra VALUES (%u, '%s', '%s', %u)"; + } else { + $q = "INSERT INTO fogadoOra VALUES (%u, '%s', '%s', NULL)"; + } + $v = array($tanarId, $tol, $ig, $teremId); + db_query($q, array('fv' => 'tanarFogadoOra', 'modul' => 'naplo', 'values' => $v)); + + // A szülői jelentkezések is törlődnek ekkor + $q = "DELETE FROM fogadoOraJelentkezes WHERE tanarId=%u AND (tol<'%s' OR tol>='%s')"; + $v = array($tanarId, $tol, $ig); + return db_query($q, array('fv' => 'tanarFogadoOra', 'modul' => 'naplo', 'values' => $v)); + + } + + function getSzuloJelentkezes($szuloId) { + $q = "SELECT * FROM ".__TANEVDBNEV.".fogadoOraJelentkezes WHERE szuloId=%u AND tol>=NOW() ORDER BY tol"; + return db_query($q, array('fv' => 'getSzuloJelentkezes', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'tanarId', 'values' => array($szuloId))); + } + + function fogadoOraJelentkezes($szuloId, $M) { + + $lr = db_connect('naplo'); + + for ($i = 0; $i < count($M); $i++) { + $tanarId = $M[$i]['tanarId']; + $datetime = $M[$i]['datetime']; + if (isset($datetime)) { + // Egy már felvett jelentkezésről van-e szó + $q = "SELECT COUNT(*) FROM ".__TANEVDBNEV.".fogadoOraJelentkezes WHERE tol='%s' AND tanarId=%u AND szuloId=%u"; + $v = array($datetime, $tanarId, $szuloId); + $db = db_query($q, array('fv' => 'fogadoOraJelentkezes', 'modul' => 'naplo', 'result' => 'value', 'values' => $v), $lr); + if ($db > 0) continue; + + // Van-e már a szülőnek, vagy a tanárnak bejegyzése az adott időpontra + $q = "SELECT * FROM ".__TANEVDBNEV.".fogadoOraJelentkezes WHERE tol='%s' AND (tanarId=%u OR szuloId=%u) LIMIT 1"; + $v = array($datetime, $tanarId, $szuloId); + $r = db_query($q, array('fv' => 'fogadoOraJelentkezes', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + if (!is_array($r) || count($r) == 1) { + //$_SESSION['alert'][] = 'message:wrong_data:fogadoOraJelentkezes:foglalt:'."$szuloId/$tanarId/$datetime"; + $_SESSION['alert'][] = 'message:fogadoora_foglalt:'.str_replace(':','.',$datetime).':foglalt:'."$szuloId/$tanarId/$datetime"; + continue; + } + // Van-e a tanárnak az adtott időpontban fogadóórája + $q = "SELECT * FROM fogadoOra WHERE tanarId=%u AND tol<='%s' AND '%s' 'fogadoOraJelentkezes', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + if (!is_array($r) || count($r) == 0) { + //$_SESSION['alert'][] = 'message:wrong_data:fogadoOraJelentkezes:nincs fogadóórája:'."szuloId/$tanarId/$datetime"; + $_SESSION['alert'][] = 'message:fogadoora_nincs:'.$datetime.":szuloId/$tanarId/$datetime"; + continue; + } + } + + db_start_trans($lr); + // Töröljük a korrábbi jelentkezést és felvesszük az újat + $q = "DELETE FROM fogadoOraJelentkezes WHERE szuloId=%u AND tanarId=%u AND tol>=NOW()"; + $v = array($szuloId, $tanarId); + $r = db_query($q, array('rollback' => true, 'fv' => 'fogadoOraJelentkezes', 'modul' => 'naplo', 'values' => $v), $lr); + // Ha csak törlés volt, akkor tovább + if (!isset($datetime)) { db_commit($lr); continue; } + + // Felvesszük az új jelentkezést + $q = "INSERT INTO fogadoOraJelentkezes (szuloId, tanarId, tol) VALUES (%u, %u, '%s')"; + $v = array($szuloId, $tanarId, $datetime); + $r = db_query($q, array('rollback' => true, 'fv' => 'fogadoOraJelentkezes', 'modul' => 'naplo', 'values' => $v), $lr); + db_commit($lr); + } + + db_close($lr); + + } + + + function getFogadoOraLista() { + + $q = "SELECT * FROM ".__TANEVDBNEV.".fogadoOra LEFT JOIN ".__INTEZMENYDBNEV.".terem USING (teremId) WHERE ig>=NOW()"; + $ret['adatok'] = db_query($q, array('fv' => 'getFogadoOraLista', 'modul' => 'naplo', 'result' => 'assoc', 'keyfield' => 'tanarId')); + + $q = "SELECT * FROM ".__TANEVDBNEV.".fogadoOraJelentkezes WHERE tol>=CURDATE() ORDER BY tanarId,tol"; + $ret['jelentkezesek'] = db_query($q, array('fv' => 'getFogadoOraLista', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'tanarId')); + + return $ret; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/munkaterv.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/munkaterv.php new file mode 100644 index 00000000..a27528a0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/munkaterv.php @@ -0,0 +1,152 @@ +'initNapok','table'=>'nap')); + + $Hetek = $ADAT['Hetek']; + $lr = db_connect('naplo', array('fv' => 'initNapok')); + + db_start_trans($lr); + + $q = "DELETE FROM munkaterv"; + $r[] = db_query($q, array('fv' => 'initNapok', 'modul' => 'naplo'), $lr); + + /* Munkaterv */ + $q = "INSERT INTO munkaterv (munkatervId,munkatervNev,tanitasiNap,tanitasNelkuliMunkanap,vegzosZarasDt) VALUES (1,'alapértelmezett',%u,%u,'%s')"; + $v = array($ADAT['tanitasiNap'], $ADAT['tanitasNelkuliMunkanap'], $ADAT['vegzosZarasDt']); + $r[] = db_query($q, array('fv' => 'initNapok1', 'modul' => 'naplo', 'values' => $v), $lr); + + $q = "INSERT INTO munkatervOsztaly (munkatervId,osztalyId) SELECT 1 AS `munkatervId`,`osztalyId` FROM `".__INTEZMENYDBNEV."`.`osztaly` WHERE vegzoTanev>=%u AND kezdoTanev<=%u"; + $v = array(__TANEV,__TANEV); + $r[] = db_query($q, array('fv' => 'initNapok2', 'modul' => 'naplo', 'values' => $v), $lr); + /* --- */ + + $kovetkezoTanevAdat = getTanevAdat(__TANEV+1); + if (strtotime($kovetkezoTanevAdat['kezdesDt']) > strtotime($kovetkezoTanevAdat['zarasDt'])) + { + $_SESSION['alert'][] = 'alert:Hiba, a következő ('.(__TANEV+1).') tanév előbb végződik, mint kezdődik! Van következő tanév? (admin/tanévek megnyitása menüpont)'; + $r[] = false; + } + + $tanevVege = date('Y-m-d',strtotime('-1 days',strtotime($kovetkezoTanevAdat['kezdesDt']))); + $r[] = napokHozzaadasa(__TANEV, $_TANEV['kezdesDt'], $tanevVege, $_TANEV, $lr); + + orarendiHetekHozzarendelese($_TANEV['kezdesDt'], $_TANEV['zarasDt'], $Hetek, $lr); + + if (in_array(false,$r)) { + db_rollback($lr); + db_close($lr); + return false; + } else { + db_commit($lr); + db_close($lr); + $_SESSION['alert'][] = 'info:success'; + return true; + } + + } + + function ujMunkaterv($ADAT) { + + $q = "INSERT INTO munkaterv (munkatervNev,tanitasiNap,tanitasNelkuliMunkanap,vegzosZarasDt) VALUES + ('%s',%u,%u,'%s')"; + $v = array($ADAT['munkatervNev'], $ADAT['tanitasiNap'], $ADAT['tanitasNelkuliMunkanap'], $ADAT['vegzosZarasDt']); + $munkatervId = db_query($q, array('fv' => 'ujMunkaterv/munkaterv', 'modul' => 'naplo', 'values' => $v, 'result' => 'insert'), $lr); + + if (!$munkatervId) { return false; } + + $q = "INSERT INTO nap SELECT dt, tipus, megjegyzes, orarendiHet, %u AS munkatervId, csengetesiRendTipus FROM nap WHERE munkatervId=%u"; + $v = array($munkatervId, $ADAT['munkatervId']); + $r = db_query($q, array('fv' => 'ujMunkaterv/nap', 'modul' => 'naplo', 'values' => $v), $lr); + + if (!$r) { return false; } + + return $munkatervId; + + } + + function munkatervModositas($Dt, $Tipus, $Megjegyzes, $OrarendiHet, $Hetek, $munkatervId = 1, $csengetesiRendTipus) { + + global $_TANEV; + + logAction( + array( + 'szoveg'=>'munkaterv módosítás', + 'table'=>'nap' + ) + ); + $lr = db_connect('naplo', array('fv' => 'munkatervModositas')); + db_start_trans($lr); + for ($i = 0; $i < count($Dt); $i++) { + $dt = $Dt[$i]; + $time = strtotime($dt); + $tipus = $Tipus[$i]; + $megjegyzes = $Megjegyzes[$i]; + $_csengetesiRendTipus = $csengetesiRendTipus[$i]; + if ($tipus == 'tanítási nap') { + $orarendiHet = $OrarendiHet[$i]; + if ($orarendiHet == 0) { // most állítjuk be tanítási napnak, és nem rendelkeztek az órarendi hétről... + // kérdezzük le, hogy van-e másik munkatervben már megadott órarendi hét erre a napra + $q = "SELECT orarendiHet FROM nap WHERE dt='%s' AND orarendiHet<>0"; + $v = array($dt); + $orarendiHet = db_query($q, array('fv' => 'munkatervModositas/hianyzoOrarendiHet','modul'=>'naplo', 'values'=>$v, 'result'=>'value'), $lr); + if ($orarendiHet === false) { db_rollback($lr); db_close($lr); return false; } + if (is_null($orarendiHet)) { // nincs beállítva órarendi hét --> legyen a $Hetek első eleme... + $orarendiHet = $Hetek[0]; + } + } + } else { + // Ha nem tanítási nap, akkor nincs értelme órarendi hetet beállítani --> 0 + $orarendiHet = 0; + } + if ( + ($time >= strtotime($_TANEV['kezdesDt']) && $time <= strtotime($_TANEV['zarasDt'])) + && ($tipus != 'tanítási nap' || count($Hetek) == 0 || in_array($orarendiHet, $Hetek)) + ) { + $q = "UPDATE nap SET csengetesiRendTipus='%s',tipus='%s', megjegyzes='%s' WHERE dt='%s' AND munkatervId=%u"; + $v = array($_csengetesiRendTipus, $tipus, $megjegyzes, $dt, $munkatervId); + $r = db_query($q, array('fv' => 'munkatervModositas/típus, megjegyzés', 'modul' => 'naplo', 'values' => $v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return(false); } + // Az órarendi hét módosítás mindig az összes munkatervet érinti!! + if ($orarendiHet != 0) { + $q = "UPDATE nap SET orarendiHet=%u WHERE dt='%s' AND tipus='tanítási nap'"; + $v = array($orarendiHet, $dt); + } else { + $q = "UPDATE nap SET orarendiHet=%u WHERE dt='%s' AND munkatervId=%u"; + $v = array($orarendiHet, $dt, $munkatervId); + } + $r = db_query($q, array('fv' => 'munkatervModositas/órarendiHét', 'modul' => 'naplo', 'values' => $v), $lr); + if (!$r) { db_rollback($lr); db_close($lr); return(false); } + } else { + $_SESSION['alert'][] = 'message:wrong_data:munkatervModositas:'.$dt.':'.$tipus.'/'.$orarendiHet; + } + } + db_commit($lr); + db_close($lr); + return true; + + } + + function munkatervOsztaly($ADAT) { + + $r = array(); + for ($i = 0; $i < count($ADAT['osztalyIds']); $i++) { + + $osztalyId = $ADAT['osztalyIds'][$i]; + $munkatervId = $ADAT['ujMunkatervIds'][$i]; + $q = "UPDATE munkatervOsztaly SET munkatervId='%u' WHERE osztalyId=%u"; + $v = array($munkatervId, $osztalyId); + $r[] = db_query($q, array('fv' => 'munkatervOsztaly', 'modul' => 'naplo', 'values' => $v)); + + } + return !in_array(false, $r); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorBlokk.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorBlokk.php new file mode 100644 index 00000000..6b15bdeb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorBlokk.php @@ -0,0 +1,277 @@ + 0) { + $WHERE[] = 'tankorId IN ('.implode(',', array_fill(0, count($tankorIds), '%u')).')'; + $v = $tankorIds; + } + if (isset($blokkId) && intval($blokkId) > 0) { + $WHERE[] = "blokkId != %u"; + $v[] = intval($blokkId); + } + if (count($WHERE) > 0) $whereStr = "WHERE ".implode(' AND ', $WHERE); + + $return = array(); + // tankörök export óraszáma (az aktuális blokk kivételével) + $q = "SELECT tankorId, SUM(exportOraszam) AS exportOraszam FROM `%s`.tankorBlokk + LEFT JOIN `%s`.blokk USING (blokkId) + $whereStr GROUP BY tankorId"; + array_unshift($v, $tanevDbNev, $tanevDbNev); + return db_query($q, array('fv' => 'getTankorExportOraszamByTanev', 'modul' => 'naplo', 'result' => 'keyvaluepair', 'keyfield' => 'tankorId', 'values' => $v), $lr); + + } + + function ujTankorBlokk($blokkNev, $exportOraszam, $tankorIds, $tanev='') { + + global $_TANEV; + + if (!is_array($tankorIds) || count($tankorIds)==0 || $blokkNev=='') { + $_SESSION['alert'][] = '::egy kötelező paraméter hiányzik!'; + return false; + } + + if ($tanev=='') { + $tanev = __TANEV; + $tanevAdat = $_TANEV; + } else { + $tanevAdat = getTanevAdat($tanev); + } + + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev); + + if (strtotime($tanevAdat['zarasDt']) < time()) { + $_SESSION['alert'][] = 'message:Elmúlt tanévre ne hozzunk létre tankörblokkot!'; + return false; + } + if (time() < strtotime($tanevAdat['kezdesDt'])) { + $kezdesDt = $tanevAdat['kezdesDt']; + $kezdesDtPattern = "'%s'"; + } else { + $kezdesDt = 'CURDATE()'; + $kezdesDtPattern = '%s'; + } + $zarasDt = $tanevAdat['zarasDt']; + + /* Vizsgáljuk meg, hogy létrehozható-e a tankorBlokk + kizáró feltétel, ha egy diák beletartozik több csoportba HAVING count>2 + */ + + $lr = db_connect('naplo', array('fv' => 'ujTankorBlokk')); + + // Ellenőrzés - tankör - diákok + $q = "SELECT diakId,COUNT(DISTINCT tankorId) AS c FROM ".__INTEZMENYDBNEV.".tankorDiak + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR kiDt >= $kezdesDtPattern) + GROUP BY diakId HAVING c>1 + ORDER BY tankorId,diakId"; +// AND jelenlet='kötelező' + /* Ez a függvény nem veszi figyelembe a felmentéseket! */ + + $_SESSION['alert'][] = 'info:!!!:ujTankorBlokk() felmentések'; + + $v = mayor_array_join($tankorIds, array($zarasDt, $kezdesDt)); + $ret=db_query($q, array('fv' => 'ujTankorBlokk', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + if (count( $ret ) > 0) { + $_SESSION['alert'][] = 'message:wrong_data:ujTankorBlokk:Sikertelen. '.count($ret).' db ütköző diákot találtam!: diakId='.$ret[0]['diakId'].'...'; + db_close($lr); + return false; + } + + // Ellenőrzés - tankör - tanárok + $q = "SELECT tanarId,COUNT(DISTINCT tankorId) AS c FROM ".__INTEZMENYDBNEV.".tankorTanar + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR kiDt >= $kezdesDtPattern) + GROUP BY tanarId HAVING c>1 + ORDER BY tankorId,tanarId"; + $v = mayor_array_join($tankorIds, array($zarasDt, $kezdesDt)); + $ret = db_query($q, array('fv' => 'ujTankorBlokk', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v)); + if (count( $ret ) > 0) { + $_SESSION['alert'][] = 'message:wrong_data:ujTankorBlokk:Sikertelen. '.count($ret).' db ütköző tanárt találtam!:tanarId='.$ret[0]['tanarId'].'...'; + db_close($lr); + return false; + } + + // Ellenőrzés - óraszám + // tankörök export óraszáma (az aktuális blokk kivételével) + $tankorExportOraszam = getTankorExportOraszamByTanev($tanev, $tankorIds); + // tankörök óraszáma + $tankorOraszam = getTankorOraszamByTanev($tanev, $tankorIds); + foreach ($tankorIds as $index => $tankorId) { + if ($tankorOraszam[$tankorId] - $tankorExportOraszam[$tankorId] < $exportOraszam) + $exportOraszam = $tankorOraszam[$tankorId] - $tankorExportOraszam[$tankorId]; + } + if ($exportOraszam < 0) $exportOraszam = 0; + db_start_trans($lr); + + // Új felvétele + $q = "INSERT INTO `%s`.`blokk` (`blokkNev`, `exportOraszam`) VALUES ('%s', %f)"; + $v = array($tanevDbNev, $blokkNev, $exportOraszam); + + $blokkId = db_query($q, array('fv' => 'ujTankorBlokk', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v, 'rollback' => true), $lr); + if ($blokkId === false) { db_close($lr); return false; } + + // Tankörök hozzárendelése + $Val = array(); $v = array($tanevDbNev); + for ($i = 0; $i < count($tankorIds); $i++) { + $Val[] = "(%u, %u)"; + array_push($v, $blokkId, $tankorIds[$i]); + } + $q = "INSERT INTO `%s`.tankorBlokk (blokkId,tankorId) VALUES ".implode(',', $Val); + $r = db_query($q, array('fv' => 'ujTankorBlokk', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if (!$r) { db_close($lr); return false; } + + db_commit($lr); + db_close($lr); + return true; + + } + + function tankorBlokkModositas($ADAT) { + + + if (!is_array($ADAT['tankorIds']) || count($ADAT['tankorIds'])==0 || $ADAT['blokkNev']=='') { + $_SESSION['alert'][] = '::egy kötelező paraméter hiányzik!(tbmod)'; + return false; + } + + if ($ADAT['tanev']=='') { + $tanev = __TANEV; + $tanevAdat = $_TANEV; + } else { + $tanev = $ADAT['tanev']; + $tanevAdat = getTanevAdat($tanev); + } + + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev); + + if (strtotime($tanevAdat['zarasDt']) < time()) { + $_SESSION['alert'][] = 'message:Elmúlt tanévre ne hozzunk létre tankörblokkot!'; + return false; + } + $blokkId = $ADAT['blokkId']; + $tankorIds = $ADAT['tankorIds']; + + $zarasDt = $tanevAdat['zarasDt']; + if (time() < strtotime($tanevAdat['kezdesDt'])) { + $kezdesDt = $tanevAdat['kezdesDt']; + $kezdesDtPattern = "'%s'"; + } else { + $kezdesDt = 'CURDATE()'; + $kezdesDtPattern = "%s"; + } + + $lr = db_connect('naplo'); + + // Ellenőrizzük a tankör tagokat - azonosak-e tankörönként + $q = "SELECT diakId,COUNT(DISTINCT tankorId) AS c FROM ".__INTEZMENYDBNEV.".tankorDiak + WHERE tankorId IN (".implode(',', array_fill(0, count($ADAT['tankorIds']), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR kiDt >= $kezdesDtPattern) + GROUP BY diakId HAVING c>1 + ORDER BY tankorId,diakId"; + + $v = mayor_array_join($ADAT['tankorIds'], array($zarasDt, $kezdesDt)); + $ret = db_query($q, array('fv' => 'tankorBlokkModositas', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $lr); + if (count( $ret ) > 0) { + $_SESSION['alert'][] = 'message:wrong_data:tankorBlokkModositas:Sikertelen. '.count($ret).' db ütköző diákot találtam!:diakId='.$ret[0]['diakId'].'...'; + db_close($lr); + return false; + } + + // Ellenőrizzük a tankör tanárokat - azonosak-e tankörönként + $q = "SELECT tanarId,COUNT(DISTINCT tankorId) AS c FROM ".__INTEZMENYDBNEV.".tankorTanar + WHERE tankorId IN (".implode(',', array_fill(0, count($ADAT['tankorIds']), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR kiDt >= $kezdesDtPattern) + GROUP BY tanarId HAVING c>1 + ORDER BY tankorId,tanarId"; + $v = mayor_array_join($ADAT['tankorIds'], array($zarasDt, $kezdesDt)); + $ret = db_query($q, array('fv' => 'tankorBlokkModositas', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $lr); + if (count( $ret )>0) { + $_SESSION['alert'][] = 'message:wrong_data:tankorBlokkModositas:Sikertelen. '.count($ret).' db ütköző tanárt találtam!:blokkId='.$blokkId.':tanarId='.$ret[0]['tanarId'].'...'; + db_close($lr); + return false; + } + + // tankörök export óraszáma (az aktuális blokk kivételével) + $tankorExportOraszam = getTankorExportOraszamByTanev($tanev, $ADAT['tankorIds'], $blokkId); + // tankörök óraszáma + $tankorOraszam = getTankorOraszamByTanev($tanev, $ADAT['tankorIds']); + foreach ($ADAT['tankorIds'] as $index => $tankorId) { + if ($tankorOraszam[$tankorId] - $tankorExportOraszam[$tankorId] < $ADAT['exportOraszam']) { + $_SESSION['alert'][] = 'message:wrong_data:tankorId='.$tankorId.', óraszám='.$tankorOraszam[$tankorId].', export óraszám='. + intval($tankorExportOraszam[$tankorId]).', blokk óraszám='.$ADAT['exportOraszam']; + return false; + } + } + + // Csoportnév és export óraszám módosítása + $q = "UPDATE `%s`.blokk SET blokkNev='%s',exportOraszam=%f WHERE blokkId=%u"; + $v = array($tanevDbNev, $ADAT['blokkNev'], $ADAT['exportOraszam'], $ADAT['blokkId']); + db_query($q, array('fv' => 'tankorBlokkModositas', 'modul' => 'naplo', 'values' => $v), $lr); + + // SAFE: + db_start_trans($lr); + + // Törlés + $q = "DELETE FROM `%s`.tankorBlokk WHERE blokkId=%u"; + $v = array($tanevDbNev, $blokkId); + $r = db_query($q, array('fv' => 'tankorBlokkModositas/Delete', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + if ($r === false) { db_close($lr); return false; } + // Itt nem jó a commit, hisz még félben van a dolog - nem? // else db_commit($lr); + + // Tankörök hozzárendelése + $v = array($tanevDbNev); $Val = array(); + for ($i = 0; $i < count($tankorIds); $i++) { + $Val[] = "(%u, %u)"; + array_push($v, $blokkId, $tankorIds[$i]); + } + if (count($Val) > 0) { + $q = "INSERT INTO `%s`.tankorBlokk (blokkId,tankorId) VALUES ".implode(',', $Val); + $r = db_query($q, array('fv' => 'tankorBlokkModositas/Insert', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback' => true), $lr); + } + + if ($r===false) { db_close($lr); return false; } + + db_commit($lr); + + db_close($lr); + return true; + + } + + function tankorBlokkTorles($ADAT) { + + if ($ADAT['blokkId']=='') { + $_SESSION['alert'][] = '::egy kötelező paraméter hiányzik!'; + return false; + } + + if ($ADAT['tanev']=='') { + $tanev = __TANEV; + $tanevAdat = $_TANEV; + } else { + $tanev = $ADAT['tanev']; + $tanevAdat = getTanevAdat($tanev); + } + + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev); + + $blokkId=intval($ADAT['blokkId']); + + $q = "DELETE FROM `%s`.blokk WHERE blokkId=%u"; + $v = array($tanevDbNev, $blokkId); + $r = db_query($q, array('fv' => 'TankorBlokk|Delete', 'modul' => 'naplo_intezmeny', 'values' => $v, 'rollback'=>true), $lr); + + return true; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorCsoport.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorCsoport.php new file mode 100644 index 00000000..984726db --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorCsoport.php @@ -0,0 +1,164 @@ + 'tankorCsoport', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'csoportId', 'values' => $tankorIds + )); + + } + + function ujTankorCsoport($csoportNev, $tankorIds) { + + global $_TANEV; + $dt = (time() <= strtotime($_TANEV['kezdesDt'])) ? "'".$_TANEV['kezdesDt']."'" : 'CURDATE()'; + + $lr = db_connect('naplo', array('fv' => 'ujTankorCsoport')); + + // Ellenőrizzük, hogy a megadott tankörök még nem foglaltak + $q = "SELECT tankorId FROM ".__TANEVDBNEV.".tankorCsoport + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") LIMIT 1"; + $ret = db_query($q, array('fv' => 'ujTankorCsoport', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $tankorIds), $lr); + if (count($ret) > 0) { + $_SESSION['alert'][] = 'message:utkozes:ujTankorCsoport:tankör ütközés'; + db_close($lr); + return false; + } + + // Ellenőrizzük a tankör tagokat - azonosak-e tankörönként + $q = "SELECT DISTINCT tankorId,diakId FROM ".__INTEZMENYDBNEV.".tankorDiak + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR kiDt >= '%s') + ORDER BY tankorId,diakId"; + $v = mayor_array_join($tankorIds, array($dt, $dt)); + $ret = db_query($q, array('fv' => 'ujTankorCsoport', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + $tDiakok = array(); + foreach ($tankorIds as $tankorId) $tDiakok[$tankorId] = array(); // különben az üres tankör nem jelennemeg az ellenőrzéskor! + for ($i = 0; $i < count($ret); $i++) { + $tDiakok[$ret[$i]['tankorId']][] = $ret[$i]['diakId']; + } + foreach ($tDiakok as $tankorId => $diakIds) { + if (is_array($elsoDiakIds)) { + if ($elsoDiakIds != $diakIds) { + $_SESSION['alert'][] = 'message:wrong_data:ujTankorCsoport:tankör tagok nem azonosak:(tankorId='.$tankorId.')'; + db_close($lr); + return false; + } + } else { + $elsoDiakIds = $diakIds; + } + } + + // Új csoport felvétele + $q = "INSERT INTO ".__TANEVDBNEV.".csoport (csoportNev) VALUES ('%s')"; + $csoportId = db_query($q, array('fv' => 'ujTankorCsoport', 'modul' => 'naplo', 'result' => 'insert', 'values' => array($csoportNev)), $lr); + if ($csoportId === false) { db_close($lr); return false; } + + // Tankörök hozzárendelése + $v = $Val = array(); + for ($i = 0; $i < count($tankorIds); $i++) { + $Val[] = "(%u, %u)"; + array_push($v, $csoportId, $tankorIds[$i]); + } + $q = "INSERT INTO ".__TANEVDBNEV.".tankorCsoport (csoportId,tankorId) VALUES ".implode(',', $Val); + db_query($q, array('fv' => 'ujTankorCsoport', 'modul' => 'naplo', 'values' => $v), $lr); + + _setMinMax($csoportId,$lr); + + db_close($lr); + return true; + + } + + function tankorCsoportModositas($csoportId, $csoportNev, $tankorIds) { + + global $_TANEV; + $dt = (time() <= strtotime($_TANEV['kezdesDt'])) ? "'".$_TANEV['kezdesDt']."'" : 'CURDATE()'; + + if (count($tankorIds) == 0) { + $_SESSION['alert'][] = 'message:wrong_data:tankorCsoportModositas/#0:nincs tankör'; + return false; + } + + $lr = db_connect('naplo'); + + // Ellenőrizzük, hogy a megadott tankörök még nem foglaltak + $q = "SELECT tankorId FROM ".__TANEVDBNEV.".tankorCsoport + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") AND csoportId != %u LIMIT 1"; + $v = mayor_array_join($tankorIds, array($csoportId)); + $ret = db_query($q, array('fv' => 'tankorCsoportModositas/#1', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v), $lr); + if (count($ret) > 0) { + $_SESSION['alert'][] = 'message:utkozes:tankorCsoportModositas/#2:tankör ütközés'; + db_close($lr); + return false; + } + + // Ellenőrizzük a tankör tagokat - azonosak-e tankörönként + $q = "SELECT tankorId,diakId FROM ".__INTEZMENYDBNEV.".tankorDiak + WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") + AND beDt <= '%s' AND (kiDt IS NULL OR kiDt >= '%s' ) + ORDER BY tankorId,diakId"; + $v = mayor_array_join($tankorIds, array($dt, $dt)); + $ret = db_query($q, array('fv' => 'tankorCsoportModositas/#3', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $v), $lr); + $tDiakok = array(); + for ($i = 0; $i < count($ret); $i++) $tDiakok[$ret[$i]['tankorId']][] = $ret[$i]['diakId']; + foreach ($tankorIds as $index => $tankorId) { + $diakIds = $tDiakok[$tankorId]; + if (is_array($elsoDiakIds)) { + if ($elsoDiakIds != $diakIds) { + $_SESSION['alert'][] = 'message:wrong_data:tankorCsoportModositas/#4:tankör tagok nem azonosak:(tankorId='.$tankorId.')'; + db_close($lr); + return false; + } + } else { + $elsoDiakIds = $diakIds; + } + } + + // Csoportnév módosítása + $q = "UPDATE ".__TANEVDBNEV.".csoport SET csoportNev = '%s' WHERE csoportId = %u"; + $v = array($csoportNev, $csoportId); + db_query($q, array('fv' => 'tankorCsoportModositas', 'modul' => 'naplo', 'values' => $v)); + // Régi csoporthozzárendelések törlése + $q = "DELETE FROM ".__TANEVDBNEV.".tankorCsoport WHERE csoportId = %u"; + $v = array($csoportId); + db_query($q, array('fv' => 'tankorCsoportModositas', 'modul' => 'naplo', 'values' => $v)); + // Tankörök hozzárendelése + $v = $Val = array(); + for ($i = 0; $i < count($tankorIds); $i++) { + $Val[] = "(%u, %u)"; + array_push($v, $csoportId, $tankorIds[$i]); + } + $q = "INSERT INTO ".__TANEVDBNEV.".tankorCsoport (csoportId,tankorId) VALUES ".implode(',', $Val); + db_query($q, array('fv' => 'tankorCsoportModositas/#5', 'modul' => 'naplo', 'values' => $v)); + + _setMinMax($csoportId,$lr); + + db_close($lr); + return true; + + } + + function tankorCsoportTorles($csoportId, $tanev = __TANEV) { + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + $q = "DELETE FROM `%s`.csoport WHERE csoportId=%u"; + $v = array($tanevDb, $csoportId); + db_query($q, array('fv' => 'tankorCsoportTorles', 'modul' => 'naplo', 'values' => $v)); + } + + function _setMinMax($csoportId,$lr) { + + // Tankörcsoport minimum, maximum beállítás - legbővebb halmaz + $v = array($csoportId); + $q = ("SET @min= (SELECT MIN(min) FROM ".__INTEZMENYDBNEV.".tankor WHERE tankorId IN (SELECT DISTINCT tankorId FROM tankorCsoport WHERE csoportId=%u))"); + db_query($q, array('fv' => 'ujTankorCsoport', 'modul' => 'naplo', 'values' => $v), $lr); + $q = ("SET @max= (SELECT MAX(max) FROM ".__INTEZMENYDBNEV.".tankor WHERE tankorId IN (SELECT DISTINCT tankorId FROM tankorCsoport WHERE csoportId=%u))"); + db_query($q, array('fv' => 'ujTankorCsoport', 'modul' => 'naplo', 'values' => $v), $lr); + $q = "UPDATE ".__INTEZMENYDBNEV.".tankor SET min=@min, max=@max WHERE tankorId IN (SELECT DISTINCT tankorId FROM tankorCsoport WHERE csoportId=%u)"; + db_query($q, array('fv' => 'ujTankorCsoport', 'modul' => 'naplo', 'values' => $v), $lr); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/targyBontas.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/targyBontas.php new file mode 100644 index 00000000..5b31bdec --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/targyBontas.php @@ -0,0 +1,240 @@ +'checkTargyBontas','modul'=>'naplo','result'=>'value')); + return ($darab>0?TRUE:FALSE); + } + + function getKepzesTargyBontasByOsztalyIds($osztalyIds) { + + if (!is_array($osztalyIds) || count($osztalyIds)==0) return false; + + // tankör- és óraszám adatok + $q = "SELECT bontasId, tankorId, hetiOraszam + FROM kepzesTargyBontas LEFT JOIN bontasTankor USING (bontasId) + WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).") AND tankorId IS NOT NULL + ORDER BY bontasId"; + $r = db_query($q, array('fv'=>'getKepzesTargyBontasByOsztalyIds/2','modul'=>'naplo','result'=>'indexed','values'=>$osztalyIds)); + foreach ($r as $a) $TO[$a['bontasId']][] = array('tankorId'=>$a['tankorId'], 'hetiOraszam'=>$a['hetiOraszam']); + + // kepzesTargyBontas adatok + $q = "SELECT kepzesTargyBontas.*,sum(hetiOraszam) as hetiOraszam + FROM kepzesTargyBontas LEFT JOIN bontasTankor USING (bontasId) + WHERE osztalyId IN (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + GROUP BY bontasId ORDER BY bontasId"; + $r = db_query($q, array('fv'=>'getKepzesTargyBontasByOsztalyIds','modul'=>'naplo','result'=>'indexed','values'=>$osztalyIds)); + if (!is_array($r)) return $r; + $return = array(); + foreach ($r as $a) $return[$a['osztalyId']][$a['kepzesOratervId']][] = array( + 'bontasId' => $a['bontasId'], + 'targyId' => $a['targyId'], + 'hetiOraszam' => $a['hetiOraszam'], + 'tankor-oraszam'=>$TO[ $a['bontasId'] ] + ); + + return $return; + + } + + function kepzesOratervSorrend($evfolyamJel, $osztalyIds, $kepzesIds) { + // ez volt // group_concat(kepzesTargyBontas.targyId order by kepzesTargyBontas.targyId separator '-') as btStr + + $q = "select + kepzesOratervId, tipus, targyNev, kepzesOraterv.targyId as targyId, kepzesOraterv.hetiOraszam as hetiOraszam, osztalyId, kepzesId, szemeszter, + group_concat(concat_ws('-',kepzesTargyBontas.targyId,tankorId,bontasTankor.hetiOraszam) order by kepzesTargyBontas.targyId,tankorId separator '_') as btStr + from kepzesOraterv + left join targy using (targyId) + left join kepzesOsztaly using (kepzesId) + left join ".__TANEVDBNEV.".kepzesTargyBontas using (kepzesOratervId, osztalyId) + left join ".__TANEVDBNEV.".bontasTankor using (bontasId) + where evfolyamJel='%s' and osztalyId in (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + and kepzesId in (".implode(',', array_fill(0, count($kepzesIds), '%u')).") + group by kepzesOratervId, tipus, kepzesOraterv.targyId, kepzesOraterv.hetiOraszam, osztalyId, kepzesId, szemeszter + order by tipus, targyNev, kepzesOraterv.targyId, kepzesOraterv.hetiOraszam, btStr, osztalyId, szemeszter"; + $v = mayor_array_join(array($evfolyamJel), $osztalyIds, $kepzesIds); + $ret = db_query($q, array('fv'=>'kepzesOratervSorrend','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + return reindex($ret, array('tipus','targyId','hetiOraszam','btStr')); + } + + function addBontas($osztalyId, $kepzesOratervId, $targyId=null, $olr=null) { + + // is_resource mysqli esetén nem jó (object) + if (!$olr) $lr = db_connect('naplo_intezmeny', array('fv'=>'addBontas')); + else $lr = $olr; + + if ($targyId == '') { + $q = "SELECT targyId FROM kepzesOraterv WHERE kepzesOratervId=%u"; + $targyId = db_query($q, array('fv'=>'addBontas','modul'=>'naplo_intezmeny','result'=>'value','values'=>array($kepzesOratervId)), $lr); + } + if ($targyId == '') return false; + + $q = "INSERT INTO ".__TANEVDBNEV.".kepzesTargyBontas (osztalyId, kepzesOratervId, targyId) VALUES (%u, %u, %u)"; + $bontasId = db_query($q, array('fv'=>'addBontas/insert','modul'=>'naplo','result'=>'insert','values'=>array($osztalyId,$kepzesOratervId,$targyId)), $lr); + + // is_resource mysqli esetán nem jó (object) + if (!$olr) db_close(); + + return array( + 'targyId' => $targyId, + 'osztalyId' => $osztalyId, + 'kepzesOratervId' => $kepzesOratervId, + 'bontasId' => $bontasId + ); + + } + + function delBontas($bontasIds) { + if (!is_array($bontasIds) || count($bontasIds) == 0) return false; + $q = "DELETE FROM kepzesTargyBontas WHERE bontasId IN (".implode(',', array_fill(0, count($bontasIds), '%u')).")"; + $r = db_query($q, array('fv'=>'delBontas','modul'=>'naplo','values'=>$bontasIds)); + if ($r) return $bontasIds; + else return $r; + } + + function initFromLastYear() { + // Csak akkor lehet init, ha még nincs bent egyetlen bontás sem az adott kepzes-osztály párokhoz + $q = "select count(*) from kepzesTargyBontas"; + $db = db_query($q, array('fv'=>'kepzesTargyBontasInit/0','modul'=>'naplo','result'=>'value','values'=>$v)); + if ($db > 0) return true; + + $lr = db_connect('naplo_intezmeny', array('fv'=>'initFromLastYear')); + // is_resource mysqli esetén nem jó (object) + if (!$lr) return false; + + $elozoTanevDb = tanevDbNev(__INTEZMENY,__TANEV-1); + // ha nincs előző tanév, akkor kész az init + $q = "SELECT COUNT(SCHEMA_NAME) FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME = '%s'"; + $v = array($elozoTanevDb); + $db = db_query($q, array('fv'=>'kepzesTargyBontasInit/0.5','modul'=>'naplo','result'=>'value','values'=>$v)); + if ($db == 0) return true; + + set_time_limit(300); + + // Az előző év bontásai alapján + /* + Lekérdezzük az előző év bontásainak adatait, melyek az adott kepzes-osztály párhoz tartoztak. + bontasId szerint rendezünk, hogy egy bontást csak egyszer vegyünk fel. + */ + $q = "select kepzesOratervId,osztalyId,kepzesOraterv.targyId as koTargyId,kepzesTargyBontas.targyId as bontasTargyId, + tankorId,bontasTankor.hetiOraszam as bontasOraszam, bontasId, + kepzesId,evfolyamJel,szemeszter,kepzesOraterv.hetiOraszam as koOraszam,tipus + from ".$elozoTanevDb.".kepzesTargyBontas + left join ".$elozoTanevDb.".bontasTankor using (bontasId) + left join kepzesOraterv using (kepzesOratervId) + order by bontasId"; + $r1 = db_query($q, array('fv'=>'kepzesTargyBontasInit/1','modul'=>'naplo_intezmeny','result'=>'indexed'), $lr); + + $elozoTavalyiBontasId = ''; + foreach ($r1 as $r1Adat) { + // Ha van a tavalyinak megfelelő képzés-óraterv bejegyzés, akkor hozzunk létre neki bontást + if ($r1Adat['tipus'] == 'mintatantervi') { + $q = "select kepzesOraterv.*,oraszam from kepzesOraterv + left join tankorSzemeszter on tankorSzemeszter.szemeszter=kepzesOraterv.szemeszter and tanev=".__TANEV." and tankorId=%u + where kepzesId=%u and kepzesOraterv.szemeszter=%u + and tipus='%s' and kepzesOraterv.targyId=%u + and kepzesOraterv.evfolyamJel='".getKovetkezoEvfolyamJel($r1Adat['evfolyamJel'])."' + "; + $v = array($r1Adat['tankorId'], $r1Adat['kepzesId'], $r1Adat['szemeszter'], $r1Adat['tipus'], $r1Adat['koTargyId']); + } else { + $q = "select * from kepzesOraterv + left join tankorSzemeszter on tankorSzemeszter.szemeszter=kepzesOraterv.szemeszter and tanev=".__TANEV." and tankorId=%u + where kepzesId=%u and kepzesOraterv.szemeszter=%u + and tipus='%s' and kepzesOraterv.targyId is null + and kepzesOraterv.evfolyamJel='".getKovetkezoEvfolyamJel($r1Adat['evfolyamJel'])."' + "; + $v = array($r1Adat['tankorId'], $r1Adat['kepzesId'], $r1Adat['szemeszter'], $r1Adat['tipus'], ); + } + $r2 = db_query($q, array('fv'=>'kepzesTargyBontasInit/2','modul'=>'naplo_intezmeny','result'=>'record','values'=>$v), $lr); + /* + - Lehet az eredmény üres, ha nincs a képzés óratervben idén folytatása a tárgynak/típusnak + */ + if (!is_array($r2)) continue; + /* + - Amúgy csak egy rekord lehet... - ekkor a bontást létrehozhatjuk, ha az előző rekord nem ugyanehhez a bontáshoz tartozott... + (a hozzárendelt tankört csak akkor vesszük figyelembe, ha egy van belőle...) + */ + if ($elozoTavalyiBontasId != $r1Adat['bontasId']) { + $r3 = addBontas($r1Adat['osztalyId'], $r2['kepzesOratervId'], $r1Adat['bontasTargyId'], $lr); + $bontasId = $r3['bontasId']; + $elozoTavalyiBontasId = $r1Adat['bontasId']; + } + + if (($r1Adat['tankorId'] != '') && ($r1Adat['bontasOraszam'] == $r1Adat['koOraszam']) && ($r2['hetiOraszam'] == $r2['oraszam'])) { + /* + Ha a tavalyi tankör idei évhez is hozzá van rendelve... + és tavaly megegyezett a tankör óraszáma a bontás óraszámával... + a tankör idei óraszáma is megegyezik a bontás/képzés-oraterv óraszámával, + akkor a tankör is hozzárendelhető + */ + $r4 = bontasTankor(array($bontasId), $r1Adat['tankorId'], $r2['hetiOraszam'], $lr); + if (!$r4) {} // hibakezelés?? + } + } + db_close($lr); + return true; + } + + function kepzesTargyBontasInit($osztalyIds, $kepzesIds) { + + // A megadott osztaly megadott képzéseinek aktuális évfolyamának tantárgyhoz tartozó kepzesOraterv bejegyzéseihez felveszünk egy-egy bontást - ha még nincs + $q = "insert into ".__TANEVDBNEV.".kepzesTargyBontas (osztalyId, kepzesOratervId, targyId) + select osztalyId, kepzesOratervId, kepzesOraterv.targyId as targyId + from kepzesOraterv left join kepzesOsztaly using(kepzesId) + left join ".__TANEVDBNEV.".osztalyNaplo using (osztalyId) + left join ".__TANEVDBNEV.".kepzesTargyBontas using (osztalyId, kepzesOratervId) + where osztalyId in (".implode(',', array_fill(0, count($osztalyIds), '%u')).") + and kepzesId in (".implode(',', array_fill(0, count($kepzesIds), '%u')).") + and kepzesOraterv.evfolyamJel=osztalyNaplo.evfolyamJel + and bontasId is null and kepzesOraterv.targyId is not null"; + $v = mayor_array_join($osztalyIds, $kepzesIds); + return db_query($q, array('fv'=>'kepzesTargyBontasInit','modul'=>'naplo_intezmeny','result'=>'affected rows','values'=>$v)); + + } + + function bontasTankor($bontasIds, $tankorId, $hetiOraszam, $olr = null) { + + if (!is_array($bontasIds) || count($bontasIds) == 0 || $tankorId == '' || $hetiOraszam <= 0) { + $_SESSION['alert'][] = 'message:empty_field:bontasTankor'; + return false; + } + // is_resource mysqli esetén nem jó (object) + if (!$olr) $lr = db_connect('naplo_intezmeny', array('fv'=>'bontasTankor')); + else $lr = $olr; + + db_start_trans($lr); + $ok=true; + /* + Óraszám ellenőrzés - kellene itt is? + - tankör óraszáma: tankorBontás óraszám <= tankorSzemeszer óraszám + - bontás óraszáma: bontás-óraszám <= kepzesOraterv óraszám + - tipus szerint a tankörnek csak egyféle óraszáma lehet + */ + + // Tankor-osztály hozzárendelés + $q = "insert into ".__INTEZMENYDBNEV.".tankorOsztaly (tankorId, osztalyId) + select distinct %u as tankorId, kepzesTargyBontas.osztalyId as osztalyId from ".__TANEVDBNEV.".kepzesTargyBontas + left join ".__INTEZMENYDBNEV.".tankorOsztaly on kepzesTargyBontas.osztalyId=tankorOsztaly.osztalyId and tankorId=%u + where bontasId in (".implode(',', array_fill(0, count($bontasIds), '%u')).") and tankorId is null"; + $v = $bontasIds; array_unshift($v, $tankorId, $tankorId); + $r = db_query($q, array('fv'=>'bontasTankor/1','modul'=>'naplo','result'=>'affected rows','values'=>$v), $lr); + if ($r === false) { db_rollback($lr, 'tankör-osztály hozzárendelés'); if ($olr) db_close($lr); return false; } // is_resource mysqli esetén nem jó (object) + // bontasTankor rögzítése + foreach ($bontasIds as $bontasId) { + $q = "insert into ".__TANEVDBNEV.".bontasTankor (bontasId, tankorId, hetiOraszam) values (%u, %u, %f)"; + $v = array($bontasId, $tankorId, $hetiOraszam); + $r = db_query($q, array('fv'=>'bontasTankor/bt','modul'=>'naplo','values'=>$v), $lr); + if ($r === false) { db_rollback($lr, 'tankörnév hozzárendelés'); if (!$olr) db_close($lr); return false; } // is_resource mysqli esetén nem jó (object) + } + db_commit($lr); + + $r1 = setTankorNev($tankorId, $tankorNevExtra=null, $lr); + // is_resource mysqli esetén nem jó (object) + if (!$olr) db_close($lr); + + return $r1; + } + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/targyOraszam.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/targyOraszam.php new file mode 100644 index 00000000..d17958d0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/targyOraszam.php @@ -0,0 +1,28 @@ + 'getTargyOraszam', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'targyNev', 'values' => $v)); + + foreach($R as $_tankorId => $D) { + $R[$_tankorId]['tankorTanar'] = getTankorTanarai($tankorId); + } + + return $R; + + } + + function getTargyOraszamEvfolyamonkent($tanev=__TANEV) { + + $q = "SELECT SUM(oraszam)/(SELECT MAX(szemeszter) FROM szemeszter WHERE tanev=%u) AS db, targyNev FROM tankorSzemeszter + LEFT JOIN tankor USING (tankorId) LEFT JOIN targy USING (targyId) WHERE tanev=%u GROUP BY targyid ORDER BY targyNev"; + $v = array($tanev, $tanev); + return db_query($q, array('fv' => 'getTargyOraszamEvfolyamonkent', 'modul' => 'naplo_intezmeny', 'result' => 'assoc', 'keyfield' => 'targyNev', 'values' => $v)); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/vegzosOrarendLezaras.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/vegzosOrarendLezaras.php new file mode 100644 index 00000000..b7f9acd0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/vegzosOrarendLezaras.php @@ -0,0 +1,33 @@ += '%s' AND (tanarId,osztalyJel,targyJel) IN ( + SELECT tanarId,osztalyJel,targyJel FROM orarendiOraTankor WHERE tankorId IN (".implode(',', array_fill(0, count($ADAT['vegzosTankor']), '%u')).") + )"; + $v = mayor_array_join(array($ADAT['dt']), $ADAT['vegzosTankor']); + db_query($q, array('fv' => 'vegzosOrarendLezarads', 'modul' => 'naplo', 'values' => $v)); + + // A lezárás dátuma után végződő bejegyzáések igDt-inek beállítása + $q = "UPDATE orarendiOra LEFT JOIN orarendiOraTankor USING (tanarId,osztalyJel,targyJel) SET igDt=('%s' - INTERVAL 1 DAY) + WHERE tankorId IN (".implode(',', array_fill(0, count($ADAT['vegzosTankor']),'%u')).") AND igDt > '%s'"; + $v = mayor_array_join(array($ADAT['dt']), $ADAT['vegzosTankor'], array($ADAT['dt'])); + db_query($q, array('fv' => 'vegzosOrarendLezarads', 'modul' => 'naplo', 'values' => $v)); + + } + + function vegzosHaladasiNaploLezaras($ADAT) { + + $q = "DELETE FROM ora WHERE dt >= '%s' AND tankorId IN (".implode(',', array_fill(0, count($ADAT['vegzosTankor']), '%u')).")"; + $v = mayor_array_join(array($ADAT['dt']), $ADAT['vegzosTankor']); + db_query($q, array('fv' => 'vegzosHaladasiNaploLezarads', 'modul' => 'naplo', 'values' => $v)); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/uzeno/uzeno.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/uzeno/uzeno.php new file mode 100644 index 00000000..71df3eae --- /dev/null +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/uzeno/uzeno.php @@ -0,0 +1,236 @@ +0) define('__SZEREP','szulo'); + elseif (__DIAK===true && defined('__USERDIAKID') && intval(__USERDIAKID)>0) define('__SZEREP','diak'); + elseif (__UZENOADMIN===true) define('__SZEREP','admin'); + else define(__SZEREP,''); +*/ + } + + function getUzenoSzerep() { + + if (__TANAR===true) $szerep = 'tanar'; + elseif (__DIAK===true && defined('__PARENTDIAKID') && intval(__PARENTDIAKID)>0) $szerep = 'szulo'; + elseif (__DIAK===true && defined('__USERDIAKID') && intval(__USERDIAKID)>0) $szerep = 'diak'; + elseif (__UZENOADMIN===true) $szerep = 'admin'; + else $szerep=''; + + return $szerep; + + } + + function uzenhet($kinek) { + global $UZENODENY; + if (is_null($UZENODENY[__SZEREP])) return true; + return (!in_array($kinek,$UZENODENY[__SZEREP])); + } + + function getUzenoUzenetek($SET=array('tanev'=>__TANEV,'count'=>false,'filter'=>array(),'ignoreAdmin'=>false,'filterFlag'=>array(),'limits'=>array(),'order'=>'DESC')) { + + $__SZEREP = __SZEREP; // cronból is szeretnénk használni + + if (__SZEREP=='') return array(); + + + $feladoId = setUzenoFeladoId(); + $TIPUSOK = initUzenoTipusok(array('csakId'=>true,'result'=>'idonly','tanev'=>$SET['tanev'],'forRead'=>true)); + $TIPUSOK[$__SZEREP][] = setUzenoFeladoId(); + + if (__UZENOADMIN===true && $SET['ignoreAdmin']===true) return array(); // skip useradmin (pl hirnok) + + if (is_array($SET['filter']) && count($SET['filter'])>0) { + for ($i=0; $i0) { + for ($i=0; $i0) $WX = implode(' AND ',$X).' AND'; else $WX = ''; + if (is_array($Y) && count($Y)>0) $HAVING = 'HAVING '.implode(' AND ',$Y); else $HAVING = ''; + + $JOINTABLE = "LEFT JOIN `$dbName`.`uzenoFlagek` ON (uzeno.mId=uzenoFlagek.mId AND Id=$feladoId AND Tipus='".$__SZEREP."')"; + + if (__UZENOADMIN!==true) { + foreach ($TIPUSOK as $tipus=>$DATA) { + if (is_array($DATA) && count($DATA)>0) { + $W[] = ' (cimzettTipus="'.$tipus.'" AND cimzettId IN ('. implode(',',$DATA) .')) '; + $W[] = ' (cimzettTipus="'.$tipus.'" AND cimzettTipus=feladoTipus AND cimzettId=0) '; + + } + } + $q = "SELECT uzeno.*,uzenoFlagek.flag AS flag FROM $dbName.uzeno $JOINTABLE WHERE ".$WX." ((feladoId=$feladoId and feladoTipus='".$__SZEREP."') OR (".implode(' OR ',$W).")) $HAVING ORDER BY uzeno.mId ".$O.$L; + $qc = "SELECT count(*) AS db FROM $dbName.uzeno WHERE ".$WX." ((feladoId=$feladoId and feladoTipus='".$__SZEREP."') OR (".implode(' OR ',$W)."))"; + } else { + // NOTE - nem minden id-nek az adatai lesznek lekérdezve később!!! + $WX = ($WX=='')?'':'WHERE '.$WX.' 1=1'; +// $q = "SELECT uzeno.*,uzenoFlagek.flag AS flag FROM `$dbName`.uzeno $JOINTABLE ".$WX." $HAVING ORDER BY uzeno.mId DESC".$L; + $q = "SELECT uzeno.* FROM `$dbName`.uzeno ".$WX." ORDER BY uzeno.mId DESC".$L; + $qc= "SELECT count(*) AS db FROM $dbName.uzeno ".$WX; + } + if ($SET['count']!==true) + $result = db_query($q, array('fv' => 'getUzenoUzenetek/1', 'modul' => 'naplo_intezmeny', 'result' => 'indexed')); + else + $result = db_query($qc, array('fv' => 'getUzenoUzenetek/2', 'modul' => 'naplo_intezmeny', 'result' => 'value')); + return $result ; + + } + + // getUzenoUzenetek--> + // pre-ből + function initUzenoTipusok($SET=array('csakId'=>true,'tanev'=>__TANEV,'forRead'=>false)) { + global $UZENODENY; + + $TIPUSOK = array(); + $feladoId = setUzenoFeladoId(); + switch (__SZEREP) { + case 'tanar': /* nem tiltható */ + $TIPUSOK['tankorSzulo'] = $TIPUSOK['tankor'] = getTankorByTanarId($feladoId, $SET['tanev'], array('csakId' => $SET['csakId'])); + $TIPUSOK['munkakozosseg'] = getMunkakozossegByTanarId($feladoId, array('csakId'=>$SET['csakId'])); + if (__OSZTALYFONOK) { + $TIPUSOK['osztalySzulo'] = $TIPUSOK['osztaly'] = getOsztalyByTanarId($feladoId, array('tanev'=>$SET['tanev'],'csakId' => $SET['csakId'])); + } + $TIPUSOK['osztalyTanar'] = getTanarOsztaly($feladoId,$SET); + break; + case 'szulo': /* tiltható */ + //if (uzenhet('tanar')) $TIPUSOK['tanar'] = extendUzenoTipusok(array('csakId'=>false,'tanev'=>$SET['tanev'])); + if (uzenhet('tankorSzulo') || $SET['forRead']===true) $TIPUSOK['tankorSzulo'] = getTankorByDiakId( __USERDIAKID , $SET['tanev'], array('csakId' => $SET['csakId'])); + if (uzenhet('osztalySzulo') || $SET['forRead']===true) $TIPUSOK['osztalySzulo'] = getDiakOsztalya( __USERDIAKID , array('tanev'=>$SET['tanev'], 'result'=>(($SET['csakId'])?'csakid':''), 'csakId' => $SET['csakId'])); + break; + case 'diak': /* tiltható */ + //if (uzenhet('tanar')) $TIPUSOK['tanar'] = extendUzenoTipusok(array('csakId'=>false,'tanev'=>$SET['tanev'])); + if (uzenhet('tankor') || $SET['forRead']===true) $TIPUSOK['tankor'] = getTankorByDiakId($feladoId, $SET['tanev'], array('csakId' => $SET['csakId'])); + if (uzenhet('osztaly') || $SET['forRead']===true) $TIPUSOK['osztaly'] = getDiakOsztalya($feladoId, array('tanev'=>$SET['tanev'], 'result'=>(($SET['csakId'])?'csakid':''), 'csakId' => $SET['csakId'])); + break; + case 'admin': /* nem tiltható */ + $TIPUSOK['osztalySzulo'] = $TIPUSOK['osztaly'] = $TIPUSOK['osztalyTanar'] = getOsztalyok($SET['tanev']); + $TIPUSOK['munkakozosseg'] = getMunkakozossegek(array(), array('csakId'=>$SET['csakId'])); + $TIPUSOK['tankorSzulo'] = $TIPUSOK['tankor'] = getTankorByTanev($SET['tanev']); + break; + default: + break; + } + return $TIPUSOK; + } + + + function extendUzenoTipusok($SET=array('csakId'=>true,'tanev'=>__TANEV,'old'=>false)) { /* Ha szülő/diák, kérdezzük le a gyermek tanköreinek tanárait */ + + $R = array(); + $TANKOROK = getTankorByDiakId( __USERDIAKID , $SET['tanev'], array('csakId' => true)); + for ($i=0; $i0) { + ksort($T);reset($T); + foreach($T as $nev => $id) $R[] = array('tanarNev'=>$nev, 'tanarId'=>$id); + } + return $R; + } + + function setUzenoFeladoId($nooverride=true) { + if ($nooverride===true && __UZENOADMIN===true && __ASWHO=='asAdmin') $kiId = 0; + elseif (__SZEREP=='tanar') $kiId = __USERTANARID; + elseif (__SZEREP=='szulo') //$kiId = __USERSZULOID; // NOTE ilyen konstans még nincs... + $kiId = getSzuloIdByUserAccount(); + elseif (__SZEREP=='diak') $kiId = __USERDIAKID; + elseif (__SZEREP=='admin') $kiId = 0; // de a csak admin nem üzenhet! + else return false; + return $kiId; + } + + function postUzenet($ADAT) { + $feladoId = setUzenoFeladoId(); + $feladoTipus = __SZEREP; + + $cimzettId = $ADAT['cimzettId']; + $cimzettTipus = $ADAT['cimzettTipus']; + $txt = ($ADAT['txt']); + $dbName = 'naplo_'.__INTEZMENY.'_'.$ADAT['tanev']; + + $q = "INSERT INTO `%s`.uzeno (dt,txt,feladoId,feladoTipus,cimzettId,cimzettTipus) VALUES (NOW(), '%s', %u, '%s', %u, '%s')"; + $v = array($dbName, $txt, $feladoId, $feladoTipus, $cimzettId, $cimzettTipus); + return db_query($q,array('fv' => 'uzeno/postUzenet', 'modul' => 'naplo_intezmeny', 'values' => $v)); + } + + // v3.1 + function delUzenet($mId,$tanev=__TANEV) { + if (!is_numeric($mId) || __UZENOADMIN!==true) return false; + if (defined('__INTEZMENY')) { + $dbName = 'naplo_'.__INTEZMENY.'_'.$tanev; + $q = "DELETE FROM `%s`.`uzeno` WHERE `mId`=%d"; + $params = array('debug'=>false,'values'=>array($dbName,intval($mId)),'modul'=>'naplo','fv'=>'deluzenet','detailed'=>__UZENOADMIN); + return db_query($q,$params); + } else + return false; + } + +/* + A flagUzenet() függvény az adott mId-t egy user szempontjából + (az üzenő terminológia szerint feladoId+feladoTipus ~szerep) + flageli meg. + + Jelentései: LSB - olvasott (1=true, 0=X) +*/ + + // v3.1 + function flagUzenet($ADAT) { + + $mId = $ADAT['mId']; + $feladoId = setUzenoFeladoId(); + $feladoTipus = __SZEREP; + $flag = $ADAT['flag']; + $tanev = ($ADAT['tanev']=='') ? __TANEV : $ADAT['tanev']; + if (defined('__INTEZMENY')) { + $dbName = 'naplo_'.__INTEZMENY.'_'.$tanev; + $q = "REPLACE INTO `%s`.`uzenoFlagek`(`mId`,`Id`,`Tipus`,`flag`) VALUES (%d,%d,'%s',%d)"; + $params = array( + 'values'=>array($dbName,intval($mId),$feladoId,$feladoTipus,$flag), + 'modul'=>'naplo','fv'=>'flaguzenet', + 'detailed'=>__UZENOADMIN); + return db_query($q,$params); + } else + return false; + + } + + function getUzenetFlagek($mIds, $tanev=__TANEV) { + if (defined('__INTEZMENY') && is_array($mIds)) { + $dbName = 'naplo_'.__INTEZMENY.'_'.$tanev; + $q = "SELECT * FROM `uzenoFlagek` WHERE mId IN (".implode(',',$mIds).")"; + $params = array('result'=>'assoc','keyfield'=>'mId','debug'=>false,'modul'=>'naplo','fv'=>'getUzenoFlagek','detailed'=>__UZENOADMIN); + return db_query($q,$params); + } else + return false; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/azonositok.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/azonositok.php new file mode 100644 index 00000000..e0fdab6a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/azonositok.php @@ -0,0 +1,11 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/csoportok.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/csoportok.php new file mode 100644 index 00000000..309619dd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/csoportok.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/fillhaladasi.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/fillhaladasi.php new file mode 100644 index 00000000..86c23d01 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/fillhaladasi.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/intezmenyek.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/intezmenyek.php new file mode 100644 index 00000000..98ce19b9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/intezmenyek.php @@ -0,0 +1,28 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/rpcPrivilege.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/rpcPrivilege.php new file mode 100644 index 00000000..97fd02bd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/rpcPrivilege.php @@ -0,0 +1,12 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/szemeszterek.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/szemeszterek.php new file mode 100644 index 00000000..b1994131 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/szemeszterek.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/szuloiAzonositok.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/szuloiAzonositok.php new file mode 100644 index 00000000..72d2b243 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/szuloiAzonositok.php @@ -0,0 +1,19 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/tanevek.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/tanevek.php new file mode 100644 index 00000000..37050adf --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/tanevek.php @@ -0,0 +1,26 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/tankorok.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/tankorok.php new file mode 100644 index 00000000..1aa022e0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/admin/tankorok.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/base.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/base.php new file mode 100644 index 00000000..d07b71e0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/base.php @@ -0,0 +1,65 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/bejegyzesTipus.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/bejegyzesTipus.php new file mode 100644 index 00000000..7b267076 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/bejegyzesTipus.php @@ -0,0 +1,11 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/bejegyzesek.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/bejegyzesek.php new file mode 100644 index 00000000..ed0b360a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/bejegyzesek.php @@ -0,0 +1,15 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/info.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/info.php new file mode 100644 index 00000000..e77c9ed1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/info.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/ujBejegyzes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/ujBejegyzes.php new file mode 100644 index 00000000..8c8e9d05 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/bejegyzesek/ujBejegyzes.php @@ -0,0 +1,18 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/diakValaszto.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/diakValaszto.php new file mode 100644 index 00000000..3eb0995f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/diakValaszto.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/ertekeles.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/ertekeles.php new file mode 100644 index 00000000..8c465ab1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/ertekeles.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/kerdoivBetoltes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/kerdoivBetoltes.php new file mode 100644 index 00000000..bc800683 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/kerdoivBetoltes.php @@ -0,0 +1,28 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/osszesites.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/osszesites.php new file mode 100644 index 00000000..e0f89ff8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/ertekeles/osszesites.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/esemenyDiak.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/esemenyDiak.php new file mode 100644 index 00000000..5c69f2ba --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/esemenyDiak.php @@ -0,0 +1,21 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/jelentkezes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/jelentkezes.php new file mode 100644 index 00000000..eefd4efe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/jelentkezes.php @@ -0,0 +1,17 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/ujEsemeny.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/ujEsemeny.php new file mode 100644 index 00000000..3ff82820 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/esemeny/ujEsemeny.php @@ -0,0 +1,25 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/bizonyitvany.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/bizonyitvany.php new file mode 100644 index 00000000..7586a61b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/bizonyitvany.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/diakExport.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/diakExport.php new file mode 100644 index 00000000..7e7ccb30 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/diakExport.php @@ -0,0 +1,76 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/kirBizonyitvanyExport.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/kirBizonyitvanyExport.php new file mode 100644 index 00000000..b0780622 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/kirBizonyitvanyExport.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/kreta.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/kreta.php new file mode 100644 index 00000000..0d4b0746 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/kreta.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/sulix.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/sulix.php new file mode 100644 index 00000000..cc583697 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/sulix.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/tanarOsztalyOraszam.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/tanarOsztalyOraszam.php new file mode 100644 index 00000000..b7c8e6b2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/tanarOsztalyOraszam.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/tantargyFelosztas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/tantargyFelosztas.php new file mode 100644 index 00000000..4f294747 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/export/tantargyFelosztas.php @@ -0,0 +1,12 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/elmaradas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/elmaradas.php new file mode 100644 index 00000000..fb922ff5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/elmaradas.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/elszamolas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/elszamolas.php new file mode 100644 index 00000000..23375ec6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/elszamolas.php @@ -0,0 +1,19 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/haladasi.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/haladasi.php new file mode 100644 index 00000000..023785f5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/haladasi.php @@ -0,0 +1,38 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/helyettesites.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/helyettesites.php new file mode 100644 index 00000000..6e37f942 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/helyettesites.php @@ -0,0 +1,22 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/hetes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/hetes.php new file mode 100644 index 00000000..70b6bf8a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/hetes.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/minuszora.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/minuszora.php new file mode 100644 index 00000000..ab8aa0aa --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/minuszora.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/ora.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/ora.php new file mode 100644 index 00000000..d1c296b3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/ora.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/oralatogatas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/oralatogatas.php new file mode 100644 index 00000000..3b5854fb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/oralatogatas.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/osszevonas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/osszevonas.php new file mode 100644 index 00000000..26ff1bd7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/osszevonas.php @@ -0,0 +1,19 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/pluszora.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/pluszora.php new file mode 100644 index 00000000..b6e24743 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/pluszora.php @@ -0,0 +1,23 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/specialis.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/specialis.php new file mode 100644 index 00000000..5849dcc1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/specialis.php @@ -0,0 +1,39 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/stat.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/stat.php new file mode 100644 index 00000000..43fe3efe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/stat.php @@ -0,0 +1,23 @@ +(megtartott|tervezett)'); + define('_MEGTARTOTTHOZ_KEPEST',''); + define('_DB','db.'); + + define('_JEGYEK_SZAMA','Érdemjegyek száma'); + define('_LETSZAM','Tankörlétszám'); + define('_HETI_ORASZAM','Heti óraszám'); + define('_JEGYSZAM_PER_FO','Egy főre jutó érdemjegyek átlagos száma'); + define('_ATLAGOS_JEGYSZAM','Átlagos jegyszám'); + define('_TANITASI_HET','tanítási héttel számolva'); + +?> diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/teremModositas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/teremModositas.php new file mode 100644 index 00000000..a7a9388c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/haladasi/teremModositas.php @@ -0,0 +1,14 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diak.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diak.php new file mode 100644 index 00000000..c9f8d6c3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diak.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diakIgazolatlan.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diakIgazolatlan.php new file mode 100644 index 00000000..15576516 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diakIgazolatlan.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diakLista.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diakLista.php new file mode 100644 index 00000000..5204c687 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/diakLista.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/info.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/info.php new file mode 100644 index 00000000..e170ccd2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/info.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/nap.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/nap.php new file mode 100644 index 00000000..98b20482 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/nap.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/oktstat.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/oktstat.php new file mode 100644 index 00000000..bf45e3c3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/oktstat.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/ora.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/ora.php new file mode 100644 index 00000000..19868c4a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/ora.php @@ -0,0 +1,27 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/osztaly.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/osztaly.php new file mode 100644 index 00000000..263a523c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/osztaly.php @@ -0,0 +1,47 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/osztalyNap.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/osztalyNap.php new file mode 100644 index 00000000..284d6153 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hianyzas/osztalyNap.php @@ -0,0 +1,14 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hibabejelento/admin.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hibabejelento/admin.php new file mode 100644 index 00000000..2ccf10db --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hibabejelento/admin.php @@ -0,0 +1,12 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hibabejelento/hibabejelento.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hibabejelento/hibabejelento.php new file mode 100644 index 00000000..5d43beb1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hibabejelento/hibabejelento.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hirnok/hirnok.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hirnok/hirnok.php new file mode 100644 index 00000000..437a6d95 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hirnok/hirnok.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hirnok/hirnokFeliratkozas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hirnok/hirnokFeliratkozas.php new file mode 100644 index 00000000..e21ff195 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/hirnok/hirnokFeliratkozas.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diak.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diak.php new file mode 100644 index 00000000..c0e95f83 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diak.php @@ -0,0 +1,137 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakExport.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakExport.php new file mode 100644 index 00000000..469c678e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakExport.php @@ -0,0 +1,14 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakFelmentes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakFelmentes.php new file mode 100644 index 00000000..ceb6a93d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakFelmentes.php @@ -0,0 +1,60 @@ + +
  • 1. adott tárgyból (rész)értékelés alól = órán részt vesz, érdemjegyet és osztályzatot szakvélemény alapján nem kap +
    Példa: diszgráfia (magyar nyelv felmentés) +
      +
    • a) teljes tanév FM: értékelés alól; osztályzata/zárójegye FM. + "4/B. Mentesítve ... tantárgyból az értékelés és a minősítés alól N., Tl., B. " +
    • +
    • b) rész tanév (dátum intervallum): csupán egyedi záradékot kap.
    • +
    + +
  • 2. órák látogatása alól (tankör), igazgató által meghatározott időben, nevelőtestület által meghatározott módon ad számot tudásáról +
    Példa: élsportoló (testnevelés) +
    Teendő: [*] tankörben FM: óralátogatás alól és értékelés alól, de zárójegyet kap (!) +
    Záradék: "10. A(z) ... tantárgy óráinak látogatása alól felmentve ... -tól ... -ig. N. + Kiegészülhet: Osztályozó vizsgát köteles tenni." +
  • +
  • 3. tárgy tanulása alól = óralátogatás alól + évközi jegyet + zárójegyet sem kap (csak készségtárgyak!) +
    Példa: testnevelés III. +
    Teendő: * tárgy minden tanköréből kiléptetni, * félévi(ha félév előtti) és évvégi jegye FM. +
    Záradék: "7. Mentesítve a(z) [a tantárgy neve] ... tantárgy tanulása alól. N., TI., B." +
  • + +'); + + define('_FELMENTES_TARGY_TANULASA_ALOL','Felmentés tárgy tanulása alól'); + define('_FELMENTES_TARGY_ERTEKELES_ALOL','Felmentés tárgy értékelése alól'); + define('_FELMENTES_TANKOR_ORALATOGATASA_ALOL','Felmentés tankör óralátogatása alól'); + define('_ROGZITETT_ZARADEKOK','Már rögzített záradékok'); + define('_TIPUS3','Válassz ki egy tárgyat és egy érvényességi dátumot amikortól él a felmentés: +
    1. ezen dátummal kiléptettjük a tárgy tanköreiből,
    2. +
    3. jegyeit és hiányzásait a referencia dátumtól töröljük,
    4. +
    5. a dátum után véget érő félévekre FM bejegyzést rögzítünk osztályzatként (zárójegyként)
    '); + + define('_OVIKOTELES','Osztályozóvizsgára kötelezett'); + define('_TARGY','Tárgy'); + define('_TANKOR','Tankör'); + define('_TOL_DT','Dátum (tól)'); + define('_IG_DT','Dátum (ig)'); + define('_NAP','Nap'); + define('_ORA','Óra'); + define('_NAPORAOPT','Kizárólag a megadott nap/óra alól való felmentés [opcionális]'); + + define('_ZARADEK','Záradék [részfelmentés esetében]:'); + define('_ZARADEK1','miatt mentesítve a(z) '); + define('_ZARADEK2','értékelés(e) és a minősítés(e) alól.'); + + define('_EGESZ_EVRE','egész évre'); + define('_RESZBEN','részben'); + + define('_ROGZITETT_FELMENTESEK','Már rögzített felmentések'); + define('_TORLESKENYSZERITES','Töröljük a már beírt hiányzásokat (és oszt. vizsga esetén jegyeket is)?'); + define('_ZARADEKNELKUL','A záradék felvétele nélkül (csak speciális esetben)'); + + define('_IKTATOSZAM','Iktatószám'); +?> diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakStatusz.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakStatusz.php new file mode 100644 index 00000000..a188e5a1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakStatusz.php @@ -0,0 +1,20 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakSzulo.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakSzulo.php new file mode 100644 index 00000000..9fb3fff0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakSzulo.php @@ -0,0 +1,53 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakTankor.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakTankor.php new file mode 100644 index 00000000..71120149 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakTankor.php @@ -0,0 +1,11 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakTankorJelentkezes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakTankorJelentkezes.php new file mode 100644 index 00000000..2d042193 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/diakTankorJelentkezes.php @@ -0,0 +1,29 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/felmentes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/felmentes.php new file mode 100644 index 00000000..d7b6f78f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/felmentes.php @@ -0,0 +1,15 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepesitesek.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepesitesek.php new file mode 100644 index 00000000..48943f2b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepesitesek.php @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzes.php new file mode 100644 index 00000000..e874cab6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzes.php @@ -0,0 +1,22 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzesOraterv.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzesOraterv.php new file mode 100644 index 00000000..de1d9579 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzesOraterv.php @@ -0,0 +1,20 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzesTankor.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzesTankor.php new file mode 100644 index 00000000..22837ea5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/kepzesTankor.php @@ -0,0 +1,38 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/munkakozosseg.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/munkakozosseg.php new file mode 100644 index 00000000..3771de35 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/munkakozosseg.php @@ -0,0 +1,36 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/osztaly.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/osztaly.php new file mode 100644 index 00000000..ba29df82 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/osztaly.php @@ -0,0 +1,40 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tanar.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tanar.php new file mode 100644 index 00000000..149051c8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tanar.php @@ -0,0 +1,53 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankor.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankor.php new file mode 100644 index 00000000..aa05d751 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankor.php @@ -0,0 +1,58 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorDiak.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorDiak.php new file mode 100644 index 00000000..bc8cf25d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorDiak.php @@ -0,0 +1,22 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorLetszam.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorLetszam.php new file mode 100644 index 00000000..685e56f5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorLetszam.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorSzemeszter.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorSzemeszter.php new file mode 100644 index 00000000..5a2910e1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorSzemeszter.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorTanar.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorTanar.php new file mode 100644 index 00000000..9c97ff36 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorTanar.php @@ -0,0 +1,12 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorTanarHozzarendeles.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorTanarHozzarendeles.php new file mode 100644 index 00000000..65781757 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankorTanarHozzarendeles.php @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/terem.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/terem.php new file mode 100644 index 00000000..9a6d0de5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/terem.php @@ -0,0 +1,14 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tovabbkepzes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tovabbkepzes.php new file mode 100644 index 00000000..bb66ab99 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tovabbkepzes.php @@ -0,0 +1,34 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/valtas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/valtas.php new file mode 100644 index 00000000..a4f011a4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/valtas.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/zaradek.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/zaradek.php new file mode 100644 index 00000000..4d2c72f4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/zaradek.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/esemenyAdmin.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/esemenyAdmin.php new file mode 100644 index 00000000..6dced833 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/esemenyAdmin.php @@ -0,0 +1,23 @@ +2. Egy mintához állíts be egy vagy többféle ponttípust
    3. A tanévhez rögzíts egy konkrét eseményt (dátum vagy félév kötelező!), és ne feledd megadni az igazolók halmazát (használd a CTRL gombot több kiválasztásához)'); + + define('_ESEMENYMINTAK','Esemény minták'); + define('_ESEMENYEK_TANEVBEN','Események ebben a tanévben'); + define('_PONTTIPUS','Pont típus'); + define('_HELYEZES','Helyezés (opció)'); + define('_PONT','Pont'); + define('_DATUM','Dátum'); + define('_FELEV','Félév (opció)'); + define('_IGAZOLOK','Igazolók'); + + define('_TIPUS','Típus'); + define('_NEV','Rövid név'); + define('_LEIRAS','Leírás'); + + define('_NINCS','Nincs még rögzítve'); + + define('_UJ_ESEMENY','Új köszi esemény'); + +?> diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/koszi.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/koszi.php new file mode 100644 index 00000000..2d693ede --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/koszi.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/kosziAdmin.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/kosziAdmin.php new file mode 100644 index 00000000..5ba7dec5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/koszi/kosziAdmin.php @@ -0,0 +1,17 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/naplo.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/naplo.php new file mode 100644 index 00000000..8b81acf9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/naplo.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/diakTankorJelentkezes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/diakTankorJelentkezes.php new file mode 100644 index 00000000..0fc3e47c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/diakTankorJelentkezes.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/ertesito.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/ertesito.php new file mode 100644 index 00000000..8f01047e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/ertesito.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/helyettesitesinaplo.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/helyettesitesinaplo.php new file mode 100644 index 00000000..e8647921 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/helyettesitesinaplo.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/osztalyozonaplo.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/osztalyozonaplo.php new file mode 100644 index 00000000..4903b74d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/osztalyozonaplo.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/sniEvVegiJegyzokonyv.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/sniEvVegiJegyzokonyv.php new file mode 100644 index 00000000..f3ff196a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/sniEvVegiJegyzokonyv.php @@ -0,0 +1,4 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/sniHaviJegyzokonyv.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/sniHaviJegyzokonyv.php new file mode 100644 index 00000000..c374e57e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/sniHaviJegyzokonyv.php @@ -0,0 +1,4 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/tankorNaplohozRendeles.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/tankorNaplohozRendeles.php new file mode 100644 index 00000000..ce8837a7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/tankorNaplohozRendeles.php @@ -0,0 +1,20 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/zaradekok.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/zaradekok.php new file mode 100644 index 00000000..9dd4400f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/nyomtatas/zaradekok.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/ascExport.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/ascExport.php new file mode 100644 index 00000000..5171dec4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/ascExport.php @@ -0,0 +1,22 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/helyettesites.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/helyettesites.php new file mode 100644 index 00000000..b66f62dc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/helyettesites.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarend.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarend.php new file mode 100644 index 00000000..7b7301af --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarend.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendBetolto.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendBetolto.php new file mode 100644 index 00000000..5e6b16e2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendBetolto.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendEllenorzes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendEllenorzes.php new file mode 100644 index 00000000..8e9f0292 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendEllenorzes.php @@ -0,0 +1,11 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendModosito.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendModosito.php new file mode 100644 index 00000000..19a7d449 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendModosito.php @@ -0,0 +1,19 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendTankor.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendTankor.php new file mode 100644 index 00000000..4387ba21 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendTankor.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendTeremModositas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendTeremModositas.php new file mode 100644 index 00000000..fbc1ebe4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/orarendTeremModositas.php @@ -0,0 +1,10 @@ +a dátum beleesik-e a kívánt érvényes órarendi intervallumba!'); + +?> diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/szabadTerem.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/szabadTerem.php new file mode 100644 index 00000000..1a80b7cc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/szabadTerem.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/tanarOrarend.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/tanarOrarend.php new file mode 100644 index 00000000..a9cef6fc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/tanarOrarend.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/termez.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/termez.php new file mode 100644 index 00000000..1cd81497 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/orarend/termez.php @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/bizelomenetel.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/bizelomenetel.php new file mode 100644 index 00000000..8b65560a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/bizelomenetel.php @@ -0,0 +1,16 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/bizonyitvany.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/bizonyitvany.php new file mode 100644 index 00000000..a1a8c18d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/bizonyitvany.php @@ -0,0 +1,42 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/diak.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/diak.php new file mode 100644 index 00000000..2f57346c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/diak.php @@ -0,0 +1,18 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/dolgozat.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/dolgozat.php new file mode 100644 index 00000000..c408c0d1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/dolgozat.php @@ -0,0 +1,34 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/jegy.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/jegy.php new file mode 100644 index 00000000..a8a97a4a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/jegy.php @@ -0,0 +1,22 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/stat.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/stat.php new file mode 100644 index 00000000..7a5f8316 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/stat.php @@ -0,0 +1,65 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/szempontRendszer.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/szempontRendszer.php new file mode 100644 index 00000000..76fe26b2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/szempontRendszer.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/szovegesErtekeles.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/szovegesErtekeles.php new file mode 100644 index 00000000..e53ac534 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/szovegesErtekeles.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/tankor.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/tankor.php new file mode 100644 index 00000000..de6938e4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/tankor.php @@ -0,0 +1,34 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/targySorrend.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/targySorrend.php new file mode 100644 index 00000000..726be6c7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/targySorrend.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/vizsga.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/vizsga.php new file mode 100644 index 00000000..03f7d28b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/vizsga.php @@ -0,0 +1,19 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/vizsgaJelentkezes.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/vizsgaJelentkezes.php new file mode 100644 index 00000000..b43f3308 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/osztalyozo/vizsgaJelentkezes.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/diak.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/diak.php new file mode 100644 index 00000000..b66ad481 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/diak.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/ertekeles.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/ertekeles.php new file mode 100644 index 00000000..9ed59538 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/ertekeles.php @@ -0,0 +1,33 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/file.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/file.php new file mode 100644 index 00000000..181edc69 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/file.php @@ -0,0 +1,67 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/hianyzas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/hianyzas.php new file mode 100644 index 00000000..465c23db --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/hianyzas.php @@ -0,0 +1,16 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/osztalyzatok.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/osztalyzatok.php new file mode 100644 index 00000000..d7e69081 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/osztalyzatok.php @@ -0,0 +1,61 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/tanar.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/tanar.php new file mode 100644 index 00000000..041915a6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/share/tanar.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/diakAllapot.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/diakAllapot.php new file mode 100644 index 00000000..7e732959 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/diakAllapot.php @@ -0,0 +1,84 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/fejlesztesiTerv.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/fejlesztesiTerv.php new file mode 100644 index 00000000..d84dc90f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/fejlesztesiTerv.php @@ -0,0 +1,21 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/tantargyiFeljegyzesek.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/tantargyiFeljegyzesek.php new file mode 100644 index 00000000..8826f2bb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/sni/tantargyiFeljegyzesek.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/stat/letszam.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/stat/letszam.php new file mode 100644 index 00000000..70d1524b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/stat/letszam.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/szulinap.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/szulinap.php new file mode 100644 index 00000000..d770fd52 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/szulinap.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/checkStatus.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/checkStatus.php new file mode 100644 index 00000000..274479f4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/checkStatus.php @@ -0,0 +1,11 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/diakTanarai.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/diakTanarai.php new file mode 100644 index 00000000..80aca57b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/diakTanarai.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/fogadoOra.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/fogadoOra.php new file mode 100644 index 00000000..b7a86dff --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/fogadoOra.php @@ -0,0 +1,19 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/helyettesites.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/helyettesites.php new file mode 100644 index 00000000..446cd3c2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/helyettesites.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/munkaterv.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/munkaterv.php new file mode 100644 index 00000000..4103d485 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/munkaterv.php @@ -0,0 +1,59 @@ + +

    + Adja meg, hogy hány hetes órarendet használnak a tanév során! + Ha minden héten azonos az órarend, akkor válassza az "1" értéket, ha A és B hét + váltakozik, akkor a "2" a helyes érték, de lehet, hogy akár hat különböző órarendű + hét ismétlődik ciklikusan, hiszen egy-két óra eltérése esetén is különbözőnek + számítanak az órarendek... +

    + Adja meg a tanítási napok és tanítás nélküli munkanapok számát (a rendeletben meghatározottak szerint), + valamint - középiskola esetén - a végzősök utolsó tanítási napjának dátumát!> + '); + define('_TANITASI_NAPOK_SZAMA','Tanítási napok száma'); + define('_TANITAS_NELKULI_MUNKANAPOK_SZAMA','Tanításnélküli munkanapok száma'); + define('_VEGZOS_ZARAS_DT','Végzősök utolsó tanítási napja'); + define('_NAPOK_SZAMA','Napok száma'); + define('_ELTERO_MUNKATERVEK','Eltérő munkatervek'); + define('_MUNKATERV_OSZTALY','Munkaterv-osztály összerendelés'); + define('_MO_MAGYARAZAT','Az osztályokat hozzá kell rendelnünk egy-egy munkatervhez. Kezdetben minden osztály az alapértelmezett mukatervhez van rendelve.'); + define('_HETHOZZARENDELES','Órarendi hetek napokhozrendelése'); + define('_HH_MAGYARAZAT','Adja meg, hogy hány hetes órarendet használnak az adott időszak során! + Ha minden héten azonos az órarend, akkor válassza az "1" értéket, ha A és B hét + váltakozik, akkor a "2" a helyes érték, de lehet, hogy akár hat különböző órarendű + hét ismétlődik ciklikusan, hiszen egy-két óra eltérése esetén is különbözőnek + számítanak az órarendek... A program csak az órarendi hetek napokhozrendelését + változtatja meg, a napok típusát, egyéb paramétereit nem módosítja. A hetek hozzárendelése + mindig az egyes héttől indul. A módosítás mindig az összes munkatervre vonatkozik! + '); + define('_UJ_MUNKATERV','Új munkaterv létrehozása'); + define('_UM_MAGYARAZAT','Az aktuális munkaterv másolataként új munkatervet készíthetünk. A munkaterveket + osztályokhoz rendelhetjük, minden osztályhoz pontosan egyet.'); + define('_MUNKATERV_NEVE','Munkaterv neve'); + define('_ORARENDIHETEKSZAMA','Órarendi hetek száma'); + define('_DATUM','Módosítandó időszak'); + define('_ELOIRT','Előírt'); + define('_TENYLEGES','Tényleges'); + +/* + define('_TANITASI_NAP','tanítási nap'); + define('_SPECIALIS_TANITASI_NAP','speciális tanítási nap'); + define('_TANITAS_NELKULI_MUNKANAP','tanítás nélküli munkanap'); + define('_TANITASI_SZUNET','tanítási szünet'); +*/ +?> diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/tankorBlokk.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/tankorBlokk.php new file mode 100644 index 00000000..f3ec0488 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/tankorBlokk.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/tankorCsoport.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/tankorCsoport.php new file mode 100644 index 00000000..a45e7806 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/tankorCsoport.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/targyBontas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/targyBontas.php new file mode 100644 index 00000000..18c90395 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/targyBontas.php @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/vegzosOrarendLezaras.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/vegzosOrarendLezaras.php new file mode 100644 index 00000000..ed152387 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/vegzosOrarendLezaras.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/vegzosTankorLezaras.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/vegzosTankorLezaras.php new file mode 100644 index 00000000..a0f9002f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanev/vegzosTankorLezaras.php @@ -0,0 +1,4 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetInfo.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetInfo.php new file mode 100644 index 00000000..d8ed571a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetInfo.php @@ -0,0 +1,15 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetJovahagyas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetJovahagyas.php new file mode 100644 index 00000000..0b1767c9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetJovahagyas.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetLeadas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetLeadas.php new file mode 100644 index 00000000..083f6de7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetLeadas.php @@ -0,0 +1,12 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetModositas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetModositas.php new file mode 100644 index 00000000..f86fc2f0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetModositas.php @@ -0,0 +1,17 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetTankor.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetTankor.php new file mode 100644 index 00000000..bfba5e7e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/tanmenetTankor.php @@ -0,0 +1,18 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/ujTanmenet.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/ujTanmenet.php new file mode 100644 index 00000000..9a7c5cc4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/tanmenet/ujTanmenet.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/uzeno/postas.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/uzeno/postas.php new file mode 100644 index 00000000..fc92fa69 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/uzeno/postas.php @@ -0,0 +1,45 @@ + diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/uzeno/uzeno.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/uzeno/uzeno.php new file mode 100644 index 00000000..5c033b39 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/uzeno/uzeno.php @@ -0,0 +1,42 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/parent/naplo/diakValaszto-pre.php b/mayor-orig/mayor-naplo/www/policy/parent/naplo/diakValaszto-pre.php new file mode 100644 index 00000000..90fa6df3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/parent/naplo/diakValaszto-pre.php @@ -0,0 +1,34 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/parent/naplo/diakValaszto.php b/mayor-orig/mayor-naplo/www/policy/parent/naplo/diakValaszto.php new file mode 100644 index 00000000..b64ee30c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/parent/naplo/diakValaszto.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/parent/naplo/hirnok b/mayor-orig/mayor-naplo/www/policy/parent/naplo/hirnok new file mode 120000 index 00000000..56d56cc8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/parent/naplo/hirnok @@ -0,0 +1 @@ +../../private/naplo/hirnok \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/parent/naplo/naplo-pre.php b/mayor-orig/mayor-naplo/www/policy/parent/naplo/naplo-pre.php new file mode 100644 index 00000000..bec91f25 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/parent/naplo/naplo-pre.php @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/parent/naplo/naplo.php b/mayor-orig/mayor-naplo/www/policy/parent/naplo/naplo.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/admin-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/admin-pre.php new file mode 100644 index 00000000..5cb70fd2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/admin-pre.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/admin.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/admin.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/azonositok-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/azonositok-pre.php new file mode 100644 index 00000000..19622167 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/azonositok-pre.php @@ -0,0 +1,133 @@ + 1) { + $osztalyTagok[$i]['userAccounts'] = array(); + for ($j = 0; $j < $ret['count']; $j++) $osztalyTagok[$i]['userAccounts'][] = $ret[$j]['userAccount'][0]; + $_SESSION['alert'][] = "message:wrong_data:több account egy oId-hoz:oId=$oId:userAccount=".implode(',', $osztalyTagok[$i]['userAccounts']); + } + if (!isset($osztalyTagok[$i]['userAccount']) && count($osztalyTagok[$i]['userAccounts']) == 0) { + // Ha az oId alapján nem találtunk, akkor tovább keresünk név alapján + $ret = searchAccount('userCn', $osztalyTagok[$i]['diakNev'], array('userAccount','studyId'), 'private'); + if ($ret['count'] > 0) { + $osztalyTagok[$i]['userAccounts'] = $osztalyTagok[$i]['studyIds'] = array(); + for ($j = 0; $j < $ret['count']; $j++) { + $osztalyTagok[$i]['userAccounts'][] = $ret[$j]['userAccount'][0]; + $osztalyTagok[$i]['studyIds'][] = $ret[$j]['studyId'][0]; + } + } + // Javasolt azonosító generálása + $csNev = $osztalyTagok[$i]['viseltCsaladinev']; + $pos = mb_strpos($csNev, ' ', 0, 'UTF-8'); + if ($pos > 0 && mb_substr($csNev, $pos-2, 2, 'UTF-8') == 'né') { + $csNev = mb_substr($csNev,$pos+1,strlen($csNev)-$pos-1,'UTF-8'); + $pos = mb_strpos($csNev, ' ', 0, 'UTF-8'); + } + if ($pos > 0) $csNev = mb_substr($csNev, 0, $pos, 'UTF-8'); + $uNev = $osztalyTagok[$i]['viseltUtonev']; + $pos = mb_strpos($uNev, ' ', 0, 'UTF-8'); + if ($pos > 0) $uNev = mb_substr($uNev, 0, $pos, 'UTF-8'); + if ($AUTH[_POLICY]['unixStyleAccounts']) { + $csNev = ekezettelen(kisbetus($csNev)); + $uNev = ekezettelen(kisbetus($uNev)); + $osztalyTagok[$i]['generatedAccount'] = substr($csNev.$uNev[0], 0, 8); + } else { + $pos = mb_strpos($csNev, ' ', 0, 'UTF-8'); + $osztalyTagok[$i]['generatedAccount'] = $csNev.'.'.$uNev; + } + } + } + } + } + + if ($action == 'createAzonosito') { + $userPassword = readVariable($_POST['userPassword'], 'sql', null); + $CONTAINER = $AUTH['private'][ $AUTH['private']['backend'].'Containers']; + $container = readVariable($_POST['container'], 'enum', null, $CONTAINER); + if (is_array($CONTAINER) && count($CONTAINER) > 0 && !isset($container)) { + $_SESSION['alert'][] = 'message:empty_fields:container'; + } else { + define('__JELSZOGENERALAS', $userPassword == ''); + + if (is_array($_POST['userAccount'])) for ($i = 0; $i < count($_POST['userAccount']); $i++) { + $oId = readVariable($_POST['oId'][$i], 'number', null); + $userAccount = readVariable($_POST['userAccount'][$i], 'sql', null); + if (isset($oId) && isset($userAccount)) { + if (__JELSZOGENERALAS === true) { + $userPassword = $Tagok[$oId]['userPassword'] = sprintf("%u", crc32($Tagok[$oId]['viseltCsaladinev'])); + } + $userCn = $Tagok[$oId]['diakNev']; + createAccount($userCn, $userAccount, $userPassword, 'private', + $SET = array('category' => 'diák', 'container' => $container, 'groups' => '', 'policyAttrs' => array('studyId' => $oId)) + ); + // a settings táblában felvesszük, hogy melyik intézményhez van rendelve (ez persze nem korlátoz, csak egy alapértelmezés + $q = "DELETE FROM settings WHERE userAccount='%s' AND policy='%s'"; + db_query($q, array('debug'=>false,'fv'=>'updateNaploSettings','modul'=>'naplo_base','values'=>array($userAccount, 'private'))); + $q = "INSERT INTO settings (userAccount,policy,intezmeny) VALUES ('%s','%s','%s')"; + db_query($q, array('debug'=>false,'fv'=>'updateNaploSettings','modul'=>'naplo_base','values'=>array($userAccount, 'private', __INTEZMENY))); + } + } + } + + // Újraolvasás + $osztalyTagok = getOsztalyNevsorEsOid($osztalyId); + for ($i = 0; $i < count($osztalyTagok); $i++) { + $oId = $osztalyTagok[$i]['oId']; + $osztalyTagok[$i]['userAccounts'] = array(); + if ($oId != '') { + $ret = searchAccount('studyId', $oId, array('userAccount'), 'private'); + if ($ret['count'] == 1) { + $osztalyTagok[$i]['userAccount'] = $ret[0]['userAccount'][0]; + } elseif ($ret['count'] > 1) { + $osztalyTagok[$i]['userAccounts'] = array(); + for ($j = 0; $j < $ret['count']; $j++) $osztalyTagok[$i]['userAccounts'][] = $ret[$j]['userAccount'][0]; + } + if (!isset($osztalyTagok[$i]) && !is_array($osztalyTagok[$i]['userAccounts'])) { + // Ha az oId alapján nem találtunk, akkor tovább keresünk név alapján + $ret = searchAccount('userCn', $osztalyTagok[$i]['diakNev'], array('userAccount','studyId'), 'private'); + if ($ret['count'] > 0) { + $osztalyTagok[$i]['userAccounts'] = $osztalyTagok[$i]['studyIds'] = array(); + for ($j = 0; $j < $ret['count']; $j++) { + $osztalyTagok[$i]['userAccounts'][] = $ret[$j]['userAccount'][0]; + $osztalyTagok[$i]['studyIds'][] = $ret[$j]['studyId'][0]; + } + } + } + } + } // for - újraolvasás + } + + $TOOL['tanevSelect'] = array('tipus' => 'cella','tanev' => $tanev, 'paramName' => 'tanev', 'post' => array('osztalyId')); + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('igDt', 'tanev')); + getToolParameters(); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/azonositok.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/azonositok.php new file mode 100644 index 00000000..50df705e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/azonositok.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/checksql-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/checksql-pre.php new file mode 100644 index 00000000..e952a01b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/checksql-pre.php @@ -0,0 +1,22 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/checksql.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/checksql.php new file mode 100644 index 00000000..7ad8e3b9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/checksql.php @@ -0,0 +1,15 @@ +0) { + echo ''; + for($i=0; $i'."\n"; + } + echo '
    '.$i.'
    '; + echo htmlDiff($Q_ERR[$i]['inDb'],$Q_ERR[$i]['inFile']); //filenamenormal checked + echo ''; + echo '
    '; + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/csoportok-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/csoportok-pre.php new file mode 100644 index 00000000..63a1e0d5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/csoportok-pre.php @@ -0,0 +1,68 @@ +'cella'); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/csoportok.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/csoportok.php new file mode 100644 index 00000000..6ad4d67a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/csoportok.php @@ -0,0 +1,14 @@ + 0) putCsoportLista($Csoportok, $osztalyId, $csoportId); + if (isset($csoportId) && $csoportId != '') { + putCsoportModositoForm($csoportAdatok, $Tankorok, $osztalyId); + putCsoportTorlesForm($csoportId, $osztalyId); + } + putUjCsoportForm($osztalyId, $Tankorok); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/fillhaladasi-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/fillhaladasi-pre.php new file mode 100644 index 00000000..493b08fe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/fillhaladasi-pre.php @@ -0,0 +1,30 @@ +'fillhaladasi-pre','modul'=>'naplo','values'=>array($tolDt,$igDt),'result'=>'indexed')); + for ($i=0; $i=1) $_SESSION['alert'][] = 'info:success:***'.implode('***',$SUCCESS); + } + + $TOOL['datumTolIgSelect'] = array('tipus' => 'sor', 'tolParamName' => 'tolDt', 'igParamName' => 'igDt', + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $igDt, + 'hanyNaponta' => '1' + ); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/fillhaladasi.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/fillhaladasi.php new file mode 100644 index 00000000..c6d1a8c0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/fillhaladasi.php @@ -0,0 +1,6 @@ + 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 new file mode 100644 index 00000000..bb34046f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php @@ -0,0 +1,49 @@ + 0) $attrList = getTableFields($table, $db); + else $_SESSION['alert'][] = 'message:wrong_data'; + + } else { + updateTable($table, $fileName, $MEZO_LISTA, $KULCS_MEZOK, $mezo_elvalaszto, readVariable($_POST['rovatfej'], 'bool'), $db); + + } // MEZO_LISTA tömb + } else { + $_SESSION['alert'][] = 'message:file_not_found:'.$fileName; + } // A file létezik-e + + } // van file + } // van $table ($db) + +} // naploadmin + +$TOOL['TableSelect'] = array('tipus'=>'cella','paramName' => 'dbtable', 'post'=>array()); +getToolParameters(); + +?> 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 new file mode 100644 index 00000000..8edc7d3e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php @@ -0,0 +1,19 @@ + 0) + putFieldSelectForm($fileName, $ADATOK, $attrList, $dbtable); + else + echo 'NINCS ADAT!'; + } else { + echo 'Adatfeldolgozás kész.'; + } +} else { echo 'nincs table'; } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/install-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/install-pre.php new file mode 100644 index 00000000..1a655c4e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/install-pre.php @@ -0,0 +1,47 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/install.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/install.php new file mode 100644 index 00000000..11400c3c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/install.php @@ -0,0 +1,31 @@ +naploadmin csoport tagja!

    '; + } + if (!$group_ok) { + echo '

    Még nem hoztál létre naploadmin csoportot!

    '; + echo '

    Hozd létre a Felhasználói adatok/Új csoport menüpont alatt!

    '; + } elseif (!$db_ok) { + echo '

    Létre kell hoznunk a naplo modul alap adatbázisát!

    '; + echo '

    Ehhez szükség lesz a MySQL root jelszó megadására.

    '; + echo '
    '; // --TODO + echo ''; + echo 'User: '; + echo '
    '; + echo 'Jelszó: '; + echo '
    '; + echo ''; + echo '
    '; // --TODO + } else { + echo '

    Úgy tűnik a modul telepítése kész. Az base/config.php-ben módosítsuk a __NAPLO_INSTALLED értékét true-ra és kész.

    '; + } +} else { + echo '

    Már telepítve!

    '; +} +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/intezmenyek-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/intezmenyek-pre.php new file mode 100644 index 00000000..e2dcc43d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/intezmenyek-pre.php @@ -0,0 +1,79 @@ +'cella', 'action' => 'intezmenyValasztas', 'post'=>array()); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/intezmenyek.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/intezmenyek.php new file mode 100644 index 00000000..22c35361 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/intezmenyek.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php new file mode 100644 index 00000000..8f4cb909 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php @@ -0,0 +1,105 @@ + 'helyettesítés', + 'Szakszerű felügyelet' => 'helyettesítés', + 'Óraösszevonás' => 'összevonás', + 'Nem szakszerű helyettesítés (felügyelet)' => 'felügyelet' + ); + +//$KRETA2MAYOR['tanar'] = reindex(getTanarok(array('összes'=>true,'extraAttrs'=>'kretaNev')),array('kretaNev')); +//dump($KRETA2MAYOR['tanar']); + + $lr_intezmeny = db_connect('naplo_intezmeny'); + $lr_naplo = db_connect('naplo'); + + $q = "select getNev(diakId,'diak') COLLATE utf8_hungarian_ci AS diakNev,diakId,statusz,oId from ".__INTEZMENYDBNEV.".diak WHERE statusz!='jogviszonya lezárva' ORDER BY diakNev"; + $v = array(); + $DIAKNEV2diakId = db_query($q, array('debug'=>false,'modul'=>'naplo','values'=>$v,'result'=>'multiassoc','keyfield'=>'diakNev'),$lr_naplo); + $file = fopen("/tmp/hianyzasKreta.tsv","r"); + if ($file!==false) { + $q = "TRUNCATE TABLE hianyzasKreta"; + db_query($q, array('fv'=>'kretaHianyzasImport'),$lr_naplo) or die(); + } + while(! feof($file)) { + $line = chop(trim(fgets($file))); + $record = explode("\t",$line); +// dump($record); +/* +kretaHianyzasImportarray (size=10) + 0 => string 'Bacsó Dániel József' (length=22) + 1 => string '72437828706' (length=11) + 2 => string '2018-12-17' (length=10) + 3 => string '2' (length=1) + 4 => string '08.A' (length=4) + 5 => string 'ének-zene' (length=10) + 6 => string 'Hiányzás' (length=10) + 7 => string '' (length=0) + 8 => string 'Igen' (length=4) + 9 => string 'Orvosi igazolás' (length=16) +*/ + $D = array(); + $D['diakNev'] = $record[0]; + if (count($DIAKNEV2diakId[$D['diakNev']])!=1) { + $_SESSION['alert'][] = 'info:dup'.serialize($D['diakNev']).':'.serialize($DIAKNEV2diakId[$D['diakNev']]); + $ADAT['hiba'][] = $D; + continue;; + } else { + $D['diakId'] = $DIAKNEV2diakId[$D['diakNev']][0]['diakId']; + $D['oId'] = $DIAKNEV2diakId[$D['diakNev']][0]['oId']; + } + $_tmp = explode('/',$record[1]); + $D['dt'] = $_tmp[2] .'-'. $_tmp[0] .'-'. $_tmp[1]; + $D['ora'] = intval($record[2]); + $D['kretaTankorNev'] = $record[3]; + $D['kretaTantargyNev'] = $record[4]; + $D['tipus'] = kisbetus($record[5]); + $D['perc'] = ($record[6]<=0) ? '':intval($record[6]); + $D['kretaStatusz'] = $record[7]=='Igen' ? 'igen':'nem'; + $D['status'] = $record[7]=='Igen' ? 'igazolt':'igazolatlan'; + $D['kretaIgazolas'] = $record[8]; +// Itt kitalálható lenne pár dolog, egyelőre hagyjuk + $D['oraAdat'] = getDiakOra($D['diakId'],$D['dt'],$D['ora'],$lr_intezmeny,$lr_naplo); + if ($D['oraAdat']['oraId']!='') { + // $ADAT['betoltendo'][] = ($D); +// $ADAT['KRETA2MAYOR']['targyNev'][$D['kretaTankorNev'].':'.$D['kretaTantargyNev']][] = $D['oraAdat']['tankorNev']; + $D['tankorId'] = $D['oraAdat']['tankorId']; + } else $ADAT['hibaCounter']++; + + $q = "INSERT INTO hianyzasKreta (diakId,tankorId,kretaDiakNev,oId,dt,ora,kretaTankorNev,kretaTantargyNev,tipus,perc,kretaStatusz,statusz,kretaIgazolas) + VALUES (%u, IF(%u=0,NULL,%u),'%s','%s','%s',%u,'%s','%s','%s',%u,'%s','%s','%s')"; + $v = array($D['diakId'], + $D['tankorId'], + $D['tankorId'], + $D['kretaDiakNev'], + $D['oId'], + $D['dt'], + $D['ora'], + $D['kretaTankorNev'], + $D['kretaTargyNev'], + $D['tipus'], + $D['perc'], + $D['kretaStatusz'], + $D['statusz'], + $D['kretaIgazolas']); + db_query($q, array('fv'=>'kretaHianyzasImport','values'=>$v),$lr_naplo); + } + + fclose($file); + db_close($lr); + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/kretaHianyzasImport.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/kretaHianyzasImport.php new file mode 100644 index 00000000..9d55012d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/kretaHianyzasImport.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/rpcPrivilege-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/rpcPrivilege-pre.php new file mode 100644 index 00000000..d33879c1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/rpcPrivilege-pre.php @@ -0,0 +1,45 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/rpcPrivilege.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/rpcPrivilege.php new file mode 100644 index 00000000..1f928d21 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/rpcPrivilege.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szemeszterek-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szemeszterek-pre.php new file mode 100644 index 00000000..6edd8674 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szemeszterek-pre.php @@ -0,0 +1,80 @@ += _TIME + ) { + $szemeszterId = $_POST['szemeszterId'] = $_TANEV['szemeszter'][$i]['szemeszterId']; + $tanev = $_TANEV['szemeszter'][$i]['tanev']; + $szemeszter = $_TANEV['szemeszter'][$i]['szemeszter']; + break; + } + } + } else { + // szándékosan nincs szemeszter beállítva + } + if (isset($szemeszterId)) $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId); + $ADAT['idoszakTipusok'] = getIdoszakTipusok(); + + // -------- action --------- // + if ($action != '') { + if ($action == 'idoszakModositas') { + for ($i = 0; $i < count($_POST['idoszakId']); $i++) + $Mod[ $_POST['idoszakId'][$i] ] = array('tolDt' => $_POST['tolDt'][$i], 'igDt' => $_POST['igDt'][$i]); + for ($i = 0; $i < count($_POST['torlendo']); $i++) $Mod[ $_POST['torlendo'][$i] ]['torlendo'] = true; + foreach ($ADAT['szemeszterAdat']['idoszak'] as $i => $iAdat) { + $iId = $iAdat['idoszakId']; + if ($Mod[$iId]['torlendo'] == true) { +// echo 'Torol: '.$iId.'
    '; + idoszakTorles($iId); + } elseif ( + $iAdat['tolDt'] != $Mod[$iId]['tolDt'] + || $iAdat['igDt'] != $Mod[$iId]['igDt'] + ) { +// echo '
    '.$iId.' : '.$iAdat['tolDt'].' -- '.$_POST['tolDt'][$i].'
    '; + idoszakModositas($iId, $Mod[$iId]['tolDt'], $Mod[$iId]['igDt']); + } + + } + } elseif ($action == 'ujIdoszak') { + ujIdoszak( + $_POST['tolDt'], $_POST['igDt'], $_POST['tipus'], + $ADAT['szemeszterAdat']['tanev'], $ADAT['szemeszterAdat']['szemeszter'], $ADAT['idoszakTipusok'] + ); + } + $ADAT['szemeszterAdat']['idoszak'] = getIdoszakByTanev(array('tanev' => $ADAT['szemeszterAdat']['tanev'], 'szemeszter' => $ADAT['szemeszterAdat']['szemeszter'])); + } + +// $TOOL['tanevSelect'] = array('tipus' => 'cella', 'action' => 'tanevValasztas', 'tervezett' => true, 'post' => array(), 'paramName'=>'tanev'); + $TOOL['szemeszterSelect'] = array('tipus' => 'cella', 'action' => 'szemeszterValasztas', 'post' => array(), 'paramName'=>'szemeszterId'); + getToolParameters(); + + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szemeszterek.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szemeszterek.php new file mode 100644 index 00000000..f5132dfd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szemeszterek.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szuloiAzonositok-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szuloiAzonositok-pre.php new file mode 100644 index 00000000..68dde965 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szuloiAzonositok-pre.php @@ -0,0 +1,171 @@ + 0); + else $ret = searchAccount('userAccount', $acc, array('userAccount','userCn'), 'parent'); + + if ($ret['count'] > 0) { + for ($j = 0; $j < $ret['count']; $j++) { // csak a pontos egyezés jó - több pontos egyezés meg nem lehet + if ($ret[$j]['userAccount'][0] == $acc) { + $osztalyTagok[$i][$szulo.'Account'] = $ret[$j]['userAccount'][0]; + $osztalyTagok[$i][$szulo.'UserCn'] = $ret[$j]['userCn'][0]; + break; + } + } + } + if (!isset($osztalyTagok[$i][$szulo.'Account'])) { + // Ha az userAccount alapján nem találtunk, akkor tovább keresünk név alapján + $ret = searchAccount('userCn', $szAdat['szuloNev'], array('userAccount','userCn'), 'parent'); + if ($ret['count'] > 0) { + $osztalyTagok[$i][$szulo.'Accounts'] = $osztalyTagok[$i][$szulo.'Cns'] = array(); + for ($j = 0; $j < $ret['count']; $j++) { + $osztalyTagok[$i][$szulo.'Accounts'][] = $ret[$j]['userAccount'][0]; + $osztalyTagok[$i][$szulo.'Cns'][] = $ret[$j]['userCn'][0]; + } + } + // Javasolt azonosító generálása + $csNev = $szAdat['csaladinev']; + $pos = mb_strpos($csNev, ' ', 0, 'UTF-8'); + if ($pos > 0 && mb_substr($csNev, $pos-2, 2, 'UTF-8') == 'né') { + $csNev = mb_substr($csNev,$pos+1,strlen($csNev)-$pos-1,'UTF-8'); + $pos = mb_strpos($csNev, ' ', 0, 'UTF-8'); + } + if ($pos > 0) $csNev = mb_substr($csNev, 0, $pos, 'UTF-8'); + $uNev = $szAdat['utonev']; + $pos = mb_strpos($uNev, ' ', 0, 'UTF-8'); + if ($pos > 0) $uNev = mb_substr($uNev, 0, $pos, 'UTF-8'); + if ($AUTH['parent']['unixStyleAccounts']) { + $csNev = ekezettelen(kisbetus($csNev)); + $uNev = ekezettelen(kisbetus($uNev)); + $osztalyTagok[$i][$szulo.'GeneratedAccount'] = substr($csNev.$uNev[0], 0, 8); + } else { + $pos = mb_strpos($csNev, ' ', 0, 'UTF-8'); + $osztalyTagok[$i][$szulo.'GeneratedAccount'] = $csNev.'.'.$uNev; + } + } + } // anya | apa + } // osztály tagok + + if ($action == 'createAzonosito') { + $userPassword = readVariable($_POST['userPassword'], 'sql', null); + $CONTAINER = $AUTH['parent'][ $AUTH['parent']['backend'].'Containers']; + $container = readVariable($_POST['container'], 'enum', null, $CONTAINER); + if (is_array($CONTAINER) && count($CONTAINER) > 0 && !isset($container)) { + $_SESSION['alert'][] = 'message:empty_fields:container'; + } else { + define('__JELSZOGENERALAS', $userPassword == ''); + + if (is_array($_POST['userAccount'])) { + for ($i = 0; $i < count($_POST['userAccount']); $i++) { + $szuloId = readVariable($_POST['szuloId'][$i], 'id', null); + $userAccount = readVariable($_POST['userAccount'][$i], 'sql', null); + if (isset($szuloId) && $userAccount != '') { + if (__JELSZOGENERALAS === true) { + $userPassword = $Tagok[$szuloId]['userPassword'];// = sprintf("%u", crc32($szAdat['csaladinev'])); + } + $userCn = $Tagok[$szuloId]['szuloNev']; + $ret = createAccount($userCn, $userAccount, $userPassword, 'parent', + array('category' => null, 'container' => $container, 'groups' => '', 'policyAttrs' => array()) + ); + if ($ret === true) { + // a szulo.userAccount módosítása + $q = "UPDATE szulo SET userAccount='%s' WHERE szuloId=%u"; + $v = array($userAccount, $szuloId); + db_query($q, array('fv'=>'szuloiAzonositok-pre','modul'=>'naplo_intezmeny','values'=>$v)); + // a settings táblában felvesszük, hogy melyik intézményhez van rendelve (ez persze nem korlátoz, csak egy alapértelmezés + $q = "DELETE FROM settings WHERE userAccount='%s' AND policy='%s'"; + db_query($q, array('debug'=>false,'fv'=>'updateNaploSettings','modul'=>'naplo_base','values'=>array($userAccount, 'parent'))); + $q = "INSERT INTO settings (userAccount,policy,intezmeny) VALUES ('%s','%s','%s')"; + db_query($q, array('debug'=>false,'fv'=>'updateNaploSettings','modul'=>'naplo_base','values'=>array($userAccount, 'parent', __INTEZMENY))); + + } + } + } + + + // Újraolvasás + for ($i = 0; $i < count($osztalyTagok); $i++) { + foreach (array('anya','apa') as $szulo) { + + $szuloId = $osztalyTagok[$i][$szulo.'Id']; + if ($szuloId == '') continue; + $szAdat = $osztalyTagok[$i][$szulo] = getSzuloAdat($szuloId); + $acc = $osztalyTagok[$i][$szulo]['userAccount']; + $Tagok[$szuloId] = $osztalyTagok[$i]; // Az adatrögzítés szuloId alapján megy + $Tagok[$szuloId]['szuloNev'] = $szAdat['szuloNev']; + $Tagok[$szuloId]['userPassword'] = $osztalyTagok[$i][$szulo]['userPassword'] = sprintf("%u", crc32($szAdat['csaladinev'])); + + if ($acc == '') $ret = array('count' => 0); + else $ret = searchAccount('userAccount', $acc, array('userAccount','userCn'), 'parent'); + + if ($ret['count'] > 0) { + for ($j = 0; $j < $ret['count']; $j++) { // csak a pontos egyezés jó - több pontos egyezés meg nem lehet + if ($ret[$j]['userAccount'][0] == $acc) { + $osztalyTagok[$i][$szulo.'Account'] = $ret[$j]['userAccount'][0]; + $osztalyTagok[$i][$szulo.'UserCn'] = $ret[$j]['userCn'][0]; + break; + } + } + } + if (!isset($osztalyTagok[$i][$szulo.'Account'])) { + // Ha az userAccount alapján nem találtunk, akkor tovább keresünk név alapján + $ret = searchAccount('userCn', $szAdat['szuloNev'], array('userAccount','userCn'), 'parent'); + if ($ret['count'] > 0) { + $osztalyTagok[$i][$szulo.'Accounts'] = $osztalyTagok[$i][$szulo.'Cns'] = array(); + for ($j = 0; $j < $ret['count']; $j++) { + $osztalyTagok[$i][$szulo.'Accounts'][] = $ret[$j]['userAccount'][0]; + $osztalyTagok[$i][$szulo.'Cns'][] = $ret[$j]['userCn'][0]; + } + } + } + } // anya | apa + } // osztály tagok + // Újraolvasás vége + + + + + } // van elküldött userAccount + } + + } // action + + } // van osztály kiválasztva + + + $TOOL['tanevSelect'] = array('tipus' => 'cella','tanev' => $tanev, 'paramName' => 'tanev', 'post' => array('osztalyId')); + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('igDt', 'tanev')); + getToolParameters(); + + +} + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szuloiAzonositok.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szuloiAzonositok.php new file mode 100644 index 00000000..50df705e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/szuloiAzonositok.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tanevek-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tanevek-pre.php new file mode 100644 index 00000000..a842f97e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tanevek-pre.php @@ -0,0 +1,151 @@ + $tanev, + 'szemeszter' => readVariable($_POST['szemeszter'][$i], 'numeric unsigned'), + 'kezdesDt' => $kezdesDt, + 'zarasDt' => $zarasDt, + 'statusz' => 'tervezett' + ); + } + } + for ($i = 0; $i < count($DATA); $i++) szemeszterBejegyzes($DATA[$i]); + $Tanevek = getTanevek($tervezett = true); + + } + + } elseif ($action == 'intezmenyValasztas') { + + if (isset($intezmeny) && $intezmeny !== __INTEZMENY) { + if (updateSessionIntezmeny($intezmeny)) { + header('Location: '.location('index.php?page=naplo&sub=admin&f=tanevek')); + } + } + + } elseif ($action == 'tanevAktival') { + $TA = getTanevAdat($tanev); + $dbNev = tanevDbNev(__INTEZMENY, $tanev); + if ($TA['statusz'] == 'tervezett') { + // hozzuk létre az adatbázist és adjunk megfelelő jogokat hozzá! + if ( + createDatabase($dbNev, __TANEV_DB_FILE, $rootUser, $rootPassword, array("%DB%" => intezmenyDbNev(__INTEZMENY)) ) + !== false) + { + // frissítsük az osztalyNaplo táblát + refreshOsztalyNaplo($dbNev,$tanev); + activateTanev($tanev); + } + } else { + grantWriteAccessToDb($dbNev, $rootUser, $rootPassword); + activateTanev($tanev); + } + } elseif ($action == 'tanevLezar' && $ADAT['tanevAdat']['statusz'] == 'aktív' && is_array($_POST['step'])) { + $ADAT['step'] = $_POST['step']; + $ADAT['vjlOsztaly'] = $_POST['vjlOsztaly']; + $ADAT['vatOsztaly'] = $_POST['vatOsztaly']; + if (closeTanev($ADAT) && in_array('tanevLezaras', $ADAT['step'])) + revokeWriteAccessFromDb(tanevDbNev(__INTEZMENY, $tanev), $rootUser, $rootPassword); + } elseif ($action == 'tanevLezar' && $ADAT['tanevAdat']['statusz'] == 'aktív' && !is_array($_POST['step'])) { + $_SESSION['alert'][] = 'message:nothing_to_do:'.$action; + } elseif ($action == 'tanevValasztas') { +// if ($_POST['tanev'] !== __TANEV) { +// require_once('include/modules/naplo/share/intezmenyek.php'); +// if (updateSessionTanev($_POST['tanev'])) { +// header('Location: '.location('index.php?page=naplo&sub=admin&f=tanevek')); +// } +// } + } elseif ($action == 'szemeszterTorles') { + // Szemeszterek kezdes és zaras dátumainak változtatása + $Szemeszterek = getTanevSzemeszterek($tanev); + if ( + is_array($_POST['kezdesDt']) && is_array($_POST['zarasDt']) && is_array($Szemeszterek) + && count($Szemeszterek) == count($_POST['kezdesDt']) + ) { + $ADAT['modSzemeszter'] = array(); + $elozoDt = ''; $rendezett = true; + for ($i = 0; $i < count($Szemeszterek); $i++) { + $kezdesDt = readVariable($_POST['kezdesDt'][$i],'datetime',''); + $zarasDt = readVariable($_POST['zarasDt'][$i],'datetime',''); + if ($elozoDt >= $kezdesDt || $kezdesDt >= $zarasDt) { + $rendezett = false; + $_SESSION['alert'][] = 'message:wrong_data:szemeszter dátum módosítás:'.$kezdesDt.'-'.$zarasDt; + break; + } elseif ($Szemeszterek[$i]['kezdesDt'] != $kezdesDt || $Szemeszterek[$i]['zarasDt'] != $zarasDt) { + $Szemeszterek[$i]['kezdesDt'] = $kezdesDt; $Szemeszterek[$i]['zarasDt'] = $zarasDt; + $ADAT['modSzemeszter'][] = $Szemeszterek[$i]; + } + $elozoDt = $zarasDt; + } + if ($rendezett && count($ADAT['modSzemeszter']) > 0) szemeszterModositas($ADAT['modSzemeszter']); + } + if (is_array($_POST['szemeszterId'])) szemeszterTorles($_POST['szemeszterId']); + } // action + updateNaploSession($sessionID,__INTEZMENY,$tanev); + + if (isset($tanev)) $Szemeszterek = getTanevSzemeszterek($tanev); + $i = 0; + while (($i < count($Szemeszterek)) && ($Szemeszterek[$i]['statusz'] != 'aktív')) $i++; + $aktivTanev = ($i < count($Szemeszterek)); + + $TOOL['intezmenySelect'] = array('tipus' => 'cella', 'action' => 'intezmenyValasztas', 'intezmenyek' => $Intezmenyek, 'post' => array()); + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'tanevek' => $Tanevek, 'action' => 'tanevValasztas', 'tervezett' => true, 'post' => array(), 'paramName'=>'tanev'); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tanevek.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tanevek.php new file mode 100644 index 00000000..769a1686 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tanevek.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tankorok-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tankorok-pre.php new file mode 100644 index 00000000..d1369674 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tankorok-pre.php @@ -0,0 +1,39 @@ + 0) $attrList = getTableFields('tankor', 'naplo_intezmeny',array('targyNev')); + else $_SESSION['alert'][] = 'message:wrong_data'; + + } else { + + updateTankor($fileName, $MEZO_LISTA, $KULCS_MEZOK, $mezo_elvalaszto, $_POST['rovatfej']); + + } // MEZO_LISTA tömb + } else { + $_SESSION['alert'][] = 'message:file_not_found:'.$fileName; + } // A file létezik-e + + } // van file + } + +} +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tankorok.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tankorok.php new file mode 100644 index 00000000..d667b706 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/tankorok.php @@ -0,0 +1,16 @@ + 0) putFieldSelectForm($fileName, $ADATOK, $attrList, 'naplo_intezmeny:tankor'); + else echo 'NINCS ADAT!'; + } else { + echo 'Adatfeldolgozás kész.'; + } +} +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesTipus-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesTipus-pre.php new file mode 100644 index 00000000..9277b65d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesTipus-pre.php @@ -0,0 +1,59 @@ + $tAdat) { + foreach ($tAdat as $btAdat) { + $mdb = 0; // módosítandó mezők száma + $btId = $btAdat['bejegyzesTipusId']; + if ($btAdat['bejegyzesTipusNev'] != $B[$btId]['bejegyzesTipusNev']) $mdb++; + if ($btAdat['tipus'] == 'fegyelmi' && intval($btAdat['hianyzasDb']) != $B[$btId]['hianyzasDb']) $mdb++; + if (explode(',',$btAdat['jogosult']) != $B[$btId]['jogosult']) { + if ($mdb == 0) { + jogosultValtoztatas($btId, $B[$btId]['jogosult']); + $mdb = 0; + } + } + if ($mdb > 0) bejegyzesTipusModositas($btId, $B[$btId], $dt); + } + // Fokozat-törlés - új fokozat + if (isset($_POST['del-'.ekezettelen($tipus)])) fokozatTorles($tipus, $dt); + elseif (isset($_POST['new-'.ekezettelen($tipus)])) ujFokozat($tipus, $dt); + } + $ADAT['bejegyzesTipusok'] = getBejegyzesTipusok($dt); + } + + $TOOL['datumSelect'] = array('tipus'=>'cella','paramName' => 'dt', 'post'=>array()); + getToolParameters(); + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesTipus.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesTipus.php new file mode 100644 index 00000000..9213d95d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesTipus.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesek-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesek-pre.php new file mode 100644 index 00000000..42c0ba03 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesek-pre.php @@ -0,0 +1,73 @@ + __TANEV, 'osztalyId' => $osztalyId, 'result'=>'assoc')); + $Diakok = getDiakok(array('tanev' => __TANEV, 'osztalyId' => $osztalyId)); + $diakIds = array(); for ($i = 0; $i < count($Diakok); $i++) $diakIds[] = $Diakok[$i]['diakId']; + if (!$tanarId) + $diakId = readVariable($_POST['diakId'], 'numeric unsigned', null, $diakIds); + + if (__DIAK) $diakId = __USERDIAKID; + + if ($action === 'delBejegyzes') { + + $bejegyzesId = readVariable($_POST['bejegyzesId'], 'numeric unsigned', 0); + $bejegyzesAdat = getBejegyzesAdatById($bejegyzesId); + if ( // Admin bármikor, tanár a beírás napján törölhet + __NAPLOADMIN || + ($bejegyzesAdat['tanarId'] = __USERTANARID && $bejegyzesAdat['beirasDt'] == date('Y-m-d')) + ) { + delBejegyzes($bejegyzesId); + } + + } + + if (isset($diakId)) $BEJEGYZESEK = getBejegyzesLista($diakId); + elseif (isset($osztalyId)) $osztalyBejegyzesek = getBejegyzesekByDiakIds($diakIds); + elseif (isset($tanarId)) $BEJEGYZESEK = getBejegyzesekByTanarId($tanarId); + + if (__TANAR || __VEZETOSEG || __NAPLOADMIN) { + $TOOL['tanarSelect'] = array( + 'tipus' => 'cella', 'paramName' => 'tanarId', 'post'=>array('osztalyId','tolDt', 'igDt', 'targySorrend') + ); + + $TOOL['osztalySelect'] = array( + 'tipus' => 'cella', 'paramName' => 'osztalyId', 'osztalyok' => $Osztalyok, 'post' => array('tolDt', 'igDt', 'targySorrend') + ); + $TOOL['diakSelect'] = array( + 'tipus' => 'cella', 'paramName' => 'diakId', +// 'diakok' => $Diakok, + 'post'=>array('osztalyId','tolDt', 'igDt', 'targySorrend'), + 'statusz' => array('vendégtanuló','jogviszonyban van','magántanuló','jogviszonya lezárva','jogviszonya felfüggesztve') + ); + if (isset($diakId)) + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=bejegyzesek&f=ujBejegyzes'), + 'titleConst' => array('_UJBEJEGYZES'), 'post' => array('osztalyId'), 'paramName'=>'diakId'); + + } + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesek.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesek.php new file mode 100644 index 00000000..083bed25 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/bejegyzesek.php @@ -0,0 +1,15 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/info-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/info-pre.php new file mode 100644 index 00000000..21d05060 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/info-pre.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/info.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/info.php new file mode 100644 index 00000000..c0e13920 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/info.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/ujBejegyzes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/ujBejegyzes-pre.php new file mode 100644 index 00000000..c6db7843 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/ujBejegyzes-pre.php @@ -0,0 +1,60 @@ + 0 )); + + $jogosult = array(); + if (__TANAR) $jogosult[] = 'szaktanár'; + if (__OFO) $jogosult[] = 'osztályfőnök'; + if (__VEZETOSEG) $jogosult[] = 'vezetőség'; + if (__NAPLOADMIN) $jogosult[] = 'admin'; + $FOKOZATOK = getBejegyzesTipusokByJogosult($jogosult); + + if ($action == 'ujBejegyzes') { + + $bejegyzesTipusId = readVariable($_POST['bejegyzesTipusId'], 'id'); + $szoveg = readVariable($_POST['szoveg'], 'string', ''); + $evvegi = readVariable($_POST['evvegi'], 'bool', false); + if ($evvegi) { + // A tanév záró napjára dátumozott bejegyzések kerülnek a törzslapra + $referenciaDt = $_TANEV['zarasDt']; + } else { + $referenciaDt = readVariable($_POST['referenciaDt'],'datetime',''); + } + + if (isset($bejegyzesTipusId) && $szoveg != '') { + if (ujBejegyzes($bejegyzesTipusId, $szoveg, $referenciaDt, $diakId)) $_SESSION['alert'][] = 'info:success:ujBejegyzes'; + } else { $_SESSION['alert'][] = 'message:wrong_data:ujBejegyzes:szöveg='.$szoveg.', bejegyzesTipusId='.$bejegyzesTipusId; } + } + } // isset($diakId) + + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post'=>array('tolDt', 'igDt', 'targySorrend')); + $TOOL['diakSelect'] = array('tipus'=>'cella','paramName'=>'diakId', 'post'=>array('osztalyId','tolDt', 'igDt', 'targySorrend'), + 'statusz' => array('vendégtanuló','jogviszonyban van','magántanuló') + ); + if (isset($diakId)) + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=bejegyzesek&f=bejegyzesek'), + 'titleConst' => array('_BEJEGYZESEK'), 'post' => array('osztalyId'), 'paramName'=>'diakId'); + + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/ujBejegyzes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/ujBejegyzes.php new file mode 100644 index 00000000..0de20502 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/bejegyzesek/ujBejegyzes.php @@ -0,0 +1,12 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/error-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/error-pre.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/error.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/error.php new file mode 100644 index 00000000..25d0f284 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/error.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/ertekeles-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/ertekeles-pre.php new file mode 100644 index 00000000..8e9903bd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/ertekeles-pre.php @@ -0,0 +1,205 @@ + $tanev, 'result' => 'csakid')); + + } elseif (__DIAK) { + $cimzettTipusok = array('diak','tankor','osztaly'); + $feladoTipus = 'diak'; + $feladoId = $diakId = __USERDIAKID; + $cimzett['diak'] = array(__USERDIAKID); + $cimzett['tankor'] = array(0); + $tankorAdat = array(); + $ret = getTankorByDiakId($diakId, $tanev); + if (is_array($ret)) for ($i = 0; $i < count($ret); $i++) { + if (!in_array($ret[$i]['tankorId'], $cimzett['tankor'])) { + $cimzett['tankor'][] = $ret[$i]['tankorId']; + $tankorAdat[ $ret[$i]['tankorId'] ] = $ret[$i]; + } + } + $cimzett['osztaly'] = getDiakOsztalya($diakId, array('tanev' => $tanev, 'result' => 'csakid')); + } elseif (__TANAR) { + $cimzettTipusok = array('tanar','munkakozosseg'); + $feladoTipus = 'tanar'; + $feladoId = __USERTANARID; + $cimzett['tanar'] = array(__USERTANARID); + $cimzett['munkakozosseg'] = getMunkakozossegByTanarId(__USERTANARID); + // Munkaközösségek lekérdezése, címzett listába felvevése... + } + if (__NAPLOADMIN) { + // Ez egy hack. Az admin kiválasztva egy diákon belebújhat annak a szerepébe... + $diakId = readVariable($_POST['diakId'], 'id'); + if (isset($diakId)) { + $cimzett['diak'] = array($diakId); + $cimzett['tankor'] = array(0); + $tankorAdat = array(); + $ret = getTankorByDiakId($diakId, $tanev); + if (is_array($ret)) for ($i = 0; $i < count($ret); $i++) { + if (!in_array($ret[$i]['tankorId'], $cimzett['tankor'])) { + $cimzett['tankor'][] = $ret[$i]['tankorId']; + $tankorAdat[ $ret[$i]['tankorId'] ] = $ret[$i]; + } + } + $cimzett['osztaly'] = getDiakOsztalya($diakId, array('tanev' => $tanev, 'result' => 'csakid')); + } + + } + + // A szóbajövő kérdőívek + $Kerdoiv = getKerdoiv($cimzett); + + $kerdoivIds = array(); + for ($i = 0; $i < count($Kerdoiv); $i++) $kerdoivIds[] = $Kerdoiv[$i]['kerdoivId']; + + // Kérdőív kiválasztás + $ADAT['kerdoivId'] = $kerdoivId = readVariable($_POST['kerdoivId'], 'numeric', null, $kerdoivIds); + if (!isset($kerdoivId) && count($Kerdoiv) == 1) $kerdoivId = $Kerdoiv[0]['kerdoivId']; + + // Ha van kiválasztott kérdőív + if (isset($kerdoivId)) { + $ADAT['kerdoivAdat'] = getKerdoivAdat($kerdoivId); + // mely címzettek közösek + if (is_array($cimzett)) foreach ($cimzett as $cimzettTipus => $cimzettIds) { + if (is_array($cimzettIds) && count($cimzettIds) > 0) { + if (is_array($ADAT['kerdoivAdat']['cimzett'][$cimzettTipus])) { + if (in_array(0, $ADAT['kerdoivAdat']['cimzett'][$cimzettTipus])) $cIds = $cimzettIds; + else $cIds = array_intersect($cimzettIds, $ADAT['kerdoivAdat']['cimzett'][$cimzettTipus]); + if (count($cIds) > 0) { + $kozosCimzett[$cimzettTipus] = array_values($cIds); + switch ($cimzettTipus) { + case 'tankor': + case 'tankorSzulo': + $Tankorok = array(); + foreach ($cIds as $index => $tankorId) $Tankorok[] = $tankorAdat[ $tankorId ]; + // ki van-e választva (tankorSelect) az értékelendő tankör + $ADAT['cimzettId'] = readVariable($_POST['tankorId'], 'numeric', null, $cIds); + if (isset($ADAT['cimzettId'])) { + $ADAT['cimzettTipus'] = $cimzettTipus; + $Nevek = array(); + foreach (getTankorTanaraiByInterval( $ADAT['cimzettId'] ) as $idx => $tAdat) $Nevek[] = $tAdat['tanarNev']; + $ADAT['cimzettLeiras'] = $tankorAdat[ $ADAT['cimzettId'] ]['tankorNev'].' ('.implode(', ', $Nevek).')'; + } + break; + case 'osztaly': + case 'osztalySzulo': + $Osztalyok = array(); + foreach ($cIds as $index => $osztalyId) $Osztalyok[] = $osztalyAdat[ $osztalyId ]; // Még nincsenek osztályok lekérdezve!! + // ki van-e választva (osztalySelect) az értékelendő osztály + $ADAT['cimzettId'] = readVariable($_POST['osztalyId'], 'numeric', null, $cIds); + if (isset($ADAT['cimzettId'])) $ADAT['cimzettTipus'] = $cimzettTipus; + break; + case 'munkakozosseg': + $Munkakozossegek = array(); + foreach ($cIds as $index => $mkId) $Munkakozossegek[] = $mkAdat[ $mkId ]; // Még nincsenek munkaközösségek lekérdezve!! + // ki van-e választva (munkakozossegSelect) az értékelendő munkaközösség + $ADAT['cimzettId'] = readVariable($_POST['mkId'], 'numeric', null, $cIds); + if (isset($ADAT['cimzettId'])) $ADAT['cimzettTipus'] = $cimzettTipus; + break; + } + } + } + } + } + // Ha már a kérdőív kitöltése folyik - ismert a cimzettTipus és cimzettId + if (!isset($ADAT['cimzettId'])) { + $ADAT['cimzettTipus'] = readVariable($_POST['cimzettTipus'], 'enum', null, $cimzettTipusok); + if (isset($ADAT['cimzettTipus'])) + $ADAT['cimzettId'] = readVariable($_POST['cimzettId'], 'numeric', null, $kozosCimzett[$ADAT['cimzettTipus']]); + } + // Ha egyik előző sem, de egyértelmű a címzett + if (!isset($ADAT['cimzettId']) && count($kozosCimzett) == 1) { + list($cTipus, $cIds) = each($kozosCimzett); + if (count($cIds) == 1) { + $ADAT['cimzettTipus'] = readVariable($cTipus, 'enum', null, $cimzettTipusok); + if (isset($ADAT['cimzettTipus'])) + $ADAT['cimzettId'] = readVariable($cIds[0], 'numeric', null, $kozosCimzett[$ADAT['cimzettTipus']]); + } + } + + unset($tankorId); unset($osztalyId); unset($mkId); + if (isset($ADAT['cimzettId'])) { + switch ($ADAT['cimzettTipus']) { + case 'tankor': + case 'tankorSzulo': $tankorId = $ADAT['cimzettId']; break; + case 'osztaly': + case 'osztalySzulo': $osztalyId = $ADAT['cimzettId']; break; + case 'munkakozosseg': $mkId = $ADAT['cimzettId']; + } + if ($action == 'ertekeles') { + // A válaszok rögzítése... + $ADAT['megvalaszoltKerdes'] = getMegvalaszoltKerdes($kerdoivId, $feladoId, $feladoTipus, $ADAT['cimzettId'], $ADAT['cimzettTipus']); + + // ------------------- + $lr = db_connect('naplo'); + db_start_trans($lr); + + for ($i = 0; $i < count($ADAT['kerdoivAdat']['kerdes']); $i++) { + $kerdesId = $ADAT['kerdoivAdat']['kerdes'][$i]['kerdesId']; + $valaszId = readVariable($_POST['valasz'.$kerdesId], 'numeric unsigned', null); + $szabadValasz = readVariable($_POST['szabadValasz'.$kerdesId], 'string', null); + if (!in_array($kerdesId, $ADAT['megvalaszoltKerdes']) && (isset($valaszId) || $szabadValasz != '')) { // Ha még nem válaszolt a kérdésre, és most van válasz + $q = "INSERT INTO kerdoivMegvalaszoltKerdes (feladoId,feladoTipus,kerdesId,cimzettId,cimzettTipus) VALUES (%u, '%s', %u, %u, '%s')"; + $v = array($feladoId, $feladoTipus, $kerdesId, $ADAT['cimzettId'], $ADAT['cimzettTipus']); + db_query($q, array('fv' => 'ertekeles', 'modul' => 'naplo', 'values' => $v), $lr); + + // Kérdezzük le, hogy van-e kerdoivValaszSzam bejegyzés az adott válaszhoz, címzetthez + $q = "SELECT COUNT(*) FROM kerdoivValaszSzam WHERE valaszId = %u AND cimzettId=%u AND cimzettTipus='%s'"; + $v = array($valaszId, $ADAT['cimzettId'], $ADAT['cimzettTipus']); + $db = db_query($q, array('fv' => 'ertekeles/volt-e már ez a válasz', 'result' => 'value', 'modul' => 'naplo', 'values' => $v), $lr); + if ($db == 0) { + $q = "INSERT INTO kerdoivValaszSzam (valaszId, cimzettId, cimzettTipus, szavazat) VALUES (%u,%u,'%s',1)"; + $v = array($valaszId, $ADAT['cimzettId'], $ADAT['cimzettTipus']); + db_query($q, array('fv' => 'ertekeles', 'modul' => 'naplo', 'values' => $v), $lr); + } else { + $q = "UPDATE kerdoivValaszSzam SET szavazat=szavazat+1 WHERE valaszId=%u AND cimzettId=%u AND cimzettTipus='%s'"; + $v = array($valaszId, $ADAT['cimzettId'], $ADAT['cimzettTipus']); + db_query($q, array('fv' => 'ertekeles', 'modul' => 'naplo', 'values' => $v), $lr); + } + } + if ($szabadValasz != '') { + $q = "INSERT INTO kerdoivSzabadValasz (kerdesId, szoveg) VALUES (%u, '%s')"; + $v = array($kerdesId, $szabadValasz); + db_query($q, array('fv' => 'ertekeles/szabadValasz', 'modul' => 'naplo', 'values' => $v), $lr); + } + } + db_commit($lr); + db_close($lr); + // ------------------- + + } + $ADAT['megvalaszoltKerdes'] = getMegvalaszoltKerdes($kerdoivId, $feladoId, $feladoTipus, $ADAT['cimzettId'], $ADAT['cimzettTipus']); + } + } + if (is_array($Kerdoiv)) + $TOOL['kerdoivSelect'] = array('tipus' => 'cella', 'kerdoiv' => $Kerdoiv, 'paramName' => 'kerdoivId', 'post' => array('diakId')); + if (__NAPLOADMIN) + $TOOL['diakSelect'] = array('tipus' => 'sor', 'paramName' => 'diakId', 'post' => array('kerdoivId','tankorId')); + if (is_array($Tankorok)) + $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $Tankorok, 'paramName' => 'tankorId', 'post' => array('kerdoivId','diakId')); + + getToolParameters(); + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/ertekeles.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/ertekeles.php new file mode 100644 index 00000000..e69607b7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/ertekeles.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/export-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/export-pre.php new file mode 100644 index 00000000..df76b3d1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/export-pre.php @@ -0,0 +1,33 @@ +'; var_dump($ADAT['stat']['kerdes'][1]); echo '
    '; + + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'paramName' => 'tanev', 'post' => array()); + $TOOL['kerdoivSelect'] = array('tipus' => 'cella', 'paramName' => 'kerdoivId', 'kerdoiv' => $ADAT['kerdoiv'], 'post' => array('tanev')); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/export.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/export.php new file mode 100644 index 00000000..f2f7171d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/export.php @@ -0,0 +1,27 @@ +'; + foreach ($ADAT['stat']['kerdes'] as $kerdesId => $kAdat) { + echo $kAdat['kerdes']."\n"; + foreach ($kAdat['valasz'] as $valaszId => $valasz) { + echo $valasz."\n"; + } + echo "\n"; + } + + echo ''."\n"; + formEnd(); + + } + + exportKerdoiv($ADAT); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/kerdoivBetoltes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/kerdoivBetoltes-pre.php new file mode 100644 index 00000000..0d633fc8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/kerdoivBetoltes-pre.php @@ -0,0 +1,149 @@ + 0) + $ADAT['cimzettTipus'] = array_pop(array_keys($ADAT['kerdoivAdat']['cimzett'])); + $ADAT['cim'] = $ADAT['kerdoivAdat']['cim']; + } + + if (isset($ADAT['cimzettTipus'])) { +/* + switch ($ADAT['feladoTipus']) { + case 'tanar': + $T = getTanarok(array('tanev' => __TANEV)); + for ($i = 0; $i < count($T); $i++) { + $ADAT['feladok'][] = array('feladoId' => $T[$i]['tanarId'], 'feladoNev' => $T[$i]['tanarNev']); + $ADAT['feladoIds'][] = $T[$i]['tanarId']; + } + break; + case 'diak': + $T = getDiakok(array('tanev' => __TANEV)); + for ($i = 0; $i < count($T); $i++) { + $ADAT['feladok'][] = array('feladoId' => $T[$i]['diakId'], 'feladoNev' => $T[$i]['diakNev']); + $ADAT['feladoIds'][] = $T[$i]['diakId']; + } + break; + case 'szulo': + $T = getSzulok(array('result' => 'standard')); + for ($i = 0; $i < count($T); $i++) { + $ADAT['feladok'][] = array('feladoId' => $T[$i]['szuloId'], 'feladoNev' => $T[$i]['szuloNev']); + $ADAT['feladoIds'][] = $T[$i]['szuloId']; + } + break; + } +*/ + $ADAT['cimzettIds'] = array(0); + switch ($ADAT['cimzettTipus']) { + case 'tanar': + $T = getTanarok(array('tanev' => __TANEV)); + for ($i = 0; $i < count($T); $i++) { + $ADAT['cimzettek'][] = array('cimzettId' => $T[$i]['tanarId'], 'cimzettNev' => $T[$i]['tanarNev']); + $ADAT['cimzettIds'][] = $T[$i]['tanarId']; + } + break; + case 'diak': + $T = getDiakok(array('tanev' => __TANEV)); + for ($i = 0; $i < count($T); $i++) { + $ADAT['cimzettek'][] = array('cimzettId' => $T[$i]['diakId'], 'cimzettNev' => $T[$i]['diakNev']); + $ADAT['cimzettIds'][] = $T[$i]['diakId']; + } + break; + case 'szulo': + $T = getSzulok(array('result' => 'standard')); + for ($i = 0; $i < count($T); $i++) { + $ADAT['cimzettek'][] = array('cimzettId' => $T[$i]['szuloId'], 'cimzettNev' => $T[$i]['szuloNev']); + $ADAT['cimzettIds'][] = $T[$i]['szuloId']; + } + break; + case 'tankor': + case 'tankorSzulo': + case 'tankorTanar': + $T = getTankorok(array('tanev = '.__TANEV)); + for ($i = 0; $i < count($T); $i++) { + $ADAT['cimzettek'][] = array('cimzettId' => $T[$i]['tankorId'], 'cimzettNev' => $T[$i]['tankorNev']); + $ADAT['cimzettIds'][] = $T[$i]['tankorId']; + } + break; + case 'munkakozosseg': + $T = getMunkakozossegek(); + for ($i = 0; $i < count($T); $i++) { + $ADAT['cimzettek'][] = array('cimzettId' => $T[$i]['mkId'], 'cimzettNev' => $T[$i]['mkNev']); + $ADAT['cimzettIds'][] = $T[$i]['mkId']; + } + break; + case 'osztaly': + case 'osztalySzulo': + case 'osztalyTanar': + $T = getOsztalyok(__TANEV); + for ($i = 0; $i < count($T); $i++) { + $ADAT['cimzettek'][] = array('cimzettId' => $T[$i]['osztalyId'], 'cimzettNev' => $T[$i]['osztalyJel']); + $ADAT['cimzettIds'][] = $T[$i]['osztalyId']; + } + break; + } + } + + if ($action == 'kerdoivBetoltes1') { + $ADAT['cim'] = readVariable($_POST['cim'], 'sql', null); + $ADAT['tolDt'] = readVariable($_POST['tolDt'], 'datetime', null); + $ADAT['igDt'] = readVariable($_POST['igDt'], 'datetime', null); + $ADAT['megjegyzes'] = readVariable($_POST['megjegyzes'], 'string', null); + if (isset($ADAT['cim']) && isset($ADAT['tolDt']) && isset($ADAT['igDt']) && isset($ADAT['cimzettTipus'])) { + $kerdoivId = $ADAT['kerdoivId'] = ujKerdoiv($ADAT); + if ($kerdoivId) { + $ADAT['txt'] = explode("\n", $_POST['txt']); + kerdesValaszFelvetel($ADAT); + } + } else { + $_SESSION['alert'][] = 'message:empty_fields:ujKerdoiv:cim-tolDt-igDt'; + } + } elseif ($action == 'kerdoivBetoltes2') { + if (is_array($_POST['cimzettId']) && count($_POST['cimzettId']) > 0) { + //$kerdoivId = readVariable($_POST['kerdoivId'], 'numeric unsigned', null); + if (in_array(0, $_POST['cimzettId'])) $_POST['cimzettId'] = $ADAT['cimzettIds']; + for ($i = 0; $i < count($_POST['cimzettId']); $i++) { + $cimzettId = readVariable($_POST['cimzettId'][$i], 'numeric unsigned', null, $ADAT['cimzettIds']); + kerdoivCimzettFelvetel($kerdoivId, $cimzettId, $ADAT['cimzettTipus']); + } + } + if (is_array($_POST['torlendoCimzettId']) && count($_POST['torlendoCimzettId']) > 0) { + for ($i = 0; $i < count($_POST['torlendoCimzettId']); $i++) { + $cimzettId = readVariable($_POST['torlendoCimzettId'][$i], 'numeric unsigned', null, $ADAT['cimzettIds']); + kerdoivCimzettTorles($kerdoivId, $cimzettId, $ADAT['cimzettTipus']); + } + } + $ADAT['kerdoivAdat'] = getKerdoivAdat($kerdoivId); + if (is_array($ADAT['kerdoivAdat']['cimzett']) && count($ADAT['kerdoivAdat']['cimzett'])>0) { + $ADAT['cimzettTipus'] = array_pop(array_keys($ADAT['kerdoivAdat']['cimzett'])); + } + $ADAT['cim'] = $ADAT['kerdoivAdat']['cim']; + } + } + + $TOOL['kerdoivSelect'] = array('tipus' => 'cella', 'paramName' => 'kerdoivId', 'post' => array()); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/kerdoivBetoltes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/kerdoivBetoltes.php new file mode 100644 index 00000000..4b7c5287 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/kerdoivBetoltes.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/osszesites-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/osszesites-pre.php new file mode 100644 index 00000000..0b537ffe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/osszesites-pre.php @@ -0,0 +1,97 @@ + $cimzettTipus) { + if (is_array($ADAT['kerdoivStat']['cimzett'][$cimzettTipus])) { // Ha tanköröket értékeltünk + // Elválasztó - a két címzettTípus között +// $Table[] = ''; $Table[] = $cimzettTipus; $Table[] = ''; + $sor = count($Table); // A következő sor + // táblázat elkészítése - két dimenziós tömb + // első sor: Tanár | Tankör | Kerdes |.|.|.| Kerdes |.|... + $Table[$sor] = array('Tanár/Tankör','Létszám'); + foreach ($ADAT['kerdoivStat']['kerdes'] as $kerdesId => $kAdat) { + $Table[$sor][] = $kAdat['kerdes'].' ('.$kerdesId.')'; + for ($i = 1; $i < count($kAdat['valasz']); $i++) $Table[$sor][] = ''; + } + // Második sor: | valasz1/1 | Valasz1/2 ... + $Table[$sor+1] = array('',''); + foreach ($ADAT['kerdoivStat']['kerdes'] as $kerdesId => $kAdat) { + $j=1; + foreach ($kAdat['valasz'] as $valaszId => $valasz) + $Table[$sor+1][] = ($j++).'. '.$valasz.' ('.$valaszId.')'; + } + // Tanáronként megyünk + if (isset($tanarId)) $Tanarok = array($tanarId => $ADAT['kerdoivStat']['tanarNev'][$tanarId]); + else $Tanarok = $ADAT['kerdoivStat']['tanarNev']; + foreach ($Tanarok as $tanarId => $tanarNev) { + $Table[] = array($tanarNev,''); // Ebbe a sorba lehetne esetleg átlagolni + // tanköröknként + for ($i = 0; $i < count($ADAT['kerdoivStat']['tanarTankorei'][$tanarId]); $i++) { + $tankorId = $ADAT['kerdoivStat']['tanarTankorei'][$tanarId][$i]; + $tankorNev = $ADAT['kerdoivStat']['tankorAdat'][$tankorId]['tankorNev']; + $Row = array($tankorNev.' ('.$tankorId.')', $ADAT['kerdoivStat']['tankorAdat'][$tankorId]['letszam']); + // Kérdésenként + foreach ($ADAT['kerdoivStat']['kerdes'] as $kerdesId => $kAdat) { + // Válszonként + foreach ($kAdat['valasz'] as $valaszId => $valasz) { + $Row[] = $ADAT['kerdoivStat']['szavazat'][$cimzettTipus][$tankorId][$valaszId]; + } + } + $Table[] = $Row; + } + } + + }} // if / foreach + + if (strstr($_SERVER["HTTP_USER_AGENT"], 'Linux')) { + $fileName = fileNameNormal('kerdoiv-'.$kerdoivId.'.csv'); + if (generateCSV($fileName, $Table, 'Kérdőív összesítés')) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/ertekeles/osszesites&file='.$fileName)); + } else { + $fileName = fileNameNormal('kerdoiv-'.$kerdoivId.'.xls'); + if (generateXLS($fileName, $Table, 'Kérdőív összesítés')) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/ertekeles/osszesites&file='.$fileName)); + } +// } // isset($tankorId) + } + + } + + if (__NAPLOADMIN || __VEZETOSEG) + $TOOL['tanarSelect'] = array('tipus' => 'cella', 'post' => array('kerdoivId')); +// $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('tolDt', 'igDt')); +// if (isset($osztalyId) || isset($tanarId)) +// $TOOL['tankorSelect'] = array('tipus' => 'sor', 'paramName' => 'tankorId', 'post' => array('osztalyId', 'tanarId', 'kerdoivId')); + + + $TOOL['kerdoivSelect'] = array('tipus' => 'cella', 'paramName' => 'kerdoivId', 'kerdoiv' => $ADAT['kerdoiv'], 'post' => array('tanarId', 'tankorId')); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/osszesites.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/osszesites.php new file mode 100644 index 00000000..c24a85d5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/ertekeles/osszesites.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemeny-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemeny-pre.php new file mode 100644 index 00000000..42808fe9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemeny-pre.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemeny.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemeny.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemenyDiak-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemenyDiak-pre.php new file mode 100644 index 00000000..080fb0ca --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemenyDiak-pre.php @@ -0,0 +1,83 @@ + $statuszLista)); + $ADAT['diakIds'][$_osztalyId] = array(); + foreach ($statuszLista as $statusz) + foreach ($tmp[$statusz] as $_diakId) { + $ADAT['diakok'][$_osztalyId][] = array( + 'diakId' => $_diakId, 'diakNev' => $tmp[$_diakId]['diakNev'], 'beDt' => $tmp[$_diakId]['beDt'], + 'kiDt' => $tmp[$_diakId]['kiDt'], 'statusz' => $statusz + ); + $ADAT['diakIds'][$_osztalyId][] = $_diakId; + $ADAT['diak2osztaly'][$_diakId] = $_osztalyId; + } + } + } + + $ADAT['esemenyek'] = getEsemenyLista(); + $TOOL['esemenySelect'] = array('tipus'=>'cella', + 'paramName'=>'esemenyId','paramDesc'=>'esemenyNev','esemenyId'=>$ADAT['esemenyId'],'adatok' => $ADAT['esemenyek'] + ); + if ($ADAT['esemenyId'] != '') { + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=esemeny&f=ujEsemeny'), + 'titleConst' => array('_ESEMENYMODOSITAS'), 'post' => array('esemenyId'), + ); + } + + getToolParameters(); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemenyDiak.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemenyDiak.php new file mode 100644 index 00000000..789fd5dd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/esemenyDiak.php @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/jelentkezes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/jelentkezes-pre.php new file mode 100644 index 00000000..9d1de532 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/jelentkezes-pre.php @@ -0,0 +1,45 @@ + $ADAT['esemenyIds'])); + $ADAT['jovahagyottEsemenyek'] = getJovahagyottEsemenyek($ADAT['diakId'], array('esemenyIds' => $ADAT['esemenyIds'])); + + if ($action == 'jelentkezes') { + + foreach ($_POST as $key => $val) { + if ($val == 'felvesz') { + $ADAT['esemenyId'] = readVariable(substr($key,7), 'id'); + // TODO: ellenőrizzük, hogy az adott eseményre jelentkezhet-e a diák... + esemenyJelentkezes($ADAT['diakId'], $ADAT['esemenyId']); + } elseif ($val == 'lead') { + $ADAT['esemenyId'] = readVariable(substr($key,4), 'id'); + esemenyLeadas($ADAT['diakId'], $ADAT['esemenyId']); + } + // Választott események újraolvasása... + $ADAT['esemenyek'] = getAktualisEsemenyByOsztaly($ADAT['diakOsztaly'][ $ADAT['diakId'] ]); + $ADAT['valasztottEsemenyek'] = getValasztottEsemenyek($ADAT['diakId'], array('esemenyIds' => $ADAT['esemenyIds'])); + $ADAT['jovahagyottEsemenyek'] = getJovahagyottEsemenyek($ADAT['diakId'], array('esemenyIds' => $ADAT['esemenyIds'])); + } + + } + + } + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/jelentkezes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/jelentkezes.php new file mode 100644 index 00000000..b6286bf4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/jelentkezes.php @@ -0,0 +1,8 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/ujEsemeny-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/ujEsemeny-pre.php new file mode 100644 index 00000000..c1bffff8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/ujEsemeny-pre.php @@ -0,0 +1,91 @@ +'cella', + 'paramName'=>'esemenyId','paramDesc'=>'esemenyNev','esemenyId'=>$ADAT['esemenyId'],'adatok' => $ADAT['esemenyek'] + ); + if ($ADAT['esemenyId'] != '') { + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=esemeny&f=esemenyDiak'), + 'titleConst' => array('_ESEMENYJELENTKEZOK'), 'post' => array('esemenyId'), + ); + } + getToolParameters(); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/ujEsemeny.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/ujEsemeny.php new file mode 100644 index 00000000..fdb37417 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/esemeny/ujEsemeny.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/bizonyitvany-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/bizonyitvany-pre.php new file mode 100644 index 00000000..b71adf7b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/bizonyitvany-pre.php @@ -0,0 +1,114 @@ += _TIME + ) { + $_POST['szemeszterId'] = $szemeszterId = $_TANEV['szemeszter'][$i]['szemeszterId']; + break; + } + } + } + $ADAT['sorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'enum', 'bizonyítvány', array('bizonyitvany')); + + $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'id'); + if (!isset($osztalyId) && __OSZTALYFONOK) { $ADAT['osztalyId'] = $osztalyId = $_OSZTALYA[0]; } + + if (isset($szemeszterId)) { + + $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId); + define('__ZARO_SZEMESZTER', $ADAT['szemeszterAdat']['szemeszter'] == $ADAT['szemeszterAdat']['tanevAdat']['maxSzemeszter']); + + $Osztalyok = getOsztalyok($ADAT['szemeszterAdat']['tanev']); + if (isset($osztalyId) && $action == 'bizonyitvanyExport') { + + define('__OSZTALYFONOKE', (__OSZTALYFONOK === true && in_array($osztalyId, $_OSZTALYA))); + + // intézmény adatok + $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY); + // osztály statisztikák + $ADAT['osztaly'] = getOsztalyAdat($osztalyId, $ADAT['szemeszterAdat']['tanev']); + // Az adott szemeszterben létezik-e az osztály + for ($i = 0; ($i < count($Osztalyok) && $Osztalyok[$i]['osztalyId'] != $osztalyId); $i++); + if ($i < count($Osztalyok)) { + $Szulok = getSzulok(); + $ADAT['diakok'] = getDiakok(array('osztalyId' => $osztalyId, 'tanev' => $ADAT['szemeszterAdat']['tanev'])); + for ($i = 0; $i < count($ADAT['diakok']); $i++) { + $ADAT['diakIds'][] = intval($ADAT['diakok'][$i]['diakId']); + $ADAT['diakAdat'][ $ADAT['diakok'][$i]['diakId'] ] = getDiakAdatById( $ADAT['diakok'][$i]['diakId'] ); + foreach ($ADAT['diakAdat'] as $diakId => $dAdat) { + foreach (array('anya','apa','gondviselo') as $tipus) { + $szuloId = $dAdat[ $tipus.'Id' ]; + if (is_array($Szulok[$szuloId])) foreach ($Szulok[$szuloId] as $attr => $value) { + $ADAT['diakAdat'][$diakId][ $tipus . ucfirst($attr) ] = $value; + } elseif ($i == 0 && is_array($Szulok[1])) foreach ($Szulok[1] as $attr => $value) { + $ADAT['diakAdat'][$diakId][ $tipus . ucfirst($attr) ] = ''; + } + } + } + } + $ADAT['targyak'] = getTargyakByDiakIds($ADAT['diakIds'], $ADAT['szemeszterAdat'], $osztalyId, $sorrendNev); + //for ($i = 0; $i < count($ADAT['targyak']); $i++) $ADAT['targyAdat'][ $ADAT['targyak'][$i]['targyNev'] ] = $ADAT['targyak'][$i]['targyId']; + $ADAT['tanarok'] = getTanarokByDiakIds($ADAT['diakIds'], $ADAT['szemeszterAdat']); + $ADAT['jegyek'] = getDiakZarojegyek($ADAT['diakIds'], $ADAT['szemeszterAdat']['tanev'], $ADAT['szemeszterAdat']['szemeszter']); + $ADAT['hianyzas'] = getDiakHianyzasOsszesites($ADAT['diakIds'], $ADAT['szemeszterAdat']); + + /* A pdfBizonyítvány ezeket használja: szemeszterAdat|intezmeny|diakok|jegyek|hianyzas|osztaly|targyAdat|targyak*/ + $file = fileNameNormal('bizonyitvany-'.$ADAT['szemeszterAdat']['tanev'].'-'.$ADAT['szemeszterAdat']['szemeszter'].'-' + .str_replace('/','',str_replace('.','',$ADAT['osztaly']['osztalyJel']))); // 9/ Ny.a --> 9Nya + if (exportBizonyitvany($file, $ADAT)) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/export/bizonyitvany&file='.$file.'.'.$ADAT['formatum'].'&mimetype='.$ADAT['mime'])); + } else { + unset($osztalyId); + } + + } + } + + $TOOL['szemeszterSelect'] = array('tipus'=>'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') ,'post' => array('sorrendNev', 'osztalyId')); + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'tanev' => $ADAT['szemeszterAdat']['tanev'], 'post' => array('szemeszterId', 'sorrendNev')); + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/bizonyitvany.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/bizonyitvany.php new file mode 100644 index 00000000..b87c8a05 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/bizonyitvany.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/diakExport-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/diakExport-pre.php new file mode 100644 index 00000000..eb3d95e5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/diakExport-pre.php @@ -0,0 +1,68 @@ + true)); + $ADAT['fields'] = $ret['names']; + $ADAT['types'] = $ret['types']; $ADAT['types']['osztalyJel'] = 'string'; $ADAT['types']['diakNaploSorszam'] = 'int'; + $ret = getTableFields('szulo','naplo_intezmeny',array(), array('withType' => true)); + $szuloMezok = $ret['names']; + foreach (array('anya','apa','gondviselő','nevelő') as $szulo) { + foreach ($szuloMezok as $attr => $attrNev) { + $ADAT['fields'][ekezettelen($szulo).ucfirst($attr)] = ucfirst($szulo).' '.kisbetus($attrNev); + $ADAT['types' ][ekezettelen($szulo).ucfirst($attr)] = $ret['types'][ $attrNev ]; + } + } + $ADAT['fields']['telephelyId'] = 'telephelyId'; + $ADAT['types' ]['telephelyId'] = 'int'; + + if (!is_array($_POST['mezok'])) $_POST['mezok'] = $exportFormatum['alapértelmezett']; + foreach ($_POST['mezok'] as $i => $attr) { + if (isset($ADAT['fields'][$attr])) $ADAT['mezok'][$attr] = $ADAT['fields'][$attr]; + } + + if (isset($ADAT['formatum'])) { + $ADAT['export'] = diakExport($ADAT); + if ($ADAT['formatum'] != 'html') { + + if (is_array($ADAT['export']) && createFile($ADAT)) { + header('Location: '.location('index.php?page=session&f=download&download=true&dir=export&file=diakExport.'.$ADAT['formatum'].'&mimetype='.$ADAT['mime'])); + } else { + echo 'HIBA'; + } + } + } + + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'paramName' => 'tanev', 'post' => array('osztalyId')); + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post' => array('osztalyId', 'tanev'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($TA['kezdesDt'])), + 'igDt' => $TA['zarasDt'], + ); + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('tanev', 'dt','mezok','formatum')); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/diakExport.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/diakExport.php new file mode 100644 index 00000000..30066c3f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/diakExport.php @@ -0,0 +1,12 @@ + 0) { + putDiakTabla($ADAT); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kirBizonyitvanyExport-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kirBizonyitvanyExport-pre.php new file mode 100644 index 00000000..0e0bd72f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kirBizonyitvanyExport-pre.php @@ -0,0 +1,132 @@ +'...','modul'=>'naplo_intezmeny','result'=>'assoc','keyfield'=>'targyId')); + } + +// $ADAT['magatartasIds'] = getMagatartas(); +// $ADAT['szorgalomIds']= getSzorgalom(); + + // melyik szemeszter adatait nézzük + if (isset($_POST['szemeszterId']) && $_POST['szemeszterId'] != '') { + $szemeszterId = $_POST['szemeszterId']; + } elseif (!isset($_POST['szemeszterId'])) { + for ($i = 1; $i <= count($_TANEV['szemeszter']); $i++) { + if ( + strtotime($_TANEV['szemeszter'][$i]['kezdesDt']) <= _TIME + && strtotime($_TANEV['szemeszter'][$i]['zarasDt']) >= _TIME + ) { + $_POST['szemeszterId'] = $szemeszterId = $_TANEV['szemeszter'][$i]['szemeszterId']; + break; + } + } + } + $ADAT['sorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'enum', 'bizonyítvány', array('napló','bizonyítvány','anyakönyv','ellenőrző','egyedi')); + + if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') { $osztalyId = $_POST['osztalyId']; } + elseif (__OSZTALYFONOK && !isset($_POST['osztalyId'])) { $osztalyId = $_OSZTALYA[0]; $_POST['osztalyId'] = $osztalyId; } + + if (isset($szemeszterId)) { + + $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId); + define('__ZARO_SZEMESZTER', $ADAT['szemeszterAdat']['szemeszter'] == $ADAT['szemeszterAdat']['tanevAdat']['maxSzemeszter']); + + $tanev = $ADAT['szemeszterAdat']['tanev']; + + $Osztalyok = getOsztalyok($ADAT['szemeszterAdat']['tanev']); + if (isset($osztalyId)) { + + define('__OSZTALYFONOKE', (__OSZTALYFONOK === true && in_array($osztalyId, $_OSZTALYA))); + // $ADAT['evfolyamJel'] = getEvfolyamJelByOsztalyId($osztalyId,$tanev); + $ADAT['evfolyamJel'] = getEvfolyamJel($osztalyId,$tanev); + + // intézmény adatok + $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY); + // osztály statisztikák + $ADAT['osztaly'] = getOsztalyAdat($osztalyId, $ADAT['szemeszterAdat']['tanev']); + // Az adott szemeszterben létezik-e az osztály + for ($i = 0; ($i < count($Osztalyok) && $Osztalyok[$i]['osztalyId'] != $osztalyId); $i++); + if ($i < count($Osztalyok)) { + $ADAT['diakok'] = getDiakok(array( + 'result' => 'assoc', 'osztalyId' => $osztalyId, 'tanev' => $ADAT['szemeszterAdat']['tanev'], + 'tolDt' => $ADAT['szemeszterAdat']['zarasDt'], 'igDt' => $ADAT['szemeszterAdat']['zarasDt'], + 'extraAttrs' => 'oId' + ) + + ); + $ADAT['diakIds'] = array_keys($ADAT['diakok']); + $ADAT['targyak'] = getTargyakByDiakIds($ADAT['diakIds'], $ADAT['szemeszterAdat'], $osztalyId, $sorrendNev); + //for ($i = 0; $i < count($ADAT['targyak']); $i++) $ADAT['targyAdat'][ $ADAT['targyak'][$i]['targyNev'] ] = $ADAT['targyak'][$i]['targyId']; + $ADAT['jegyek'] = getDiakZarojegyekByEvfolyamJel($ADAT['diakIds'], $ADAT['evfolyamJel'], $ADAT['szemeszterAdat'], array('felevivel'=>true)); +// $ADAT['hianyzas'] = getDiakHianyzasOsszesites($ADAT['diakIds'], $ADAT['szemeszterAdat']); +//var_dump($Osztalyok); + /* A pdfBizonyítvány ezeket használja: szemeszterAdat|intezmeny|diakok|jegyek|hianyzas|osztaly|targyAdat|targyak*/ + $FORPRINT['file'] = fileNameNormal('kir-'.$ADAT['szemeszterAdat']['tanev'].'-'.$ADAT['szemeszterAdat']['szemeszter'].'-'.str_replace('.','',$ADAT['osztaly']['osztalyJel'])); + $FORPRINT['base']['feleviE'] = ($ADAT['szemeszterAdat']['szemeszter']==1)?'true':'false'; // szöveggel + $FORPRINT['base']['omkod'] = substr($INTEZMENY['OMKod'],-6); + /* osztály adatok */ + $FORPRINT['base']['kirOsztalyJelleg'] = $ADAT['osztaly']['kirOsztalyJellegId']; + $FORPRINT['base']['telephelyId'] = str_pad($ADAT['osztaly']['telephelyId'],3,0,STR_PAD_LEFT); + $FORPRINT['base']['tanevJel'] = $tanev.'/'.($tanev+1); + $FORPRINT['base']['evfolyamJel'] = $ADAT['evfolyamJel']; + $FORPRINT['base']['diak'] = $ADAT['diakIds']; + + for ($i=0; $i $A) { + if (is_array($TARGYID2KIR[$_targyId])) { + $FORPRINT['diak'][$_diakId]['targy'][] = array( + 'kirTargyKod'=> $TARGYID2KIR[$_targyId]['kirTargyId'], + 'jegy'=>intval($A[0]['jegy']) // igaziból jegyTipus - tól függő a megjelenés + ); + } + } + } + } + nyomtatvanyKeszites($FORPRINT,'kirBizonyitvanyExport'); + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/export/kirBizonyitvanyExport&file='.$FORPRINT['file'].'.xml')); + } else { + unset($osztalyId); + } + + } + } + + $TOOL['szemeszterSelect'] = array('tipus'=>'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') ,'post' => array( 'osztalyId')); + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'tanev' => $ADAT['szemeszterAdat']['tanev'], 'post' => array('szemeszterId')); + + + + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kirBizonyitvanyExport.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kirBizonyitvanyExport.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kreta-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kreta-pre.php new file mode 100644 index 00000000..89129607 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kreta-pre.php @@ -0,0 +1,176 @@ +$telephelyId); + + $ADAT['csakOratervi'] = readVariable($_POST['csakOratervi'], 'bool', false); + + if ($ADAT['csakOratervi']==true) { + $q = "select tankorTipusId from tankorTipus WHERE oratervi='óratervi'"; + $exportalandoTankorTipusIdk = db_query($q, array('fv'=>'','modul'=>'naplo_intezmeny','result'=>'idonly')); + // array(1,2,3,11,13,14); + } else { + $q = "select tankorTipusId from tankorTipus"; + $exportalandoTankorTipusIdk = db_query($q, array('fv'=>'','modul'=>'naplo_intezmeny','result'=>'idonly')); + } + + // teszt + // $q = "select *,REVERSE(SUBSTRING(SUBSTRING_INDEX(REVERSE(tankorNev),'(',1) FROM 2)) AS tankorId FROM kretaEttfEllenor"; + // $ADAT['kretaEllenor'] = db_query($q, array('fv'=>'','modul'=>'naplo_intezmeny','result'=>'multiassoc','keyfield'=>'tankorId')); + //dump($ADAT['kretaEllenor']); + + /* EREDETI KIEMELHETŐ KÓD */ + $ADAT['szuro'] = array( + 'osztalyok' => getOsztalyok(), + 'munkakozossegek' => getMunkakozossegek(), + 'tanarok' => getTanarok(array('extraAttrs'=>'szuletesiIdo')), + 'targyak' => getTargyak(), + + 'osztalyIds'=>array_keys(reindex(getOsztalyok(__TANEV,$filter),array('osztalyId'))), +// 'mkIds'=>readVariable($_POST['mkIds'],'id',array()), +// 'tanarIds'=>array_keys(reindex(getTanarok(array('tanev'=>__TANEV)),array('tanarId'))), +// 'targyIds'=>array_keys(reindex(getTargyak(array('tanev'=>__TANEV)),array('targyId'))), + ); + + /* MÁSOLAT */ + foreach ($ADAT['szuro']['targyak'] as $idx => $tAdat) $ADAT['targyAdat'][ $tAdat['targyId'] ] = $tAdat; + + // A szűrőben beállítottnak megefelő tankörök lekérése + $ADAT['tankorok'] = getTankorokBySzuro($ADAT['szuro']); + $ADAT['szuro']['tankorTargyIds'] = array(); + foreach ($ADAT['tankorok'] as $ids => $tAdat) + if (!in_array($tAdat['targyId'], $ADAT['szuro']['tankorTargyIds'])) + $ADAT['szuro']['tankorTargyIds'][] = $tAdat['targyId']; + $ADAT['tanarok'] = getTanarokBySzuro($ADAT['szuro']); + // stat + $ADAT['keszTankorDb'] = 0; + foreach ($ADAT['tankorok'] as $tAdat) if (is_array($tAdat['tanarIds']) && count($tAdat['tanarIds'])>0) $ADAT['keszTankorDb']++; + $ADAT['tankorStat'] = getTankorStat(); + /* EREDETI KOD VEGE */ + + if ($action=='kretaTanarExport') { + $TANAROK = getTanarok(array('extraAttrs'=>'oId,viseltNevElotag,viseltCsaladinev,viseltUtonev,beDt,szuletesiHely,szuletesiIdo,szuleteskoriUtonev,szuleteskoriCsaladinev,szuleteskoriNevElotag')); +/* $EXPORT[0] = array('Oktazon','Viselt név előtag','Viselt név vezetéknév','Viselt név keresztnév','Viselt név névsorrend', + 'Anyja neve előtag','Anyja neve vezetéknév','Anyja neve keresztnév', 'Anyja neve névsorrend', + 'Születési dátum', 'Születési hely', 'Születési ország','1. állampolgárság','2. állampolgárság', + 'Végzettség szintje','Állandó lakcím', 'irányító szám','Állandó lakcím település','Állandó lakcím közterület név', + 'Állandó lakcím közterület jelleg', 'Állandó lakcím házszám','Állandó lakcím pontosítás', + 'Tartózkodási cím irányító szám','Tartózkodási cím település','Tartózkodási cím közterület név', + 'Tartózkodási cím közterület jelleg','Tartózkodási cím házszám','Tartózkodási cím pontosítás', + 'Szakmai gyakorlati évek száma','E-mail cím','Közoktatási intézmény neve','Közoktatási intézmény székhelye', + 'OM azonosító','Kiemelt feladatellátási hely','Vezetői beosztás','Jogviszony létrejötte','Jogviszony megszűnte', + 'Jogviszony típusa','Besorolási kategória','Fizetési osztály','Pótlék', + 'Munkakör kategória','Munkakör','Tantárgy','Szakképzettségek', + 'Tudományos fokozatok','Pedagógus szakvizsgák','Egyéb továbbképzések'); +*/ + $j = 1; + for ($i=0; $i'','modul'=>'naplo_intezmeny','result'=>'assoc','keyfield'=>'tanarId')); + $TANARADAT = (reindex($ADAT['szuro']['tanarok'],array('tanarId'))); + // schema + $EXPORT[0][] = 'Osztály'; + $EXPORT[0][] = 'Csoport'; + $EXPORT[0][] = 'Tantárgy'; + $EXPORT[0][] = 'Óraszám'; + $EXPORT[0][] = 'Tanár'; + // ------- + $j = 1; + for ($i=0; $i'cella', 'paramName'=>'telephelyId', 'post'=>array()); + getToolParameters(); + +} + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kreta.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kreta.php new file mode 100644 index 00000000..ea276fd1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/kreta.php @@ -0,0 +1,11 @@ +'; + putKretaTanarExportForm($ADAT); + putKretaTankorTanarExportForm($ADAT); + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/sulix-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/sulix-pre.php new file mode 100644 index 00000000..c0e961c2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/sulix-pre.php @@ -0,0 +1,26 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/sulix.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/sulix.php new file mode 100644 index 00000000..b87c8a05 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/sulix.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tanarOsztalyOraszam-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tanarOsztalyOraszam-pre.php new file mode 100644 index 00000000..addd994f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tanarOsztalyOraszam-pre.php @@ -0,0 +1,106 @@ +'naplo_intezmeny','result'=>'indexed')); +// dump($r); + for ($i=0; $i__TANEV),$lr)); + if (count($T_TANAR)==0) 'HIBÁS TANKÖR'.dump($tankorAdat); + $ADAT[$T_TANAR[0]['tanarId']][$tankorAdat['targyId']][$T_OSZTALY[0]['osztalyId']][] = $tankorAdat['szummaOra']; + if (!in_array($T_TANAR[0]['tanarId'].'_'.$tankorAdat['targyId'],$SOR)) $SOR[] = $T_TANAR[0]['tanarId'].'_'.$tankorAdat['targyId']; + } + + db_close($lr); + + for ($i=0; $i $REST) { + $tanarTargyak[] = $_targyId; + } + // bázis adatok + $EXPORT[($i+1)][] = $TANAR_ADATOK[$tanarId]['tanarNev']; + $EXPORT[($i+1)][] =$tanarId; + $EXPORT[($i+1)][] =$TARGYAK[$targyId][0]['targyNev']; + $EXPORT[($i+1)][] =$targyId; + $EXPORT[($i+1)][] =$TANAR_ADATOK[$tanarId]['statusz']; + $EXPORT[($i+1)][] =$TANAR_ADATOK[$tanarId]['hetiKotelezoOraszam']; + $EXPORT[($i+1)][] =$TANAR_ADATOK[$tanarId]['hetiMunkaora']; + + $tanarSzum = 0; + // osztályonként + for ($j=0; $j diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tanarOsztalyOraszam.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tanarOsztalyOraszam.php new file mode 100644 index 00000000..a31e1b9f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tanarOsztalyOraszam.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tantargyFelosztas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tantargyFelosztas-pre.php new file mode 100644 index 00000000..6c3c6341 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tantargyFelosztas-pre.php @@ -0,0 +1,63 @@ + 'hetiKotelezoOraszam, besorolas')); + $ADAT['tanarKepesitesIds'] = getTanarKepesitesIds(); + $ADAT['kepesitesAdat'] = getKepesitesek(array('result' => 'assoc')); + for ($i = 0; $i < count($ADAT['tanarok']); $i++) { + $ADAT['tanarAdat'][ $ADAT['tanarok'][$i]['tanarId'] ] = $ADAT['tanarok'][$i]; + $ADAT['tanarAdat'][ $ADAT['tanarok'][$i]['tanarId'] ]['targyIds'] = getTargyIdsByTanarId($ADAT['tanarok'][$i]['tanarId']); + } + unset($ADAT['tanarok']); + // tankörök + $ADAT['tankorok'] = getTankorOraszamok(); + foreach ($ADAT['tankorok'] as $idx => $tAdat) { + $tankorId = $tAdat['tankorId']; + $targyId = $tAdat['targyId']; + $osztalyId = $tAdat['osztalyIds'][0]; // mi legyen a több osztályos tankörökkel??? + $szemeszter = $tAdat['szemeszter']; + $tanarDb = count($tAdat['tanarIds']); + $oraszam = $tAdat['oraszam'] / $tanarDb; + foreach ($tAdat['tanarIds'] as $tanarId) { + $ADAT['export'][$tanarId][$targyId][$osztalyId][$szemeszter] += $oraszam; + } + } + // tárgyak + $ADAT['targyak'] = getTargyak(); + foreach ($ADAT['targyak'] as $idx => $tAdat) $ADAT['targyAdat'][ $tAdat['targyId'] ] = $tAdat; + unset($ADAT['targyak']); + // osztalyok + $ADAT['osztalyok'] = getOsztalyok(); + +//dump($ADAT['export']); + + $file = fileNameNormal('tantargyFelosztas-'.__TANEV.'-'.date('Ymd')); + if (exportTantargyFelosztas($file, $ADAT)) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/export/tantargyFelosztas&file='.$file.'.'.$ADAT['formatum'].'&mimetype='.$ADAT['mime'])); + +// dump($ADAT); + + } + + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tantargyFelosztas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tantargyFelosztas.php new file mode 100644 index 00000000..c75ffff4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/export/tantargyFelosztas.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elmaradas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elmaradas-pre.php new file mode 100644 index 00000000..ea3a2959 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elmaradas-pre.php @@ -0,0 +1,17 @@ + __TANEV, 'beDt'=>$_TANEV['kezdesDt'],'kiDt'=>$_TANEV['zarasDt'],'result' => 'assoc')); + $Elmaradas = getHaladasiElmaradas(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elmaradas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elmaradas.php new file mode 100644 index 00000000..8b4019bf --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elmaradas.php @@ -0,0 +1,12 @@ + 0) + || (is_array($Elmaradas['beirando']) && count($Elmaradas['beirando']) > 0) + ) putElmaradas($Elmaradas, $Tanarok); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elszamolas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elszamolas-pre.php new file mode 100644 index 00000000..37078c30 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elszamolas-pre.php @@ -0,0 +1,59 @@ +'cella', + // 'post'=>array('tanarId', 'diakId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 7, + 'tolDt' => date('Y-m-d', strtotime('Saturday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => date('Y-m-d', strtotime('next Saturday', strtotime($_TANEV['zarasDt']))), + 'override' => true + ); + $TOOL['datumTolIgSelect'] = array( + 'tipus' => 'sor', + 'tolParamName' => 'tolDt', + 'igParamName' => 'igDt', + 'tolDt' => $_TANEV['kezdesDt'], + 'igDt' => $_TANEV['zarasDt'], +// 'hanyNaponta' => 'havonta', + 'post' => array('tanarId', 'osztalyId', 'tankorId', 'sulyozas') + ); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elszamolas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elszamolas.php new file mode 100644 index 00000000..8e2635d6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/elszamolas.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/haladasi-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/haladasi-pre.php new file mode 100644 index 00000000..f6a59939 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/haladasi-pre.php @@ -0,0 +1,387 @@ + osztalyId-t nem állítunk - hagyjuk + if (isset($tankorId) and !tankorTagjaE($diakId, $tankorId)) { + unset($tankorId); + } + $ADAT['title'] = getDiakNevById($diakId); + } else { + if (isset($teremId)) { + } elseif (!isset($osztalyId)) { + if (!isset($tanarId)) $tanarId = readVariable($_POST['tanarId'],'id'); + if (!isset($tanarId)) $tanarId = readVariable($_GET['tanarId'],'id'); + if (!isset($tanarId) && __USERTANARID!==false && __TANAR) $tanarId = __USERTANARID; + define(__PLUSZBEIRHAT, + (__USERTANARID == $tanarId || __NAPLOADMIN===true || __VEZETOSEG===true) + ); + } + } + if (!defined('__PLUSZBEIRHAT')) define('__PLUSZBEIRHAT',false); + /* ------------------------------------------------- */ + + // lapozás, tól-ig beállítás + if (!isset($tankorId)) { + + // egy tanár ($tanarId) vagy osztály ($osztaly) összes órája --> lapozni kell + // reading sensitive data + $igDt = readVariable($_POST['igDt'], 'datetime', date('Y-m-d')); + $tolDt = readVariable($_POST['tolDt'], 'datetime'); + $lapoz = readVariable($_POST['lapoz'], 'enum', null, array('<<','>>','nextWeek','prevWeek')); + $lapoz1 = readVariable($_POST['lapoz1'], 'enum', null, array('<<','>>','nextWeek','prevWeek')); + + // set defaults ++ +// if (strtotime($igDt) > strtotime($_TANEV['zarasDt'])) $igDt = $_TANEV['zarasDt']; + $maxIgDt = date('Y-m-d', strtotime('next Saturday', strtotime($_TANEV['kovetkezoKezdesDt']))); + if (strtotime($igDt) > strtotime($maxIgDt)) $igDt = $maxIgDt; + elseif (strtotime($igDt) < strtotime($_TANEV['kezdesDt'])) $igDt = $_TANEV['kezdesDt']; + if (date('w', strtotime($igDt)) == 0) $igDt = date('Y-m-d',strtotime('-1 days',strtotime($igDt))); // Hogy vasárnap még a múltheti látszódjon + $eVas = date('Y-m-d',strtotime('Saturday',strtotime($igDt))); + + if ($igDt == '') $igDt = $eVas; + if ($tolDt == '') $tolDt = $eHet = date('Y-m-d',strtotime('last Monday 02:00',strtotime($eVas))); + + if (in_array($lapoz,array('<<','prevWeek')) or in_array($lapoz1,array('<<','prevWeek'))) { + $tolDt = date('Y-m-d',strtotime('last Monday 02:00',strtotime($eHet))); +// $igDt = date('Y-m-d',strtotime('Saturday',strtotime($tolDt))); +// Vasárnap + $igDt = date('Y-m-d',strtotime('Sunday',strtotime($tolDt))); + } elseif (in_array($lapoz,array('>>','nextWeek')) or in_array($lapoz1,array('>>','nextWeek'))) { + $tolDt = date('Y-m-d',strtotime('Monday 02:00',strtotime($eVas))); +// $igDt = date('Y-m-d',strtotime('Saturday',strtotime($tolDt))); +// Vasárnap + $igDt = date('Y-m-d',strtotime('Sunday',strtotime($tolDt))); + } + if ($csakUres || strtotime($tolDt) < strtotime($_TANEV['kezdesDt'])) $tolDt = date('Y-m-d',strtotime($_TANEV['kezdesDt'])); + // Ha ezt kiveszem, akkor mindig kirakja a teljes hetet, de a jövőbeli órákat nem lehet beírni! + // Itt a post értékét nem használjuk fel, csak vizsgáljuk. + if ((!isset($_POST['igDt']) || $_POST['igDt'] == '')&& strtotime($igDt) > time()) $igDt = date('Y-m-d'); + define('_SHOW_DAYS_FROM',$tolDt); + define('_SHOW_DAYS_TO',$igDt); + + } else { + + // egy tanulócsoport órái (nem kell lapozni) + define('_SHOW_DAYS_FROM',date('Y-m-d',strtotime($_TANEV['kezdesDt']))); + define('_SHOW_DAYS_TO',date('Y-m-d')); + + } + + /* ------------------------------------------------- */ + // Jogosultság ellenőrzés, tanév aktív-e... + + // A megjelenítéshez + if (isset($osztalyId) && !isset($diakId)) { + $osztalyAdat = getOsztalyAdat($osztalyId); + $ADAT['title'] = $osztalyAdat['osztalyJel'].' ('.$osztalyAdat['osztalyfonok']['tanarNev'].')'; + // hetesek miatt + $ADAT['osztalyId'] = $osztalyId; + $ADAT['diakok'] = getDiakok(array('osztalyId' => $osztalyId)); + for ($i = 0; $i < count($ADAT['diakok']); $i++) $ADAT['diakNevek'][ $ADAT['diakok'][$i]['diakId'] ] = $ADAT['diakok'][$i]['diakNev']; + } elseif (isset($tanarId)) { + $ADAT['title'] = getTanarNevById($tanarId); + //DEPRECATED $ADAT['oraTerheles'] = getOraTerhelesByTanarId(array('tanarId'=>$tanarId,'tolDt'=>$tolDt,'igDt'=>$igDt)); + $ADAT['oraTerheles'] = getOraTerhelesStatByTanarId(array('tanarId'=>$tanarId,'dt'=>_SHOW_DAYS_TO)); + } elseif (isset($teremId)) { + $ADAT['title'] = $teremId; + } elseif (isset($tankorId)) { + $ADAT['title'] = 'A tankör haladási naplója'; + } + + if ( + $_TANEV['szemeszter'][1]['statusz'] == 'aktív' // Csak aktív tanévben lehet módosítani + && ( + __NAPLOADMIN // adminnak vagy + || __VEZETOSEG // vezetőség - tanév végi pótlásokhoz kell! + || ((__TANAR || __VEZETOSEG )) // A tanároknak, vezetőségi tagoknak +// || ((__TANAR || __VEZETOSEG ) && __FOLYO_TANEV) // A tanév közben a tanároknak, vezetőségi tagoknak - az év végi napok problémásak így! + ) + ) { + // action + if ($action == 'haladasiNaploBeiras' && ( + is_array($_POST['oraId']) + ||is_array($_POST['UJORA']) + ||is_array($_POST['ORATOROL']) + )) { + + $oraIds = readVariable($_POST['oraId'],'numeric'); + // --FIXME :: a feldolgozást inkább végezzük máshol + $lr = db_connect('naplo'); + for ($i = 0; $i < count($oraIds); $i++) { + if (is_numeric($oraIds[$i])) { + $oraId = $oraIds[$i]; + // Ha egy órának több tanára is van, select + //EXPERIMENTAL: $_modTs = readVariable($_POST['T_'.$oraId], 'datetime', ''); + $_ki = readVariable($_POST['K_'.$oraId], 'numeric', ''); + $_leiras = readVariable($_POST['L_'.$oraId],'string', ''); //htmlspecialchars($_POST['L_'.$oraId]) + $_csoportAdat = readVariable($_POST['M_'.$oraId], 'string', ''); //numeric:numeric ??? + // paraméterek: $oraId, $leiras, $csoportAdat = 'csoportId:tankorId', $ki = '', $olr = '') + if (isset($_POST['L_'.$oraId])) // a biztonság kedvéért ellenőrizzük + updateHaladasiNaploOra($oraId, $_leiras, $_csoportAdat, $_ki, $lr); + //EXPERIMENTAL: updateHaladasiNaploOra($oraId, $_leiras, $_csoportAdat, $_ki, $_modTs, $lr); + } + } + $UJORA = readVariable($_POST['UJORA'],'string'); + for ($i=0; $i$_dt,'ora'=>$_ora,'ki'=> $_ki, 'tipus'=>$_tipus,'eredet'=>$_eredet,'feladatTipusId'=>$_feladatTipusId,'munkaido'=>'fennmaradó'),$lr); + } + } + //*** IDE JÖHET A BEÍRÁS + if (is_array($_POST)) foreach ($_POST as $_key => $_leiras) { + if (substr($_key,0,3) === 'LE_' && $_leiras!='' && is_numeric($UJORAIDK[$_dt][$_ora])) { + list($_rest, $_dt,$_ora) = explode('_',$_key); + updateHaladasiNaploOra($UJORAIDK[$_dt][$_ora],$_leiras,'',$tanarId,$lr); + } + } + //*** + $ORATOROL = readVariable($_POST['ORATOROL'],'id'); + for ($i=0; $i_SHOW_DAYS_FROM, 'igDt'=>_SHOW_DAYS_TO)); + $Osztalyok = getDiakOsztalya($diakId, array('tanev'=>__TANEV,'tolDt'=>$tolDt,'igDt'=>$igDt, 'result'=>'idonly')); + } elseif (isset($osztalyId)) { + $ADAT['haladasiTipus']='osztalyHaladasi'; + $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV); + $Osztalyok = array($osztalyId); + } elseif (isset($teremId)) { // --new + $ADAT['haladasiTipus']='teremHaladasi'; + $Tankorok = getTankorByTeremId($teremId, __TANEV); + $Osztalyok = array($osztalyId); + } elseif (isset($tanarId)) { + $Tankorok = getTankorByTanarId( + $tanarId, + __TANEV, + array('csakId' => false, 'tolDt' => _SHOW_DAYS_FROM, 'igDt' => _SHOW_DAYS_TO) + ); + $Osztalyok = getTanarOsztaly($tanarId, array('tanev' => __TANEV, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result'=>'idonly')); + } + $TankorokMutat = $Tankorok; + // Kell a munkaterv!! Ahhoz kell(enek) az osztály(ok)! + $ADAT['munkaterv'] = getMunkatervByOsztalyId($Osztalyok, array('result' => 'idonly')); + + // Tanmenet + if (is_array($Tankorok)) foreach ($Tankorok as $key => $tAdat) $ADAT['tankorIds'][] = $tAdat['tankorId']; + if (is_array($ADAT['tankorIds'])) { + $ADAT['tankorTanmenet'] = getTanmenetByTankorIds($ADAT['tankorIds'], array('tanev' => __TANEV, 'jovahagyva'=>!__TANAR)); + } + if (isset($tankorId)) { + if (__DIAK===true) { + $allowed=false; + for($i=0; $i $_v) { + for ($i=0; $i $olAdat) + foreach ($olAdat['tanarIds'] as $_tanarId) $ADAT['oraLatogatasok'][$olId]['tanarNevek'][] = getTanarNevById($_tanarId); + // Kell a munkaterv!! Ahhoz kell(enek) az osztály(ok)! + if (isset($diakId)) $O = getDiakOsztalya($diakId, array('tanev'=>__TANEV,'tolDt'=>$tolDt,'igDt'=>$igDt, 'result'=>'idonly')); + elseif (isset($osztalyId)) $O = array($osztalyId); + elseif (isset($tanarId)) $O = getTanarOsztaly($tanarId, array('tanev' => __TANEV, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result'=>'idonly')); + $ADAT['munkaterv'] = getMunkatervByOsztalyId($O, array('result' => 'idonly')); + + $ADAT['tanitasiNap'] = getTanitasiNapAdat(_genNapok($tolDt,$igDt), array('munkatervIds' => $ADAT['munkaterv'])); + $ADAT['diakId'] = $diakId; + $ADAT['osztalyId'] = $osztalyId; + $ADAT['tanarId'] = $tanarId; + $ADAT['tankorId'] = $tankorId; + $ADAT['terem'] = getTermek(array('result'=>'assoc')); + $ADAT['feladatTipus'] = getFeladatTipus(); + $ADAT['maxOra'] = 16; // Ha reggel 8-kor kezdődik a tanítás, akkor 24 óráig rendben vagyunk így... +// if ($tanarId>0) //$ADAT['oraTerheles'] = getOraTerhelesByTanarId(array('tanarId'=>$tanarId,'tolDt'=>$tolDt,'igDt'=>$igDt)); +// $ADAT['oraTerheles'] = getOraTerhelesStatByTanarId(array('tanarId'=>$tanarId,'tolDt'=>$tolDt,'igDt'=>$igDt)); + + $ADAT['szabadTermek'] = getSzabadTermekByDtInterval($tolDt,$igDt, null,'ora'); + $ADAT['tankorTipusok'] = getTankorTipusok(); + /* ------------------------------------------------- */ + // toolBar + $TOOL['datumSelect'] = array( + 'tipus'=>'sor', 'post'=>array('tanarId', 'diakId', 'osztalyId', 'tankorId'), + 'paramName' => 'igDt', 'hanyNaponta' => 7, + 'tolDt' => date('Y-m-d', strtotime('Saturday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $maxIgDt, + 'override' => true + ); + if (__NAPLOADMIN or __VEZETOSEG or __TANAR or __TITKARSAG) { + $TOOL['tanarSelect'] = array('tipus' => 'cella', 'post' => array('igDt')); + $TOOL['teremSelect'] = array('tipus' => 'cella', 'post' => array('igDt')); + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('igDt')); + if (isset($osztalyId)) + $TOOL['diakSelect'] = array('tipus' => 'cella', 'paramName' => 'diakId', 'diakok' => $ADAT['diakok'], 'post' => array('osztalyId','igDt')); + if (isset($osztalyId) or isset($tanarId) or isset($diakId) or isset($tankorId)) + $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $TankorokMutat, 'paramName' => 'tankorId', 'post' => array('osztalyId','tanarId','diakId','igDt')); + } elseif (__DIAK===true) { + $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $TankorokMutat, 'paramName' => 'tankorId', 'post' => array('osztalyId','tanarId','diakId','igDt')); + } + getToolParameters(); + +} // end of skin ajax else + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/haladasi.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/haladasi.php new file mode 100644 index 00000000..11e1b8c3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/haladasi.php @@ -0,0 +1,15 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/helyettesites-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/helyettesites-pre.php new file mode 100644 index 00000000..89686a13 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/helyettesites-pre.php @@ -0,0 +1,195 @@ +time()) { + $_dt = date('Y-m-d',strtotime('-1 day',strtotime($_dt))); + checkNaplo($_dt); + } + } + // -------------- action --------------// + + if ($action == 'hianyzoModositas') { + + $ujHianyzok = readVariable($_POST['addHianyzo'], 'numeric unsigned'); + $toroltHianyzok = readVariable($_POST['delHianyzo'], 'numeric unsigned'); + + ujHianyzokFelvetele($ujHianyzok, $dt); + toroltHianyzokVisszaallitasa($toroltHianyzok, $dt); + + } elseif ($action == 'helyettesitesRogzitese') { + foreach ($_POST as $name => $value) { + list($gomb,$act,$id,$koord) = explode('_', $name); + if ($gomb == 'gomb' && isset($id) && in_array($act, array('manual','mozgat','csere'))) { + $$act = readVariable($id, 'numeric unsigned', null); + break; + } + } + $T = $_POST['T']; + + if (is_array($T)) helyettesitesRogzites($T); + + } elseif ($action == 'keziBeallitas') { + + $oraId = readVariable($_POST['oraId'], 'numeric unsigned'); + $ki = readVariable($_POST['ki'], 'numeric unsigned'); + $tipus = readVariable($_POST['tipus'], 'enum', null, array('elmarad','helyettesítés','felügyelet','összevonás','normál','normál máskor','elmarad máskor','egyéb')); + $teremId = readVariable($_POST['teremId'], 'numeric unsigned'); + if (isset($oraId) && isset($tipus)) keziBeallitas($oraId, $ki, $tipus, $teremId); + + } elseif ($action == 'oraMozgatas') { + + $mozgat = readVariable($_POST['mozgat'], 'numeric unsigned'); + $ujDt = readVariable($_POST['ujDt'], 'date'); + $ora = readVariable($_POST['ora'], 'numeric unsigned'); + $rogzit = isset($_POST['rogzit']); + + if ($rogzit && isset($ora) && isset($ujDt) && isset($mozgat)) { // kijelölte az óra új helyét és submit gombot nyomott + if (oraMozgatas($mozgat, $ujDt, $ora)) unset($mozgat); // visszatérés a helyettesítés oldalra, ha sikerült + } + + } elseif ($action == 'oraCsere') { + + $csDt = readVariable($_POST['csDt'], 'date'); + $csere = readVariable($_POST['csere'], 'numeric unsigned'); + $csId = readVariable($_POST['csId'], 'numeric unsigned'); + $rogzit = isset($_POST['rogzit']); + + if ($rogzit && isset($csId)) { + if (oraCsere($csere, $csId)) unset($csere); // visszatérés a napi helyettesítés oldalra + } + + } + // ------------ action vége -----------// + } // __FOLYO_TANEV + else { + $_SESSION['alert'][] = 'message:wrong_data:Nem folyó tanév és nem naplóadmin'; + } + + $lr = db_connect('naplo'); + if (isset($manual)) { + + // Kézi beállítás + $oraAdat = getOraadatById($manual, __TANEV, $lr); + $Termek = getSzabadTermek(array('dt' => $oraAdat['dt'], 'ora' => $oraAdat['ora'], 'ki' => $oraAdat['ki']), $lr); + if ($oraAdat['teremId']!='') { + for ($i = 0;($i < count($Termek) && $Termek[$i]['teremId'] != $oraAdat['teremId']); $i++); + if ($i >= count($Termek)) $Termek[] = array('teremId' => $oraAdat['teremId'], 'leiras' => $oraAdat['teremId']); + } else { + $Termek[] = array('teremId' => 'NULL', 'leiras' => '-'); + } + // Tanárnevek lekérése + $Tanarok = getTanarok(array('tanev' => __TANEV,'beDt'=>$dt,'kiDt'=>$dt), $lr); + + } elseif (isset($mozgat)) { + + // Mozgatás + $ujDt = readVariable($_POST['ujDt'], 'date', $dt); + if (isset($ujDt)) checkNaplo($ujDt); + + $oraAdat = getOraadatById($mozgat, __TANEV, $lr); + if (isset($oraAdat['kit']) && $oraAdat['kit'] != '') $tanarId = $oraAdat['kit']; + else $tanarId = $oraAdat['ki']; + $TANAR_DT_NAPI_ORAK = getTanarNapiOrak($tanarId, $dt, $lr); + $TANAR_UJDT_NAPI_ORAK = getTanarNapiOrak($tanarId, $ujDt, $lr); + + } elseif (isset($csere)) { + + // Csere + $csDt = readVariable($_POST['csDt'], 'date', $dt); + if (isset($csDt)) checkNaplo($csDt); + + $oraAdat = getOraadatById($csere, __TANEV, $lr); + if (isset($oraAdat['kit']) && $oraAdat['kit'] != '') $tanarId = $oraAdat['kit']; + else $tanarId = $oraAdat['ki']; + + if ($_POST['csTanarId'] == '') $csTanarId = $tanarId; + else $csTanarId = $_POST['csTanarId']; + + $Tanarok = getTanarok(array('tanev' => __TANEV,'kiDt'=>$dt,'beDt'=>$dt), $lr); + $TANAR_DT_NAPI_ORAK = getTanarNapiOrak($tanarId, $dt, $lr); + $CSTANAR_CSDT_NAPI_ORAK = getTanarNapiOrak($csTanarId, $csDt, $lr); + + } elseif (isset($_POST['csereAttekintes']) && $_POST['csereAttekintes'] != '') { + + $oraId = $_POST['csereAttekintes']; + $Orak = getCsereOraiByOraId($oraId, $lr); + + } elseif ($orarend != '') { + // Tanár órarendje + } else { + + // Normál helyettesítés kiíró + + // A beírt hiányzók, helyettesítések... + $HELYETTESITES = getHianyzoOrak($dt, $lr); // == ADAT! + $HELYETTESITES['tanarTerheles'] = getOraTerhelesStatByTanarId(array('dt'=>$dt)); + } + db_close($lr); + + + + + + + + // toolBar + if (__NAPLOADMIN) { + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post' => array('tanarId', 'diakId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($_TANEV['kezdesDt'])), +// 'igDt' => $_TANEV['zarasDt'], + 'igDt' => getTanitasiNap(array('direction'=>'elore', 'napszam'=>10, 'fromDt'=>'curdate()')), + 'napTipusok' => array('tanítási nap', 'speciális tanítási nap') + ); + } elseif (__VEZETOSEG || MAYOR_SOCIAL===true) { + $TOOL['datumSelect'] = array( + 'tipus' => 'cella', 'post' => array('tanarId', 'diakId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime(_ZARAS_HATARIDO)), + 'igDt' => getTanitasiNap(array('direction'=>'elore', 'napszam'=>10, 'fromDt'=>'curdate()')), + 'napTipusok' => array('tanítási nap', 'speciális tanítási nap') + ); + } + getToolParameters(); + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/helyettesites.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/helyettesites.php new file mode 100644 index 00000000..5707092c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/helyettesites.php @@ -0,0 +1,46 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hetes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hetes-pre.php new file mode 100644 index 00000000..8adbc979 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hetes-pre.php @@ -0,0 +1,260 @@ + osztalyId-t nem állítunk - hagyjuk + if (isset($tankorId) and !tankorTagjaE($diakId, $tankorId)) { + unset($tankorId); + } + $ADAT['title'] = getDiakNevById($diakId); + } else { + if (isset($teremId)) { + } elseif (!isset($osztalyId)) { + if (!isset($tanarId)) $tanarId = readVariable($_POST['tanarId'],'id'); + if (!isset($tanarId)) $tanarId = readVariable($_GET['tanarId'],'id'); + if (!isset($tanarId) && __USERTANARID!==false && __TANAR) $tanarId = __USERTANARID; + define(__PLUSZBEIRHAT, + (__USERTANARID == $tanarId || __NAPLOADMIN===true || __VEZETOSEG===true) + ); + } + } + if (!defined('__PLUSZBEIRHAT')) define('__PLUSZBEIRHAT',false); + /* ------------------------------------------------- */ + + // lapozás, tól-ig beállítás + if (!isset($tankorId)) { + + // egy tanár ($tanarId) vagy osztály ($osztaly) összes órája --> lapozni kell + // reading sensitive data + $igDt = readVariable($_POST['igDt'], 'datetime', date('Y-m-d')); + $tolDt = readVariable($_POST['tolDt'], 'datetime'); + $lapoz = readVariable($_POST['lapoz'], 'enum', null, array('<<','>>','nextWeek','prevWeek')); + $lapoz1 = readVariable($_POST['lapoz1'], 'enum', null, array('<<','>>','nextWeek','prevWeek')); + + // set defaults ++ +// if (strtotime($igDt) > strtotime($_TANEV['zarasDt'])) $igDt = $_TANEV['zarasDt']; + if (strtotime($igDt) > strtotime($_TANEV['zarasDt'])) $igDt = date('Y-m-d', strtotime('next Saturday', strtotime($_TANEV['zarasDt']))); + elseif (strtotime($igDt) < strtotime($_TANEV['kezdesDt'])) $igDt = $_TANEV['kezdesDt']; + if (date('w', strtotime($igDt)) == 0) $igDt = date('Y-m-d',strtotime('-1 days',strtotime($igDt))); // Hogy vasárnap még a múltheti látszódjon + $eVas = date('Y-m-d',strtotime('Saturday',strtotime($igDt))); + + if ($igDt == '') $igDt = $eVas; + if ($tolDt == '') $tolDt = $eHet = date('Y-m-d',strtotime('last Monday 02:00',strtotime($eVas))); + + if (in_array($lapoz,array('<<','prevWeek')) or in_array($lapoz1,array('<<','prevWeek'))) { + $tolDt = date('Y-m-d',strtotime('last Monday 02:00',strtotime($eHet))); +// $igDt = date('Y-m-d',strtotime('Saturday',strtotime($tolDt))); +// Vasárnap + $igDt = date('Y-m-d',strtotime('Sunday',strtotime($tolDt))); + } elseif (in_array($lapoz,array('>>','nextWeek')) or in_array($lapoz1,array('>>','nextWeek'))) { + $tolDt = date('Y-m-d',strtotime('Monday 02:00',strtotime($eVas))); +// $igDt = date('Y-m-d',strtotime('Saturday',strtotime($tolDt))); +// Vasárnap + $igDt = date('Y-m-d',strtotime('Sunday',strtotime($tolDt))); + } + if ($csakUres || strtotime($tolDt) < strtotime($_TANEV['kezdesDt'])) $tolDt = date('Y-m-d',strtotime($_TANEV['kezdesDt'])); + // Ha ezt kiveszem, akkor mindig kirakja a teljes hetet, de a jövőbeli órákat nem lehet beírni! + // Itt a post értékét nem használjuk fel, csak vizsgáljuk. + if ((!isset($_POST['igDt']) || $_POST['igDt'] == '')&& strtotime($igDt) > time()) $igDt = date('Y-m-d'); + define('_SHOW_DAYS_FROM',$tolDt); + define('_SHOW_DAYS_TO',$igDt); + + } else { + + // egy tanulócsoport órái (nem kell lapozni) + define('_SHOW_DAYS_FROM',date('Y-m-d',strtotime($_TANEV['kezdesDt']))); + define('_SHOW_DAYS_TO',date('Y-m-d')); + + } + /* ------------------------------------------------- */ + // Jogosultság ellenőrzés, tanév aktív-e... + + // A megjelenítéshez + if (isset($osztalyId) && !isset($diakId)) { + $osztalyAdat = getOsztalyAdat($osztalyId); + $ADAT['title'] = $osztalyAdat['osztalyJel'].' ('.$osztalyAdat['osztalyfonok']['tanarNev'].')'; + // hetesek miatt + $ADAT['osztalyId'] = $osztalyId; + $ADAT['diakok'] = getDiakok(array('osztalyId' => $osztalyId)); + for ($i = 0; $i < count($ADAT['diakok']); $i++) $ADAT['diakNevek'][ $ADAT['diakok'][$i]['diakId'] ] = $ADAT['diakok'][$i]['diakNev']; + } elseif (isset($tanarId)) { + $ADAT['title'] = getTanarNevById($tanarId); + //DEPRECATED $ADAT['oraTerheles'] = getOraTerhelesByTanarId(array('tanarId'=>$tanarId,'tolDt'=>$tolDt,'igDt'=>$igDt)); + $ADAT['oraTerheles'] = getOraTerhelesStatByTanarId(array('tanarId'=>$tanarId,'dt'=>_SHOW_DAYS_TO)); + } elseif (isset($teremId)) { + $ADAT['title'] = $teremId; + } + + if ( + $_TANEV['szemeszter'][1]['statusz'] == 'aktív' // Csak aktív tanévben lehet módosítani + && ( + __NAPLOADMIN // adminnak vagy + || __VEZETOSEG // vezetőség - tanév végi pótlásokhoz kell! + || ((__TANAR || __VEZETOSEG )) // A tanároknak, vezetőségi tagoknak +// || ((__TANAR || __VEZETOSEG ) && __FOLYO_TANEV) // A tanév közben a tanároknak, vezetőségi tagoknak - az év végi napok problémásak így! + ) + ) { + // action + if ($action == 'haladasiNaploBeiras' && ( + is_array($_POST['oraId']) + ||is_array($_POST['UJORA']) + ||is_array($_POST['ORATOROL']) + )) { + } elseif ($action == 'hetesFelvetel' && isset($osztalyId) && ((__OSZTALYFONOK===true && in_array($osztalyId, $_OSZTALYA)) || __NAPLOADMIN===true )) { + $ADAT['dt'] = readVariable($_POST['dt'], 'date'); + $ADAT['hetes'][1] = readVariable($_POST['hetes1'], 'numeric unsigned'); + $ADAT['hetes'][2] = readVariable($_POST['hetes2'], 'numeric unsigned'); + hetesFelvetel($ADAT); + } + } + + if ((date('Y-m-d',strtotime($tolDt))==date('Y-m-d',strtotime('next Monday')) + || date('Y-m-d',strtotime($tolDt))==date('Y-m-d',strtotime('last Monday')) + ) && (__NAPLOADMIN || __VEZETOSEG)) { + $_NAPOK = _genNapok($tolDt,$igDt); + for ($i=0; $i $osztalyId,'result'=>'assoc','keyfield'=>'diakId')); + $ADAT['hetesek'] = getHetesek($osztalyId, _SHOW_DAYS_FROM); + $ADAT['osztalyok'] = getOsztalyok(__TANEV,array('result'=>'assoc')); + + if (isset($tankorId)) $orderBy = array('dt DESC','ora DESC'); // A lekérdezéshez + else $orderBy = array('dt DESC','ora ASC'); + + // tankörök lekérdzése + if (isset($diakId)) { + $ADAT['haladasiTipus']='diakHaladasi'; + $Tankorok = getTankorByDiakId($diakId, __TANEV, array('tolDt'=>_SHOW_DAYS_FROM, 'igDt'=>_SHOW_DAYS_TO)); + $Osztalyok = getDiakOsztalya($diakId, array('tanev'=>__TANEV,'tolDt'=>$tolDt,'igDt'=>$igDt, 'result'=>'idonly')); + } elseif (isset($osztalyId)) { + $ADAT['haladasiTipus']='osztalyHaladasi'; + $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV); + $Osztalyok = array($osztalyId); + } elseif (isset($teremId)) { // --new + $ADAT['haladasiTipus']='teremHaladasi'; + $Tankorok = getTankorByTeremId($teremId, __TANEV); + $Osztalyok = array($osztalyId); + } elseif (isset($tanarId)) { + $Tankorok = getTankorByTanarId( + $tanarId, + __TANEV, + array('csakId' => false, 'tolDt' => _SHOW_DAYS_FROM, 'igDt' => _SHOW_DAYS_TO) + ); + $Osztalyok = getTanarOsztaly($tanarId, array('tanev' => __TANEV, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result'=>'idonly')); + } + $TankorokMutat = $Tankorok; + // Kell a munkaterv!! Ahhoz kell(enek) az osztály(ok)! + $ADAT['munkaterv'] = getMunkatervByOsztalyId($Osztalyok, array('result' => 'idonly')); + + // Tanmenet + if (is_array($Tankorok)) foreach ($Tankorok as $key => $tAdat) $ADAT['tankorIds'][] = $tAdat['tankorId']; + if (is_array($ADAT['tankorIds'])) { + $ADAT['tankorTanmenet'] = getTanmenetByTankorIds($ADAT['tankorIds'], array('tanev' => __TANEV, 'jovahagyva'=>!__TANAR)); + } + if (isset($tankorId)) { + if (__DIAK===true) { + $allowed=false; + for($i=0; $i $_v) { + for ($i=0; $i $olAdat) + foreach ($olAdat['tanarIds'] as $_tanarId) $ADAT['oraLatogatasok'][$olId]['tanarNevek'][] = getTanarNevById($_tanarId); + // Kell a munkaterv!! Ahhoz kell(enek) az osztály(ok)! + if (isset($diakId)) $O = getDiakOsztalya($diakId, array('tanev'=>__TANEV,'tolDt'=>$tolDt,'igDt'=>$igDt, 'result'=>'idonly')); + elseif (isset($osztalyId)) $O = array($osztalyId); + elseif (isset($tanarId)) $O = getTanarOsztaly($tanarId, array('tanev' => __TANEV, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result'=>'idonly')); + $ADAT['munkaterv'] = getMunkatervByOsztalyId($O, array('result' => 'idonly')); + + $ADAT['tanitasiNap'] = getTanitasiNapAdat(_genNapok($tolDt,$igDt), array('munkatervIds' => $ADAT['munkaterv'])); + $ADAT['diakId'] = $diakId; + $ADAT['osztalyId'] = $osztalyId; + $ADAT['tanarId'] = $tanarId; + $ADAT['tankorId'] = $tankorId; + $ADAT['terem'] = getTermek(array('result'=>'assoc')); + $ADAT['feladatTipus'] = getFeladatTipus(); + $ADAT['maxOra'] = 16; // Ha reggel 8-kor kezdődik a tanítás, akkor 24 óráig rendben vagyunk így... +// if ($tanarId>0) //$ADAT['oraTerheles'] = getOraTerhelesByTanarId(array('tanarId'=>$tanarId,'tolDt'=>$tolDt,'igDt'=>$igDt)); +// $ADAT['oraTerheles'] = getOraTerhelesStatByTanarId(array('tanarId'=>$tanarId,'tolDt'=>$tolDt,'igDt'=>$igDt)); + + $ADAT['szabadTermek'] = getSzabadTermekByDtInterval($tolDt,$igDt, null,'ora'); + $ADAT['tankorTipusok'] = getTankorTipusok(); + /* ------------------------------------------------- */ + + // toolBar + $TOOL['datumSelect'] = array( + 'tipus'=>'sor', 'post'=>array('tanarId', 'diakId', 'osztalyId', 'tankorId'), + 'paramName' => 'igDt', 'hanyNaponta' => 7, + 'tolDt' => date('Y-m-d', strtotime('Saturday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => date('Y-m-d', strtotime('next Saturday', strtotime($_TANEV['zarasDt']))), + 'override' => true + ); + if (__NAPLOADMIN or __VEZETOSEG or __TANAR or __TITKARSAG) { +// $TOOL['tanarSelect'] = array('tipus' => 'cella', 'post' => array('igDt')); +// $TOOL['teremSelect'] = array('tipus' => 'cella', 'post' => array('igDt')); + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('igDt')); + if (isset($osztalyId)) + $TOOL['diakSelect'] = array('tipus' => 'cella', 'paramName' => 'diakId', 'diakok' => $ADAT['diakok'], 'post' => array('osztalyId','igDt')); +// if (isset($osztalyId) or isset($tanarId) or isset($diakId)) +// $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $TankorokMutat, 'paramName' => 'tankorId', 'post' => array('osztalyId','tanarId','diakId','igDt')); + } elseif (__DIAK===true) { +// $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $TankorokMutat, 'paramName' => 'tankorId', 'post' => array('osztalyId','tanarId','diakId','igDt')); + } + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hetes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hetes.php new file mode 100644 index 00000000..5aeb1001 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hetes.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/minuszora-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/minuszora-pre.php new file mode 100644 index 00000000..f2abcd4c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/minuszora-pre.php @@ -0,0 +1,75 @@ + 'cella', 'post' => array('ora', 'tanarId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'napTipusok' => array('tanítási nap','speciális tanítási nap'), + ); + if (isset($dt)) { + if (!isset($osztalyId) || isset($tankorId)) $TOOL['tanarSelect'] = array('tipus'=>'cella', 'tanarok' => $Tanarok, 'post' => array('dt', 'tankorId')); + if (!isset($tanarId)) $TOOL['osztalySelect'] = array('tipus'=>'sor','paramName' => 'osztalyId', 'post'=>array('dt', 'tankor')); + } + getToolParameters(); + + } // admin vagy igazgató + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/minuszora.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/minuszora.php new file mode 100644 index 00000000..b0c15eaf --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/minuszora.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/ora-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/ora-pre.php new file mode 100644 index 00000000..83f041cb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/ora-pre.php @@ -0,0 +1,33 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/ora.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/ora.php new file mode 100644 index 00000000..95e6a821 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/ora.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/oralatogatas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/oralatogatas-pre.php new file mode 100644 index 00000000..810ee183 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/oralatogatas-pre.php @@ -0,0 +1,102 @@ + __TANEV)); + + // Adott napi órák lekérdezése + if (isset($osztalyId)) { + $ADAT['orak'] = getOsztalyNapiOrak($osztalyId, $dt); + } elseif ($tanarId) { + $ADAT['orak'] = getTanarNapiOrak($tanarId, $dt); + } + + // Az órákhoz tartozó látogatások és látogatók lekérdezése + $ADAT['oralatogatas'] = $ADAT['oraIds'] = array(); + if (is_array($ADAT['orak']) && count($ADAT['orak']) > 0) { + foreach ($ADAT['orak'] as $ora => $oAdat) { + foreach ($oAdat as $key => $oraAdat) { + $ADAT['oraIds'][] = $oraAdat['oraId']; + } + } + } + + // Jogosultság ellenőrzés, tanév aktív-e... + if ( + $_TANEV['szemeszter'][1]['statusz'] == 'aktív' // Csak aktív tanévben lehet módosítani + && ( + __NAPLOADMIN // adminnak vagy + || (__VEZETOSEG && __FOLYO_TANEV) // A tanév közben a vezetőségi tagoknak + ) + ) { + if ($action == 'oralatogatasBeiras') { + $_D['oraId'] = readVariable($_POST['oraId'], 'id'); + $_D['megjegyzes'] = readVariable($_POST['megjegyzes'], 'string'); + $_D['tanarIds'] = readVariable($_POST['tanarIds'], 'id'); + if (isset($_D['oraId'])) { + oralatogatasBeiras($_D); + } + foreach($_POST as $_key => $_val) { + if (substr($_key,0,6)=='delete') { + list($_rest,$_oraId) = explode('_',$_key); + oralatogatasTorles($_oraId); + } + } + } + } + + + $ADAT['oralatogatas'] = getOralatogatasByOraIds($ADAT['oraIds']); + + + /* ------------------------------------------------- */ + + // tankörök lekérdzése + if (isset($osztalyId)) { + $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV); + } elseif (isset($tanarId)) { + $Tankorok = getTankorByTanarId( + $tanarId, + __TANEV, + array('csakId' => false) + ); + } + +// $TankorokMutat = $Tankorok; +// +// if (isset($tankorId)) { +// $Tankorok = getTankorById($tankorId, __TANEV); // felül kell írnunk +// } + + /* ------------------------------------------------- */ + + // toolBar + $TOOL['datumSelect'] = array( + 'tipus'=>'sor', 'post'=>array('tanarId', 'diakId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($_TANEV['kezdesDt'])), + 'igDt' => date('Y-m-d', strtotime($_TANEV['zarasDt'])), + 'override' => true + ); + $TOOL['tanarSelect'] = array('tipus' => 'cella', 'tanarok' => $ADAT['tanarok'], 'post' => array('igDt')); + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('igDt')); +// if (isset($osztalyId) or isset($tanarId) or isset($diakId)) +// $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $TankorokMutat, 'paramName' => 'tankorId', 'post' => array('osztalyId','tanarId','diakId','igDt')); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/oralatogatas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/oralatogatas.php new file mode 100644 index 00000000..6fde9cb6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/oralatogatas.php @@ -0,0 +1,9 @@ + 0) putOralatogatasForm($ADAT); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/osszevonas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/osszevonas-pre.php new file mode 100644 index 00000000..f140e7fd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/osszevonas-pre.php @@ -0,0 +1,109 @@ + __TANEV, 'tolDt' => $dt, 'igDt' => $dt, 'result' => 'nevsor')); + if (isset($tanarId)) { + // A tanár a tankör tanára-e? + for ($i = 0; ($i < count($Tanarok) && $Tanarok[$i] != $tanarId); $i++); + if ($i > count($Tanarok)) { + $_SESSION['alert'][] = 'message:wrong_data:pluszOra:Nem a tankör tanára:$tankorId/$tanarId'; + unset($tanarId); unset($_POST['tanarId']); + } + } + // Ha csak egy tanarId van, akkor azt állítsuk be! + if (count($Tanarok) == 1) { + $tanarId = $Tanarok[0]['tanarId']; + if (isset($osztalyId)) unset($osztalyId); + } + } + + // Felvehető-e az óra + $ok = (isset($ora) && isset($tanarId) && isset($tankorId)); + + if (isset($tanarId)) { + // tanar Napi órái + $Orak = getTanarNapiOrak($tanarId, $dt); + } + if (isset($ora)) { + if (isset($tankorId)) { + $DIAKIDK = getTankorDiakjaiByInterval($tankorId, $tanev = __TANEV, $tolDt = $dt, $igDt = $dt); + $ADAT['torlendoTankorok'] = getOrakByDiakIdk($DIAKIDK['idk'], array('dt'=>$dt,'ora'=>$ora)); + for ($i=0; $i 'cella', 'post' => array('ora', 'tanarId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'napTipusok' => array('tanítási nap','speciális tanítási nap'), + ); + if (isset($dt)) { + $TOOL['oraSelect'] = array('tipus' => 'cella', 'post' => array('osztalyId', 'tanarId', 'tankorId', 'dt', 'ora')); + if (isset($ora) && (!isset($osztalyId) || isset($tankorId))) $TOOL['tanarSelect'] = array('tipus'=>'cella', 'tanarok' => $Tanarok, 'post'=>array('dt', 'ora', 'tankorId', 'teremId' )); + if (isset($osztalyId) or isset($tanarId)) + $TOOL['tankorSelect'] = array('tipus'=>'sor', 'paramName'=>'tankorId', 'post'=>array('osztalyId','tanarId','dt','ora','teremId')); + // if (isset($ora)) $TOOL['teremSelect'] = array('tipus'=>'cella', 'paramName'=>'teremId', 'termek' => $Termek, 'post'=>array('osztalyId','tanarId','dt','ora','tankorId')); + } + getToolParameters(); + + } // admin vagy igazgató + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/osszevonas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/osszevonas.php new file mode 100644 index 00000000..5d04f19b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/osszevonas.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/pluszora-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/pluszora-pre.php new file mode 100644 index 00000000..55914d4a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/pluszora-pre.php @@ -0,0 +1,177 @@ + __TANEV, 'tolDt' => $dt, 'igDt' => $dt, 'result' => 'nevsor')); + if (isset($tanarId)) { + // A tanár a tankör tanára-e? + for ($i = 0; ($i < count($Tanarok) && $Tanarok[$i]['tanarId'] != $tanarId); $i++); + if ($i >= count($Tanarok)) { + $_SESSION['alert'][] = 'info:not_member:pluszOra:Nem a tankör tanára:'."$tankorId/$tanarId"; + $Tanarok[] = array('tanarId' => $tanarId, 'tanarNev' => getTanarNevById($tanarId)); + $mkId = getTankorMkId($tankorId); + $tanarMkIds = getTanarMunkakozosseg($tanarId); + $ADAT['kit'] = $Tanarok[0]['tanarId']; + if (in_array($mkId, $tanarMkIds)) $ADAT['tipus'] = 'helyettesítés'; + else $ADAT['tipus'] = 'felügyelet'; +// unset($tanarId); unset($_POST['tanarId']); + } + } + // Ha csak egy tanarId van, akkor azt állítsuk be! + if (count($Tanarok) == 1 && !isset($tanarId)) { + $tanarId = $Tanarok[0]['tanarId']; + if (isset($osztalyId)) unset($osztalyId); + } + } + // Felvehető-e az óra + $ok = (isset($ora) && isset($tanarId) && isset($tankorId)); + + if (isset($tanarId)) { + // tanar Napi órái + $Orak = getTanarNapiOrak($tanarId, $dt); + // Szabad Órák + for ($i = $napiMinOra; $i <= $napiMaxOra; $i++) if (!is_array($Orak[$i])) $SzabadOrak[] = $i; + } elseif (isset($osztalyId)) { + // osztalyNapiOrai + $Orak = getOsztalyNapiOrak($osztalyId, $dt); + // Szabad Órák + for ($i = $napiMinOra; $i <= $napiMaxOra; $i++) if (!is_array($Orak[$i][0])) $SzabadOrak[] = $i; + } + if (isset($ora)) { + $Termek = getSzabadTermek(array('dt' => $dt, 'ora' => $ora)); + $szabadTankorok = getSzabadTankorok($dt, $ora); + if (isset($tankorId)) { + // Tankör tagok ütközés ellenőrzése + $TA = getTankorAdat($tankorId); + if ($TA[$tankorId][0]['jelenlet'] == 'kötelező' && !tankorTagokLukasOrajaE($tankorId, $dt, $ora)) { + $ok = false; + } + } elseif (!isset($osztalyId)) { + // Szabad tanárok lekérdezése? (tanarSelect számára) + $Tanarok = getSzabadTanarok($dt, $ora); + } + if (isset($tanarId)) { + // Tanár ütközés ellenőrzés + if (!tanarLukasOrajaE($tanarId, $dt, $ora, $lr)) { + $_SESSION['alert'][] = 'message:utkozes:1:?:'.$dt.':'.$ora.':'.$tanarId; +// unset($tanarId); $ok = false; + } + } + if (isset($teremId)) { + for ($i = 0; ($i < count($Termek) && $Termek[$i]['teremId'] != $teremId); $i++); + if ($i >= count($Termek)) { // nincs a szabad termek között + $_SESSION['alert'][] = 'message:wrong_data:pluszOra/terem:'.$ora.'. óra:'.$teremId; + unset($teremId); + } + } + } // ora + } // dt + + // Action + if ($ok && $action == 'oraFelvetele') { + $eredet = $_POST['eredet']; + if (isset($ADAT['tipus'])) $tipus = $ADAT['tipus']; + else $tipus = 'normál'; + if (oraFelvetele($dt, $ora, $tanarId, $tankorId, $teremId, $tipus, $eredet, $ADAT['kit'])) { + unset($_POST); + $_POST['dt'] = $dt; $_POST['tanarId'] = $tanarId; + unset($ora); unset($teremId); unset($tankorId); + $Orak = getTanarNapiOrak($tanarId, $dt); + $SzabadOrak = array(); + for ($i = $napiMinOra; $i <= $napiMaxOra; $i++) if (!is_array($Orak[$i])) $SzabadOrak[] = $i; + $_SESSION['alert'][] = 'info:change_success'; + } + } elseif ($action=='csoportos') { + $feladatTipusId = readVariable($_POST['feladatTipusId'],'id'); + $leiras = readVariable($_POST['leiras'],'string'); + $tanarIdk = readVariable($_POST['tanarIdk'],'id'); + $lr = db_connect('naplo'); + for ($i=0;$i$dt, + 'ora'=>$ora, + 'ki'=> $_ki, + 'tipus'=>$_tipus, + 'eredet'=>$_eredet, + 'leiras'=>$leiras, + 'feladatTipusId'=>$feladatTipusId, + 'munkaido'=>'fennmaradó'), + $lr); + } + db_close($lr); + $_SESSION['alert'][] = 'info:'.count($UJORAIDK).'db órát felvettem!'; + } + + $ADAT['munkakozossegek'] = getMunkakozossegek($FILTER=array(),$SET=array('result' => 'indexed')); + $ADAT['mkTanar'] = getMunkakozossegTanaraMatrix(); + + // toolBar + $TOOL['datumSelect'] = array( + 'tipus' => 'cella', 'post' => array('ora', 'tanarId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'napTipusok' => array('tanítási nap','speciális tanítási nap'), + ); + if (isset($dt)) { + $TOOL['oraSelect'] = array('tipus'=>'cella', 'orak' => $SzabadOrak, 'foglaltOrakkal' => true, 'post'=>array('osztalyId', 'tanarId', 'tankorId', 'dt', 'ora')); + if (!isset($osztalyId) || isset($tankorId)) $TOOL['tanarSelect'] = array('tipus'=>'cella', 'tanarok' => $Tanarok, 'post' => array('dt', 'ora', 'tankorId', 'teremId' )); + if (!isset($tanarId)) $TOOL['osztalySelect'] = array('tipus'=>'sor','paramName' => 'osztalyId', 'post'=>array('dt', 'ora', 'tankor', 'teremId')); + if (isset($osztalyId) || isset($tanarId) || isset($ora)) { + $TOOL['tankorSelect'] = array('tipus'=>'sor', 'paramName'=>'tankorId', 'tankorok' => $szabadTankorok, 'tolDt'=>$dt, 'igDt'=>$dt, 'post'=>array('osztalyId','tanarId','dt','ora','teremId')); + } + if (isset($ora)) $TOOL['teremSelect'] = array('tipus'=>'cella', 'paramName'=>'teremId', 'termek' => $Termek, 'post'=>array('osztalyId','tanarId','dt','ora','tankorId')); + } + + getToolParameters(); + } // admin vagy igazgató + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/pluszora.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/pluszora.php new file mode 100644 index 00000000..abec9a9f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/pluszora.php @@ -0,0 +1,15 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/specialis-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/specialis-pre.php new file mode 100644 index 00000000..8b42b475 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/specialis-pre.php @@ -0,0 +1,95 @@ +'előre', 'napszam'=>1)); + else $dt = $_TANEV['kezdesDt']; + + $napiMinOra = getMinOra(); + $napiMaxOra = getMaxOra(); + + $Hetek = getOrarendiHetek(); + $napTipusok = getNapTipusok(); + $napAdat = getNapAdat($dt); + + // csak a tanév alatt lehet speciális tanítási nap + $time = strtotime($dt); + if ( + (strtotime($_TANEV['kezdesDt']) <= $time) and + ($time <= strtotime($_TANEV['zarasDt'])) + ) { + + if ($time < time()) $_SESSION['alert'][] = 'message:visszamenoleges_modositas'; + + if ($action == 'napiOrakTorlese') { + $tipus = ($_POST['tipus'] === '')?'':readVariable($_POST['tipus'], 'enum', null, $napTipusok); + if (isset($tipus)) { + napiOrakTorlese($dt, $tipus); + $napAdat = getNapAdat($dt); + } else { + $_SESSION['alert'][] = 'message:wrong_data:napiOrakTorlese:hibás típus:'.$tipus; + } + } elseif ($action == 'orakBetoltese') { + $orarendiHet = $_POST['orarendiHet']; + if (in_array($orarendiHet, $Hetek)) { + orakBetoltese($dt, $orarendiHet); + $napAdat = getNapAdat($dt); + } else { + $_SESSION['alert'][] = 'message:wrong_data:orakBetoltese:hibás hét:'.$orarendiHet; + } + } elseif ($action == 'specialisNap') { + $celOra = $_POST['celOra']; + $het = $_POST['het']; + $nap = $_POST['nap']; + $ora = $_POST['ora']; + specialisNap($dt, $celOra, $het, $nap, $ora); + $napAdat = getNapAdat($dt); + } elseif ($action == 'orakTorlese') { + if (is_array($_POST['ora'])) { + orakTorlese($dt, $_POST['ora']); + $napAdat = getNapAdat($dt); + } + } + } + + $i = 0; + while ($i < count($napAdat) && strpos($napAdat[$i]['tipus'], 'tanítási nap') === false) $i++; + $vanTanitasiNap = ($i < count($napAdat)); + $szabadOrak = getSzabadOrak($dt); + $munkatervek = getMunkatervek(array('result'=>'assoc','keyfield'=>'munkatervId')); + + + // toolBar + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array(), 'paramName' => 'dt', 'hanyNaponta' => 1, 'tolDt' => $_TANEV['kezdesDt'], + 'igDt' => $_TANEV['zarasDt'], + +// 'napTipusok' => array('tanítási nap', 'speciális tanítási nap'), +// 'napokSzama' => 10 + ); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/specialis.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/specialis.php new file mode 100644 index 00000000..d855fd36 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/specialis.php @@ -0,0 +1,17 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/stat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/stat-pre.php new file mode 100644 index 00000000..42623c11 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/stat-pre.php @@ -0,0 +1,58 @@ + $_TANEV['kezdesDt'])); + elseif (isset($osztalyId)) $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV); + elseif (isset($tanarId)) $Tankorok = getTankorByTanarId($tanarId, __TANEV); + elseif (isset($mkId)) $Tankorok = getTankorByMkId($mkId, __TANEV); + + $tankorIds = array(); + for ($i = 0; $i < count($Tankorok); $i++) $tankorIds[] = $Tankorok[$i]['tankorId']; + + if (count($tankorIds) > 0) $tankorStat = getTankorStat($tankorIds); + if (isset($diakId)) { + $tankorStat['hianyzasStat'] = getDiakHianyzasStat($diakId, array('tankorIds'=>$tankorIds, 'tanev'=> __TANEV)); + if (!isset($osztalyId)) { + $OI = getDiakOsztalya($diakId); + $osztalyId = $OI[0]['osztalyId']; + } + } + if (__NAPLOADMIN or __VEZETOSEG or __TANAR or __TITKARSAG) { + $TOOL['tanarSelect'] = array('tipus'=>'cella', 'post'=>array('igDt')); + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post'=>array('igDt')); + if (isset($osztalyId)) { + $TOOL['diakSelect'] = array('tipus'=>'cella','paramName'=>'diakId', 'post'=>array('osztalyId','igDt')); + if (isset($diakId)) $TOOL['diakLapozo'] = array('tipus'=>'sor', 'paramName'=>'diakId', 'post'=>array('osztalyId','igDt')); + } + $TOOL['munkakozossegSelect'] = array('tipus'=>'cella', 'post'=>array('igDt')); + } + if (isset($diakId)) { + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=hianyzas&f=diak&diakId='.$diakId,'index.php?page=naplo&sub=hianyzas&f=diakLista&diakId='.$diakId), + 'titleConst' => array('_DIAKHIANYZASNAPLO','_DIAKHIANYZASLISTA'), + 'post' => array('tanev','tolDt','igDt','ho','osztaly'), + 'paramName'=>'diakId'); + } + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/stat.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/stat.php new file mode 100644 index 00000000..5cce9b8e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/stat.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/tankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/tankor-pre.php new file mode 100644 index 00000000..afb9671b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/tankor-pre.php @@ -0,0 +1,29 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/tankor.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/tankor.php new file mode 100644 index 00000000..2841606e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/tankor.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/teremModositas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/teremModositas-pre.php new file mode 100644 index 00000000..b7bcf782 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/teremModositas-pre.php @@ -0,0 +1,102 @@ + __TANEV, 'tolDt' => $dt, 'igDt' => $dt, 'result' => 'nevsor')); + if (isset($tanarId)) { + // A tanár a tankör tanára-e? + for ($i = 0; ($i < count($Tanarok) && $Tanarok[$i]['tanarId'] != $tanarId); $i++); + if ($i >= count($Tanarok)) { + $_SESSION['alert'][] = 'message:wrong_data:pluszOra:Nem a tankör tanára:'."$tankorId/$tanarId"; + $Tanarok[] = array('tanarId' => $tanarId, 'tanarNev' => getTanarNevById($tanarId)); + $mkId = getTankorMkId($tankorId); + $tanarMkIds = getTanarMunkakozosseg($tanarId); + $ADAT['tanarId'] = $Tanarok[0]['tanarId']; + } + } + // Ha csak egy tanarId van, akkor azt állítsuk be! + if (count($Tanarok) == 1 && !isset($tanarId)) { + $tanarId = $Tanarok[0]['tanarId']; + if (isset($osztalyId)) unset($osztalyId); + } + } + + $ADAT['ki'] = $tanarId; + $ADAT['kit'] = $tanarId; + $ADAT['oraId'] = getOraIdByPattern($ADAT); + $ADAT['oraAdat'] = getOraAdatById($ADAT['oraId']); + $ADAT['szabadTerem'] = getSzabadTermek(array('dt' => $dt, 'ora' => $ora)); + $ADAT['tankorLetszam'] = getTankorLetszam($ADAT['oraAdat']['tankorId'], array('refDt'=>$ADAT['dt'])); + } + + // toolBar + $TOOL['datumSelect'] = array( + 'tipus' => 'cella', 'post' => array('ora', 'tanarId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'napTipusok' => array('tanítási nap','speciális tanítási nap'), + ); + if (isset($dt)) { + $TOOL['oraSelect'] = array('tipus'=>'cella', 'orak' => $SzabadOrak, 'foglaltOrakkal' => true, 'post'=>array('osztalyId', 'tanarId', 'tankorId', 'dt', 'ora')); + $TOOL['tanarSelect'] = array('tipus'=>'cella', 'tanarok' => $Tanarok, 'post' => array('dt', 'ora', 'tankorId', 'teremId' )); + //if (!isset($osztalyId) || isset($tankorId)) $TOOL['tanarSelect'] = array('tipus'=>'cella', 'tanarok' => $Tanarok, 'post' => array('dt', 'ora', 'tankorId', 'teremId' )); + //if (!isset($tanarId)) $TOOL['osztalySelect'] = array('tipus'=>'sor','paramName' => 'osztalyId', 'post'=>array('dt', 'ora', 'tankor', 'teremId')); + //if (isset($osztalyId) || isset($tanarId) || isset($ora)) { + // $TOOL['tankorSelect'] = array('tipus'=>'sor', 'paramName'=>'tankorId', 'tankorok' => $szabadTankorok, 'tolDt'=>$dt, 'igDt'=>$dt, 'post'=>array('osztalyId','tanarId','dt','ora','teremId')); + //} + //if (isset($ora)) $TOOL['teremSelect'] = array('tipus'=>'cella', 'paramName'=>'teremId', 'termek' => $Termek, 'post'=>array('osztalyId','tanarId','dt','ora','tankorId')); + } + + getToolParameters(); + } // admin vagy igazgató + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/teremModositas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/teremModositas.php new file mode 100644 index 00000000..d1ddccb6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/teremModositas.php @@ -0,0 +1,9 @@ +0) putTeremModositas($ADAT); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diak-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diak-pre.php new file mode 100644 index 00000000..d131db63 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diak-pre.php @@ -0,0 +1,213 @@ +date('Y-m-d'),'tanev'=>__TANEV) ); //--ITT a mai napot vesszük alapul, ami osztályváltáskor nem jó sajnos...... + $osztalyId = $OI[0]['osztalyId']; + } + if ($osztalyId != '') { + $ADAT['osztalyId'] = $osztalyId; + $ADAT['osztaly'] = getOsztalyAdat($osztalyId); + } + } + + +if (isset($diakId) && $diakId != '') { + + // ez gyönyörű szép :) + $_POST['diakId'] = $ADAT['diakId'] = $diakId; + $_POST['osztalyId'] = $osztalyId; + $ADAT['diak']['nev'] = getDiakNevById($diakId); + + /* --- igDt, tolDt --- */ + $tolDt = readVariable($_POST['tolDt'],'date',date('Y-m-d', mktime(0,0,0,date('m'),1,date('Y')))); + + $igDt = $_TANEV['zarasDt']; + initTolIgDt(__TANEV, $tolDt, $igDt); + // $ho beállítása + if ($_tmp=readVariable($_POST['dt'],'date',readVariable($_GET['dt'],'date'))) { + $ho = intval(date('m',strtotime($_tmp))); + } else { + $ho = readVariable($_POST['ho'],'numeric','',array(1,2,3,4,5,6,7,8,9,10,11,12)); + if ($ho=='') $ho = readVariable($_GET['ho'],'numeric', + intval(date('m',strtotime($tolDt))), + array(1,2,3,4,5,6,7,8,9,10,11,12)); + } + $ADAT['ho'] = $ho; + /* --- */ + $DIAKOSZTALYAI = getDiakokOsztalyai(array($diakId),array('tanev'=>__TANEV,'tolDt'=>$tolDt,'igDt'=>$igDt)); // diakId => (o1, o2, ...) + $munkatervIds = getMunkatervByOsztalyId($DIAKOSZTALYAI[$diakId], array('result'=>'idonly')); // lehet esetleg több is neki! + define(__OFO, ( + is_array($_OSZTALYA) && + count(array_intersect($DIAKOSZTALYAI[$diakId],$_OSZTALYA)) > 0 )); + if ($_TANEV['statusz']=='aktív' && (__NAPLOADMIN || __OFO || __VEZETOSEG)) { + $ITIPUSOK = getIgazolasTipusLista(); + $ITIPUSOK['engedelyezett'][] = 'orvosi'; + if (__NAPLOADMIN || __OFO) $ITIPUSOK['engedelyezett'][] = 'szülői'; + if (__NAPLOADMIN || __OFO) $ITIPUSOK['engedelyezett'][] = 'osztályfőnöki'; + if (__NAPLOADMIN || __OFO || __VEZETOSEG) $ITIPUSOK['engedelyezett'][] = 'verseny'; + if (__NAPLOADMIN || __OFO || __VEZETOSEG) $ITIPUSOK['engedelyezett'][] = 'vizsga'; + if (__NAPLOADMIN || __VEZETOSEG) $ITIPUSOK['engedelyezett'][] = 'igazgatói'; + $ITIPUSOK['engedelyezett'][] = 'hatósági'; + $ITIPUSOK['engedelyezett'][] = 'pályaválasztás'; + $ADAT['igazolasTipusok']=$ITIPUSOK; + + $igazolas = readVariable($_POST['igazolas'],'emptystringnull','',$ITIPUSOK['engedelyezett']); + if ($igazolas=='') $igazolas = readVariable($_GET['igazolas'],'emptystringnull','',$ITIPUSOK['engedelyezett']); + if ($igazolas=='') $igazolas = 'orvosi'; + $_POST['igazolas'] = $igazolas; + //if (!in_array($igazolas,$ITIPUSOK['engedelyezett'])) + //$_SESSION['alert'][] = '::hibás beállítás('.$igazolas.')'; + + $ADAT['igazolas'] = $igazolas; + + // Hatarido + if (__NAPLOADMIN || __VEZETOSEG) define('__BEIRAS_HATARIDO',_ZARAS_HATARIDO); + elseif (__OFO) define('__BEIRAS_HATARIDO',_OFO_HIANYZAS_HATARIDO); + else define('__BEIRAS_HATARIDO',_HIANYZAS_HATARIDO); + + //$hatarido = _LEGKORABBI_IGAZOLHATO_HIANYZAS; + $hatarido = getNemIgazolhatoDt($diakId, $munkatervIds); + + if (__NAPLOADMIN || __VEZETOSEG) { + if (strtotime($hatarido) > strtotime(_ZARAS_HATARIDO)) + $hatarido = _ZARAS_HATARIDO; + } elseif (!__OFO) { + $hatarido = date('Y-m-d'); + } // else nem írjuk felül + + define('__STATUS_HATARIDO',$hatarido); + + // Beírások + /* + a beíró függvényeknek átadjuk, hogy mit szeretnénk elérni, + amik lekérdezik a szükséges adatokat, és esetleges jogosultságokat! (darabszám) + a határidőre vonatkozó beállításokat a -pre nek kell végeznie! + */ + if ($action == 'statusModositas') { + + $hianyzasId = readVariable($_GET['hianyzasId'],'id'); + if ($hianyzasId!='') + $_HDATA = getHianyzasById($hianyzasId); + // lekérdezzük, hogy mi a hiányzás dátuma, státusza? ($dt,$statusz) + if (is_array($_HDATA) && count($_HDATA)==1) { + if (strtotime(__STATUS_HATARIDO) < strtotime($_HDATA[0]['dt'])) { + if ($_HDATA[0]['statusz']=='igazolatlan') { + $_statusz = 'igazolt'; + $_igtip = $igazolas; + } else { + $_statusz = 'igazolatlan'; + $_igtip = ''; + } + $IGAZOLANDOK[] = array('id'=> $hianyzasId,'statusz'=>$_statusz,'igazolas'=>$_igtip); + hianyzasIgazolas($IGAZOLANDOK,$diakId); + } else { + $_SESSION['alert'][] = 'message:deadline_expired'.__STATUS_HATARIDO; + } + } else { // nincs hianyzasId megadva, vagy nincs hozzá mégsem (pl már kitörölték egyszer) bejegyzés. + + $_dt = readVariable($_GET['dt'],'date'); + $_ora = readVariable($_GET['ora'],'numeric'); + $_tipus = 'hiányzás'; + $_statusz = readVariable($_POST['status'],'emptystringnull','igazolatlan',array('igazolt','igazolatlan')); + + // ekkor vajon milyen oraId-jű orája volt a diakIdnek? + // esetleg több is! (regisztralando, de nem kötelező bejárnia) + if (strtotime(__BEIRAS_HATARIDO) <= strtotime($_dt)) { + oraHianyzasBeiras($_dt,$_ora,$diakId,array('tipus'=>$_tipus,'statusz'=>$_statusz)); + } else { + $_SESSION['alert'][] = 'message:deadline_expired:'.__BEIRAS_HATARIDO; + } + + } + + } elseif ($action == 'napiHianyzasBeiras') { + + // dt és diakId alapján lekérdezzük, beírjuk, nincs mese. + // illetve van mese: lehet hogy csak a statuszokat lehet módosítani... + + $_dt = readVariable($_POST['dt'],'date'); + $_tipus = 'hiányzás'; + $_statusz = readVariable($_POST['status'],'emptystringnull','igazolatlan',array('igazolt','igazolatlan')); + $_igazolas = ($_statusz=='igazolatlan') ? '' : $igazolas; + napiHianyzasBeiras($_dt,$diakId,array('tipus'=>$_tipus,'statusz'=>$_statusz,'igazolas'=>$_igazolas)); + + } elseif ($action == 'igazolasTipusValtas') { + // itt már elvileg nincs mit tennünk (v2.4) + } + + } else { + //define('__BEIRAS_HATARIDO',''); + //define('__STATUS_HATARIDO',''); + } + + /* --- tanuló hiányzásai (figyelem! dátumok!) --- */ + // --TODO: 9!!! + $ADAT['napok'] = getHonapNapjai($ho, $munkatervIds); + for ($i=0; $i'assoc','dt'=>$_NAPOK[count($_NAPOK)-1])); // dátum nélkül ez a korábbi összes képzését adná. Vegyük a hónap utolsó napján... + + $ADAT['hianyzasKreta'] = getDiakKretaHianyzas($diakId,array('preprocess'=>'naptar')); +} // ha van nem üres diakId + + if (!__DIAK) { + + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('ho','igazolas')); + $TOOL['diakSelect'] = array('tipus'=>'cella', 'diakId' => $diakId, 'post'=>array('tolDt','osztalyId','ho','igazolas')); + //$TOOL['tanarOraLapozo'] = array('tipus'=>'sor', 'oraId' => $oraId, 'post'=>array('tanarId')); + + } + if ($diakId != '') { + $TOOL['igazolasOsszegzo'] = array('tipus' => 'sor','paramName' => 'igazolasOsszegzo', 'post' => array()); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=hianyzas&f=diakLista','index.php?page=naplo&sub=haladasi&f=stat&diakId='.$diakId), + 'titleConst' => array('_DIAKHIANYZASLISTA','_HALADASISTATISZTIKA'), + 'post' => array('tanev','tolDt','igDt','ho','osztaly'), + 'paramName'=>'diakId'); + } + if (__POLICY == 'parent') $TOOL['pageHelp'] = 'PAGEHELP_SZULO'; + else $TOOL['pageHelp'] = 'PAGEHELP'; + if ($ho!='') $TOOL['honapLapozo'] = array('tipus'=>'sor', 'paramName' => 'ho', 'ho'=>$ho, + 'diakId'=>$diakId, // ideiglenesen! + 'post'=>array('diakId','osztalyId','igazolas')); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diak.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diak.php new file mode 100644 index 00000000..5eb61423 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diak.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakIgazolatlan-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakIgazolatlan-pre.php new file mode 100644 index 00000000..5ffb0899 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakIgazolatlan-pre.php @@ -0,0 +1,26 @@ + 'cella','paramName' => 'osztalyId', 'post' => array('ho')); + $TOOL['diakSelect'] = array('tipus'=>'cella', 'diakId' => $diakId, 'post'=>array('tolDt','osztalyId','ho')); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakIgazolatlan.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakIgazolatlan.php new file mode 100644 index 00000000..c934b7c8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakIgazolatlan.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakLista-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakLista-pre.php new file mode 100644 index 00000000..4818d84d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakLista-pre.php @@ -0,0 +1,101 @@ + 0 )); + + /* --- tanuló hiányzásai (figyelem! dátumok!) --- */ + // --TODO: 9!!! + + $ADAT['napok'] = getHonapNapjai($ho); + for ($i=0; $i 'cella','paramName' => 'osztalyId', 'post' => array('ho')); + $TOOL['diakSelect'] = array('tipus'=>'cella', 'diakId' => $diakId, 'post'=>array('tolDt','osztalyId','ho')); + //$TOOL['tanarOraLapozo'] = array('tipus'=>'sor', 'oraId' => $oraId, 'post'=>array('tanarId')); + + } + if ($diakId != '') { + $TOOL['igazolasOsszegzo'] = array('tipus' => 'sor','paramName' => 'igazolasOsszegzo', 'post' => array()); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=hianyzas&f=diak','index.php?page=naplo&sub=haladasi&f=stat&diakId='.$diakId), + 'titleConst' => array('_DIAKHIANYZASNAPTAR','_HALADASISTATISZTIKA'), + 'post' => array('tanev','osztaly','tolDt','ho'), + 'paramName'=>'diakId'); + } + if ($ho != '') $TOOL['honapLapozo'] = array('tipus'=>'sor', 'paramName' => 'ho', 'ho'=>$ho, 'post'=>array('diakId','osztalyId')); + getToolParameters(); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakLista.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakLista.php new file mode 100644 index 00000000..f85c9f9b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/diakLista.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/hianyzas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/hianyzas-pre.php new file mode 100644 index 00000000..ea204c20 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/hianyzas-pre.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/hianyzas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/hianyzas.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/info-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/info-pre.php new file mode 100644 index 00000000..0ee4c280 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/info-pre.php @@ -0,0 +1,32 @@ +'; + + $dt = $refTolDt = readVariable($_POST['refTolDt'],'date',date('Y-m-d',strtotime('-7 day'))); + $refIgDt = readVariable($_POST['refIgDt'],'date',date('Y-m-d')); + + $datediff = strtotime($refIgDt) - strtotime($refTolDt); + $dbNap = floor($datediff / (60 * 60 * 24)); + + $ADAT = array(); + + if (strtotime($dt) <= strtotime($refIgDt)) { + while (strtotime($dt)<= strtotime($refIgDt)) { + if (date('N',strtotime($dt))<=5) $ADAT[$dt] = getDarabDiakHianyzas($dt); + $dt = date('Y-m-d',strtotime('+1 day',strtotime($dt))); + } + } + + $TOOL['datumTolIgSelect'] = array( + 'tipus' => 'sor', 'title' => 'REFDT', + 'post'=>array('tolDt','tanarId','osztalyId','tankorId','mkId','diakId','telephely'), + 'tolParamName' => 'refTolDt', 'igParamName' => 'refIgDt', 'hanyNaponta' => 1, + 'tolDt' => $_TANEV['elozoZarasDt'], + 'igDt' => $_TANEV['kovetkezoKezdesDt'], + 'override' => true, + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + ); +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/info.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/info.php new file mode 100644 index 00000000..ab5bb381 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/info.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/nap-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/nap-pre.php new file mode 100644 index 00000000..a1ea6261 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/nap-pre.php @@ -0,0 +1,162 @@ + array($diakId), + 'adatok' => getTankorByDiakId($diakId,__TANEV,array('tolDt'=>$dt,'igDt'=>$dt)), + 'nevek' => getDiakokById(array($diakId)) + ); + + { + /* jogosultság */ + //$DIAKOSZTALYAI = getDiakokOsztalyai(array($diakId)); + //define(__OFO, (is_array($_OSZTALYA) && count(array_intersect($DIAKOSZTALYAI[$diakId],$_OSZTALYA)) > 0 )); + + /* --- */ + $TANKORIDK = getTankorByDiakId($diakId, __TANEV, $SET = array('csakId' => true, 'tolDt' => $dt, 'igDt' => $dt)); + + $tmpOrak = getOrak($TANKORIDK,array('tolDt'=>$dt,'igDt'=>$dt,'elmaradokNelkul'=>true)); + $ADAT['orak'] = $tmpOrak['orak']; + if (is_array($ADAT['orak']) && count($ADAT['orak'])>0) + foreach($ADAT['orak'] as $tankorId => $OA1) + foreach($OA1 as $ora => $OA2) + foreach($OA2 as $tankorId => $OA) + $ORAI[] = $OA; + $ADAT['jogosultsag'] = getHianyzasJogosultsag($ORAI, array('idk'=>array($diakId))); + unset($ORAI); + + /* rögzítés */ + if ($action == 'hianyzokRogzitese' && (__TANAR || __NAPLOADMIN || __VEZETOSEG)) { + //$EDDIG = getHianyzasByOraId($ORAADAT['oraId'],array('csakId'=>true)); + $EDDIG = getHianyzasByDt(array($diakId),array($dt),array('csakId'=>true)); + $MARADNAK = $H = $TORLENDOK = array(); + // először vizsgáljuk meg, hogy hol hiányzott (mert ekkor f betűs nem lehet) + reset($_POST); + foreach($_POST as $_kulcs => $_ertek) { + if (substr($_kulcs,0,8)=='HIANYZOK') { + list($_mi,$_oraId) = explode('_',$_kulcs); + list($_diakId,$_dt,$_ora,$_tipus,$_hid) = explode('/',$_ertek); + if ($_tipus=='hiányzás') { // akkor f betűsök nem lehetnek + $H[$_diakId][$_dt][$_ora] = true; + $H2[$_diakId][$_oraId] = true; + } + } + } + // majd állítsuk elő a tömböket + reset($_POST); + foreach($_POST as $_kulcs => $_ertek) { + if (substr($_kulcs,0,8)=='HIANYZOK') { + /* Itt az __id most oraId */ + list($__r1,$__id,$__r2) = explode('_',$_kulcs); + list($_diakId,$_dt,$_ora,$_tipus,$_hid) = explode('/',$_ertek); +// if (!isset($H[$_diakId][$_dt][$_ora]) || $_tipus=='hiányzás') { + if (!isset($H2[$_diakId][$__id]) || $_tipus=='hiányzás') { + if ($_hid!='') { + $MARADNAK[] = $_hid; + if ($_tipus=='késés') $PERCEK[$_hid]=intval($_POST['PERC_'.$__id]); + } elseif ($_tipus!='') { + $_perc = intval($_POST['PERC_'.$__id]); + //$_oraId = $ADAT['orak'][$dt]; + //list($_tankorId,$OA) = each($ADAT['orak'][$dt][$_ora]); + // EZ HIBÁS! Egy időben több óra is lehet! Az adat postként rendelkezsére áll, használjuk azt fel! + $BEIRANDOK[] = array('diakId'=>$_diakId,'tipus'=>$_tipus,'id'=>$_hid,'dt'=>$_dt,'ora'=>$_ora,'perc'=>$_perc,'oraId'=>$__id); + } + } + } + } + $TORLENDOK = (is_array($EDDIG)) ? array_diff($EDDIG,$MARADNAK) : array(); + reset($_POST); + foreach($_POST as $_kulcs => $_ertek) { + if (substr($_kulcs,0,8) == 'IGAZOLAS') { + for ($i=0; $i $_hid,'diakId'=>$_diakId,'statusz'=>$_statusz,'igazolas'=>$_igtip); + } + } + } + } + // végül töröljünk, regisztráljunk, igazoljunk + // esetleg okosan kitalálhatjuk, hogy ha egy időpontban van órája, akkor csak egy helyen lehet? (Pl ahol kötelezően kellene lennie...) + if (is_array($EDDIG) && is_array($MARADNAK)) { + hianyzasTorles($TORLENDOK); + } + hianyzasRegisztralas(array(),$BEIRANDOK); + hianyzasIgazolas($IGAZOLANDOK); + hianyzasPercUpdate($PERCEK); + + } + // lekérdezés #2 + // $ADAT['nevsor'] // lásd feljebb + $ADAT['hianyzok'] = array($diakId); + $ADAT['hianyzasok'] = getHianyzasByDt(array($diakId),array('dt'=>$dt)); + $ADAT['tankorok'] = getTankorByDiakId($diakId, __TANEV, $SET = array('csakId' => false, 'tolDt' => $dt, 'igDt' => $dt,'result'=>'multiassoc')); + $ADAT['tankorTipus'] = getTankorTipusok(); + // ez így egy kicsit túl megengedő. Ha pl egy tárgyból csak az első órán van felmentve, de ugyanaz a tankör szerepel később is (pl második), akkor ida is felmentett lesz... + // holott arról nincs fm-tése... Óránként külön kellene vizsgálni... :( + $ADAT['felmentett'] = getTankorDiakFelmentes($diakId, __TANEV, array('result'=>'multiassoc','tolDt' => $dt, 'igDt' => $dt, 'nap'=>$nap)); // !!! + $ADAT['dt'] = $dt; + $ADAT['diak']['nev'] = getDiakNevById($diakId); + $OI = getDiakOsztalya($diakId); + $osztalyId = $OI[0]['osztalyId']; + $ADAT['osztaly'] = getOsztalyAdat($osztalyId); + $ADAT['napiMinOra'] = getMinOra(); + $ADAT['napiMaxOra'] = getMaxOra(); + + } + $_diakJogviszony=getDiakJogviszonyByDts( array($ADAT['diakId']), array($ADAT['dt']) ); + $ADAT['diakJogviszony'] = $_diakJogviszony[$ADAT['diakId']][$ADAT['dt']]['statusz']; + $ADAT['hianyzasKreta'] = getDiakKretaHianyzas($ADAT['diakId'],array('preprocess'=>'naptar','tolDt'=>$ADAT['dt'],'igDt'=>$ADAT['dt'])); + // tanarSelect tul képpen csak readnly + $TOOL['datumSelect'] = array( + 'tipus' => 'sor', 'post' => array('diakId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($_TANEV['kezdesDt'])), + 'napTipusok' => array('tanítási nap', 'speciális tanítási nap'), + 'lapozo' => true + ); +// $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('ho')); + if (!__DIAK) $TOOL['diakSelect'] = array('tipus' => 'cella', 'diakId' => $diakId, 'post' => array('dt')); + if ($diakId!='') $TOOL['igazolasOsszegzo'] = array('tipus' => 'cella','paramName' => 'igazolasOsszegzo', 'post' => array()); + +// $TOOL['tanuloNapLapozo'] = array('tipus'=>'sor', 'dt' => $dt, 'post'=>array('diakId','dt')); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/nap.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/nap.php new file mode 100644 index 00000000..de542e68 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/nap.php @@ -0,0 +1,14 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/oktstat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/oktstat-pre.php new file mode 100644 index 00000000..2fce3e26 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/oktstat-pre.php @@ -0,0 +1,33 @@ + 'cella', 'action' => 'tanevValasztas', 'post' => array('tanev')); + + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/oktstat.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/oktstat.php new file mode 100644 index 00000000..ec4b017a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/oktstat.php @@ -0,0 +1,12 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/ora-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/ora-pre.php new file mode 100644 index 00000000..3ef6a8ee --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/ora-pre.php @@ -0,0 +1,166 @@ + $_tolDt, 'igDt' => $_igDt, 'tipus' => array('normál','normál máskor','helyettesítés','felügyelet','összevonás')) + ); + $oraId = $_POST['oraId'] = $tanarOrak[0]['oraId']; + } + + if (isset($oraId)) { + + $ORAADAT = getOraAdatById($oraId); + + $nap = date('w',strtotime($ORAADAT['dt'])); + $ora = $ORAADAT['ora']; + + $tanarId = $ORAADAT['ki']; + $tolDt = $igDt = $ORAADAT['dt']; + + /* tankör adatai - óratervi-e */ + $TA = getTankorAdat($ORAADAT['tankorId'], __TANEV); + $ADAT['tankorAdat'] = $TA[$ORAADAT['tankorId']][0]; + $ORAADAT['tankorTipus'] = $ADAT['tankorAdat']['tankorTipus']; + $ADAT['tagokFelvehetok'] = ($ADAT['tankorAdat']['nevsor']=='változtatható'); + /* a tankör tagságának bővítése, ha lehet */ + if ($action!='' && $ADAT['tagokFelvehetok']===true) { + $D['diakId'] = readVariable($_POST['diakId'],id); + if ($D['diakId']!=0) { + $D['tankorId'] = $ORAADAT['tankorId']; + $D['igDt'] = $D['tolDt'] = $ORAADAT['dt']; + tankorDiakFelvesz($D); + } + } + + /* lekérdezés #1 */ + $ADAT['nevsor'] = getTankorDiakjaiByInterval($ORAADAT['tankorId'], __TANEV, $ORAADAT['dt'], $ORAADAT['dt']); + for ($i=0; $itrue,'tolDt'=>$tolDt, 'igDt'=>$igDt, 'nap'=>$nap, 'ora'=>$ora)); + $ADAT['hianyzasKreta'][$_diakId] = array_pop(getDiakKretaHianyzas($_diakId,array('preprocess'=>'naptar', 'tolDt'=>$tolDt, 'igDt'=>$igDt))); + } + $ADAT['diakJogviszony'] = getDiakJogviszonyByDts($ADAT['nevsor']['idk'], array($ORAADAT['dt'])); +//dump($ADAT['nevsor']['idk']); +//dump($ORAADAT['dt']); +//dump($ADAT['diakJogviszony']); + if ($ORAADAT['tipus'] == 'elmarad') { + $_SESSION['alert'][] = 'page:elmaradt_ora'; + } else { + /* jogosultság */ + $ADAT['jogosultsag'] = getHianyzasJogosultsag(array($ORAADAT) , $ADAT['nevsor']); + /* rögzítés */ + if ($action == 'hianyzokRogzitese') { + $EDDIG = getHianyzasByOraId($ORAADAT['oraId'],array('csakId'=>true)); + $MARADNAK = $H = $TORLENDOK = array(); + // először vizsgáljuk meg, hogy hol hiányzott (mert ekkor f betűs nem lehet) + reset($_POST); + foreach($_POST as $_kulcs => $_ertek) { + if (substr($_kulcs,0,8)=='HIANYZOK') { + list($_diakId,$_dt,$_ora,$_tipus,$_hid) = explode('/',$_ertek); + if ($_tipus=='hiányzás') { // akkor f betűsök nem lehetnek + $H[$_diakId][$_dt][$_ora] = true; + } + } + } + // majd állítsuk elő a tömböket + reset($_POST); + foreach($_POST as $_kulcs => $_ertek) { + if (substr($_kulcs,0,8)=='HIANYZOK') { + // ez volt!!!! figyelem!!!list($_diakId,$_tipus,$_hid) = explode('/',$_ertek); + list($__r1,$__id,$__r2) = explode('_',$_kulcs); + list($_diakId,$_dt,$_ora,$_tipus,$_hid) = explode('/',$_ertek); + if (!isset($H[$_diakId][$_dt][$_ora]) || $_tipus=='hiányzás') { + if ($_hid!='') { + $MARADNAK[] = $_hid; + if ($_tipus=='késés') $PERCEK[$_hid]=intval($_POST['PERC_'.$__id]); + } elseif ($_tipus!='') { + $_perc = intval($_POST['PERC_'.$__id]); + $BEIRANDOK[] = array('diakId'=>$_diakId,'tipus'=>$_tipus,'id'=>$_hid,'dt'=>$_dt,'ora'=>$_ora,'perc'=>$_perc); + } + } + } + } + $TORLENDOK = array_diff($EDDIG,$MARADNAK); + reset($_POST); + foreach($_POST as $_kulcs => $_ertek) { + if (substr($_kulcs,0,8) == 'IGAZOLAS') { + for ($i=0; $i $_hid,'diakId'=>$_diakId,'statusz'=>$_statusz,'igazolas'=>$_igtip); + } + } + } + } + + //végül töröljünk, regisztráljunk, igazoljunk + if (is_array($EDDIG) && is_array($MARADNAK)) { + hianyzasTorles($TORLENDOK); + } + hianyzasRegisztralas($ORAADAT,$BEIRANDOK); + hianyzasIgazolas($IGAZOLANDOK); + hianyzasPercUpdate($PERCEK); + + + + } + /* --- */ + + // lekérdezés #2 + // $ADAT['nevsor'] // lásd feljebb + $ADAT['hianyzok'] = getHianyzasByOraId($ORAADAT['oraId']); + $ADAT['napiHianyzasok'] = getHianyzasByDt($ADAT['nevsor']['idk'],$ORAADAT['dt']); + + if ($ADAT['tagokFelvehetok']===true) { + $_to = getTankorOsztalyaiByTanev($ORAADAT['tankorId'], __TANEV, array('result' => 'id', 'tagokAlapjan' => false)); + $ADAT['diakok'] = getDiakok(array('osztalyId'=>$_to)); + + } + } + } // Ha van oraId + + $TOOL['tanarSelect'] = array('tipus'=>'cella', 'tanarId' => $tanarId); + $TOOL['vissza'] = array('tipus'=>'vissza', + 'paramName'=>'vissza', + 'icon'=>'', + 'postOverride' => array('igDt'=>$igDt,'tanarId'=>$tanarId,'page'=>'naplo','sub'=>'haladasi','f'=>'haladasi') + ); + if (isset($oraId)) $TOOL['tanarOraLapozo'] = array('tipus'=>'sor', 'oraId' => $oraId, 'post'=>array('tanarId')); + getToolParameters(); + + } // Ha jogosult az oldal megtekintésére + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/ora.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/ora.php new file mode 100644 index 00000000..5c1acffc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/ora.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztaly-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztaly-pre.php new file mode 100644 index 00000000..d6230305 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztaly-pre.php @@ -0,0 +1,124 @@ +0) + $ADAT['referenciaDt'] = $referenciaDt = readVariable($_POST['referenciaDt'],'datetime',null); + + +// -------------------------------- + + if (isset($osztalyId)) { + $ADAT['osztalyId'] = $osztalyId; + define(__OFO, ( is_array($_OSZTALYA) && in_array($osztalyId, $_OSZTALYA))); + + $jogosult = array(); + if (__TANAR) $jogosult[] = 'szaktanár'; + if (__OFO) $jogosult[] = 'osztályfőnök'; + if (__VEZETOSEG) $jogosult[] = 'vezetőség'; + if (__NAPLOADMIN) $jogosult[] = 'admin'; + + $ADAT['jogosult fokozatok'] = getBejegyzesTipusokByJogosult($jogosult, array('tipus' => array('fegyelmi'), 'hianyzas' => true)); + $ADAT['összes fokozat'] = getBejegyzesTipusokByJogosult(array('szaktanár','osztályfőnök','vezetőség','admin'), array('tipus' => array('fegyelmi'), 'hianyzas' => true)); + $ADAT['fokozat2bejegyzesTipus'] = $ADAT['bejegyzesTipusok'] = $ADAT['bejegyzesTipusIds'] = array(); + foreach ($ADAT['összes fokozat'] as $key => $fAdat) { + $ADAT['bejegyzesTipusok'][ $fAdat['bejegyzesTipusId'] ] = $fAdat; + } + foreach ($ADAT['jogosult fokozatok'] as $key => $fAdat) { + $bejegyzesTipusIds[] = $fAdat['bejegyzesTipusId']; + } + $_TMP = getBejegyzesTipusokByJogosult(array('szaktanár','osztályfőnök','vezetőség','admin'), array('tipus' => array('fegyelmi'), 'hianyzas' => false)); + foreach ($_TMP as $key => $fAdat) { + $ADAT['fokozat2bejegyzesTipus'][ $fAdat['fokozat'] ] = $fAdat; + } + + if ( + $_TANEV['statusz']=='aktív' + && (__NAPLOADMIN || __VEZETOSEG || (__TANAR && __OSZTALYFONOK && in_array($osztalyId, $_OSZTALYA))) + ) { + if ($action == 'fegyelmiRogzitese') { + + $diakId = readVariable($_POST['diakId'], 'id'); + $bejegyzesTipusId = readVariable($_POST['bejegyzesTipusId'], 'id', null, $bejegyzesTipusIds); + $referenciaDt = readVariable($_POST['ujReferenciaDt'], 'date'); + $hianyzasDb = readVariable($_POST['hianyzasDb'], 'numeric unsigned'); + + $szoveg = 'Tisztelt Szülő! Értesítem, hogy gyermeke - igazolatlan hiányzásainak száma ('.$hianyzasDb.') alapján - elérte a(z) "' + .$ADAT['bejegyzesTipusok'][$bejegyzesTipusId]['bejegyzesTipusNev'].'" fegyelmi fokozatot.'; + + if (isset($bejegyzesTipusId) && isset($diakId)) ujBejegyzes($bejegyzesTipusId, $szoveg, $referenciaDt, $diakId, $hianyzasDb); + else $_SESSION['alert'][] = 'message:insufficient_access:a fegyelmi nem rögzíthető (bejegyzesTipusId='.$bejegyzesTipusId.'; hianyzasDb='.$hianyzasDb.')'; + + } + } + + // -------------------------------- + + //$osztalyAdat = getOsztalyAdat($osztalyId); + if ($tolDt != $_TANEV['kezdesDt'] || $igDt != date('Y-m-d')) { + $OPT = array('hozott','lezárt','igazolható','kreta','összes'); + $View = readVariable($_POST['View'], 'enum', array('összes'), $OPT); + } else { + $OPT = array('hozott','lezárt','igazolható','kreta','összes','fegyelmi utáni','fegyelmi fokozatok'); + $View = readVariable($_POST['View'], 'enum', ($skin != 'pda')?array('összes','fegyelmi fokozatok'):array('összes'), $OPT); + } + $q = "SELECT count(*) AS db FROM hianyzasKreta"; + $hkr = db_query($q, array('modul'=>'naplo','result'=>'value')); + if ($hkr>0) $View[] = 'kreta'; + + if ($nevsor=='aktualis') { + $ADAT['stat'] = getHianyzok($ADAT,array('dt'=>date("Y-m-d"))); + } else { + $ADAT['stat'] = getHianyzok($ADAT); + } +// $ADAT['hianyzasmentesNapokSzama'] = getHianyzasmentesNapokSzama($osztalyId); + + foreach($ADAT['stat']['névsor'] as $_diakId => $_D) { + $ADAT['hozottHianyzas'][$_diakId] = getDiakHozottHianyzas($_diakId); + $ADAT['hianyzasKreta'][$_diakId] = getDiakKretaHianyzas($_diakId,array('preprocess'=>'stat','tolDt'=>$tolDt,'igDt'=>$igDt)); + } + + } // isset(osztalyId) + +// $TOOL['vissza'] = array('tipus'=>'vissza','paramName'=>'','icon'=>'','post'=>array('page'=>'naplo','sub'=>'haladasi','f'=>'haladasi')); + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('tolDt','igDt','View')); + getToolParameters(); + $TOOL['datumTolIgSelect'] = array('tipus' => 'sor', 'tolParamName' => 'tolDt', 'igParamName' => 'igDt', + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'hanyNaponta' => 1, 'post' => array('osztalyId', 'View') + ); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztaly.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztaly.php new file mode 100644 index 00000000..50f5873a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztaly.php @@ -0,0 +1,13 @@ + 0) + putOsztalyOsszesito($ADAT, $View); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztalyNap-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztalyNap-pre.php new file mode 100644 index 00000000..608f94d4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztalyNap-pre.php @@ -0,0 +1,53 @@ + $osztalyId, 'result' => 'assoc', 'tanev' => __TANEV, 'tolDt' => $dt, 'igDt' => $dt)); + $ADAT['diakIds'] = array_keys($ADAT['diakok']); + $H = getHianyzasByDiakIds($ADAT['diakIds'], array('result' => 'multiassoc', 'keyfield' => 'ora', 'tolDt' => $dt, 'igDt' => $dt)); + foreach ($H as $ora => $hAdat) { + for ($i = 0; $i < count($hAdat); $i++) { + $_H = $hAdat[$i]; + $ADAT['hianyzas'][$ora][$_H['tankorId']][] = $_H; + $ADAT['diakHianyzott'][$_H['diakId']][$_H['hTipus']][$_H['statusz']][$_H['tankorTipus']]['db']++; + } + } + if (is_array($ADAT['hianyzas'])) $ADAT['tankorIds'] = array_keys($ADAT['hianyzas']); + $ADAT['tankorok'] = getTankorByOsztalyId($osztalyId, __TANEV, array('tanarral' => true, 'result' => 'assoc')); + } + $TOOL['datumSelect'] = array( + 'tipus' => 'sor', 'post' => array('osztalyId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($_TANEV['kezdesDt'])), + 'napTipusok' => array('tanítási nap', 'speciális tanítási nap'), + 'lapozo' => true + ); + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('dt')); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztalyNap.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztalyNap.php new file mode 100644 index 00000000..10534428 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hianyzas/osztalyNap.php @@ -0,0 +1,10 @@ +0) { + putOsztalyHianyzas($ADAT); + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/admin-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/admin-pre.php new file mode 100644 index 00000000..60de869a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/admin-pre.php @@ -0,0 +1,80 @@ +0) { + $Kerelmek = getKerelmek('',$kerelemId,$tolDt); + } else { + $Kerelmek = getKerelmek($telephelyId,null,$tolDt); + } + } else { + if ($action == 'hibaAdminRogzites') { + $_ADAT['kerelemId'] = $kerelemId; + $_ADAT['kerelemTelephelyId'] = $_ADAT['telephelyId'] = $telephelyId; + $_ADAT['valasz'] = readVariable($_POST['valasz'],'string'); + $_ADAT['kategoria'] = readVariable($_POST['kategoria'],'string','', $KERELEM_TAG); + hibaAdminRogzites($_ADAT); + + //if ($_ADAT['lezar']) + unset($kerelemId); + unset($_ADAT); + } + // Saját kérelmek lekérdezése + $Kerelmek = getSajatKerelmek($telephelyId); + } + + $TELEPHELY = getTelephelyek(); + +// $TOOL['kerelemStat'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'post'=>array()); + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array('telephelyId'), + 'paramName' => 'tolDt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => date('Y-m-d'), + ); + $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'post'=>array()); + $TOOL['vissza'] = array('tipus'=>'vissza','paramName'=>'','icon'=>'inbox','post'=>array('telephelyId')); + if ($kerelemId!='') { + $TOOL['vissza']['icon'] = 'arrow-left'; + } + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/admin.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/admin.php new file mode 100644 index 00000000..f34d5eed --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/admin.php @@ -0,0 +1,16 @@ +0) { + if ($_GET['view']==2){ + putKerelmekValasszal($Kerelmek,$telephelyId,$TELEPHELY); + } else { + putKerelmek($Kerelmek,$telephelyId,$TELEPHELY); + } + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/hibabejelento-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/hibabejelento-pre.php new file mode 100644 index 00000000..da2f215e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/hibabejelento-pre.php @@ -0,0 +1,24 @@ +0) $Kerelmek = getKerelmek('',$kerelemId); + +// $TOOL['kerelemStat'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'post'=>array()); + $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'post'=>array()); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/hibabejelento.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/hibabejelento.php new file mode 100644 index 00000000..dffac292 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hibabejelento/hibabejelento.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/cronFutar-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/cronFutar-pre.php new file mode 100644 index 00000000..5691de0f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/cronFutar-pre.php @@ -0,0 +1,32 @@ +'cron','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v)); + + for ($i=0; $i$d['userAccount'], 'policy'=>$d['policy'], 'email'=>$d['email'], 'setDt'=> $refDt); + } + + // Megszorítás: egy naplóbeli entitás utolsoEmailDt-je együtt kell, hogy mozogjon ebben a feldolgozási rendszerben. + // Javítható: hirnokWrapper() függvény sokszoros használatával + $ADAT['hirnokFolyam'] = hirnokWrapper(array('tolDt'=>$tolDt, + 'diakId'=>$USER['diak'], + 'tanarId'=>$USER['tanar'], + 'tolDtByUser'=>$TOLDTBYUSER + )); + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/cronFutar.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/cronFutar.php new file mode 100644 index 00000000..e07a19bb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/cronFutar.php @@ -0,0 +1,43 @@ +array($D))); + if ($body !='') { + echo "Email cím: ".$_toEmail."\n"; + $mail = new PHPMailer(); + $mail->CharSet = 'UTF-8'; + $mail->SetFrom(__SUPPORT_EMAIL_ADDRESS, ''._SITE.''); + $mail->AddReplyTo(__SUPPORT_EMAIL_ADDRESS,'MaYoR Support'); + $mail->AddAddress($_toEmail, $cn); + $mail->Subject = "[MaYoR] Értesítés – ".$cn; + $mail->MsgHTML(emailHead(array( + 'skin/classic/module-naplo/css/hirnok/hirnok.css', + 'skin/classic/module-naplo/css/hirnok/cronFutar.css' + )).$body.emailFoot()); + if(!$mail->Send()) { + echo "PHP Mailer Error: " . $mail->ErrorInfo . "\n"; + } else { + $q = "UPDATE hirnokFeliratkozas SET utolsoEmailDt ='%s' WHERE naploId=%u AND naploTipus='%s' AND userAccount='%s' AND policy='%s'"; + $v = array($_toUser['setDt'],$_data['id'],$_data['tipus'],$_toUser['userAccount'],$_toUser['policy']); + db_query($q,array('modul'=>'naplo_intezmeny','fv'=>'cron','values'=>$v,'result'=>'update')); + echo "Email elküldve: ".$_toEmail." - ".$cn." - ".date('Y-m-d H:i:s')."\n"; + } + + } else { + // echo "Nincs mit küldeni.\n"; + } + } + + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnok-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnok-pre.php new file mode 100644 index 00000000..adc18ddc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnok-pre.php @@ -0,0 +1,53 @@ +strtotime($_SESSION['lastLogin'])) $rDt = $_SESSION['lastLogin']; + else $rDt = getTanitasiNapVissza(2); + $tolDt = readVariable($_POST['tolDt'],'date', + readVariable($_GET['tolDt'], 'date', + $rDt + ) + ); + if (strtotime($tolDt)>strtotime(date('Y-m-d H:i:s'))) $tolDt = date('Y-m-d',strtotime('-10 day')); + + $osztalyId = readVariable($_POST['osztalyId'], 'id'); + if (__NAPLOADMIN === true) { // csak adminnak engedjük kiválasztani - lásd még include + $diakId = readVariable($_POST['diakId'], 'id', readVariable($_GET['diakId'], 'id')); + $tanarId = readVariable($_POST['tanarId'], 'id', readVariable($_GET['tanarId'], 'id')); + $feliratkozott = getHirnokFeliratkozasok(); + if ($diakId==0 && count($feliratkozott['diak'])>0) $diakId = $feliratkozott['diak']; + if ($tanarId==0 && count($feliratkozott['tanar'])>0) $tanarId = $feliratkozott['tanar']; + if ($tanarId==0 && defined('__USERTANARID')) $tanarId = __USERTANARID; + } else { + if (__DIAK===true) { // diák nézet + $diakId = __USERDIAKID; + } elseif (__TANAR ===true) { // tanár nézet + $tanarId = __USERTANARID; + } + } + + $ADAT['hirnokFolyam'] = hirnokWrapper(array('tolDt'=>$tolDt,'diakId'=>$diakId,'tanarId'=>$tanarId)); + $ADAT['tolDt'] = $tolDt; + $ADAT['igDt'] = $igDt = date('Y-m-d'); + + if (__NAPLOADMIN===true) { + $TOOL['vissza'] = array('tipus'=>'vissza','paramName'=>'','icon'=>'bullhorn'); + $TOOL['tanarSelect'] = array('tipus'=>'cella','paramName'=>'tanarId', 'post'=>array('tolDt', 'igDt')); + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post'=>array('tolDt', 'igDt')); + $TOOL['diakSelect'] = array('tipus'=>'cella','paramName'=>'diakId', 'post'=>array('osztalyId','tolDt', 'igDt', 'osztalyId')); + if ($diakId>0)$TOOL['diakLapozo'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array('osztalyId','tolDt', 'igDt', 'osztalyId')); + } + $TOOL['datumTolIgSelect'] = array( + 'tipus' => 'sor', 'title' => '', + 'post'=>array('tolDt','tanarId','osztalyId','tankorId','mkId','diakId','telephely'), + 'tolParamName' => 'tolDt', 'igParamName' => 'igDt', 'hanyNaponta' => 1, + 'override' => true, + 'tolDt' => $_TANEV['kezdesDt'], + 'igDt' => $igDt, + ); + + getToolParameters(); + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnok.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnok.php new file mode 100644 index 00000000..ce3b7f72 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnok.php @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnokFeliratkozas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnokFeliratkozas-pre.php new file mode 100644 index 00000000..d8fb3d33 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnokFeliratkozas-pre.php @@ -0,0 +1,47 @@ +strtotime(date('Y-m-d'))) $tolDt = date('Y-m-d',strtotime('-10 day')); + + $osztalyId = readVariable($_POST['osztalyId'], 'id'); + if (__NAPLOADMIN === true) { // csak adminnak engedjük kiválasztani - lásd még include + if ($action=='hirnokFeliratkozas') { + $S['naploId'] = readVariable($_POST['naploId'],'numeric'); + $S['naploTipus'] = readVariable($_POST['naploTipus'],'string',null,array('tanar','diak')); + $S['email'] = readVariable($_POST['email'],'email'); + $S['hirnokFeliratkozasId'] = readVariable($_POST['hirnokFeliratkozasId'],'numeric'); + if ($S['hirnokFeliratkozasId']>0) delHirnokFeliratkozas($S); + elseif ($S['email']!='') addHirnokFeliratkozas($S); + } + $ADAT['hirnokFeliratkozas'] = $feliratkozott = getHirnokFeliratkozasok(true); +// if ($diakId==0 && count($feliratkozott['diak'])>0) $diakId = $feliratkozott['diak']; +// if ($tanarId==0 && count($feliratkozott['tanar'])>0) $tanarId = $feliratkozott['tanar']; +// if ($tanarId==0 && defined('__USERTANARID')) $tanarId = __USERTANARID; + } else { + if (__DIAK===true) { // diák nézet + szülő? + $diakId = $naploId = __USERDIAKID; + $naploTipus = 'diak'; // szulo??? + } elseif (__TANAR ===true) { // tanár nézet + $tanarId = $naploId = __USERTANARID; + $naploTipus = 'tanar'; + } + if ($action=='hirnokFeliratkozas') { + $S['email'] = readVariable($_POST['email'],'email'); + $S['naploId'] = $naploId; + $S['naploTipus'] = $naploTipus; + + $S['hirnokFeliratkozasId'] = readVariable($_POST['hirnokFeliratkozasId'],'numeric'); + if ($S['hirnokFeliratkozasId']>0) delHirnokFeliratkozas($S); + elseif ($S['email']!='') addHirnokFeliratkozas($S); + } + $ADAT['email'] = ''; // lekérdezhetnénk az objektum e-mail címét később + $ADAT['hirnokFeliratkozas'] = $feliratkozott = getHirnokFeliratkozasok(true); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnokFeliratkozas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnokFeliratkozas.php new file mode 100644 index 00000000..a5c9056b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/hirnok/hirnokFeliratkozas.php @@ -0,0 +1,7 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diak-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diak-pre.php new file mode 100644 index 00000000..6e5f82a2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diak-pre.php @@ -0,0 +1,261 @@ +_DOWNLOADDIR.'/private/naplo/face/'.__TANEV,'filename'=>$diakId.'.jpg')); + } elseif ($action == 'diakNyelvvizsgaFelvesz') { + $M['diakId'] = readVariable($_POST['diakId'],'id'); + $M['targyId'] = readVariable($_POST['targyId'],'id'); + $M['vizsgaSzint'] = readVariable($_POST['vizsgaSzint'],'enum',null,$ADAT['vizsgaSzintek']); + $M['vizsgaTipus'] = readVariable($_POST['vizsgaTipus'],'enum',null,$ADAT['vizsgaTipusok']); + $M['vizsgaIntezmeny'] = readVariable($_POST['vizsgaIntezmeny'],'string'); + $M['vizsgaBizonyitvanySzam'] = readVariable($_POST['vizsgaBizonyitvanySzam'],'string'); + $M['vizsgaDt'] = readVariable($_POST['vizsgaDt'],'date',date('Y-m-d')); + if ($M['targyId']>0) diakNyelvvizsgaFelvesz($M); unset($M); + $M = readVariable($_POST['nyelvvizsgaTorol'],'id'); + diakNyelvvizsgaTorol($M); + } elseif ($action == 'sulixREST') { +/* + require('include/share/net/rest.php'); + //$server = 'mayor1.ulx.hu'; + $server = 'localhost'; + $port = 8888; + + if (isset($_POST['createAccount'])) { + $resource = '/Users/Create'; + $method = 'PUT'; + $params = array( + 'params' => array( + 'sn'=> $ADAT['diakAdat']['viseltCsaladinev'], + 'givenname' => $ADAT['diakAdat']['viseltUtonev'], + 'birth_year' => explode('-', $ADAT['diakAdat']['szuletesiIdo'])[0], + 'birth_month' => explode('-', $ADAT['diakAdat']['szuletesiIdo'])[1], + 'birth_day' => explode('-', $ADAT['diakAdat']['szuletesiIdo'])[2], + 'employeeNumber' => $ADAT['diakAdat']['oId'] + ) + ); + } elseif (isset($_POST['deleteAccount'])) { + $resource = '/Users/Delete/Eduid/'.$ADAT['diakAdat']['oId']; + $method = 'DELETE'; + } + $uri = 'https://'.$server.':'.$port.$resource; + try { + $ret = restRequest($uri, $method, $params); + } catch (Exception $e) { + dump($e->getMessage()); + } + if ($ret['http']['status'] == 200) { + } else { + } +*/ + } + } + } else { + //$ADAT['zaradek'] = array('felvétel' => 1,'átvétel' => 2, 'áthelyezés' => 3, 'beiratkozásra vár' => null); + if (isset($osztalyId)) { + $ADAT['osztaly'] = getOsztalyAdat($osztalyId, $tanev); + $ADAT['zaradek']['felvétel'] = $ZaradekIndex['jogviszony']['megnyitás']['felvétel osztályba']; // 1 helyett --> 67 ??? + } + } // van diakId / nincs diakId + + + if (_MODOSITHAT===true && $action == 'ujDiak') { + $kotelezoParamOk = (isset($_POST['viseltCsaladinev']) && $_POST['viseltCsaladinev'] != ''); + $kotelezoParamOk &= (isset($_POST['kezdoTanev']) && $_POST['kezdoTanev'] != ''); + $kotelezoParamOk &= (isset($_POST['kezdoSzemeszter']) && $_POST['kezdoSzemeszter'] != ''); + $kotelezoParamOk &= ($_POST['felvetelTipus']=='beiratkozásra vár' || (isset($_POST['jogviszonyKezdete']) && $_POST['jogviszonyKezdete'] != '')); + if ($kotelezoParamOk) { + $_POST['zaradek'] = $ADAT['zaradek']; // felülírjuk a post-ot... remek + $_POST['osztaly'] = $ADAT['osztaly']; + $diakId = ujDiak($_POST); + } else { + $_SESSION['alert'][] = 'message:empty_field:(viseltCsaladinev,kezdoTanev,kezdoSzemeszter,jogviszonyKezdete)'; + } + } + + if (isset($diakId)) { + // diák adatainak lekérdezése + $Szulok = getSzulok(); + $ADAT['diakAdat'] = getDiakAdatById($diakId); + $ADAT['diakAdat']['diakNyelvvizsga'] = getDiakNyelvvizsga($diakId); + switch ($ADAT['diakAdat']['statusz']) { + case 'felvételt nyert': + $ADAT['valthatoStatusz'] = array('jogviszonyban van'); + break; + case 'jogviszonya lezárva': + $ADAT['valthatoStatusz'] = array('jogviszonyban van', 'vendégtanuló'); + break; + case 'vendégtanuló': + $ADAT['valthatoStatusz'] = array('jogviszonya lezárva'); + break; + default: + $ADAT['valthatoStatusz'] = array_diff($ADAT['statusz'],array($ADAT['diakAdat']['statusz'],'felvételt nyert')); + break; + } + $ADAT['diakAdat']['anyaNev'] = $Szulok[ $ADAT['diakAdat']['anyaId'] ]['szuleteskoriCsaladinev']? + trim(implode(' ', array( + $Szulok[ $ADAT['diakAdat']['anyaId'] ]['szuleteskoriNevElotag'], + $Szulok[ $ADAT['diakAdat']['anyaId'] ]['szuleteskoriCsaladinev'], + $Szulok[ $ADAT['diakAdat']['anyaId'] ]['szuleteskoriUtonev'] + ))):$Szulok[ $ADAT['diakAdat']['anyaId'] ]['szuloNev']; + $ADAT['diakAdat']['apaNev'] = + trim(implode(' ', array( + $Szulok[ $ADAT['diakAdat']['apaId'] ]['szuleteskoriNevElotag'], + $Szulok[ $ADAT['diakAdat']['apaId'] ]['szuleteskoriCsaladinev'], + $Szulok[ $ADAT['diakAdat']['apaId'] ]['szuleteskoriUtonev'] + ))) . ' - ' . $Szulok[ $ADAT['diakAdat']['apaId'] ]['szuloNev']; + $ADAT['diakAdat']['gondviseloNev'] = $Szulok[ $ADAT['diakAdat']['gondviseloId'] ]['szuleteskoriCsaladinev']? + trim(implode(' ', array( + $Szulok[ $ADAT['diakAdat']['gondviseloId'] ]['szuleteskoriNevElotag'], + $Szulok[ $ADAT['diakAdat']['gondviseloId'] ]['szuleteskoriCsaladinev'], + $Szulok[ $ADAT['diakAdat']['gondviseloId'] ]['szuleteskoriUtonev'] + ))):$Szulok[ $ADAT['diakAdat']['gondviseloId'] ]['szuloNev']; + + $ADAT['diakAdat']['osztaly'] = getDiakOsztalya($diakId,array('tanev'=>$tanev)); + $ADAT['diakAdat']['mindenOsztaly'] = getDiakMindenOsztaly($diakId); + $ADAT['diakJogviszony'] = getDiakJogviszony($diakId); + $ADAT['hozottHianyzas'] = getDiakHozottHianyzas($diakId,array('tanev'=>$tanev)); + $ADAT['diakKepzes'] = getKepzesByDiakId($diakId); + + } + + + $ADAT['osztalyok'] = getOsztalyok($tanev,array('result'=>'assoc', 'minden'=>true)); + $ADAT['nyelviTargyak'] = getTargyByJelleg('nyelv'); + + // ToolBar + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'action' => 'tanevValasztas', 'post' => array('tanev','diakId')); + if (!__DIAK) { + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'tanev' => $tanev, 'post' => array('tanev')); + $TOOL['diakSelect'] = array('tipus'=>'cella', 'tanev'=>$tanev, 'osztalyId' => $osztalyId, + 'statusz' => $ADAT['statusz'], + 'post' => array('tanev','osztalyId') + ); + } + if (isset($osztalyId) || isset($diakId)) { + $TOOL['nyomtatasGomb'] = array('titleConst' => '_NYOMTATAS','tipus'=>'cella', 'url'=>'index.php?page=naplo&sub=nyomtatas&f=diakAdatlap','post' => array('osztalyId','diakId','tanev')); + if (!__DIAK) { + $TOOL['diakLapozo'] = array('tipus'=>'sor', 'tanev'=>$tanev, 'osztalyId' => $osztalyId, + 'statusz' => $ADAT['statusz'], + 'post' => array('tanev','osztalyId') + ); + } + } + if (__NAPLOADMIN === true) { + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=intezmeny&f=diakStatusz'), + 'titleConst' => array('_DIAKSTATUSZ'), + 'post' => array('diakId'), + ); + } + + getToolParameters(); + } // naploadmin / vezetőség / titkárság / tanár + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diak.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diak.php new file mode 100644 index 00000000..b6ca1349 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diak.php @@ -0,0 +1,30 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakExport-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakExport-pre.php new file mode 100644 index 00000000..05d8f5d8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakExport-pre.php @@ -0,0 +1,56 @@ + $attrNev) + $ADAT['fields'][ekezettelen($szulo).ucfirst($attr)] = ucfirst($szulo).' '.kisbetus($attrNev); + $ADAT['fields']['telephelyId'] = 'telephelyId'; + foreach ($ADAT['fields'] as $attr => $attrNev) + if (!is_array($_POST['mezok']) || in_array($attr, $_POST['mezok'])) $ADAT['mezok'][$attr] = $attrNev; + + $ADAT['export'] = diakExport($ADAT); + if ($action == 'diakExport') { + + if (is_array($ADAT['export']) && createFile($ADAT)) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=export&file=diakExport.'.$ADAT['formatum'].'&mimetype='.$ADAT['mime'])); + else echo 'SEMMI: '.__DIAK_EXPORT_FILE; + + } + + + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'paramName' => 'tanev', 'post' => array('osztalyId')); + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post' => array('osztalyId', 'tanev'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($TA['kezdesDt'])), + 'igDt' => $TA['zarasDt'], + ); + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('tanev', 'dt')); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakExport.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakExport.php new file mode 100644 index 00000000..fd1c30f9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakExport.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakFelmentes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakFelmentes-pre.php new file mode 100644 index 00000000..d08aa5f6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakFelmentes-pre.php @@ -0,0 +1,325 @@ +'idonly')); + $ADAT['osztalyId'] = $_POST['osztalyId'] = $osztalyId = $_r[0]; + } + } + } + if ($diakId!='') { + $tolDt = readVariable($_POST['tolDt'],'date',$dt); + $targyId = readVariable($_POST['targyId'],'id'); + $ADAT['diakAdat'] = getDiakAdatById($diakId); + $ADAT['diakTargy'] = getTargyakByDiakId($diakId,array('tolDt'=>$dt,'result'=>'indexed')); + $ADAT['diakTankor'] = getTankorByDiakId($diakId,__TANEV,array('tolDt'=>$dt,'igDt'=>$_TANEV['zarasDt'])); + $ADAT['diakTankorFelmentes'] = getTankorDiakFelmentes($diakId, __TANEV, array('csakId' => true, + 'tolDt' => $_TANEV['kezdesDt'], 'igDt'=>$_TANEV['zarasDt'], 'result'=>'indexed', 'felmentesTipus'=>array('óralátogatás alól','értékelés alól'))); + } + + if (__NAPLOADMIN === true || __VEZETOSEG===true) { + + /* ACTION */ + /* + + 1-es típus a részénél: értékelés alól FM (egész tnév) + záradék + b: záradék + */ + + if ($action=='tipus1' && $targyId!='') { + + $altipus = readVariable($_POST['t1altipus'],'numeric unsigned',null,array(1,2)); + $igDt = readVariable($_POST['igDt'],'date',$_TANEV['zarasDt']); + $iktatoszam = readVariable($_POST['iktatoszam'],'string'); + + if ($altipus=='1') { + // felmentés értékelés alól tolDt-től minden tankörben ahol a tárgy adott + $SQL_fail=false; + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + /* 1. FM rögzítés */ + for($i=0;$i$diakId, 'tankorId'=>$_tankorId, 'tolDt'=>$tolDt, 'igDt'=>$igDt, 'felmentesTipus'=>'értékelés alól','iktatoszam'=>$iktatoszam); + $result = tankorDiakFelmentesFelvesz($FM,$lr); + if ($result===false) $SQL_fail = true; + } + } + /* 2. írjuk be neki az FM bejegyzést */ + //találjuk ki milyen félévekre kell beírnunk: + $q = "SELECT szemeszter,zarasDt FROM szemeszter WHERE zarasDt>='%s' AND tanev=%s"; + $v = array($tolDt,__TANEV); + $SZEMESZTEREK = db_query($q, array('fv'=>'-pre','values'=>$v,'result'=>'indexed','modul'=>'naplo_intezmeny'), $lr); + for ($i=0; $i'-pre','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v), $lr); + } + if ($count==0) { + $JEGY = array(array('targyId'=>$targyId,'zaroJegyId'=>null, 'diakId'=> $diakId, 'jegyTipus'=>'nem értékelhető', 'jegy'=>'1.0', 'tanev'=>__TANEV, 'szemeszter'=>$_szemeszter, 'felev'=>$_szemeszter)); + if (($zaroJegyek=zaroJegyBeiras($JEGY,$lr))===false) { + $_SESSION['alert'][] = 'info:wrong_data:Hiba a jegy rögzítéskor'; + $SQL_fail=true; + } else { + // rögzített zárójegyek idjei... $zaroJegyek + // ezt elmenthetjük az esetleges kapcsolatok megőrzésére + } + } else { + $_SESSION['alert'][] = 'info:wrong_data:A megadott félévre már van rögzítve zárójegye!:'.$_szemeszter; + $SQL_fail=true ; + } + + } // szemeszterek + /* 3. Most már a megfelelő záradékot is rögzíthetjük akár */ + $targyAdat = getTargyById($targyId); + $ZARADEK = array('iktatoszam'=>$iktatoszam,'diakId'=>$diakId, 'dt'=>date('Y-m-d'), 'zaradekIndex'=>$ZaradekIndex['felmentés']['értékelés alól'],'csere'=>array('%tantárgy%'=>$targyAdat['targyNev'])); + if (($zaradekId = zaradekRogzites($ZARADEK,$lr))===false) { + $_SESSION['alert'][] = 'info::Hiba a záradék rögzítésekor!'; + $SQL_fail=true; + } else { + // rögzített záradék idje: $zaradekId + // ezt elmenthetjük az esetleges kapcsolatok megőrzésére + } + if ($SQL_fail===true) db_rollback($lr); + else { + $_SESSION['alert'][] = 'info:success'; + db_commit($lr); + } + db_close($lr); + + } elseif ($altipus=='2') { + // csak záradék rögzítése + $mi = readVariable($_POST['zaradekTxt2'],'string'); + $miatt = readVariable($_POST['zaradekTxt1'],'string'); + $ZARADEK = array('iktatoszam'=>$iktatoszam,'diakId'=>$diakId, 'dt'=>date('Y-m-d'), 'zaradekIndex'=>$ZaradekIndex['felmentés']['értékelés és minősítés alól'],'csere'=>array('%miatt%'=>$miatt,'%mi%'=>$mi)); + if (($zaradekId = zaradekRogzites($ZARADEK,$lr))===false) { + $_SESSION['alert'][] = 'info::Hiba a záradék rögzítésekor!'; + } else { + $_SESSION['alert'][] = 'info:success'; + } + + } + + } elseif ($action=='tipus2' && $tankorId!='') { + + $igDt = readVariable($_POST['igDt'],'date',$_TANEV['zarasDt']); + $nap = readVariable($_POST['nap'],'numeric unsigned'); + $ora = readVariable($_POST['ora'],'numeric unsigned'); + $iktatoszam = readVariable($_POST['iktatoszam'],'string'); + + $ovi = ($_POST['ovi']==='1'); + $forceDel = ($_POST['forceDel']==='1'); + $skipZaradek = ($_POST['skipZaradek']==='1'); + if ($_POST['ovi']==='1') + if (strtotime($tolDt)>strtotime($igDt)) { + $_SESSION['alert'][] = 'info:wrong_data:igDt$diakId, 'tankorId'=>$tankorId, 'tolDt'=>$tolDt, 'igDt'=>$igDt, 'felmentesTipus'=>'óralátogatás alól','nap'=>$nap,'ora'=>$ora,'iktatoszam'=>$iktatoszam); + if ($forceDel===true) $FM['utkozes'] = 'torles'; + $result = tankorDiakFelmentesFelvesz($FM,$lr); + if ($result===false) $SQL_fail = true; + if ($ovi=='1') { + $FM = array('diakId'=>$diakId, 'tankorId'=>$tankorId, 'tolDt'=>$tolDt, 'igDt'=>$igDt, 'felmentesTipus'=>'értékelés alól','iktatoszam'=>$iktatoszam); + if ($forceDel===true) $FM['utkozes'] = 'torles'; + $result = tankorDiakFelmentesFelvesz($FM,$lr); + if ($result===false) $SQL_fail = true; + } + if ($skipZaradek===false) { + $tankorNev = getTankorNevById($tankorId); + $targyAdat = getTargyById((getTankorTargyId($tankorId))); + $targyNev = $targyAdat['targyNev']; + $ZaradekIndex['felmentés'] = ($ovi) ? $ZaradekIndex['felmentés']['óra látogatása alól osztályozóvizsgával'] : $ZaradekIndex['felmentés']['óra látogatása alól']; + if (isset($nap)) $napOraStr[] = ($aHetNapjai[$nap-1]).'i'; + if (isset($ora)) $napOraStr[] = $ora.'.'; + $ZARADEK = array('iktatoszam'=>$iktatoszam,'diakId'=>$diakId, 'dt'=>date('Y-m-d'), 'zaradekIndex'=>$ZaradekIndex['felmentés'],'csere'=>array( + '%tantárgy%'=> "$targyNev ($tankorNev)", + '%ezen óráinak%'=> @implode(' ',$napOraStr), + '%tólDt%'=> $tolDt, + '%igDt%'=> $igDt + )); + if (($zaradekId = zaradekRogzites($ZARADEK,$lr))===false) { + $_SESSION['alert'][] = 'info::Hiba a záradék rögzítésekor!'; + $SQL_fail=true; + } else { + // rögzített záradék idje: $zaradekId (ez nem kell most, kösz) + } + } + + if ($SQL_fail===true) db_rollback($lr); + else db_commit($lr); + db_close($lr); + + } + + + + } elseif ($action=='tipus3' && $targyId!='') { + $iktatoszam = readVariable($_POST['iktatoszam'],'string'); + + $SQL_fail=false; + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + /* 1. léptessük ki a tanköreiből véglegesen */ + for($i=0;$i$tolDt,'igDt'=>null,'diakId'=>$diakId, + 'utkozes'=>'torles', + 'tankorId'=>$_tankorId, + 'MIN_CONTROL'=>false + ); + + // meg kell szüntetnünk a tankörcsoportot a jövőbeli tanévekben is... + //$q = "SELECT DISTINCT tanev FROM szemeszter WHERE kezdesDt>='%s' AND statusz='aktív'"; + //$v = array($tolDt); + //$r = db_query($q, array('fv'=>'tankorDiakTorol/getTanev','modul'=>'naplo_intezmeny','values'=>$v, 'result'=>'idonly'),$lr); + $q = "SELECT count(*) AS db FROM ".__TANEVDBNEV.".`tankorCsoport` WHERE tankorId=%u"; + $erintettTankorCsoport = db_query($q, array('debug'=>false,'fv'=>'-pre/tankorCsoport','modul'=>'naplo','result'=>'value','values'=>array($_tankorId)),$lr); + if ($erintettTankorCsoport > 0) $_SESSION['alert'][] = 'info::A tankör ('.$_tankorId.') a tankörcsoportot/okat elhagyta.'; + + $q = "DELETE FROM ".__TANEVDBNEV.".`tankorCsoport` WHERE tankorId=%u"; + $r = db_query($q, array('debug'=>false,'fv'=>'-pre/tankorCsoport','modul'=>'naplo','values'=>array($_tankorId)),$lr); + + if (tankorDiakTorol($DEL,$lr) === false) { + $_SESSION['alert'][] = 'info:wrong_data:Hiba a tankörből való kiléptetéskor'; + $SQL_fail=true; + } + // a tankorDiakFelmentes táblával ebben az esetben mi legyen? a tankorDiakTorol függvénynek + // azzal is kéne foglalkoznia? - talán igen + } + } + /* 2. írjuk be neki az FM bejegyzést */ + //találjuk ki milyen félévekre kell beírnunk: + $q = "SELECT szemeszter,zarasDt FROM szemeszter WHERE zarasDt>='%s' AND tanev=%s"; + $v = array($tolDt,__TANEV); + $SZEMESZTEREK = db_query($q, array('fv'=>'-pre','values'=>$v,'result'=>'indexed','modul'=>'naplo_intezmeny'), $lr); + for ($i=0; $i'-pre','modul'=>'naplo_intezmeny','result'=>'value','values'=>$v), $lr); + } + if ($count==0) { + $JEGY = array(array('targyId'=>$targyId,'zaroJegyId'=>null, 'diakId'=> $diakId, 'jegyTipus'=>'nem értékelhető', 'jegy'=>'1.0', 'tanev'=>__TANEV, 'szemeszter'=>$_szemeszter, 'felev'=>$_szemeszter)); + if (($zaroJegyek=zaroJegyBeiras($JEGY,$lr))===false) { + $_SESSION['alert'][] = 'info:wrong_data:Hiba a jegy rögzítéskor'; + $SQL_fail=true; + } else { + // rögzített zárójegyek idjei... $zaroJegyek + } + } else { + $_SESSION['alert'][] = 'info:wrong_data:A megadott félévre már van rögzítve zárójegye!:'.$_szemeszter; + $SQL_fail=true ; + } + + } // szemeszterek + /* 3. Most már a megfelelő záradékot is rögzíthetjük akár */ + $targyAdat = getTargyById($targyId); + $ZARADEK = array('iktatoszam'=>$iktatoszam,'diakId'=>$diakId, 'dt'=>date('Y-m-d'), 'zaradekIndex'=>$ZaradekIndex['felmentés']['tárgy tanulása alól'],'csere'=>array('%tantárgyak neve%'=>$targyAdat['targyNev'])); + if (($zaradekId = zaradekRogzites($ZARADEK,$lr))===false) { + $_SESSION['alert'][] = 'info::Hiba a záradék rögzítésekor!'; + $SQL_fail=true; + } else { + // rögzített záradék idje: $zaradekId + } + + if ($SQL_fail===true) db_rollback($lr); + else db_commit($lr); + db_close($lr); + + /* ReReading Data */ + $ADAT['diakAdat'] = getDiakAdatById($diakId); + $ADAT['diakTargy'] = getTargyakByDiakId($diakId,array('tolDt'=>$dt,'result'=>'indexed')); + $ADAT['diakTankor'] = getTankorByDiakId($diakId,__TANEV,array('tolDt'=>$dt)); + + } // action 3 + elseif ($action=="tankorDiakFelmentesTorol") { + $SQL_fail=false; + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + + $DELFMID = readVariable($_POST['DELFM'],'id'); + for ($i=0; $i$DELFMID[$i], 'kiDt'=>$dt), $lr); + $ZARADEK = array('iktatoszam'=>$iktatoszam,'diakId'=>$diakId, 'dt'=>date('Y-m-d'), 'zaradekIndex'=>$ZaradekIndex['felmentés']['törlés'],'csere'=>array('%tankorDiakFelmentesId%'=>$DELFMID[$i],'%dt%'=>$dt)); + if (($zaradekId = zaradekRogzites($ZARADEK,$lr))===false) { + $_SESSION['alert'][] = 'info::Hiba a záradék rögzítésekor!'; + $SQL_fail=true; + } + } + if ($SQL_fail===true) db_rollback($lr); + else db_commit($lr); + db_close($lr); + } + } + /* End of ACTION */ + $ADAT['diakZaradek'] = getDiakZaradekok($diakId, array('tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'])); + $ADAT['tankorDiakFelmentes'] = getTankorDiakFelmentes($diakId, __TANEV,array('csakId' => false, 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], 'result'=>'indexed', 'felmentesTipus'=>array('óralátogatás alól','értékelés alól')) ); + + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post' => array('osztalyId', 'tanev'), + 'paramName' => 'dt', + 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($_TANEV['kezdesDt'])), + 'igDt' => $_TANEV['zarasDt'], + 'post'=>array('osztalyId','diakId') + ); + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('dt')); + $TOOL['diakSelect'] = array('tipus'=>'cella', 'tanev'=>$tanev, 'osztalyId' => $osztalyId, +// 'statusz' => $ADAT['statusz'], + 'post' => array('osztalyId','dt') + ); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=felmentes'), + 'titleConst' => array('_FELMENTES'), 'post' => array('diakId','osztalyId')); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakFelmentes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakFelmentes.php new file mode 100644 index 00000000..5628ebe8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakFelmentes.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakStatusz-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakStatusz-pre.php new file mode 100644 index 00000000..6e8e23b3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakStatusz-pre.php @@ -0,0 +1,117 @@ + array_values($ZaradekIndex['jogviszony megnyitás']), + 'magántanuló' => array($ZaradekIndex['jogviszony változás']['magántanuló']), + 'vendégtanuló' => array(), + 'jogviszonya felfüggesztve' => array($ZaradekIndex['jogviszony változás']['felfüggesztés']), + 'jogviszonya lezárva' => array_values($ZaradekIndex['jogviszony lezárás']) + ); + $ADAT['jogviszonyZaradekok'] = array_merge( + $ADAT['statusz2zaradek']['jogviszonyban van'], + $ADAT['statusz2zaradek']['magántanuló'], + $ADAT['statusz2zaradek']['jogviszonya felfüggesztve'], + $ADAT['statusz2zaradek']['jogviszonya lezárva'] + ); + + if ($action == 'diakAdatModositas') { + $Param = array( + 'diakId' => $diakId, + 'jogviszonyKezdete' => readVariable($_POST['jogviszonyKezdete'], 'date') + ); + //if (isset($Param['jogviszonyKezdete'])) + diakAdatModositas($Param); + } elseif ($action == 'diakJogviszonyTorles') { + $Param = array( + 'diakId' => $diakId, + 'dt' => readVariable($_POST['dt'], 'date'), + 'statusz' => readVariable($_POST['statusz'], 'enum', null, $ADAT['statusz']), + 'zaradekId' => readVariable($_POST['zaradekId'], 'id') + ); + diakJogviszonyBejegyzesTorles($Param); + } elseif ($action == 'diakZaradek') { + $Param = array( + 'diakId' => $diakId, + 'dt' => readVariable($_POST['dt'], 'date'), + 'zaradekIndex' => readVariable($_POST['zaradekIndex'], 'numeric unsigned', null, $ADAT['jogviszonyZaradekok']), + 'zaradekId' => readVariable($_POST['zaradekId'], 'id'), + 'values' => readVariable($_POST['values'], 'string') + ); + $ok = true; + $tmp = explode('%', $Zaradek[ $Param['zaradekIndex'] ]['szoveg']); + $Param['params'] = array(); + for ($i=1; $i < count($tmp); $i = $i+2) $Param['params'][] = $tmp[$i]; + $Param['csere'] = array(); + for ($i = 0; $i < count($Param['params']); $i++) { + $Param['csere'][ '%'.$Param['params'][$i].'%' ] = $Param['values'][$i]; + if ($Param['values'][$i] == '') $ok = false; + } + if ($ok) { + if (zaradekRogzites($Param)) { $_SESSION['alert'][] = 'info:success'; } + } else { + $_SESSION['alert'][] = 'message:empty_field'; + } + } + + $ADAT['diakAdat'] = getDiakAdatById($diakId); + $ADAT['diakStatusz'] = getDiakJogviszony($diakId); + $ADAT['diakZaradekok'] = getDiakZaradekok($diakId, array('result' => 'multiassoc', 'keyfield' => 'dt')); + $ADAT['zaradekok'] = getZaradekok(); + + // záradékok státusz változásokhoz rendelése + foreach ($ADAT['diakStatusz'] as $index => $djAdat) { + if (is_array($ADAT['diakZaradekok'][ $djAdat['dt'] ])) { + foreach ($ADAT['diakZaradekok'][ $djAdat['dt'] ] as $j => $zAdat) { + if (in_array($zAdat['zaradekIndex'], $ADAT['statusz2zaradek'][ $djAdat['statusz'] ])) { + $ADAT['diakStatusz'][$index]['zaradek'] = $zAdat; + unset($ADAT['diakZaradekok'][ $djAdat['dt'] ][$j]); + break; + } + } + } + } + + } else { + + $ADAT['hibas'] = getHibasJogviszony(); + + } + + // ToolBar + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'action' => 'tanevValasztas', 'post' => array('tanev','diakId')); + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'tanev' => $tanev, 'post' => array('tanev')); + $TOOL['diakSelect'] = array('tipus'=>'cella', 'tanev'=>$tanev, 'osztalyId' => $osztalyId, + 'statusz' => $ADAT['statusz'], + 'post' => array('tanev','osztalyId') + ); +// EZ MI?! (maxValue?!) + $TOOL['szamSelect'] = array('tipus' => 'cella', 'title' => 'DIAKIDTITLE', 'minValue' => 1, 'maxValue' => 3000, 'paramName' => 'diakId', 'post' => array('tanev','osztalyId')); +/* $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=intezmeny&f=diak'), + 'titleConst' => array('_DIAKADATLAP'), + 'post' => array('diakId'), + ); +*/ getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakStatusz.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakStatusz.php new file mode 100644 index 00000000..68403bac --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakStatusz.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakSzulo-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakSzulo-pre.php new file mode 100644 index 00000000..f16dc808 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakSzulo-pre.php @@ -0,0 +1,98 @@ + $name) { + if (!isset($ADAT[$attr])) + if ($attr == 'szuletesiEv') $ADAT[$attr] = readVariable($_POST[$attr], 'numeric unsigned', null, array(), '1900<$return && $return<2100'); + else $ADAT[$attr] = readVariable($_POST[$attr], 'sql', null); + } + if (!isset($szuloId)) { + $ujSzuloId = readVariable($_POST['ujSzuloId'], 'numeric unsigned', null); + if (isset($ujSzuloId)) { + $szuloId = szuloHozzarendeles($diakId, $tipus, $ujSzuloId); + } else { + $szuloId = ujSzulo($ADAT, $FIELDS); // ez rendben van, de ajaxnál??? + } + if ($szuloId) $diakAdat[$tipus.'Id'] = $szuloId; + } else { + if (!isset($_POST['semmi']) && isset($_POST['torles'])) { + if (szuloHozzarendelesTorlese($diakId, $tipus)) unset($diakAdat[$tipus.'Id']); + } else { + if (__NAPLOADMIN !== true) unset($ADAT['userAccount']); + szuloAdatModositas($ADAT, $FIELDS); + } + } + + } + + } + // ------------- action ------------------ // + + $Szulok = getSzulok(); + + $TOOL['diakSelect'] = array('tipus'=>'cella', 'post'=>array('szuloId','tipus')); + $TOOL['szuloSelect'] = array('tipus'=>'cella', 'szulok'=>$Szulok, 'post'=>array('')); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakSzulo.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakSzulo.php new file mode 100644 index 00000000..12a53b54 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakSzulo.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankor-pre.php new file mode 100644 index 00000000..f4ef9295 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankor-pre.php @@ -0,0 +1,116 @@ +$_POST['UJtankorId'][$i],'diakId'=>$diakId,'tolDt'=>$refDt,'jelenlet'=>'kötelező','kovetelmeny'=>'jegy'); + tankorDiakFelvesz($_D); + } + for($i=0; $i$_POST['DELtankorId'][$i],'diakId'=>$diakId,'tolDt'=>$refDt); + if ($forceDel===true) { + $_D['utkozes'] = 'torles'; + define('__VEZETOSEG_TOROLHET_HIANYZAST',true); // Hiányzást - adminon kívül - alap helyzetben csak a rögzítő tanár törölhet! + } + $_result = tankorDiakTorol($_D); + if ($_result===true) $_SESSION['alert'][] = 'info:done:'.$_POST['DELtankorId'][$i]; + else $_SESSION['alert'][] = 'alert:rollback:tankorId='.$_POST['DELtankorId'][$i]; + } + for ($i=0; $i$tanev,'tolDt'=>$refDt)); + $ADAT['tankorok']['diake'] = getTankorByDiakId($diakId,$tanev,array('tolDt'=>$refDt,'igDt'=>$refDt)); + /* Óraszámok megállapítása */ + $sum = 0; + if (is_array($ADAT['tankorok']['diake'])) + foreach ($ADAT['tankorok']['diake'] as $_ti => $TA) { + $_tankorId = $TA['tankorId']; + $a = getTankorOraszamByTanev($tanev,$_tankorId); + $ADAT['diakTankorOraszam'][$TA['tankorTipus']] += $a[$_tankorId]; + $sum += $a[$_tankorId]; + $ADAT['tankorok']['diake'][$_ti]['hetiOraszam'] = $a[$_tankorId]; + } + /* --- */ + $ADAT['diakOsszOraszam'] = ($sum); + } + if (is_array($osztalyIdk)) { + for ($i=0; $itrue)); + } + } + +} + + // ------------------------------------------------------------------------- + + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array('diakId','tanev','osztalyId'), + 'paramName' => 'refDt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($TA['kezdesDt'])), + 'igDt' => $TA['zarasDt'], +// 'napTipusok' => array('tanítási nap', 'speciális tanítási nap') + ); + + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'tanev' => $tanev, 'post' => array('tanev','refDt')); + $TOOL['diakSelect'] = array('tipus'=>'cella','paramName'=>'diakId', 'post'=>array('tanev','refDt','osztalyId')); + // $TOOL['tanarSelect'] = array('tipus'=>'sor','paramName'=>'tanarId', 'post'=>array()); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=tankor'), + 'titleConst' => array('_TANKOR'), 'post' => array('tankorId','mkId','targyId')); + + $TOOL['tanevLapozo'] = array('tipus'=>'sor','paramName'=>'tanev', 'post'=>array('diakId'), + 'tanev'=>$tanev); + + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankor.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankor.php new file mode 100644 index 00000000..de5d2785 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankor.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankorJelentkezes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankorJelentkezes-pre.php new file mode 100644 index 00000000..0c6f8821 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankorJelentkezes-pre.php @@ -0,0 +1,113 @@ + $tanev, 'szemeszter'=> $ADAT['szemeszterAdat']['szemeszter'],'tipus' => array('előzetes tárgyválasztás','tárgyválasztás'), 'tolDt' => '', 'igDt' => '', 'return' => 'assoc')); + if (__VEZETOSEG===true || __NAPLOADMIN===true) { + define('__TARGYVALASZTAS',true); define('__MINCONTROL',false); + } else { + if (is_array($IDO) && count($IDO)>0) { + foreach ( $IDO as $idoszakId => $IDATA ) { + if ( strtotime($IDATA['előzetes tárgyválasztás'][0]['tolDt']) <= time() && time()<=strtotime($IDATA['előzetes tárgyválasztás'][0]['igDt'])) { + define('__TARGYVALASZTAS',true); define('__MINCONTROL',false); break; + } elseif ( strtotime($IDATA['tárgyválasztás'][0]['tolDt']) <= time() && time()<=strtotime($IDATA['tárgyválasztás'][0]['igDt'])) { + define('__TARGYVALASZTAS',true); define('__MINCONTROL',true); break; + } else { + // loop(); + } + } + } + } + if (!defined('__TARGYVALASZTAS')) { define('__TARGYVALASZTAS',false); define('__MINCONTROL',false); } + + if (__TARGYVALASZTAS===true) { + + } else { + $_SESSION['alert'][] = 'info:nem_targyvalasztasi_idoszak:'; + } + + /* Képzésre vonatkozó beállítások */ + $ADAT['diakKepzes'] = getKepzesByDiakId($diakId, array('result'=>'assoc','dt'=>$refDt)); + for ($i=0; $i $tanev)); + for($j=0; $j1) $_SESSION['alert'][] = ':multi_evfolyam:'; + $ADAT['kepzesOraszam'][$K['kepzesId']] = getOraszamByKepzes($K['kepzesId'],array('evfolyam'=>$ADAT['diakEvfolyam'][0], 'szemeszter'=>$ADAT['szemeszterAdat']['szemeszter'])); + } + //var_dump($ADAT['kepzesOraszam']['kötelezően választható']['sum']); + //var_dump($ADAT['kepzesOraszam']['szabadon választható']['sum']); + /* Képzés vége */ + + //define('__MODOSITHATO',(( (__NAPLOADMIN || __VEZETOSEG) && ($ADAT['szemeszterAdat']['statusz']=='aktív' || (__FOLYO_TANEV && $tanev==__TANEV))))); + + if ($action=='do' && __TARGYVALASZTAS===true && (__VEZETOSEG===true || __NAPLOADMIN===true || __DIAK===true)) { + foreach($_POST as $pNev => $pErtek) { + if (substr($pNev,0,strlen("UJTANKORID")) == 'UJtankorId') { + $_D = array('tankorId'=>intval(substr($pNev,10)),'diakId'=>$diakId,'tolDt'=> $refDt); + tankorDiakFelvesz($_D); + } elseif (substr($pNev,0,strlen("DELTANKORID")) == 'DELtankorId') { + $_D = array('tankorId'=>intval(substr($pNev,11)),'diakId'=>$diakId,'tolDt'=>$refDt,'MIN_CONTROL'=>__MINCONTROL); + tankorDiakTorol($_D); + } + } + } elseif ($action=='do') { + $_SESSION['alert'][] = 'info:deadline_expired:'; + } + + if ($diakId!='') { + $ADAT['osztalyok'] = $osztalyIdk = getDiakOsztalya($diakId, array('tanev'=>$tanev,'result'=>'csakid')); + $ADAT['tankorok']['diake'] = getTankorByDiakId($diakId,$tanev,array('tolDt'=>$refDt,'igDt'=>$refDt)); + } + $ADAT['tankorBlokkok'] = getTankorBlokkok($tanev); + if ($diakId=='' OR ($diakId!='' && is_array($ADAT['osztalyok']) && count($ADAT['osztalyok'])!=0)) + $ADAT['tankorok']['valaszthato'] = getValaszthatoTankorok($tanev,$ADAT['szemeszterAdat']['szemeszter'], $ADAT['osztalyok']); + if (__DIAK!==true) $TOOL['diakSelect'] = array('tipus'=>'cella','paramName'=>'diakId', 'post'=>array('tanev','szemeszterId','refDt')); + $TOOL['szemeszterSelect'] = array('tipus'=>'cella','paramName'=>'szemeszterId', 'post'=>array('diakId'), + 'tanev'=>$tanev, 'statusz'=>array('aktív')); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=tankor'), + 'titleConst' => array('_TANKOR'), 'post' => array('tankorId','mkId','targyId')); + + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankorJelentkezes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankorJelentkezes.php new file mode 100644 index 00000000..52819ca3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/diakTankorJelentkezes.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/felmentes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/felmentes-pre.php new file mode 100644 index 00000000..3dfae44a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/felmentes-pre.php @@ -0,0 +1,67 @@ +'assoc')); + + if ($osztalyId!='') { + //$targyId = readVariable($_POST['targyId'],'id'); + //$ADAT['diakAdat'] = getDiakAdatById($diakId); + //$ADAT['diakTargy'] = getTargyakByDiakId($diakId,array('tolDt'=>$dt,'result'=>'indexed')); + //$ADAT['diakTankor'] = getTankorByDiakId($diakId,__TANEV,array('tolDt'=>$dt,'igDt'=>$_TANEV['zarasDt'])); + $ADAT['felmentes'] = getFelmentes(array('csakId' => false, + 'osztalyId'=>$osztalyId, + 'tolDt' => $_TANEV['kezdesDt'], 'igDt'=>$_TANEV['zarasDt'], 'result'=>'indexed', 'felmentesTipus'=>array('óralátogatás alól','értékelés alól'))); + } else { + $ADAT['felmentes'] = getFelmentes(array('csakId' => false, + 'tolDt' => $_TANEV['kezdesDt'], 'igDt'=>$_TANEV['zarasDt'], 'result'=>'indexed', 'felmentesTipus'=>array('óralátogatás alól','értékelés alól'))); + } + if (__NAPLOADMIN === true || __VEZETOSEG===true) { + } +/* ------------- */ + $ADAT['diakZaradek'] = getDiakZaradekok($diakId, array('tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'])); + $ADAT['tankorDiakFelmentes'] = getTankorDiakFelmentes($diakId, __TANEV,array('csakId' => false, 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], 'result'=>'indexed', 'felmentesTipus'=>array('óralátogatás alól','értékelés alól')) ); + +/* + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post' => array('osztalyId', 'tanev'), + 'paramName' => 'dt', + 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($_TANEV['kezdesDt'])), + 'igDt' => $_TANEV['zarasDt'], + 'post'=>array('osztalyId','diakId') + ); +*/ + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('dt')); + $TOOL['diakSelect'] = array('tipus'=>'cella', 'tanev'=>$tanev, 'osztalyId' => $osztalyId, +// 'statusz' => $ADAT['statusz'], + 'post' => array('osztalyId','dt') + ); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/felmentes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/felmentes.php new file mode 100644 index 00000000..84bcb21d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/felmentes.php @@ -0,0 +1,11 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/intezmeny-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/intezmeny-pre.php new file mode 100644 index 00000000..46805e9e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/intezmeny-pre.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/intezmeny.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/intezmeny.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepesitesek-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepesitesek-pre.php new file mode 100644 index 00000000..2fc0ba1c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepesitesek-pre.php @@ -0,0 +1,92 @@ + $tAdat) $ADAT['targyIds'][] = $tAdat['targyId']; + $ADAT['tanarok'] = getTanarok(); + foreach ($ADAT['tanarok'] as $idx => $tAdat) $ADAT['tanarIds'][] = $tAdat['tanarId']; + $ADAT['vegzettsegek'] = getEnumField('naplo_intezmeny', 'kepesites', 'vegzettseg'); + $ADAT['fokozatok'] = getEnumField('naplo_intezmeny', 'kepesites', 'fokozat'); + $ADAT['specializaciok'] = getEnumField('naplo_intezmeny', 'kepesites', 'specializacio'); + foreach ($ADAT['kepesitesek'] as $idx => $kAdat) $ADAT['kepesitesIds'][] = $kAdat['kepesitesId']; + + $ADAT['kepesitesId'] = $kepesitesId = readVariable($_POST['kepesitesId'], 'id', null, $ADAT['kepesitesIds']); + if (isset($kepesitesId)) { + + if ($action == 'kepesitesModositas') { + // Alap adatok módosítása + $kepesitesNev = readVariable($_POST['kepesitesNev'], 'string'); + $vegzettseg = readVariable($_POST['vegzettseg'], 'enum', null, $ADAT['vegzettsegek']); + $fokozat = readVariable($_POST['fokozat'], 'enum', null, $ADAT['fokozatok']); + $specializacio = readVariable($_POST['specializacio'], 'enum', null, $ADAT['specializaciok']); + if (isset($kepesitesNev) && isset($vegzettseg) && isset($fokozat) && isset($specializacio)) { + $ok = kepesitesModositas($kepesitesId, $vegzettseg, $fokozat, $specializacio, $kepesitesNev); + if ($ok) $_SESSION['alert'][] = 'info:success'; + } + // Tárgy hozzárendelés + $targyId = readVariable($_POST['targyId'], 'id', null, $ADAT['targyIds']); + if (isset($targyId)) { + $ok = kepesitesTargyHozzarendeles($kepesitesId, $targyId); + if ($ok) $_SESSION['alert'][] = 'info:success'; + } + // Tanár hozzárendelés + $tanarId = readVariable($_POST['tanarId'], 'id', null, $ADAT['tanarIds']); + if (isset($tanarId)) { + $ok = tanarKepesitesHozzarendeles($tanarId, $kepesitesId); + if ($ok) $_SESSION['alert'][] = 'info:success'; + } + } elseif ($action == 'delTargy') { + + $targyId = readVariable($_POST['targyId'], 'id', null, $ADAT['targyIds']); + $ok = kepesitesTargyTorles($kepesitesId, $targyId); + $_JSON = array( + 'result' => ($ok?'success':'fail'), + 'targyId' => $targyId, + 'kepesitesId' => $kepesitesId + ); + + } elseif ($action == 'delTanar') { + + $tanarId = readVariable($_POST['tanarId'], 'id', null, $ADAT['tanarIds']); + $ok = tanarKepesitesTorles($tanarId, $kepesitesId); + $_JSON = array( + 'result' => ($ok?'success':'fail'), + 'tanarId' => $tanarId, + 'kepesitesId' => $kepesitesId + ); + + } + + } elseif ($action == 'ujKepesites') { + $kepesitesNev = readVariable($_POST['kepesitesNev'], 'string'); + $vegzettseg = readVariable($_POST['vegzettseg'], 'enum', null, $ADAT['vegzettsegek']); + $fokozat = readVariable($_POST['fokozat'], 'enum', null, $ADAT['fokozatok']); + $specializacio = readVariable($_POST['specializacio'], 'enum', null, $ADAT['specializaciok']); + if (isset($kepesitesNev) && isset($vegzettseg) && isset($fokozat) && isset($specializacio)) { + $ADAT['kepesitesId'] = $kepesitesId = ujKepesites($vegzettseg, $fokozat, $specializacio, $kepesitesNev); + if ($kepesitesId) $_SESSION['alert'][] = 'info:success'; + } + } + + + $ADAT['kepesitesek'] = getKepesitesek(); + if (isset($kepesitesId)) { + $i=0; + while ($i < count($ADAT['kepesitesek']) && $ADAT['kepesitesek'][$i]['kepesitesId'] != $kepesitesId) $i++; + $ADAT['kepesitesAdat'] = $ADAT['kepesitesek'][$i]; + $ADAT['kepesitesAdat']['targyak'] = getKepesitesTargy($kepesitesId); + $ADAT['kepesitesAdat']['tanarok'] = getKepesitesTanar($kepesitesId); + } + + $TOOL['kepesitesSelect'] = array('tipus'=>'cella', 'paramName'=>'kepesitesId','paramDesc'=>'kepesitesNev','title'=>'KEPESITES','adatok'=>$ADAT['kepesitesek'],'post' => array()); + + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepesitesek.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepesitesek.php new file mode 100644 index 00000000..76b8e11b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepesitesek.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzes-pre.php new file mode 100644 index 00000000..152e8e75 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzes-pre.php @@ -0,0 +1,60 @@ + 'assoc', 'minden'=>true)); + $ADAT['osztalyJelleg'] = getOsztalyJellegek(); + + if ($action == 'ujKepzes') { + $kepzesNev = readVariable($_POST['kepzesNev'], 'string', null); + $tolTanev = readVariable($_POST['tolTanev'], 'numeric unsigned', null); + $osztalyJellegId = readVariable($_POST['osztalyJellegId'], 'id', null); + if (isset($kepzesNev) && isset($tolTanev) && isset($osztalyJellegId)) $kepzesId = ujKepzes($kepzesNev, $tolTanev, $osztalyJellegId); + else $_SESSION['alert'][] = 'message:wrong_data'; + if ($kepzesId) { + $ADAT['kepzesAdat'] = getKepzesAdatById($kepzesId); + } + } elseif ($action == 'kepzesModositas') { + $kepzesNev = readVariable($_POST['kepzesNev'], 'string', null); + $tolTanev = readVariable($_POST['tolTanev'], 'numeric unsigned', null); + $osztalyJellegId = readVariable($_POST['osztalyJellegId'], 'id', null); + $osztalyIds = readVariable($_POST['osztalyId'], 'id'); + $delOsztalyIds = readVariable($_POST['delOsztalyId'], 'id'); + if (isset($kepzesNev) && isset($tolTanev)) + $MODOSIT = array('kepzesId'=>$kepzesId, + 'kepzesNev'=>$kepzesNev, + 'tolTanev'=>$tolTanev, + 'osztalyIds'=>$osztalyIds, + 'delOsztalyIds'=>$delOsztalyIds, + 'osztalyJellegId'=>$osztalyJellegId + ); + if (isset($kepzesNev) && isset($tolTanev)) kepzesModositas($MODOSIT); + else $_SESSION['alert'][] = 'message:wrong_data'; + $ADAT['kepzesAdat'] = getKepzesAdatById($kepzesId); + } elseif ($action == 'kepzesEles') { + $kepzesEles = readVariable($_POST['kepzesEles'],'bool',null); // bool + kepzesEles($kepzesId,(($kepzesEles-1)*(-1))); + $ADAT['kepzesAdat'] = getKepzesAdatById($kepzesId); + } + + $TOOL['kepzesSelect'] = array('tipus'=>'cella', 'post' => array()); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=osztaly','index.php?page=naplo&sub=intezmeny&f=kepzesOraterv'), + 'titleConst' => array('_OSZTALYHOZ','_KEPZESORATERVHEZ'), 'post' => array('kepzesId'), + 'paramName'=>'kepzesId'); // paramName ? + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzes.php new file mode 100644 index 00000000..c55395ac --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzes.php @@ -0,0 +1,14 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzesOraterv-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzesOraterv-pre.php new file mode 100644 index 00000000..f82ea1cf --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzesOraterv-pre.php @@ -0,0 +1,114 @@ + $value) { + if (substr($key,0,6)=='torol_') { + list($_rest, $_tipus, $_targyId) = explode('_',$key); + $_tipus = _unescape(readVariable($_tipus,'strictstring')); + $_targyId = readVariable($_targyId,'id'); + dropKepzesOratervRekord($kepzesId,$_tipus,$_targyId); + $submit_done = true; + } + } + if (!$submit_done) { + list($tipus,$targyId) = explode('_',readVariable($_POST['UJ_targyTipusId'],'string')); + $UJtipus = (substr($tipus,0,1)=='E') ? _unescape(readVariable($tipus,'strictstring')) : ''; + $UJtargyId = readVariable($targyId,'id'); + unset($tipus); unset($targyId); + reset($_POST); + foreach($_POST as $key => $value) { + if (substr($key,0,3) == 'MO_') {//MAX ÓRASZÁM + list($skey, $evfolyamJel) = explode('_',$key); + if (is_numeric($value)) $DDATA['oraszamok'][$evfolyamJel]['max'] = $value; + } elseif (substr($key,0,3) == 'KO_') {//KÖT ÓRASZÁM + list($skey, $evfolyamJel) = explode('_',$key); + if (is_numeric($value)) $DDATA['oraszamok'][$evfolyamJel]['kotelezo'] = $value; + } elseif (substr($key,0,2) == 'T_') {// a tárgyhoz tartozó óraszám + list($tipus, $targyId, $val, $evfolyamJel, $szemeszter) = explode('_',substr($key,2)); + $tipus = _unescape($tipus); + $targyId = readVariable($targyId,'id'); + //if (intval($targyId)==0) $targyId = _unescape($targyId,$ADAT['kepzesOraterv.tipus']); + if ($val=='O') { // heti óraszám + $DDATA['adatok'][$tipus][$targyId][$evfolyamJel][$szemeszter]['oraszam'] = $value; + } elseif ($val=='K') { // követelmény + $DDATA['adatok'][$tipus][$targyId][$evfolyamJel][$szemeszter]['kovetelmeny'] = $value; + } + /* Ha az új tárgyhoz tartozó adatok jönnek, pakoljuk a megfelelő tömbbe */ + } elseif (substr($key,0,4) == 'UJ_O' && $UJtipus!='') {// az új tárgyhoz tartozó óraszám + list($skey1, $skey2, $evfolyamJel, $szemeszter) = explode('_',$key); + if (is_numeric($value)) $DDATA['adatok'][$UJtipus][$UJtargyId][$evfolyamJel][$szemeszter]['oraszam'] = $value; + } elseif (substr($key,0,4) == 'UJ_K' && $UJtipus!='') {// az új tárgyhoz tartozó óraszám + list($skey1, $skey2, $evfolyamJel, $szemeszter) = explode('_',$key); + $DDATA['adatok'][$UJtipus][$UJtargyId][$evfolyamJel][$szemeszter]['kovetelmeny'] = $value; + } + } + modifyKepzesOraterv($DDATA,$kepzesId); + } + + } + + if (isset($kepzesId)) { + $ADAT['kepzesAdat'] = getKepzesAdatById($kepzesId); + $ADAT['oraszam'] = getKepzesOraszam($kepzesId); + $ADAT['oraterv'] = getKepzesOraterv($kepzesId); + $ADAT['targyak'] = getTargyak(); + if ($ADAT['oraterv']==array()) { + // A kiválasztottal azonos osztályJelleghez tartozó képzések listája - ebbe benne van maga a kiválasztott képzés is! + $ADAT['hasonloKepzesek'] = getKepzesByOsztalyJelleg($ADAT['kepzesAdat']['osztalyJellegId']); + } + } + $ADAT['osztalyok'] = getOsztalyok($tanev, array('result' => 'assoc','minden'=>true)); + +// $ADAT['kepzesOraszam'] = getKepzesOraszam($kepzesId); +// $ADAT['kepzesOraterv'] = getKepzesOraterv($kepzesId); + + if (isset($kepzesId) && !is_numeric($ADAT['kepzesAdat']['osztalyJelleg']['osztalyJellegId'])) + $_SESSION['alert'][] = 'error:nincs megadva osztály jelleg!'; + + + + $TOOL['kepzesSelect'] = array('tipus'=>'cella', 'post' => array()); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=osztaly','index.php?page=naplo&sub=intezmeny&f=kepzes'), + 'titleConst' => array('_OSZTALYHOZ','_KEPZESHEZ'), 'post' => array('kepzesId'), + 'paramName'=>'kepzesId'); // paramName ? + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzesOraterv.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzesOraterv.php new file mode 100644 index 00000000..d56f4019 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/kepzesOraterv.php @@ -0,0 +1,12 @@ + 1) putOratervMasolas($ADAT); + putKepzesOraterv($ADAT); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/munkakozosseg-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/munkakozosseg-pre.php new file mode 100644 index 00000000..f8524925 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/munkakozosseg-pre.php @@ -0,0 +1,110 @@ + $mkId, 'tanev' => $__TANEV)); + $ADAT['mkAdat'] = getMunkakozossegById($mkId); + $ADAT['targyak'] = getTargyakByMkId($mkId); + } else { + $TANAROK_INMK = array(); + } + + + $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','munkakozossegek'=>$ADAT['munkakozossegek'],'paramName' => 'mkId', 'post'=>array()); + $TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'post'=>array('mkId')); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/munkakozosseg.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/munkakozosseg.php new file mode 100644 index 00000000..82ca17ea --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/munkakozosseg.php @@ -0,0 +1,27 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/osztaly-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/osztaly-pre.php new file mode 100644 index 00000000..0bff88bf --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/osztaly-pre.php @@ -0,0 +1,324 @@ + $tAdat) $ADAT['telephelyIds'][] = $tAdat['telephelyId']; + $ADAT['osztalyJellegek'] = getOsztalyJellegek(array('result'=>'assoc')); // Ez mondjuk nem intézmény függő... +} + +$ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV, $ADAT['tanevek']); +$ADAT['telephelyId'] = $telephelyId = readVariable($_POST['telephelyId'], 'id', (isset($_POST['telephelyId'])?null:readVariable(__TELEPHELYID,'id')), $ADAT['telephelyIds']); +$ADAT['osztalyId'] = $osztalyId = $_POST['osztalyId'] = readVariable($_POST['osztalyId'], 'id', readVariable($_GET['osztalyId'],'id',null)); +if ($tanev != __TANEV) $TA = getTanevAdat($tanev); +else $TA = $_TANEV; + +/* -------- */ +// Adatok frissítése adatállományból + +if (__NAPLOADMIN && isset($_POST['fileName']) && $_POST['fileName'] != '') { + define('_SKIP_ON_DUP',readVariable($_POST['skipOnDup'],'bool')); + $mezo_elvalaszto = ' '; // "\t" +// $fileName = fileNameNormal($_POST['fileName']); + $fileName = ($_POST['fileName']); // TODO + $ADATOK = array(); + + if (file_exists($fileName)) { + + if (!is_array($_POST['MEZO_LISTA'])) { + + $ADATOK = readUpdateFile($fileName); + if (count($ADATOK) > 0) $attrList = getTableFields('diak', 'naplo_intezmeny',array('beDt','kiDt')); + else $_SESSION['alert'][] = 'message:wrong_data'; + + } else { + + $MEZO_LISTA = $_POST['MEZO_LISTA']; + $KULCS_MEZOK = $_POST['KULCS_MEZOK']; + updateOsztaly($osztalyId, $fileName, $MEZO_LISTA, $KULCS_MEZOK, $mezo_elvalaszto, readVariable($_POST['rovatfej'], 'bool')); + + } // MEZO_LISTA tömb + } else { + $_SESSION['alert'][] = 'message:file_not_found:'.$fileName; + } // A file létezik-e + +} // van file +/* -------- */ + +if (isset($osztalyId)) { + $_evfolyamSzamElteres = getOsztalyEvfolyamSzamElteres($osztalyId); + if ($_evfolyamSzamElteres>0) $_SESSION['alert'][] = 'alert:hibás évfolyam beállítás! Az osztály jellege kevesebb évfolyamot ír elő! (Ellenőrizd, hogy végzés tanéve jól van-e beállítva!)'; + elseif ($_evfolyamSzamElteres<0) $_SESSION['alert'][] = 'info:kevesebb évfolyam alatt végez az osztály, mint az osztály jellege előírná. Ez megszűnő, vagy később belépő osztályoknál megengedett.'; + + if ( in_date_interval(date('Y-m-d'),$TA['elozoZarasDt'],$TA['kovetkezoKezdesDt']) ) { + $dt = $ADAT['dt'] = readVariable($_POST['dt'], 'date', date('Y-m-d')); + } else { + $dt = $ADAT['dt'] = $TA['elozoZarasDt']; + } + $ADAT['osztalyAdat'] = getOsztalyAdat($osztalyId, $tanev); + + if (!($ADAT['osztalyAdat']["kezdoTanev"]<=$tanev && $ADAT['osztalyAdat']["vegzoTanev"]>=$tanev)) $_SESSION['alert'][]='error:hibás tanév beállítás'; + + $diakIds = $ADAT['osztalyAdat']['kepzesIds'] = array(); + if (is_array($ADAT['osztalyAdat']['kepzes'])) + for ($i = 0; $i < count($ADAT['osztalyAdat']['kepzes']); $i++) $ADAT['osztalyAdat']['kepzesIds'][] = $ADAT['osztalyAdat']['kepzes'][$i]['kepzesId']; + $OsztalyNevsor = getDiakokByOsztaly($osztalyId, array('tanev' => $tanev,'felveteltNyertEkkel'=>true)); + + foreach ($OsztalyNevsor as $key => $value) if (is_numeric($key)) { + $diakIds[] = $key; + $ADAT['osztalyNevsor'][$key] = $value; + } + + $ADAT['diakKepzes'] = getKepzesByDiakId($diakIds, array('result' => 'assoc')); + $ADAT['diakok'] = getDiakok(array('tanev' => $tanev)); +} + +if ($action == 'osztalyAdatModositas' && __NAPLOADMIN) { + + $leiras = readVariable($_POST['leiras'], 'string'); + $ofoTanarId = readVariable($_POST['ofoTanarId'], 'id'); + $ofoBeDt = readVariable($_POST['ofoBeDt'], 'date'); + $ofoKiDt = readVariable($_POST['ofoKiDt'], 'date', ''); + $tanarId = readVariable($_POST['tanarId'], 'id'); + $beDt = readVariable($_POST['beDt'], 'date'); + $kiDt = readVariable($_POST['kiDt'], 'date'); + $ADAT['telephelyId'] = readVariable($_POST['telephelyId'], 'id', null, $ADAT['telephelyIds']); + $ADAT['osztalyJellegId'] = readVariable($_POST['osztalyJellegId'],'id',null); + $ADAT['kezdoEvfolyamSorszam'] = readVariable($_POST['kezdoEvfolyamSorszam'],'numeric unsigned', $ADAT['osztalyAdat']['kezdoEvfolyamSorszam'], + range(1, count($ADAT['osztalyAdat']['evfolyamJelek'])-$ADAT['osztalyAdat']['vegzoTanev']+$ADAT['osztalyAdat']['kezdoTanev']) + ); + + $lr = db_connect('naplo_intezmeny'); + // leírás/telephely megadása, módosítása + if ( + (isset($leiras) && $leiras != $ADAT['osztalyAdat']['leiras']) + || (isset($ADAT['telephelyId']) && $ADAT['telephelyId'] != $ADAT['osztalyAdat']['telephelyId']) + || (isset($ADAT['kezdoEvfolyamSorszam']) && $ADAT['kezdoEvfolyamSorszam'] != $ADAT['osztalyAdat']['kezdoEvfolyamSorszam']) + + || (isset($ADAT['osztalyJellegId']) && $ADAT['osztalyJellegId'] != $ADAT['osztalyAdat']['osztalyJellegId']) + ) { + osztalyLeirasTelephelyModositas($osztalyId, $leiras, $ADAT['telephelyId'], $ADAT['osztalyJellegId'], $ADAT['kezdoEvfolyamSorszam'], $ADAT['osztalyAdat'], $lr); + $_SESSION['alert'][] = 'info:done'; + } + // Osztályfőnöki kinevezés lezárása + for ($i = 0; $i < count($ofoTanarId); $i++) { + if ($ofoKiDt[$i] != '') osztalyfonokKileptetes($osztalyId, $ofoTanarId[$i], $ofoBeDt[$i], $ofoKiDt[$i], $lr); + } + // Új osztályfőnök felvétele + if ($tanarId != '' and $beDt != '') osztalyfonokKinevezes($osztalyId, $tanarId, $beDt, $lr); + // A módosított adatok lekérdezése + $ADAT['osztalyAdat'] = getOsztalyAdat($osztalyId, $tanev, $lr); + $ADAT['osztalyAdat']['kepzesIds'] = array(); + if (is_array($ADAT['osztalyAdat']['kepzes'])) + for ($i = 0; $i < count($ADAT['osztalyAdat']['kepzes']); $i++) $ADAT['osztalyAdat']['kepzesIds'][] = $ADAT['osztalyAdat']['kepzes'][$i]['kepzesId']; + db_close($lr); + +} elseif ($action == 'nyekOsztalyLeptetes' && __NAPLOADMIN) { +// EZ MÁR ELAVULT! TODO +/* + $ADAT['ujOsztaly']['tanevek'] = $ADAT['tanevek']; +// $ADAT['ujOsztaly']['kezdoTanev'] = $ADAT['osztalyAdat']['vegzoTanev']+1; +// $ADAT['ujOsztaly']['vegzoTanev'] = readVariable($_POST['vegzoTanev'], 'numeric unsigned', null, $ADAT['tanevek']); +// $ADAT['ujOsztaly']['kezdoEvfolyam'] = $ADAT['osztalyAdat']['kezdoEvfolyam']; + $ADAT['ujOsztaly']['jel'] = readVariable($_POST['osztalyJel'], 'string'); + $ADAT['ujOsztaly']['leiras'] = $ADAT['osztalyAdat']['leiras']; + $ADAT['ujOsztaly']['telephelyId'] = $ADAT['osztalyAdat']['telephelyId']; + $ADAT['ujOsztaly']['osztalyJellegId'] = $ADAT['osztalyJellegek'][ $ADAT['osztalyAdat']['osztalyJellegId'] ]['kovOsztalyJellegId']; // NyEK osztály + // Új osztály létrehozása +// if (isset($ADAT['ujOsztaly']['kezdoTanev']) && isset($ADAT['ujOsztaly']['vegzoTanev']) && isset($ADAT['ujOsztaly']['kezdoEvfolyam']) && isset($ADAT['ujOsztaly']['jel'])) { +// $ujOsztalyId = ujOsztaly($ADAT['ujOsztaly']); +// } + // Képzés hozzárendelés + setOsztalyKepzesei($ujOsztalyId, $ADAT['osztalyAdat']['kepzesIds']); + // A jelen év végétől kinevezzük az osztályfőnököt + if (__TANEV == $ADAT['osztalyAdat']['vegzoTanev']) $beDt = date('Y-m-d', strtotime('next month', strtotime($_TANEV['zarasDt']))); + else $beDt = $ADAT['ujOsztaly']['kezdoTanev'].'-08-01'; + osztalyfonokKinevezes($ujOsztalyId, $ADAT['osztalyAdat']['osztalyfonok']['tanarId'], $beDt); + // osztálytagok felvétele + $diakIds = array_merge($OsztalyNevsor['jogviszonyban van'], $OsztalyNevsor['magántanuló']); + foreach ($diakIds as $diakId) { + ujTag($ujOsztalyId, $diakId, $beDt, null); + osztalyDiakTorol(array('osztalyId' => $osztalyId, 'diakId' => $diakId, 'tolDt' => $beDt, 'igDt' => null, 'zaradekkal' => false)); + } + // TODO: régi osztályhoz rendelt tankörök hozzárendelése az új osztályhoz és átnevezés +*/ +} elseif ($action == 'osztalyJelVegzesModositas' && __NAPLOADMIN) { + // TODO: nem szabadna akárhogy változtatni a tanéveket! Nem lehet vtanev az osztalyJelleg evfolyamok számánál + $ujKezdoTanev = readVariable($_POST['ujKezdoTanev'], 'numeric unsigned'); + $ujVegzoTanev = readVariable( + $_POST['ujVegzoTanev'], 'numeric unsigned',null,array(), + '$return>='.$ujKezdoTanev.' && $return-'.$ujKezdoTanev.'+'.$ADAT['osztalyAdat']['kezdoEvfolyamSorszam'].'<='.count($ADAT['osztalyAdat']['evfolyamJelek']) + ); + $ujOsztalyJel = readVariable($_POST['ujOsztalyJel'], 'string'); + if (is_null($ujKezdoTanev) || is_null($ujVegzoTanev) || $ujOsztalyJel == '') { + $_SESSION['alert'][] = 'message:wrong_data:kezdoTanev='.$_POST['ujKezdoTanev'].', vegzoTanev='.$_POST['ujVegzoTanev'].', jel='.$_POST['ujOsztalyJel']; + } else { + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + $r = array(); + if ($ujVegzoTanev!='') { + $q = "UPDATE osztaly SET vegzoTanev=%u WHERE osztalyId=%u"; + $v = array($ujVegzoTanev,$osztalyId); + $r[] = db_query($q, array('fv' => '', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + } + if ($ujKezdoTanev!='') { + $q = "UPDATE osztalyDiak SET beDt = (SELECT kezdesDt FROM szemeszter WHERE tanev=%u AND szemeszter=1) WHERE osztalyId=%u AND beDt<(SELECT kezdesDt FROM szemeszter WHERE tanev=%u AND szemeszter=1)"; + $v = array($ujKezdoTanev,$osztalyId,$ujKezdoTanev); + $r[] = db_query($q, array('fv' => '', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + + $q = "UPDATE osztaly SET kezdoTanev=%u WHERE osztalyId=%u"; + $v = array($ujKezdoTanev,$osztalyId); + $r[] = db_query($q, array('fv' => '', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + } + + if ($ujOsztalyJel=='') { + $q = "SELECT jel FROM osztaly WHERE osztalyId = %u"; + $v = array($osztalyId); + $osztalyJel = db_query($q, array('fv' => '', 'modul' => 'naplo_intezmeny', 'result' => 'value', 'values' => $v), $lr); + $ujOsztalyJel = $osztalyJel; + } else { + $osztalyJel=$ujOsztalyJel; + $q = "UPDATE osztaly SET jel='%s' WHERE osztalyId=%u"; + $v = array($ujOsztalyJel,$osztalyId); + $r[] = db_query($q, array('fv' => '', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); + } + $OSZTALYADAT = getOsztalyAdat($osztalyId,__TANEV,$lr); + + // az osztalyNaplo.osztalyJelet is módosítani kell, minden érintett tanévben! + $r[] = updateosztalyNev($osztalyId, $lr); + + if (!in_array(false,$r)) db_commit($lr); + else db_rollback($lr); + db_close($lr); + } // ha van kezdoTanev, zaroTanev, jel + +} elseif ($action == 'ujOsztaly' && __NAPLOADMIN) { + + $ADAT['kezdoTanev'] = readVariable($_POST['kezdoTanev'], 'numeric unsigned', null, $ADAT['tanevek']); + $ADAT['vegzoTanev'] = readVariable($_POST['vegzoTanev'], 'numeric unsigned', null, $ADAT['tanevek']); + $ADAT['kezdoEvfolyamSorszam'] = readVariable($_POST['kezdoEvfolyamSorszam'], 'numeric unsigned',1); + $ADAT['jel'] = readVariable($_POST['jel'], 'string'); + $ADAT['leiras'] = readVariable($_POST['leiras'], 'string'); + $ADAT['telephelyId'] = readVariable($_POST['telephelyId'], 'id', null, $ADAT['telephelyIds']); + $ADAT['osztalyJellegId'] = readVariable($_POST['osztalyJellegId'],'id',null); + if (isset($ADAT['osztalyJellegId']) && isset($ADAT['kezdoTanev']) && isset($ADAT['vegzoTanev']) && isset($ADAT['kezdoEvfolyamSorszam']) && isset($ADAT['jel'])) { + $osztalyId = $ADAT['osztalyId'] = ujOsztaly($ADAT); + if ($osztalyId) { + $ADAT['osztalyAdat'] = getOsztalyAdat($osztalyId, $tanev); + $diakIds = $ADAT['osztalyAdat']['kepzesIds'] = array(); + if (is_array($ADAT['osztalyAdat']['kepzes'])) + for ($i = 0; $i < count($ADAT['osztalyAdat']['kepzes']); $i++) $ADAT['osztalyAdat']['kepzesIds'][] = $ADAT['osztalyAdat']['kepzes'][$i]['kepzesId']; + $ADAT['diakok'] = getDiakok(array('tanev' => $tanev)); + } + } else { + $_SESSION['alert'][] = 'message:empty_field:'."${ADAT['kezdoTanev']}, ${ADAT['vegzoTanev']}, ${ADAT['kezdoEvfolyamSorszam']}, ${ADAT['jel']}"; + } +} elseif ($action == 'osztalyNevsor' && (__NAPLOADMIN || __VEZETOSEG || _TITKARSAG)) { + $kepzesMod = array(); + if (is_array($_POST['diakKepzes'])) foreach ($_POST['diakKepzes'] as $index => $kepzes) { + list($_diakId,$kepzesId) = explode('/', $kepzes); + // kirakjuk az osztályhoz nem tartozó képzéseit is - hogy könnyebb legyen kezelni... + if (in_array($_diakId, $diakIds)) { + $kepzesMod[$kepzesId][] = $_diakId; + } + } + diakKepzesModositas($diakIds, $kepzesMod, $dt); + $ADAT['diakKepzes'] = getKepzesByDiakId($diakIds, array('result' => 'assoc')); +} elseif ($action == 'ujTag' && (__NAPLOADMIN || __VEZETOSEG || __TITKARSAG)) { + $diakId = readVariable($_POST['diakId'], 'id'); + $beDt = readVariable($_POST['beDt'], 'date'); + $kiDt = readVariable($_POST['kiDt'], 'date'); + if (isset($diakId) && isset($beDt)) { + if (ujTag($osztalyId, $diakId, $beDt, $kiDt)) { + $OsztalyNevsor = getDiakokByOsztaly($osztalyId, array('tanev' => $tanev,'felveteltNyertEkkel'=>true)); + foreach ($OsztalyNevsor as $key => $value) if (is_numeric($key)) { + $ADAT['osztalyNevsor'][$key] = $value; + } + $diakIds = array_keys($ADAT['osztalyNevsor']); + } + } +} elseif ($action == 'tagTorles' && __NAPLOADMIN) { + $elozoTanev = getTanevAdat(intval(__TANEV)-1); $elozoTanevZarasTime = strtotime($elozoTanev['zarasDt']); + $PARAM['diakId'] = readVariable($_POST['diakId'], 'id'); +// $PARAM['tolDt'] = readVariable($_POST['tolDt'], 'date', null, array(), 'strtotime($return) > '.$elozoTanevZarasTime); + $PARAM['tolDt'] = readVariable($_POST['tolDt'], 'date'); + $PARAM['igDt'] = readVariable($_POST['igDt'], 'date', null, array(), 'strtotime('."'${PARAM['tolDt']}'".') < strtotime($return)'); + $PARAM['osztalyId'] = $ADAT['osztalyId']; + $PARAM['zaradekkal'] = false; + if (isset($PARAM['osztalyId']) && isset($PARAM['diakId']) && isset($PARAM['tolDt'])) { + if (osztalyDiakTorol($PARAM)) { + $OsztalyNevsor = getDiakokByOsztaly($osztalyId, array('tanev' => $tanev,'felveteltNyertEkkel'=>true)); + foreach ($OsztalyNevsor as $key => $value) if (is_numeric($key)) { + $ADAT['osztalyNevsor'][$key] = $value; + } + $diakIds = array_keys($ADAT['osztalyNevsor']); + } + } else { $_SESSION['alert'][] = 'message:empty_field'; } +} elseif ($action == 'osztalyTorles' && __NAPLOADMIN) { + if (osztalyTorles($osztalyId)) { + unset($osztalyId); + $ADAT['osztalyAdat'] = array(); + } +} + +/* ------------------------------------------------- */ +/* REFRESH */ + +if (isset($osztalyId)) { + $ADAT['osztalyAdat'] = getOsztalyAdat($osztalyId, $tanev); + $diakIds = $ADAT['osztalyAdat']['kepzesIds'] = array(); + if (is_array($ADAT['osztalyAdat']['kepzes'])) + for ($i = 0; $i < count($ADAT['osztalyAdat']['kepzes']); $i++) $ADAT['osztalyAdat']['kepzesIds'][] = $ADAT['osztalyAdat']['kepzes'][$i]['kepzesId']; + $OsztalyNevsor = getDiakokByOsztaly($osztalyId, array('tanev' => $tanev,'felveteltNyertEkkel'=>true)); + $ADAT['osztalyNevsor'] = array(); + foreach ($OsztalyNevsor as $key => $value) if (is_numeric($key)) { + $diakIds[] = $key; + $ADAT['osztalyNevsor'][$key] = $value; + $ADAT['osztalyNevsor'][$key]['diakNaploSorszam'] = getDiakNaploSorszam($key,$tanev,$osztalyId); + } + $ADAT['diakKepzes'] = getKepzesByDiakId($diakIds, array('result' => 'assoc')); + $ADAT['diakok'] = getDiakok(array('tanev' => $tanev)); + + for ($_ev = $ADAT['osztalyAdat']['kezdoTanev']; $_ev<=$ADAT['osztalyAdat']['vegzoTanev']; $_ev++) { + $ADAT['osztalyJelek'][$_ev] = getOsztalyJel($osztalyId,$_ev,$ADAT['osztalyAdat']); + } +} + +// írjuk ezt felül, nekünk minden eddigi ofő bejegyzésre szükségünk van +if (isset($osztalyId)) $ADAT['osztalyAdat']['osztalyfonokok'] = getOsztalyfonokok($osztalyId); + +$TOOL['tanevSelect'] = array('tipus'=>'cella','paramName' => 'tanev', 'tervezett' => true, 'action' => 'tanevValtas', 'post'=>array('telephelyId')); +$TOOL['telephelySelect'] = array('tipus'=>'cella','paramName' => 'telephelyId', 'post' => array('tanev','dt')); +$TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post'=>array('tanev','telephelyId','dt'), 'telephelyId' => $telephelyId); +$TOOL['datumSelect'] = array('tipus'=>'sor','paramName'=>'dt','tolDt'=>$TA['elozoZarasDt'],'igDt'=>$TA['kovetkezoKezdesDt'],'override'=>true,'post'=>array('tanev','telephelyId','osztalyId')); +$TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=kepzes'), + 'titleConst' => array('_KEPZES'), 'post' => array(''), + 'paramName'=>'kepzesId'); // paramName ? + +getToolParameters(); + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/osztaly.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/osztaly.php new file mode 100644 index 00000000..c4f0ca80 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/osztaly.php @@ -0,0 +1,40 @@ +=$ADAT['tanev'])) { + + putOsztalyAdatokForm($ADAT); + + if ($ADAT['osztalyJellegek'][ $ADAT['osztalyAdat']['osztalyJellegId'] ]['kovOsztalyJellegId'] != 0) { // NyEK évfolyam + putOsztalyLeptetes($ADAT); + } + if (is_array($ADAT['osztalyNevsor'])) { + putOsztalyNevsor($ADAT); + putTagTorlesForm($ADAT); + } + putUjTagForm($ADAT); + + if (__NAPLOADMIN) { + if ($fileName == '') { + putFileSelectForm('naplo_intezmeny:diak',array('osztalyId','tanev')); + } elseif ($MEZO_LISTA == '') { + if (count($ADATOK) > 0) + putFieldSelectForm($fileName, $ADATOK, $attrList, 'naplo_intezmeny:diak',array('osztalyId','tanev')); + else + echo 'NINCS ADAT!'; + } else { + echo 'Adatfeldolgozás kész.'; + } + // osztalyTorlesForm($ADAT['osztalyId']); + } + } elseif (__NAPLOADMIN) { + putUjOsztalyForm($ADAT); + } + + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/szulo-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/szulo-pre.php new file mode 100644 index 00000000..a54ad8aa --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/szulo-pre.php @@ -0,0 +1,15 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/szulo.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/szulo.php new file mode 100644 index 00000000..25b61d7f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/szulo.php @@ -0,0 +1,24 @@ +'."\n"; + $SEL = array($value => ' selected="selected" '); + echo ''."\n"; + for ($i = 0; $i < count($Szulok['szuloIds']); $i++) { + $szuloId = $Szulok['szuloIds'][$i]; + echo ''."\n"; + } + echo ''."\n"; + formEnd(); + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tanar-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tanar-pre.php new file mode 100644 index 00000000..daa02fef --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tanar-pre.php @@ -0,0 +1,108 @@ +_DOWNLOADDIR.'/private/naplo/face/tanar/','filename'=>$tanarId.'.jpg')); + } elseif (isset($_POST['fileName']) && $_POST['fileName'] != '') { + + $mezo_elvalaszto = ' '; + $fileName = fileNameNormal($_POST['fileName']); + $ADATOK = array(); + if (file_exists($fileName)) { + + if (!is_array($_POST['MEZO_LISTA'])) { + + $ADATOK = readUpdateFile($fileName); + if (count($ADATOK) > 0) $attrList = getTableFields('tanar', 'naplo_intezmeny', $extraAttrs = array()); + else $_SESSION['alert'][] = 'message:wrong_data'; + + } else { + + $MEZO_LISTA = $_POST['MEZO_LISTA']; + $KULCS_MEZOK = $_POST['KULCS_MEZOK']; + updateTable('tanar', $fileName, $MEZO_LISTA, $KULCS_MEZOK, $mezo_elvalaszto, $_POST['rovatfej']); + + } // MEZO_LISTA tömb + } else { + $_SESSION['alert'][] = 'message:file_not_found:'.$fileName; + } // A file létezik-e + + } // van file + + if ($action == 'ujTanar') { + $kotelezoParamOk = (isset($_POST['viseltCsaladinev']) && $_POST['viseltCsaladinev'] != ''); + $kotelezoParamOk &= (isset($_POST['beDt']) && $_POST['beDt'] != ''); + if ($kotelezoParamOk) { + $tanarId = ujTanar($_POST); + if ($tanarId) list($ADAT['tanarAdat']) = getTanarAdatById($tanarId); + } else { + $_SESSION['alert'][] = 'message:empty_field:(viseltCsaladinev,beDt)'; + } + } + if (isset($tanarId)) { + + $ADAT['tanarId'] = $tanarId; + $ADAT['kepesitesek'] = getKepesitesek(); + foreach ($ADAT['kepesitesek'] as $idx => $kAdat) $ADAT['kepesitesIds'][] = $kAdat['kepesitesId']; + $ADAT['besorolasok'] = getEnumField('naplo_intezmeny', 'tanar', 'besorolas'); + $ADAT['vegzettsegek'] = getEnumField('naplo_intezmeny', 'kepesites', 'vegzettseg'); + $ADAT['fokozatok'] = getEnumField('naplo_intezmeny', 'kepesites', 'fokozat'); + $ADAT['specializaciok'] = getEnumField('naplo_intezmeny', 'kepesites', 'specializacio'); + $ADAT['statuszok'] = getEnumField('naplo_intezmeny', 'tanar', 'statusz'); + + if ( + $action == 'tanarAlapadatModositas' || + $action == 'tanarSzuletesiAdatModositas' || + $action == 'tanarJogviszonyModositas' + ) { + + $ok = tanarAdatModositas($_POST); + + } elseif ($action == 'tanarKepesitesModositas') { + $addKepesitesId = readVariable($_POST['addKepesitesId'], 'id',null, $ADAT['kepesitesIds']); + if (isset($addKepesitesId)) { + tanarKepesitesHozzarendeles($tanarId, $addKepesitesId); + } else { + $vegzettseg = readVariable($_POST['vegzettseg'], 'enum', null, $ADAT['vegzettsegek']); + $fokozat = readVariable($_POST['fokozat'], 'enum', null, $ADAT['fokozatok']); + $specializacio = readVariable($_POST['specializacio'], 'enum', null, $ADAT['specializaciok']); + $kepesitesNev = readVariable($_POST['kepesitesNev'], 'string'); + if (isset($vegzettseg) && isset($fokozat) && isset($specializacio) && isset($kepesitesNev)) { + $kepesitesId = ujKepesites($vegzettseg, $fokozat, $specializacio, $kepesitesNev); + if ($kepesitesId !== false) tanarKepesitesHozzarendeles($tanarId, $kepesitesId); + } else { + $_SESSION['alert'][] = 'message:wrong_data:'.implode(',', array($vegzettseg, $fokozat, $specializacio, $kepesitesNev)); + } + } + } + list($ADAT['tanarAdat']) = getTanarAdatById($tanarId); + $ADAT['tanarAdat']['kepesites'] = getTanarKepesites($tanarId); + + + } + + // ToolBar + // $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post'=>array()); + $TOOL['tanarSelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'beDt' => '1900-01-01', 'kiDt' => date('Y-m-d'), 'összes'=>true, 'override'=> true, 'post'=>array('mkId')); + getToolParameters(); + + + } // naploadmin / vezetőség + + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tanar.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tanar.php new file mode 100644 index 00000000..604f1d48 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tanar.php @@ -0,0 +1,27 @@ + 0) + putFieldSelectForm($fileName, $ADATOK, $attrList, 'naplo_intezmeny:tanar',array('mkId','tanev')); + else + echo 'NINCS ADAT!'; + } else { + echo 'Adatfeldolgozás kész.'; + } + } + + +?> 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 new file mode 100644 index 00000000..d6c92121 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php @@ -0,0 +1,219 @@ +$ADAT['tanev'])); + if ($erintettHianyzasDb>0) $_SESSION['alert'][] = 'info:db_hianyzas_tipus_modositas:'.$erintettHianyzasDb; + } + } + break; + case 'tankorTargyModositas': + $ADAT['targyIds'] = getTargyakByMkId($mkId, array('result'=>'idonly')); + $ADAT['ujTargyId'] = readVariable($_POST['ujTargyId'], 'id', null, $ADAT['targyIds']); + if (isset($ADAT['ujTargyId']) && isset($tankorId) && $targyId != $ADAT['ujTargyId']) { + if (tankorTargyModositas($ADAT)) $_SESSION['alert'][] = 'info:success:tankorTargyModositas'; + } + break; + case 'tankorTorol': + if ($tankorId != '') { + $biztosTorol = readVariable($_POST['biztosTorol'],'id',null); + if ($biztosTorol=='1') { + tankorTorol($tankorId); + unset($tankorId); + } else { + $_SESSION['alert'][] = 'info:not_changed'; + } + } + break; + case 'setTankorNev': + if ($tankorId != '') { + $tagokAlapjan = readVariable($_POST['setTankorNevTagokAlapjan'],'bool',false); + if ($tagokAlapjan) { + setTankorNevByDiakok($tankorId); + } else { + setTankorNev($tankorId); + $_SESSION['alert'][] = 'info:not_changed'; + } + } + break; + case 'tankorLezar': + if ($tankorId != '') { + $biztosTorol = readVariable($_POST['biztosLezar'],'id',null); + $lezarDt = readVariable($_POST['lezarDt'],'date',null); + if ($biztosTorol=='1' && !is_null($lezarDt)) { + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); + + $v = array($lezarDt, $tankorId); + + // tanár kiléptet + $q = "UPDATE tankorTanar SET kiDt=('%s' - INTERVAL 1 DAY) WHERE tankorId=%u"; + $r[] = db_query($q, array('fv'=>'tankorTanarLezar', 'values'=>$v), $lr); + // diákok kiléptet + $q = "UPDATE tankorDiak SET kiDt=('%s' - INTERVAL 1 DAY) WHERE tankorId=%u"; + $r[] = db_query($q, array('fv'=>'tankorDiakLezar', 'values'=>$v), $lr); + // tankör szemeszter kiléptet + $q = "DELETE tankorSzemeszter.* FROM tankorSzemeszter LEFT JOIN szemeszter USING (tanev,szemeszter) WHERE kezdesDt>'%s' AND tankorId=%u"; + $r[] = db_query($q, array('fv'=>'tankorDiakLezar', 'values'=>$v), $lr); + +// $r[] = false; + + // órarendióra lezár (minden tanev adatbázisában, ami aktív + $q = "SELECT distinct tanev FROM szemeszter WHERE statusz='aktív'"; + $_tanevek = db_query($q, array('fv'=>'tankorDiakLezar', 'result'=>'idonly'), $lr); + for ($i=0; $i 'vegzosOrarendLezaras', 'values' => $v),$lr); + + // A lezárás dátuma után végződő bejegyzáések igDt-inek beállítása + $q = "UPDATE $_tanevDb.orarendiOra LEFT JOIN $_tanevDb.orarendiOraTankor USING (tanarId,osztalyJel,targyJel) SET igDt=('%s' - INTERVAL 1 DAY) + WHERE igDt > '%s' AND tankorId = %u"; + $v = array($lezarDt,$lezarDt,$tankorId); + $r[] = db_query($q, array('fv' => 'vegzosOrarendLezarads', 'values' => $v),$lr); + + // óra elmarad + $q = "SELECT oraId FROM $_tanevDb.ora WHERE tankorId=%u AND dt>='%s' AND tipus NOT IN ('elmarad','elmarad máskor')"; + $v = array($tankorId,$lezarDt); + $_oraIdk = db_query($q, array('fv'=>'tankorDiakLezar', 'result'=>'idonly', 'values'=>$v), $lr); + for ($j=0; $j'tankorDiakLezar', 'values'=>$v), $lr); + } + + if (in_array(false,$r)) db_rollback($lr); + else db_commit($lr); + + db_close($lr); + + //unset($tankorId); + } else { + $_SESSION['alert'][] = 'info:not_changed'; + } + } + break; + } + } + + if (isset($tankorId) && $tankorId != '' && $tankorId !== false) { + // force all variables to refresh! + //$TANKORADAT = getTankorById($tankorId); + $TANKORADAT = getTankorAdat($tankorId,$tanev); + $TANKORADAT = $TANKORADAT[$tankorId]; + $ADAT['targyId'] = $targyId = $TANKORADAT[0]['targyId']; + $TSZEMESZTEREK = getTankorSzemeszterei($tankorId); + $TOSZTALYOK = getTankorOsztalyai($tankorId, array('result' => 'assoc')); + $TARGYADAT = getTargyById($targyId); + $ADAT['mkId'] = $mkId=$TARGYADAT['mkId']; + } elseif ($targyId != '') { + $TARGYADAT = getTargyById($targyId); + if ($mkId == '') $mkId=$TARGYADAT['mkId']; + } + + if (defined('__TANEV')) $__TANEV = __TANEV; else $__TANEV = ''; + if (isset($targyId) && $targyId!='') { + $TANAROK = getTanarok(array('targyId' => $targyId, 'tanev' => $__TANEV)); + } + if (isset($mkId) && $mkId != '') { + // csak konkrét tárgy esetén veszünk fel tankört... + //$TANAROK = getTanarok(array('mkId' => $mkId, 'tanev' => $__TANEV)); + $MKADAT = getMunkakozossegById($mkId); + $ADAT['targyak'] = getTargyak(array('mkId' => $mkId)); + } else { + // csak konkrét tárgy esetén veszünk fel tankört... + //$TANAROK = getTanarok(); + } + + $TOPOST['tanev'] = $tanev; + $TOPOST['mkId'] = $mkId; + $TOPOST['targyId'] = $targyId; + $TOPOST['osztalyok'] = $TOSZTALYOK; + $TOPOST['szemeszterek'] = $TSZEMESZTEREK; + $TOPOST['tankorTipusId'] = $_POST['tankorTipusId']; + $TOPOST['tankorId'] = $tankorId; + $TOPOST['tankoradat'] = $TANKORADAT[0]; + if ($tankorId!='') { + $TOPOST['tankortanar'] = getTankorTanaraiByInterval($tankorId,array('tanev'=>$tanev,'result'=>'nevsor')); + $TOPOST['tankorcsoport']['idk'] = getTankorCsoportTankoreiByTankorId($tankorId); + $TOPOST['tankorcsoport']['adat'] = getTankorAdatByIds($TOPOST['tankorcsoport']['idk']); + } elseif ($TOPOST['tankorTipusId']!='') { + $TOPOST['tankoradat']['tankorTipusId'] = $TOPOST['tankorTipusId']; // hozzáírjuk ezt is + $TOPOST['tankoradat']['kovetelmeny'] = $_POST['kovetelmeny']; // hozzáírjuk ezt is + $TOPOST['tankoradat']['tipus'] = $_POST['tipus']; // hozzáírjuk ezt is + $TOPOST['osztalyok'][0]['osztalyId'] = $_POST['osztalyId']; // hozzáírjuk ezt is + } + $OSZTALYOK = getOsztalyok($tanev); + + $ADAT['tankorTipusok'] = getTankorTipusok(); + $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! + + if ($tanev != '') $SZEMESZTEREK = getSzemeszterek(array('filter' => array("tanev>=$tanev",'tanev<='.($tanev+7)))); + + + $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', '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['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', + 'index.php?page=naplo&sub=intezmeny&f=tankorTanar'), + 'titleConst' => array('_TANKORDIAK'), 'post' => array('tanev'), + 'paramName'=>'tankorId'); + $TOOL['tanevLapozo'] = array('tipus' => 'sor', 'paramName' => 'tanev', + 'post' => array('mkId', 'targyId', 'tankorId'), 'tanev' => $tanev); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor.php new file mode 100644 index 00000000..998fafec --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor.php @@ -0,0 +1,20 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorDiak-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorDiak-pre.php new file mode 100644 index 00000000..70e5df7b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorDiak-pre.php @@ -0,0 +1,162 @@ + $tanev, 'tipus' => array('tankörnévsor módosítás'), 'tolDt' => $dt, 'igDt' => $dt)); + $modositasiIdoszak = (is_array($ret) && count($ret) > 0); + + $ADAT['diakSelected']=$_POST['diaktorol']; + + if ($tanev!=__TANEV) $TA = getTanevAdat($tanev); else $TA = $_TANEV; + + $ADAT['tanev'] = $tanev; + + /* Dátumok */ + if (isset($_POST['refDt']) && $_POST['refDt'] != '') $refDt = $_POST['refDt']; + elseif (time()$tanev,'result'=>'nevsor')); + $tanarIds = array(); + for ($i = 0; $i < count($ADAT['tankor']['tanarai']); $i++) + if ($tankorId == $ADAT['tankor']['tanarai'][$i]['tankorId']) + $tanarIds[] = $ADAT['tankor']['tanarai'][$i]['tanarId']; + define('__TANARA',(__TANAR && in_array(__USERTANARID, $tanarIds))); + if ( + $_TANEV['statusz'] == 'aktív' + && ( + __NAPLOADMIN || __VEZETOSEG + || ( + $modositasiIdoszak + && ( __TANARA ) + ) + ) + ) define('__MODOSITHATO', true); + else define('__MODOSITHATO', false); + } // van tankör + if (defined('__MODOSITHATO') && __MODOSITHATO) { + switch ($action) { + case 'tankorUjDiak': + if ($_POST['diakId'] != '') + tankorDiakFelvesz($_POST); + break; + case 'tankorUjDiakMulti': + if ($_POST['diakId'] != '') + for ($i=0; $i false, 'result' => 'id')); + $ADAT['tankor']['szemeszterei'] = getTankorSzemeszterei($tankorId); + // !!! Ez az aktuális státuszt és osztály tagságot nézi csak... + // $ADAT['diakok'] = getDiakokByOsztalyId( $ADAT['tankor']['osztalyai'], array('tanev'=>$tanev,'result'=>'assoc')); + // !!! Így a $ADAT['refDt'] szerinti névsort kérdezzük le, megfelelő jogviszony státusszal! + $ADAT['diakok'] = array(); $statuszLista = array('jogviszonyban van', 'magántanuló'); + foreach ($ADAT['tankor']['osztalyai'] as $_osztalyId) { + $tmp = getDiakokByOsztaly($_osztalyId, array('tolDt' => $ADAT['refDt'], 'igDt' => $ADAT['refDt'], 'statusz' => $statuszLista)); + foreach ($statuszLista as $statusz) + foreach ($tmp[$statusz] as $_diakId) + $ADAT['diakok'][$_osztalyId][] = array( + 'diakId' => $_diakId, 'diakNev' => $tmp[$_diakId]['diakNev'], 'beDt' => $tmp[$_diakId]['beDt'], + 'kiDt' => $tmp[$_diakId]['kiDt'], 'statusz' => $statusz + ); + } + $ADAT['diakok']['vendegTanulok'] = getDiakok(array('tolDt' => $ADAT['refDt'], 'igDt' => $ADAT['refDt'], 'statusz' => array('vendégtanuló'))); + foreach($ADAT['diakok'] as $_o=>$_D) for ($i=0; $i__TANEV)); + $ADAT['diakKepzes'] = getKepzesByDiakId($DIAKIDK, array('result'=>'assoc','dt'=>$ADAT['refDt'])); + $ADAT['diakAdat'] = getDiakAdatById($DIAKIDK,array('result'=>'assoc','keyfield'=>'diakId')); + $ADAT['osztaly'] = getOsztalyok($tanev,array('result'=>'assoc')); + } + // ------------------------------------------------------------------------- + $TOOL['tanevSelect'] = array('tipus'=>'cella','paramName' => 'tanev', + 'tervezett'=>true, + 'post'=>array('mkId','targyId','tankorId','dt')); + $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post'=>array('tanev','dt')); + $TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'post'=>array('mkId','tanev','dt')); + $TOOL['tankorSelect'] = array('tipus'=>'cella','paramName'=>'tankorId', 'post'=>array('tanev','mkId','targyId','dt','refDt')); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=tankor'), + 'titleConst' => array('_TANKOR'), 'post' => array('tankorId','mkId','targyId','dt','tanev')); + + $TOOL['tanevLapozo'] = array('tipus'=>'sor','paramName'=>'tanev', 'post'=>array('mkId','targyId','tankorId','dt'), + 'tanev'=>$tanev); + // megj: ha nincs munkaterv, akkor a selectben nem lesz kiválasztva semmi... + $TOOL['datumSelect'] = array( + 'tipus'=>'sor', + 'paramName' => 'refDt', + 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($TA['kezdesDt'])), + 'igDt' => $TA['zarasDt'], +// 'napTipusok' => array('tanítási nap', 'speciális tanítási nap'), + 'post'=>array('mkId','targyId','tankorId','tanev') + ); + + + getToolParameters(); + + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorDiak.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorDiak.php new file mode 100644 index 00000000..e2b054df --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorDiak.php @@ -0,0 +1,17 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorLetszam-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorLetszam-pre.php new file mode 100644 index 00000000..fce99fcb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorLetszam-pre.php @@ -0,0 +1,101 @@ +false)); + } elseif (isset($osztalyId)) { + $ADAT['tankorok'] = getTankorByOsztalyId($osztalyId, $tanev, array('tanarral' => true)); + } elseif (isset($tanarId)) { + $ADAT['tankorok'] = getTankorByTanarId($tanarId, $tanev, + array('csakId' => false, 'tolDt' => '', 'igDt' => '', 'tanarral' => true) + ); + } else { + // ez kicsit sokáig tart sajnos + $ADAT['tankorok'] = getTankorByTanev($tanev); + } + $lr = db_connect('naplo_intezmeny'); + + for ($i=0; $i$ADAT['refDt']), $lr ); + if ($ADAT['osztalyonkent']==1 && $ADAT['tankorok'][$i]['letszam']!=0) $ADAT['tankorok'][$i]['letszamOsztaly'] = getTankorLetszamOsztalyonkent($_tankorId, array('tanev'=>$tanev,'refDt'=>$ADAT['refDt']), $lr ); + //$ADAT['tankorok'][$i]['osztalyai'] = getTankorOsztalyaiByTanev($_tankorId, $tanev, array('result' => 'id', 'tagokAlapjan' => true)); + $ADAT['tankorok'][$i]['tanarai'] = getTankorTanarai($_tankorId, $lr); + } + + db_close($lr); + + //$ADAT['osztaly'] = getOsztalyok($tanev,array('result'=>'assoc')); + // ------------------------------------------------------------------------- + $TOOL['tanevSelect'] = array('tipus'=>'cella','paramName' => 'tanev', + 'tervezett'=>false, + 'post'=>array('mkId','targyId','tankorId','dt')); + $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post'=>array('tanev','dt')); + $TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'post'=>array('mkId','tanev','dt')); +// $TOOL['tankorSelect'] = array('tipus'=>'cella','paramName'=>'tankorId', 'post'=>array('tanev','mkId','targyId','dt')); +// $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=tankor'), +// 'titleConst' => array('_TANKOR'), 'post' => array('tankorId','mkId','targyId','dt','tanev')); + + $TOOL['tanevLapozo'] = array('tipus'=>'sor','paramName'=>'tanev', 'post'=>array('mkId','targyId','tankorId','dt'), + 'tanev'=>$tanev,'tervezett'=>false); + + // megj: ha nincs munkaterv, akkor a selectben nem lesz kiválasztva semmi... + $TOOL['datumSelect'] = array( + 'tipus'=>'sor', + 'paramName' => 'refDt', + 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime($TA['kezdesDt'])), + 'igDt' => $TA['zarasDt'], +// 'napTipusok' => array('tanítási nap', 'speciális tanítási nap'), + 'post'=>array('mkId','targyId','tankorId','tanev') + ); + getToolParameters(); + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorLetszam.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorLetszam.php new file mode 100644 index 00000000..a1e7e6ef --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorLetszam.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorSzemeszter-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorSzemeszter-pre.php new file mode 100644 index 00000000..d2131894 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorSzemeszter-pre.php @@ -0,0 +1,122 @@ + true)); + } elseif (isset($tanarId)) { + $TANKOROK = getTankorByTanarId($tanarId, $tanev, + array('csakId' => false, 'tolDt' => '', 'igDt' => '', 'tanarral' => true) + ); + } + + // kiegészítő: tankorSzemeszter tábla és szemeszterek lekérdezése + if (is_array($TANKOROK)) { + + $tankorIds = array(); + for ($i = 0; $i < count($TANKOROK); $i++) $tankorIds[] = $TANKOROK[$i]['tankorId']; + $tankorSzemeszterek = getTankorSzemeszterek($tankorIds); + $tankorSzemeszter = array(); + foreach ($tankorSzemeszterek as $tankorId => $tankorAdat) { + for ($i = 0; $i < count($tankorAdat); $i++) { + $tankorSzemeszter[$tankorId][$tankorAdat[$i]['tanev']][$tankorAdat[$i]['szemeszter']] = $tankorAdat[$i]; + } + } + + $ADAT['tankorSzemeszter'] = $tankorSzemeszter; + + $ADAT['szemeszterek'] = $Szemeszterek = getSzemeszterek_spec($tanev-1); + + + // -------- action ------------ // + if ($action == 'tankorSzemeszter') { + if (is_array($_POST['T'])) { + $T = $_POST['T']; + $M = array(); + for ($i = 0; $i < count($T); $i++) { + list($tankorId, $szTanev, $szSzemeszter) = explode('/', $T[$i]); + $name = 'O_'.$tankorId.'_'.$szTanev.'_'.$szSzemeszter; + // Ha kötelezővé akarjuk tenni az óraszám megadását: + // if (isset($_POST[$name]) && $_POST[$name] != '') $M[] = array( +//if (isset($_POST[$name]) && $_POST[$name] != '') $oraszam = readVariable($_POST[$name],'string'); // numeric? + $oraszam = readVariable($_POST[$name], 'float unsigned', 0); +// else $oraszam = 0; + $M[] = array( + 'tankorId' => $tankorId, + 'tanev' => $szTanev, + 'szemeszter' => $szSzemeszter, + 'oraszam' => $oraszam + ); + } + + $tankorNevek = array(); + for ($i = 0; $i < count($TANKOROK); $i++) + $tankorNevek[$TANKOROK[$i]['tankorId']] = $TANKOROK[$i]['tankorNev']; + if (tankorSzemeszterModositas($M, $tankorSzemeszter, $tankorNevek, $Szemeszterek, $TA['zarasDt'])) { + // tankor szemesztereinek újraolvasása + $tankorSzemeszterek = getTankorSzemeszterek($tankorIds); + $tankorSzemeszter = array(); + foreach ($tankorSzemeszterek as $tankorId => $tankorAdat) { + for ($i = 0; $i < count($tankorAdat); $i++) { + $tankorSzemeszter[$tankorId][$tankorAdat[$i]['tanev']][$tankorAdat[$i]['szemeszter']] = $tankorAdat[$i]; + } + } + $ADAT['tankorSzemeszter'] = $tankorSzemeszter; + + } + } + } + + // -------- action ------------ // + + $ADAT['tankorok'] = $TANKOROK; + if (is_array($ADAT['tankorok'])) { + for($i=0; $i'cella','paramName' => 'tanev', + 'tervezett'=>true, + 'post'=>array('mkId','targyId','tankorId') + ); + $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post'=>array('tanev')); + $TOOL['tanarSelect'] = array('tipus'=>'sor','paramName'=>'tanarId', 'post'=>array('tanev')); + $TOOL['osztalySelect'] = array('tipus'=>'sor','paramName'=>'osztalyId', 'post'=>array('tanev')); + getToolParameters(); + + } // NAPLOADMIN +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorSzemeszter.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorSzemeszter.php new file mode 100644 index 00000000..c9b5209a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorSzemeszter.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanar-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanar-pre.php new file mode 100644 index 00000000..19fa11ba --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanar-pre.php @@ -0,0 +1,114 @@ + $value) if (substr($name, 0, 2) == 'TA') { + $_tankorId = substr($name, 2); + $tankorTanarIds[$_tankorId] = $value; + } + + if (__NAPLOADMIN===true || __VEZETOSEG===true) { + switch ($action) { + case 'tankorTanarAssoc': + if (isset($tanev)) + tankorTanarFelvesz($tankorIds, $tankorTanarIds, $TA, $refDt, $igDt); + break; + case 'tankorTanarTorol': + if ($kuuk == $_GET['kuuk']) { + list($_tankorId,$_tanarId,$_beDt,$_kiDt) = explode('|',readVariable($_GET['tt'],'string')); + tankorTanarTorol($_tankorId,$_tanarId,$_beDt,$_kiDt); + } + break; + case 'tankorTanarJavit': + if ($kuuk == $_GET['kuuk']) { + list($_tankorId,$_tanarId,$_beDt,$_kiDt) = explode('|',readVariable($_GET['tt'],'string')); + tankorTanarJavit($_tankorId,$_tanarId,$_beDt,$refDt); + } + break; + } + } + + if (isset($ADAT['mkId'])) { + if (!isset($tankorId)) { + $ADAT['tanarok'] = getTanarok(array('mkId' => $ADAT['mkId'], 'tanev' => $tanev)); + $ADAT['tankorok'] = getTankorByMkId($ADAT['mkId'], $tanev, array('datumKenyszeritessel' => true, 'tolDt' => $refDt, 'igDt' => $refDt)); + } else { + $ADAT['tanarok'] = getTanarok(array('targyId' => $ADAT['tankorAdat']['targyId'], 'tanev' => $tanev)); + $ADAT['tankorok'] = getTankorByMkId( + $ADAT['mkId'], $tanev, array('filter' => array("tankor.tankorId=$tankorId"), 'datumKenyszeritessel' => true, 'tolDt' => $refDt, 'igDt' => $refDt) + ); + } + } + if (is_array($ADAT['tankorok'])) { + for($i=0; $i 'cella', 'paramName' => 'tanev', + 'tervezett' => true, 'post' => array('mkId','targyId','tankorId'), 'get'=>array() + ); + $TOOL['munkakozossegSelect'] = array('tipus' => 'cella', 'paramName' => 'mkId', 'post' => array('tanev','refDt'), 'get'=>array()); + $TOOL['tankorSelect'] = array('tipus' => 'cella', 'paramName' => 'tankorId', 'post' => array('tanev','mkId','targyId','refDt'), 'get'=>array()); + $TOOL['datumSelect'] = array( + 'override' => true, + 'tipus' => 'sor', 'paramName' => 'refDt', 'hanyNaponta' => 1, + 'tolDt' => $tolDt, 'igDt' => $TA['zarasDt'], 'post' => array('tanev','mkId','targyId','tankorId'), + ); + + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanar.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanar.php new file mode 100644 index 00000000..b8ce04ec --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanar.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles-pre.php new file mode 100644 index 00000000..3b5f5133 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles-pre.php @@ -0,0 +1,64 @@ + getOsztalyok(), + 'munkakozossegek' => getMunkakozossegek(), + 'tanarok' => getTanarok(), + 'targyak' => getTargyak(), + + 'osztalyIds'=>readVariable($_POST['osztalyIds'],'id',array()), + 'mkIds'=>readVariable($_POST['mkIds'],'id',array()), + 'tanarNelkuliTankorok' => readVariable($_POST['tanarNelkuliTankorok'],'bool'), + 'tanarIds'=>readVariable($_POST['tanarIds'],'id',array()), + 'targyIds'=>readVariable($_POST['targyIds'],'id',array()), + ); + foreach ($ADAT['szuro']['targyak'] as $idx => $tAdat) $ADAT['targyAdat'][ $tAdat['targyId'] ] = $tAdat; + + // A szűrőben beállítottnak megefelő tankörök lekérése + $ADAT['tankorok'] = getTankorokBySzuro($ADAT['szuro']); + $ADAT['szuro']['tankorTargyIds'] = array(); + foreach ($ADAT['tankorok'] as $ids => $tAdat) + if (!in_array($tAdat['targyId'], $ADAT['szuro']['tankorTargyIds'])) + $ADAT['szuro']['tankorTargyIds'][] = $tAdat['targyId']; + $ADAT['tanarok'] = getTanarokBySzuro($ADAT['szuro']); + // stat + $ADAT['keszTankorDb'] = 0; + foreach ($ADAT['tankorok'] as $tAdat) if (is_array($tAdat['tanarIds']) && count($tAdat['tanarIds'])>0) $ADAT['keszTankorDb']++; + $ADAT['tankorStat'] = getTankorStat(); + + if ($action == 'tankorTanarFelvesz') { + + $tankorId = readVariable($_POST['tankorId'],'id'); + $tanarId = readVariable($_POST['tanarId'],'id'); + $_JSON = array( + 'post' => $_POST, + 'result' => tankorTanarModosit($tankorId, $tanarId, array('tanev'=>__TANEV)) + ); + + } elseif ($action == 'tankorTanarTorol') { + + $_tankorId = readVariable($_POST['tankorId'],'id'); + $_tanarId = readVariable($_POST['tanarId'],'id'); + tankorTanarTorol($_tankorId,$_tanarId,array('tanev'=>$tanev)); + + $_JSON = array( + 'post' => $_POST, + ); + } + +//dump($ADAT['tanarok']); + + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles.php new file mode 100644 index 00000000..5b19149a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles.php @@ -0,0 +1,10 @@ +0) putTankorTanarMatrix($ADAT); +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tantargyFelosztas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tantargyFelosztas.php new file mode 100644 index 00000000..d8124253 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tantargyFelosztas.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/terem-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/terem-pre.php new file mode 100644 index 00000000..3afa9ce2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/terem-pre.php @@ -0,0 +1,45 @@ + 'assoc', 'keyfield' => 'telephelyId')); + $ADAT['telephelyIds'] = array_keys($ADAT['telephelyAdat']); + $ADAT['telephelyId'] = $telephelyId = readVariable($_GET['telephelyId'], 'id', readVariable( + $_POST['telephelyId'], 'id', (isset($_POST['telephelyId'])?null:readVariable(__TELEPHELYID,'id')), $ADAT['telephelyIds'] + ), $ADAT['telephelyId']); + $ADAT['teremAdat'] = getTermek(array('result' => 'assoc', 'keyfield' => 'teremId')); + $ADAT['teremIds'] = array_keys($ADAT['teremAdat']); + $ADAT['teremTipusok'] = getSetField('naplo_intezmeny','terem','tipus'); + $ADAT['teremId'] = readVariable($_POST['teremId'], 'id', readVariable($_GET['teremId'], 'id', null, $ADAT['teremIds']), $ADAT['teremIds']); + + if ($action == 'teremAdatModositas' || $action=='ujTerem') { + + $D['teremId'] = $ADAT['teremId']; + $D['leiras'] = readVariable($_POST['leiras'], 'string'); + $D['ferohely'] = readVariable($_POST['ferohely'], 'numeric unsigned'); + $D['tipus'] = readVariable($_POST['tipus'], 'enum', $ADAT['teremTipusok']); + $D['telephelyId'] = readVariable($_POST['telephelyId'], 'id', readVariable($_GET['telephelyId'], 'id', null, $ADAT['telephelyIds']), $ADAT['telephelyIds']); +//echo '
    '; var_dump($ADAT['teremIds']); echo '
    '; + + teremAdatModositas($D,($action=='ujTerem')); + + unset($ADAT['teremId']); + } + + $ADAT['teremAdat'] = getTermek(array('result' => 'assoc', 'keyfield' => 'teremId', 'telephelyId' => $telephelyId)); + + $TOOL['telephelySelect'] = array('tipus'=>'cella','paramName' => 'telephelyId', 'post' => array('tanev')); + if ($ADAT['teremId']!='' || $ADAT['teremId']!='') { + $TOOL['vissza']['icon'] = 'arrow-left'; + } + getToolParameters(); + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/terem.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/terem.php new file mode 100644 index 00000000..207141cb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/terem.php @@ -0,0 +1,13 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tovabbkepzes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tovabbkepzes-pre.php new file mode 100644 index 00000000..f2eacf29 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tovabbkepzes-pre.php @@ -0,0 +1,112 @@ +\n"; + + $tanev = $ADAT['tanev'] = readVariable($_POST['tanev'],'numeric',__TANEV); + + if (__TANAR) $tanarId = __USERTANARID; + if (__VEZETOSEG || __NAPLOADMIN) define('__MODOSITHAT',true); + else define('__MODOSITHAT',false); + +/* ------------------------------------------------- */ + if (__MODOSITHAT) { + if ($action=='modTanarTovabbkepzesForduloDt') { + $_tanarId = readVariable($_POST['tanarId'],'id'); + $_forduloDt = readVariable($_POST['forduloDt'],'date'); + $_JSON['result'] = true; + $_JSON['tanarId'] = $_tanarId; + $_JSON['forduloDt'] = $_dt; + $_JSON['result'] = updateTanarAdat($_tanarId,array('tovabbkepzesForduloDt'=>$_forduloDt)); + } elseif ($action=='ujTovabbkepzes') { + $ADAT['tovabbkepzoIntezmenyId'] = readVariable($_POST['tovabbkepzoIntezmenyId'],'id',null); + if (is_null($ADAT['tovabbkepzoIntezmenyId'])) { + $UJINTEZMENY['intezmenyRovidNev'] = readVariable($_POST['intezmenyRovidNev'],'string',null); + $UJINTEZMENY['intezmenyNev'] = readVariable($_POST['intezmenyNev'],'string',null); + if ($UJINTEZMENY['intezmenyRovidNev']!='' && $UJINTEZMENY['intezmenyNev']!='') $ADAT['tovabbkepzoIntezmenyId'] = ujTovabbkepzoIntezmeny($UJINTEZMENY); + } + if ($ADAT['tovabbkepzoIntezmenyId']>0) { + $ADAT['tovabbkepzesNev'] = readVariable($_POST['tovabbkepzesNev'],'string',null); + $ADAT['oraszam'] = intval(readVariable($_POST['oraszam'],'numeric unsigned',null)); + $ADAT['kategoria'] = readVariable($_POST['kategoria'],'string',null); + $ADAT['akkreditalt'] = ($ADAT['kategoria']=='egyéb') ? 0:1; + ujTovabbkepzes($ADAT); + } + } elseif ($action=='modTovabbkepzes') { + $MOD = readVariable($_POST['tovabbkepzesId'],'id',null); + for ($i=0; $i0 && $ADAT['tanarId']>0) + ujTovabbkepzesTanar($ADAT); + $MOD = readVariable($_POST['tovabbkepzesTanar'],'string',null); + if (is_array($MOD) && count($MOD)>0) { + for ($i=0;$i'tovabbkepzesForduloDt','összes'=>true) + ); + $ADAT['tanarTovabbkepzesCiklus'] = getTanarTovabbkepzesCiklus(); + $ADAT['keretOsszeg'] = getKeretosszeg($ADAT['tanev']); + $ADAT['tovabbkepzesFolyamat']=getTanarTovabbkepzesFolyamat(); + $TOOL['tanevSelect'] = array('tipus'=>'cella', 'action' => 'tanevValasztas', 'post' => array(), 'tervezett' => true); + getToolParameters(); +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tovabbkepzes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tovabbkepzes.php new file mode 100644 index 00000000..160d944b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tovabbkepzes.php @@ -0,0 +1,12 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/valtas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/valtas-pre.php new file mode 100644 index 00000000..99ece06d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/valtas-pre.php @@ -0,0 +1,58 @@ + $tAdat) $telephelyIds[] = $tAdat['telephelyId']; + $tanev = readVariable($_POST['tanev'], 'id', defined('__TANEV') ? __TANEV : null, $Tanevek); + $telephelyId = readVariable($_POST['telephelyId'], 'id', defined('__TELEPHELYID') ? __TELEPHELYID : null, $telephelyIds); + if ($action == 'tanevValasztas') { + if (isset($tanev) && $tanev !== __TANEV) { + if (updateSessionTanev($tanev)) { + header('Location: '.location('index.php?page=naplo&sub=intezmeny&f=valtas')); + } + } + } elseif ($action == 'telephelyValasztas') { + if (isset($telephelyId) && $telephelyId != __TELEPHELYID) { + if (updateSessionTelephelyId($telephelyId)) { + header('Location: '.location('index.php?page=naplo&sub=intezmeny&f=valtas')); + } + } + } + } + $ADAT['tanarok'] = getTanarok(array('extraAttrs'=>'titulus','telephelyId'=>__TELEPHELYID)); + $lr = db_connect('naplo_intezmeny'); + for($i=0; $i__TANEV,'csakId'=>true),$lr); + $ADAT['tanarMunkakozosseg'][$_tanarId] = getVezetettMunkakozossegByTanarId($_tanarId,array('result'=>'assoc'),$lr); + } + $ADAT['osztalyok'] = getOsztalyok(__TANEV,array('result'=>'assoc'),$lr); + db_close($lr); + + $TOOL['intezmenySelect'] = array('tipus'=>'cella', 'action' => 'intezmenyValasztas', 'post' => array()); + $TOOL['telephelySelect'] = array('tipus'=>'cella', 'action' => 'telephelyValasztas', 'post' => array()); + $TOOL['tanevSelect'] = array('tipus'=>'cella', 'action' => 'tanevValasztas', 'post' => array()); + + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/valtas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/valtas.php new file mode 100644 index 00000000..3d15f4de --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/valtas.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/verseny-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/verseny-pre.php new file mode 100644 index 00000000..e0554b55 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/verseny-pre.php @@ -0,0 +1,54 @@ + $tAdat) $telephelyIds[] = $tAdat['telephelyId']; + $tanev = readVariable($_POST['tanev'], 'id', defined('__TANEV') ? __TANEV : null, $Tanevek); + $telephelyId = readVariable($_POST['telephelyId'], 'id', defined('__TELEPHELYID') ? __TELEPHELYID : null, $telephelyIds); + if ($action == 'tanevValasztas') { + if (isset($tanev) && $tanev !== __TANEV) { + if (updateSessionTanev($tanev)) { + header('Location: '.location('index.php?page=naplo&sub=intezmeny&f=valtas')); + } + } + } elseif ($action == 'telephelyValasztas') { + if (isset($telephelyId) && $telephelyId != __TELEPHELYID) { + if (updateSessionTelephelyId($telephelyId)) { + header('Location: '.location('index.php?page=naplo&sub=intezmeny&f=valtas')); + } + } + } + } + + $TOOL['intezmenySelect'] = array('tipus'=>'cella', 'action' => 'intezmenyValasztas', 'post' => array()); + $TOOL['telephelySelect'] = array('tipus'=>'cella', 'action' => 'telephelyValasztas', 'post' => array()); + $TOOL['tanevSelect'] = array('tipus'=>'cella', 'action' => 'tanevValasztas', 'post' => array()); + + getToolParameters(); +*/ +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/verseny.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/verseny.php new file mode 100644 index 00000000..71d8dd36 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/verseny.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/zaradek-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/zaradek-pre.php new file mode 100644 index 00000000..f03fbf46 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/zaradek-pre.php @@ -0,0 +1,76 @@ + $val) { + list($akt, $zaradekId) = explode('-',$key); + if ($akt == 'del') zaradekTorles($zaradekId); + } + + } + if (isset($diakId)) { + $diakZaradekok = getDiakZaradekok($diakId); + if ($diakZaradekok) $ADAT['diakZaradekok'] = $diakZaradekok; + } + + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('dt')); + $TOOL['diakSelect'] = array('tipus' => 'cella', 'paramName' => 'diakId', 'post' => array('osztalyId','dt'), + 'statusz' => array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + ); + $TOOL['datumSelect'] = array( + 'tipus'=>'sor', 'post'=>array('tanarId', 'diakId', 'osztalyId', 'tankorId'), + 'paramName' => 'dt', 'hanyNaponta' => 1, +// 'tolDt' => date('Y-m-d', strtotime('-1 month', strtotime($_TANEV['kezdesDt']))), + 'tolDt' => $_TANEV['elozoZarasDt'], + 'igDt' => $_TANEV['kovetkezoKezdesDt'], + 'override' => true + ); + if (isset($diakId) && isset($dt)) + $TOOL['zaradekSelect'] = array('tipus' => 'sor', 'paramName' => 'zaradekIndex', 'post' => array('osztalyId', 'diakId', 'dt')); + + + getToolParameters(); + + } diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/zaradek.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/zaradek.php new file mode 100644 index 00000000..cb55caaa --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/zaradek.php @@ -0,0 +1,11 @@ + 0) { + putDiakZaradekok($ADAT); + } diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/esemenyAdmin-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/esemenyAdmin-pre.php new file mode 100644 index 00000000..a74a12e3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/esemenyAdmin-pre.php @@ -0,0 +1,83 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/esemenyAdmin.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/esemenyAdmin.php new file mode 100644 index 00000000..8dbc95c0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/esemenyAdmin.php @@ -0,0 +1,21 @@ +'._ESEMENYMINTAK.''; + echo '
    '; + putKosziEsemenyek($ADAT); + + if (is_numeric($ADAT['kosziEsemenyId'])) { + putKosziPont($ADAT); + + echo '

    '._ESEMENYEK_TANEVBEN.'

    '; + echo '
    '; + putUjKoszi($ADAT); + putKoszi($ADAT); + } else { + putUjKosziEsemeny($ADAT); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/koszi-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/koszi-pre.php new file mode 100644 index 00000000..8fc1264f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/koszi-pre.php @@ -0,0 +1,49 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/koszi.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/koszi.php new file mode 100644 index 00000000..01c7f1c7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/koszi.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/kosziAdmin-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/kosziAdmin-pre.php new file mode 100644 index 00000000..4ad1d537 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/kosziAdmin-pre.php @@ -0,0 +1,93 @@ +__USERDIAKID,'tanarId'=>__USERTANARID,'kosziadmin'=>__KOSZIADMIN)); + $ADAT['diak'] = getDiakok(array('result'=>'assoc')); + + +// -------------------------------------------- + $ADAT['kosziEsemenyTipusok'] = getEnumField('naplo_intezmeny', 'kosziEsemeny', 'kosziEsemenyTipus'); + $ADAT['kosziPontTipusok'] = getEnumField('naplo_intezmeny', 'kosziPont', 'kosziPontTipus'); + $ADAT['kosziIgazolok'] = getEnumField('naplo', 'koszi', 'kosziIgazolo'); + + $ADAT['kosziId'] = readVariable($_POST['kosziId'],'id'); + $ADAT['kosziEsemenyId'] = readVariable($_POST['kosziEsemenyId'], 'id'); + + if ($action=='ujKosziDiak') { + + $P['kosziId'] = readVariable($_POST['kosziId'],'id'); + $P['kosziPontId'] = readVariable($_POST['kosziPontId'],'id') ; + $P['diakId'] = __USERDIAKID; + + if (isset($P['kosziPontId']) && isset($P['kosziId'])) + $result = ujKosziDiak($P); + + } + + $ADAT['koszi'] = getKosziLista(); // tanev + $ADAT['kosziDiakLista'] = getKosziDiakLista(__USERDIAKID); + + if (is_numeric($ADAT['kosziId'])) { + $ADAT['kosziEsemenyId'] = getKosziEsemenyIdByKosziId($ADAT['kosziId']); // template Id - t lekérdezzük a valós esemény által. (béna az elnevezés!!!) + } + + if (is_numeric($ADAT['kosziEsemenyId'])) { + $ADAT['kosziPont'] = getKosziPont($ADAT['kosziEsemenyId']); + } + + +/* + $ADAT['tanarok'] = getTanarok(); + $ADAT['osztalyok'] = getOsztalyok(); + $ADAT['diakok'] = getDiakok(); +*/ + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/kosziAdmin.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/kosziAdmin.php new file mode 100644 index 00000000..8c0bbae1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/koszi/kosziAdmin.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/naplo-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/naplo-pre.php new file mode 100644 index 00000000..85dfa076 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/naplo-pre.php @@ -0,0 +1,22 @@ + 'sor', 'post' => array(), 'action' => 'intezmenyValasztas'); + + getToolParameters(); + if (__TANAR) $beirasiAdatok['beiratlan'] = getBeirasiAdatok(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/naplo.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/naplo.php new file mode 100644 index 00000000..0d3fc41d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/naplo.php @@ -0,0 +1,15 @@ +includeCSS(\'/skin/classic/module-naplo/css/hirnok/hirnok.css\')'; + echo ajaxUpdaterForm('hirnok','index.php?page=naplo&sub=hirnok&f=hirnok',array(),'post',true); + + echo ''; + echo ajaxUpdaterForm('uzenoKozep','index.php?page=naplo&sub=uzeno&f=uzeno',array(),'post',true); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/beiskolazasiTerv-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/beiskolazasiTerv-pre.php new file mode 100644 index 00000000..d7b85953 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/beiskolazasiTerv-pre.php @@ -0,0 +1,37 @@ +'assoc','összes'=>true)); + $ADAT['tanulmanyiEgyseg'] = getBeiskolazasiTerv($tanev); + + $printFile = beiskolazasNyomtatvanyKeszites($ADAT); + $printFile = fileNameNormal($printFile); + + if ($printFile !== false && file_exists(_DOWNLOADDIR."/$policy/$page/$sub/$f/$printFile")) + header('Location: '.location('index.php?page=session&f=download&download=true&dir='.$page.'/'.$sub.'/'.$f.'&file='.$printFile)); + + + } + + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/beiskolazasiTerv.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/beiskolazasiTerv.php new file mode 100644 index 00000000..bc70f948 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/beiskolazasiTerv.php @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php new file mode 100644 index 00000000..0143e7e9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php @@ -0,0 +1,88 @@ += _TIME + ) { + $_POST['szemeszterId'] = $szemeszterId = $_TANEV['szemeszter'][$i]['szemeszterId']; + break; + } + } + } + if (isset($_POST['sorrendNev']) && $_POST['sorrendNev'] != '') $ADAT['sorrendNev'] = $sorrendNev = $_POST['sorrendNev']; + + if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') { $osztalyId = $_POST['osztalyId']; } + elseif (__OSZTALYFONOK && !isset($_POST['osztalyId'])) { $osztalyId = $_OSZTALYA[0]; $_POST['osztalyId'] = $osztalyId; } + + if (isset($szemeszterId)) { + + $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId); + define('__ZARO_SZEMESZTER', $ADAT['szemeszterAdat']['szemeszter'] == $ADAT['szemeszterAdat']['tanevAdat']['maxSzemeszter']); + + $Osztalyok = getOsztalyok($ADAT['szemeszterAdat']['tanev']); + if (isset($osztalyId)) { + + define('__OSZTALYFONOKE', (__OSZTALYFONOK === true && in_array($osztalyId, $_OSZTALYA))); + + // intézmény adatok + $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY); + // osztály statisztikák + $ADAT['osztaly'] = getOsztalyAdat($osztalyId, $ADAT['szemeszterAdat']['tanev']); + // Az adott szemeszterben létezik-e az osztály + for ($i = 0; ($i < count($Osztalyok) && $Osztalyok[$i]['osztalyId'] != $osztalyId); $i++); + if ($i < count($Osztalyok)) { + $ADAT['diakok'] = getDiakok(array('osztalyId' => $osztalyId, 'tanev' => $ADAT['szemeszterAdat']['tanev'])); + for ($i = 0; $i < count($ADAT['diakok']); $i++) $ADAT['diakIds'][] = $ADAT['diakok'][$i]['diakId']; + $ADAT['targyak'] = getTargyakByDiakIds($ADAT['diakIds'], $ADAT['szemeszterAdat'], $osztalyId, $sorrendNev); + //for ($i = 0; $i < count($ADAT['targyak']); $i++) $ADAT['targyAdat'][ $ADAT['targyak'][$i]['targyNev'] ] = $ADAT['targyak'][$i]['targyId']; + $ADAT['tanarok'] = getTanarokByDiakIds($ADAT['diakIds'], $ADAT['szemeszterAdat']); + $ADAT['jegyek'] = getDiakZarojegyek($ADAT['diakIds'], $ADAT['szemeszterAdat']['tanev'], $ADAT['szemeszterAdat']['szemeszter']); + $ADAT['hianyzas'] = getDiakHianyzasOsszesites($ADAT['diakIds'], $ADAT['szemeszterAdat']); + + /* A pdfBizonyítvány ezeket használja: szemeszterAdat|intezmeny|diakok|jegyek|hianyzas|osztaly|targyAdat|targyak*/ + $file = fileNameNormal('bizonyitvany-'.$ADAT['szemeszterAdat']['tanev'].'-'.$ADAT['szemeszterAdat']['szemeszter'].'-'.str_replace('.','',$ADAT['osztaly']['osztalyJel'])); + if (pdfBizonyitvany($file, $ADAT)) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/bizonyitvanyNyomtatas&file='.$file.'.pdf')); + } else { + unset($osztalyId); + } + + } + } + + $TOOL['szemeszterSelect'] = array('tipus'=>'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') ,'post' => array('sorrendNev', 'osztalyId')); + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'tanev' => $ADAT['szemeszterAdat']['tanev'], 'post' => array('szemeszterId', 'sorrendNev')); + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakAdatlap-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakAdatlap-pre.php new file mode 100644 index 00000000..3219920b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakAdatlap-pre.php @@ -0,0 +1,135 @@ +$osztalyId,'tanev'=>$tanev,'result'=>'csakId')); // Ennek a függvénynek a szerkezete nyáron megváltozott! + for ($i=0; $i $value) $ADAT['base']['intezmeny'.$attr] = $value; + $Szulok = getSzulok(); + $Osztalyok = getOsztalyok($tanev, array('result' => 'assoc')); + $ADAT['base']['hoNev'] = kisbetus($Honapok[ $ADAT['base']['honap'] - 1 ]); + $ADAT['file'] = 'diakAdatlap'; + + if (is_array($ADAT['base']['diak'])) + for ($i=0; $i $jAdat) $diakAdat['jogviszony'][] = array('dt' => dateToString($jAdat['dt']), 'statusz' => $jAdat['statusz']); + // Max. 5 bejegyzés (külön-külön, fix 10 db mező) + for ($j = 0; $j < 5; $j++) $diakAdat['jvDt'.$j] = $diakAdat['jvStat'.$j] = ''; + foreach ($DJ as $key => $jAdat) { + $diakAdat['jvDt'.$key] = dateToString($jAdat['dt']); + $diakAdat['jvStat'.$key] = $jAdat['statusz']; + } + foreach ($diakAdat as $attr => $value) if (!is_array($value)) $diakAdat[$attr] = LaTeXSpecialChars($value); + list($diakAdat['szuletesiEv'],$diakAdat['szuletesiHonap'],$diakAdat['szuletesiNap']) = explode('-', $diakAdat['szuletesiIdo']); + $diakAdat['szuletesiHoNev'] = kisbetus($Honapok[ $diakAdat['szuletesiHonap'] - 1 ]); + list($diakAdat['jogviszonyKEv'],$diakAdat['jogviszonyKHonap'],$diakAdat['jogviszonyKNap']) = explode('-', $diakAdat['jogviszonyKezdete']); + $diakAdat['jogviszonyKHoNev'] = kisbetus($Honapok[ $diakAdat['jogviszonyKHonap'] - 1 ]); + list($diakAdat['jogviszonyVEv'],$diakAdat['jogviszonyVHonap'],$diakAdat['jogviszonyVNap']) = explode('-', $diakAdat['jogviszonyVege']); + $diakAdat['jogviszonyVHoNev'] = kisbetus($Honapok[ $diakAdat['jogviszonyVHonap'] - 1 ]); + $diakAdat['torvenyesKepviselo'] = str_replace(',', ', ', $diakAdat['torvenyesKepviselo']); + $diakAdat['anyaNev'] = $Szulok[ $diakAdat['anyaId'] ]['szuleteskoriCsaladinev']? + trim(implode(' ', array( + $Szulok[ $diakAdat['anyaId'] ]['szuleteskoriNevElotag'], + $Szulok[ $diakAdat['anyaId'] ]['szuleteskoriCsaladinev'], + $Szulok[ $diakAdat['anyaId'] ]['szuleteskoriUtonev'] + ))):$Szulok[ $diakAdat['anyaId'] ]['szuloNev']; + foreach (array('anya','apa','gondviselo','nevelo') as $szt) { // szt=szuloTipus + $szulo = $Szulok[ $diakAdat[$szt.'Id'] ]; + if (is_array($szulo)) { + foreach ($szulo as $attr => $value) $diakAdat[$szt.$attr] = LaTeXSpecialChars($value); + if ($diakAdat[$szt.'statusz']=='elhunyt') $diakAdat[$szt.'Stat'] = '\dag'; + elseif ($diakAdat[$szt.'statusz']=='házas') $diakAdat[$szt.'Stat'] = '$\infty$'; + elseif ($diakAdat[$szt.'statusz']=='egyedülálló') $diakAdat[$szt.'Stat'] = '$\odot$'; + elseif ($diakAdat[$szt.'statusz']=='hajadon / nőtlen') $diakAdat[$szt.'Stat'] = '$\oslash$'; + elseif ($diakAdat[$szt.'statusz']=='elvált') $diakAdat[$szt.'Stat'] = '$\triangleleft\ominus\triangleright$'; + elseif ($diakAdat[$szt.'statusz']=='özvegy') $diakAdat[$szt.'Stat'] = '$\oplus$'; + elseif ($diakAdat[$szt.'statusz']=='élettársi kapcsolatban él') $diakAdat[$szt.'Stat'] = '$\circ\circ$'; + else $diakAdat[$szt.'Stat'] = $diakAdat[$szt.'statusz'].''; + } + } + $diakAdat['fogyatekossag'] = str_replace(',',', ',$diakAdat['fogyatekossag']); + $diakAdat['szocialisHelyzet'] = str_replace(',',', ',$diakAdat['szocialisHelyzet']); + $diakAdat['osztaly'] = getDiakOsztalya($diakId, array('tanev'=>$tanev)); + $diakAdat['osztalyJel'] = $Osztalyok[ $diakAdat['osztaly'][0]['osztalyId'] ]['kezdoTanev'].'-'. + ($Osztalyok[ $diakAdat['osztaly'][0]['osztalyId'] ]['vegzoTanev']+1).'/'.nagybetus($Osztalyok[ $diakAdat['osztaly'][0]['osztalyId'] ]['jel']); + + $ADAT['diak'][ $diakId ] = $diakAdat; + + } + if (count($ADAT['diak']) > 0) { + $printFile = fileNameNormal(nyomtatvanyKeszites($ADAT)); + if ($printFile !== false && file_exists(_DOWNLOADDIR."/$policy/$page/$sub/$f/$printFile")) + header('Location: '.location("index.php?page=session&f=download&download=true&dir=$page/$sub/$f/&file=$printFile")); + } + + + // ToolBar + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'action' => 'tanevValasztas', 'post' => array('tanev','diakId')); + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'tanev' => $tanev, 'post' => array('tanev')); + $TOOL['diakSelect'] = array('tipus'=>'cella', 'tanev'=>$tanev, 'osztalyId' => $osztalyId, + 'statusz' => array('jogviszonyban van','vendégtanuló','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva'), + 'post' => array('tanev','osztalyId') + ); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakAdatlap.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakAdatlap.php new file mode 100644 index 00000000..05d4467e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakAdatlap.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes-pre.php new file mode 100644 index 00000000..77912c56 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes-pre.php @@ -0,0 +1,71 @@ + $tankorIds) { + $ADAT['diakIds'][] = $diakId; + } + $ADAT['diakAdat'] = getDiakokById($ADAT['diakIds']); + $ADAT['diakOsztaly'] = getDiakokOsztalyai($ADAT['diakIds'], array('tanev' => $tanev)); + $ADAT['osztalyok'] = getOsztalyok($tanev, array('result'=>'assoc')); + + // A TeX forrás generálása - A5-ös méretben + if ($action == 'pdfGeneralas') { + $TeX = texLevelGeneralas($ADAT); + if (pdfLaTeX($TeX, 'faktJelentkezes-A5-'.date('Y-m-d'))) { + + // Az A5-ös lapok A4-es lapra helyezése + $TeX = '\documentclass[a4paper,landscape]{article}'."\n"; + $TeX .= '\usepackage[final]{pdfpages}'."\n"; + $TeX .= '\begin{document}'."\n"; + $TeX .= '\includepdf[nup=2x1, pages={-}]{faktJelentkezes-A5-'.date('Y-m-d').'.pdf}'."\n"; + $TeX .= '\end{document}'."\n"; + $fileName = fileNameNormal('faktJelentkezes-A4-'.date('Y-m-d')); + if (pdfLaTeX($TeX, $fileName)) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/diakTankorJelentkezes&file='.$fileName.'.pdf')); + } + } + + $TOOL['szemeszterSelect'] = array('tipus'=>'cella','paramName'=>'szemeszterId', 'post'=>array('diakId'), + 'tanev'=>$tanev); + + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes.php new file mode 100644 index 00000000..f57afdc5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes.php @@ -0,0 +1,12 @@ +'; +//var_dump($ADAT['osztalyok']); +//echo '
    '; + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/ertesito-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/ertesito-pre.php new file mode 100644 index 00000000..53e644f1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/ertesito-pre.php @@ -0,0 +1,101 @@ += _TIME + ) { + $_POST['szemeszterId'] = $szemeszterId = $_TANEV['szemeszter'][$i]['szemeszterId']; + break; + } + } + } + $ADAT['sorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'enum', 'bizonyítvány', array('napló','bizonyítvány','anyakönyv','ellenőrző','egyedi')); + + if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') { $osztalyId = $_POST['osztalyId']; } + elseif (__OSZTALYFONOK && !isset($_POST['osztalyId'])) { $osztalyId = $_OSZTALYA[0]; $_POST['osztalyId'] = $osztalyId; } + + if (isset($szemeszterId)) { + + $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId); + define('__ZARO_SZEMESZTER', $ADAT['szemeszterAdat']['szemeszter'] == $ADAT['szemeszterAdat']['tanevAdat']['maxSzemeszter']); + + $Osztalyok = getOsztalyok($ADAT['szemeszterAdat']['tanev']); + if (isset($osztalyId)) { + + define('__OSZTALYFONOKE', (__OSZTALYFONOK === true && in_array($osztalyId, $_OSZTALYA))); + $ADAT['evfolyamJel'] = getEvfolyamJel($osztalyId, $ADAT['szemeszterAdat']['tanev']); // TODO: ellenőrzés: evfolyam --> evfolyamJel + + // intézmény adatok + $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY); + // osztály statisztikák + $ADAT['osztaly'] = getOsztalyAdat($osztalyId, $ADAT['szemeszterAdat']['tanev']); + // Az adott szemeszterben létezik-e az osztály + for ($i = 0; ($i < count($Osztalyok) && $Osztalyok[$i]['osztalyId'] != $osztalyId); $i++); + if ($i < count($Osztalyok)) { + $ADAT['diakok'] = getDiakok(array( + 'result' => 'assoc', 'osztalyId' => $osztalyId, 'tanev' => $ADAT['szemeszterAdat']['tanev'], + 'tolDt' => $ADAT['szemeszterAdat']['zarasDt'], 'igDt' => $ADAT['szemeszterAdat']['zarasDt']) + ); + $ADAT['diakIds'] = array_keys($ADAT['diakok']); + $ADAT['targyak'] = getTargyakByDiakIds($ADAT['diakIds'], $ADAT['szemeszterAdat'], $osztalyId, $sorrendNev); + $ADAT['jegyek'] = getDiakZarojegyekByEvfolyamJel($ADAT['diakIds'], $ADAT['evfolyamJel'], $ADAT['szemeszterAdat'], array('felevivel'=>true)); // TODO: ellenőrzés + $ADAT['hianyzas'] = getDiakHianyzasOsszesites($ADAT['diakIds'], $ADAT['szemeszterAdat']); + + for ($i=0; $i'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') ,'post' => array('sorrendNev', 'osztalyId')); + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'tanev' => $ADAT['szemeszterAdat']['tanev'], 'post' => array('szemeszterId', 'sorrendNev')); + $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName' => 'sorrendNev', 'post' => array('szemeszterId', 'osztalyId')); + + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/ertesito.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/ertesito.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/haladasinaplo-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/haladasinaplo-pre.php new file mode 100644 index 00000000..1943dc92 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/haladasinaplo-pre.php @@ -0,0 +1,212 @@ + 4 || date('w',strtotime($tolDt))==0) $tolDt=date('Y-m-d',strtotime('LAST Thursday',strtotime($tolDt))); + elseif (date('w',strtotime($tolDt))!=1) $tolDt=date('Y-m-d',strtotime('LAST MONDAY',strtotime($tolDt))); + + if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') $osztalyId = $_POST['osztalyId']; + + require_once('include/modules/naplo/share/osztaly.php'); + + if (isset($osztalyId)) { + + require_once('include/modules/naplo/share/intezmenyek.php'); + require_once('include/modules/naplo/share/diak.php'); + require_once('include/modules/naplo/share/tanar.php'); + require_once('include/modules/naplo/share/orarend.php'); + require_once('include/modules/naplo/share/ora.php'); + require_once('include/modules/naplo/share/tankor.php'); + require_once('include/modules/naplo/share/targy.php'); + require_once('include/modules/naplo/share/file.php'); + require_once('include/modules/naplo/share/kepzes.php'); + require_once('include/modules/naplo/nyomtatas/tex.php'); + require_once('include/share/date/names.php'); + require_once('include/share/str/hyphen.php'); + require_once('include/share/str/tex.php'); + + + $ADAT['intezmenyAdat'] = getIntezmenyByRovidnev(__INTEZMENY); + // Tanárok adatai + $ADAT['tanarok'] = getTanarok($Param = array('tanev' => $tanev, 'result' => 'assoc')); + // osztály adatainak lekérdezése + $ADAT['osztalyAdat'] = getOsztalyAdat($osztalyId); + $ADAT['munkatervId'] = getMunkatervByOsztalyId($osztalyId); + $ADAT['nevsor'] = getDiakok(array( + 'osztalyId' => $osztalyId, 'tanev' => $tanev, + 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + )); + $ADAT['tankorok'] = getTankorByOsztalyId($osztalyId, $ADAT['tanev'], array('csakId' => false, 'tanarral' => true)); + $ADAT['naploTankor'] = getNaploTankorei($osztalyId); + $ADAT['tankorNaploja'] = getTankorokNaploja(); + $ADAT['napok'] = reindex(getTanevNapjai( getMunkatervByOsztalyId($osztalyId) ), array('dt')); + // osztályok lekérdezése + $ADAT['osztalyId'] = $osztalyId; + $ADAT['osztalyok'] = getOsztalyok(); + $ADAT['osztalyJele'] = array(); + for ($i =0; $i < count($ADAT['osztalyok']); $i++) { + $ADAT['osztalyJele'][ $ADAT['osztalyok'][$i]['osztalyId'] ] = $ADAT['osztalyok'][$i]['osztalyJel']; + if ($osztalyId == $ADAT['osztalyok'][$i]['osztalyId']) { + $ADAT['osztalyJel'] = $ADAT['osztalyok'][$i]['osztalyJel']; + $ADAT['ofo'] = $ADAT['osztalyok'][$i]['osztalyfonokNev']; + } + } + for ($i = 0; $i < count($ADAT['tankorok']); $i++) { + $_tankorId = $ADAT['tankorok'][$i]['tankorId']; + $_osztalyId = $ADAT['tankorNaploja'][$_tankorId]; + if ($_osztalyId!==null) { + $targyNev .= ' ('.$ADAT['osztalyJele'][$_osztalyId].')'; + $tmp = $ADAT['tankorok'][$i]; $tmp['tanarok'] = array(); + foreach ($ADAT['tankorok'][$i]['tanarok'] as $tanarAdat) $tmp['tanarok'][] = $tanarAdat['tanarNev']; + $ADAT['tankorokNaploElejere'][] = $tmp; + } + } +//-----------------------------------------------------------------------/ + $ret = getTargyakByOsztalyId($osztalyId, $tanev); + $ADAT['magatartasId'] = getMagatartas(array('result' => 'value')); + $ADAT['szorgalomId'] = getSzorgalom(array('result' => 'value')); + $ADAT['ofoTargyId'] = getOsztalyfonoki(array('result' => 'value')); +//echo '
    '; var_dump($ADAT['ofoTargyId']); echo '
    '; + for ($i = 0; $i < count($ret); $i++) { + $ADAT['targyAdat'][ $ret[$i]['targyId'] ] = $ret[$i]; + $szavak = explode(' ', ($huHyphen->hyphen(trim($ret[$i]['targyNev'])))); + $ADAT['targyAdat'][ $ret[$i]['targyId'] ]['tordeltTargyNev'] = tordel($szavak); + $ADAT['targyAdat'][ $ret[$i]['targyId'] ]['tankor'] = array(); + //if ($ret[$i]['targyNev'] == 'osztályfőnöki') $ADAT['ofoTargyId'] = $ret[$i]['targyId']; + } + for ($i = 0; $i < count($ADAT['tankorok']); $i++) { + $ADAT['targyAdat'][ $ADAT['tankorok'][$i]['targyId'] ]['db']++; + $tankorId = $ADAT['tankorok'][$i]['tankorId']; + $targyId = $ADAT['tankorok'][$i]['targyId']; + if (is_array($ADAT['naploTankor']) && in_array($tankorId, $ADAT['naploTankor'])) { +// $ADAT['naploTargyak'][$targyId][] = $tankorId; + $ADAT['targyAdat'][$targyId]['tankor'][] = $tankorId; + $ADAT['tankorTargy'][$tankorId] = $targyId; + if ($ADAT['tankorok'][$i]['targyId'] == $ADAT['ofoTargyId']) $ADAT['ofoTankorId'] = $tankorId; +// else $ADAT['oszlopTankore'][] = $tankorId; + } + } + $ADAT['targyFejlec'] = $ADAT['oszlopTankore'] = array(); $db = 0; + $ADAT['helyek'] = array(6,15,15,15); $Foglalt = array(0,0,0,0); $lap = 0; + foreach ($ADAT['targyAdat'] as $targyId => $tAdat) { + + if ( + count($tAdat['tankor']) == 0 + || $targyId == $ADAT['ofoTargyId'] + || $targyId == $ADAT['magatartasId'] + || $targyId == $ADAT['szorgalomId'] + ) continue; + + $tDb = count($tAdat['tankor']); + $tmp = array('targyId' => $targyId, 'sorsz' => 1); + while ($tDb > 0) { + $szabad = $ADAT['helyek'][$lap] - $Foglalt[$lap]; + + $db = min($szabad, $tDb); + $tmp['db'] = $db; + $ADAT['targyFejlec'][$lap][] = $tmp; + $Foglalt[$lap] += $db; + $tmp['sorsz'] += $db; + $tDb -= $db; + if ($ADAT['helyek'][$lap] == $Foglalt[$lap]) $lap++; + } + // Ha 21-nél több tankör van és nem jön ki pont 21-re a tárgy határ +/* + if ($db < 21 && $db + count($tAdat['tankor']) > 21) while ($db < 21) { + $ADAT['oszlopTankore'][] = ''; + $db++; + } +*/ + for ($i = 0; $i < count($tAdat['tankor']); $i++) { + $tankorId = $tAdat['tankor'][$i]; + if ($tankorId != $ADAT['ofoTankorId']) { + $ADAT['oszlopTankore'][] = $tankorId; + $db++; + } + } + } + // Tanuló-tankör mátrix + $ADAT['diakIds'] = array(); + for ($i = 0; $i < count($ADAT['nevsor']); $i++) { + $ADAT['diakTankor'][ $ADAT['nevsor'][$i]['diakId'] ] = getTankorByDiakId( + $ADAT['nevsor'][$i]['diakId'], $tanev, + array('csakId' => true, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result'=>'', 'jelenlet'=>'' ) + ); + $ADAT['diakIds'][] = $ADAT['nevsor'][$i]['diakId']; + $ADAT['diakAdat'][ $ADAT['nevsor'][$i]['diakId'] ] = $ADAT['nevsor'][$i]; + } + // Órák lekérdezése + getNaploOrak($ADAT); + getNaploHianyzasok($ADAT); + + // Melyik tárgyhoz mely (és hány) tankörök tartoznak + + $filename = str_replace(' ','','Haladasi_'.date('Ymd').'_'.$ADAT['osztalyAdat']['osztalyJel']); + + $content = ''. + + putTeXHaladasiOldalbeallitas(). + + putTeXElolap($ADAT). + putTeXLapdobas(). + putTeXDefineFootline($ADAT['osztalyJel'], $ADAT['ofo']). + putTeXTanuloTankorMatriX($ADAT). + putTeXLapdobas(). + + putTeXUresLap(). + + putTeXAllandoFejlec(). + putTeXOrarendMacro(); // putTechPage1 és putTechPage3-ban kell majd paraméteresen meghívni + + $dt = $tolDt; + while(strtotime($dt)<=strtotime($igDt)) { + $ADAT['tanitasiNapOk'] = array(); + $vanOra = false; // Ha a három nap egyikén sincs óra akkor ne rakjuk ki ezeket a napokat... + for ($i = 0; $i < 3; $i++) { + $ADAT['tanitasiNapOk'][$i] = date('Y-m-d',strtotime('+'.$i.' days',strtotime($dt))); + if (count($ADAT['orak'][ $ADAT['tanitasiNapOk'][$i] ])) $vanOra = true; + } + if ($vanOra) { + $content .= + putTeXPage1($ADAT). + putTeXLapdobas(). + putTeXPage2($ADAT). + putTeXLapdobas(). + ''; + + if (count($ADAT['oszlopTankore']) > 21) + $content .= + putTeXPage34($ADAT). + putTeXLapdobas(); + } + $dt = date('Y-m-d',strtotime('+3 days',strtotime($dt))); + if (date('w', strtotime($dt)) == 0) $dt = date('Y-m-d', strtotime('+1 day', strtotime($dt))); // == vasárnap... + } + + + $content .= endTeXDocument(); + + $filename = fileNameNormal($filename); + if (!defined('_TEX_ERROR') && generatePDF($filename, _DOWNLOADDIR.'/private/nyomtatas/haladasi', $content, __NYOMTATAS_FUZETKENT === true)) { + header('Location: '.location('index.php?page=session&f=download&download=true&dir=nyomtatas/haladasi&file='.$filename.'.pdf')); + } + + } + + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array()); + getToolParameters(); + +} + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/haladasinaplo.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/haladasinaplo.php new file mode 100644 index 00000000..0807e2d6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/haladasinaplo.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/helyettesitesinaplo-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/helyettesitesinaplo-pre.php new file mode 100644 index 00000000..ba48545e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/helyettesitesinaplo-pre.php @@ -0,0 +1,39 @@ + 'sor', 'tolParamName' => 'tolDt', 'igParamName' => 'igDt', + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'hanyNaponta' => 1, 'post'=>array('osztalyId', 'diakId', 'targySorrend') + ); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/helyettesitesinaplo.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/helyettesitesinaplo.php new file mode 100644 index 00000000..404b92b3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/helyettesitesinaplo.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/nyomtatas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/nyomtatas-pre.php new file mode 100644 index 00000000..f22d3af1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/nyomtatas-pre.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/nyomtatas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/nyomtatas.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php new file mode 100644 index 00000000..0c9d3196 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php @@ -0,0 +1,161 @@ +evfolyamJel) + // tanítási napok száma az aláíró ív záradékához + $NSz = getNapokSzama(array('osztalyId' => $osztalyId)); + $ADAT['tanitasiNapokSzama'] = $NSz['tanítási nap']+$NSz['speciális tanítási nap']; + + if ($evfolyamJel=='') die('VÉGZETES HIBA o-pre.php'); + + /* Tanárok kigyűjtése */ + $_TANKOROK = getOsztalyTankorei($osztalyId); + $_TANAROK = array(); + for ($i=0; $i __TANEV, 'tolDt' => '', 'igDt' => '', 'result' => 'nevsor')); + for ($j=0; $jhyphen(trim($ADAT['targyak'][$i]['targyNev'])) + ); + } + + $ADAT['diakAdat'] = $ADAT['diakIds'] = array(); + // diákok lekérdezése jogviszony és osztály tagság adatokkal + $diakByOsztaly = getDiakokByOsztaly($osztalyId, array('orderBy' => 'naploSorszam', 'tanev' => $tanev, 'statusz' => array('jogviszonyban van','magántanuló','vendégtanuló') )); + $ADAT['diakIds'] = array_values( + array_diff(array_keys($diakByOsztaly), array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva','felvételt nyert')) + ); + $ret = getDiakAdatById($ADAT['diakIds']); + for ($i = 0; $i < count($ret); $i++) { + $ADAT['diakAdat'][ $ret[$i]['diakId'] ] = array_merge($ret[$i], $diakByOsztaly[ $ret[$i]['diakId'] ]); + $ADAT['diakTargy'][ $ret[$i]['diakId'] ] = getTargyakByDiakId($ret[$i]['diakId'], + array('result'=>'idonly', 'osztatlyId' => $osztalyId, 'csakOratervi'=>true, 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], 'filter' => 'kovetelmeny') + ); //TODO getTargyakByDiakId() itt a visszatérési érték változott, evfolyam, evfolyamJel is van! ellenőrizni kell! +//echo '
    '; var_dump($ret2); echo '
    '; + + $ADAT['diakAdat'][ $ret[$i]['diakId'] ]['torzslapszam'] = getDiakTorzslapszam($ret[$i]['diakId'], $osztalyId); + + $diakKiDts[ $ret[$i]['diakId'] ] = $diakByOsztaly[ $ret[$i]['diakId'] ]['osztalyDiak'][0]['kiDt']; // mikor lépett ki a diák az osztályból + } + unset($ret); + unset($diakByOsztaly); + + foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdat) { + $ADAT['hianyzas'][$szemeszter] = getDiakHianyzasOsszesites($ADAT['diakIds'], $szAdat, $diakKiDts); + // Az egész szorgalmi időszak alatt szerzett osztályzatokra szükség van! (szükség van?) + $szAdat['zarasDt'] = $_TANEV['zarasDt']; + $szAdat['kezdesDt'] = $_TANEV['kezdesDt']; + $ADAT['zaroJegy'][$szemeszter] = getDiakZarojegyekByEvfolyamJel($ADAT['diakIds'], $evfolyamJel, $szAdat); //TODO: ellenőrizni, evfolyam-->evfolyamJel!!! + } + $ADAT['jegyek'] = getDiakJegyek($ADAT); + $ADAT['szulok'] = getSzulok(); + // TeX generálás + $filename = fileNameNormal('Osztalyozo_'.date('Ymd').'_'.$ADAT['osztalyAdat']['osztalyJel']); + $lapDobasok = 0; + $content = + + putTeXOsztalyozoOldalbeallitas(). +// putTeXOldalbeallitasok(). +// putTeXMakrok(). + + putTeXDefineFootline($ADAT['osztalyAdat']['osztalyJel'], $ADAT['osztalyAdat']['osztalyfonokNev']); + + // Tanulónként egy-egy lap.... + for ($i = 0; $i < count($ADAT['diakIds']); $i++) { + $sorsz = $i+1; // Napló sorszám // TODO ??? + $diakId = $ADAT['diakIds'][$i]; + $cn = $ADAT['diakAdat'][$diakId]['diakNev']; + $birthlocality = $ADAT['diakAdat'][$diakId]['szuletesiHely']; + $birthtimestamp = $ADAT['diakAdat'][$diakId]['szuletesiIdo']; + //$content .= putTeXOsztalyozoFejlec($sorsz,$cn,$birthlocality,$birthtimestamp); + //$content .= putTeXOsztalyozoJegyek($diakId, $ADAT); + //$content .= putTeXOsztalyozoAdatok($diakId, $ADAT); + //$content .= putTeXLapdobas(); + //$lapDobasok++; + $iGlobal = 0; // Ha nem férne ki 20 helyre a tárgyak listája... + while ($iGlobal < count($ADAT['targyak'])) { + $content .= putTeXOsztalyozoFejlec($sorsz,$cn,$birthlocality,$birthtimestamp); + $content .= putTeXOsztalyozoJegyek($diakId, $ADAT, $iGlobal); + $content .= putTeXOsztalyozoAdatok($diakId, $ADAT); + $content .= putTeXLapdobas(); + $lapDobasok++; + } + } + + $content .= putTeXTanarLista($ADAT, $lapDobasok).putTeXLapdobas(); + $content .= endTeXDocument(); + + $filename = str_replace('/','_',$filename); + if (generatePDF($filename, _DOWNLOADDIR.'/private/nyomtatas/osztalyozo', $content, __NYOMTATAS_FUZETKENT === true)) { + if (count($_SESSION['alert']) == 0) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=nyomtatas/osztalyozo&file='.$filename.'.pdf')); + else + $ADAT['letoltes'] = 'index.php?page=session&f=download&download=true&dir=nyomtatas/osztalyozo&file='.$filename.'.pdf'; + } + + } + + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array()); + getToolParameters(); + +} + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/osztalyozonaplo.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/osztalyozonaplo.php new file mode 100644 index 00000000..864c5486 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/osztalyozonaplo.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php new file mode 100644 index 00000000..72e34994 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php @@ -0,0 +1,105 @@ + $osztalyId, 'result' => 'idonly','override' => false)); + } + if (is_array($ADAT['diakIds']) && count($ADAT['diakIds']) > 0) { + // Intézmény adatai + $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY); + // Osztály adatai + if (isset($osztalyId)) $ADAT['osztaly'] = getOsztalyAdat($osztalyId, __TANEV); + // A tanárok + $ADAT['tanarok'] = getTanarok(array('result' => 'assoc')); + // Az osztály tanárai + // nincs feltétlen osztály // +/* + $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV, array('tanarral' => true)); + $ADAT['osztalyTanar'] = array(); $paros = false; + for ($i = 0; $i < count($Tankorok); $i++) { + for ($j = 0; $j < count($Tankorok[$i]['tanarok']); $j++) { + if (!is_array($ADAT['osztalyTanar'][ $Tankorok[$i]['tanarok'][$j]['tanarId'] ])) { + $ADAT['osztalyTanar'][ $Tankorok[$i]['tanarok'][$j]['tanarId'] ] = $ADAT['tanarok'][ $Tankorok[$i]['tanarok'][$j]['tanarId'] ]; + $ADAT['osztalyTanar'][ $Tankorok[$i]['tanarok'][$j]['tanarId'] ]['paros'] = $paros; + $paros = !$paros; + + } + } + } +*/ + if (is_array($ADAT['diakIds']) && count($ADAT['diakIds']) > 0) { + // a diákok alapadatai + $ADAT['diakAdat'] = getDiakAdatById($ADAT['diakIds'], array('result' => 'assoc', 'keyfield' => 'diakId')); + // SNI-s diákok kiválogatása... + $ADAT['sniDiakIds'] = $Diakok = array(); + foreach ($ADAT['diakAdat'] as $_diakId => $dAdat) { + if ($dAdat['fogyatekossag'] != '') { + $ADAT['sniDiakIds'][] = $_diakId; + $dAdat['aktualisStatusz'] = $dAdat['statusz']; + $Diakok[] = $dAdat; + } + } + } + + + // sni-s diákokon végigmenve: + foreach ($ADAT['sniDiakIds'] as $diakId) { + // Mentor/Ofő lekérdezése, konstans beállítása + $sniDA = getSniDiakAdat($diakId); + if (!is_array($sniDA)) $sniDA = array(); + $DA = array_merge($ADAT['diakAdat'][$diakId], $sniDA); + if (is_array($DA['felelos'])) foreach ($DA['felelos'] as $key => $tanarId) $felelos[$tanarId] = array(); + else $felelos = array(); + $DA['felelos'] = $felelos; + // A hónapokon végigmenve + $ho = intval(substr($_TANEV['kezdesDt'],5,2)); + $dt = date('Y-m-01', strtotime($_TANEV['kezdesDt'])); + while ($ho != 1+substr($_TANEV['zarasDt'],5,2)) { + $ADAT['diakAdat'][$diakId]['honap'][$ho] = getHaviOsszegzes($diakId, $dt); + $ADAT['diakAdat'][$diakId]['honap'][$ho]['hoNev'] = kisbetus($Honapok[$ho-1]); + // lépés a következő hónapra + $ho++; if ($ho > 12) $ho = 1; + $dt = date('Y-m-d', strtotime('next month', strtotime($dt))); + } + } + if (isset($osztalyId)) $ADAT['file'] = fileNameNormal('evVegiJegyzokonyv-'.$ADAT['osztaly']['osztalyJel'].'-'.str_replace('-','',$dt)); + else $ADAT['file'] = fileNameNormal('evVegiJegyzokonyv-'.$diakId.'-'.str_replace('-','',$dt)); + if (generateJegyzokonyv($ADAT)) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/sniEvVegiJegyzokonyv&file='.$ADAT['file'].'.pdf')); + + } + // Tool + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post' => array('dt')); + $TOOL['diakSelect'] = array( + // 'diakok' => $Diakok, + 'tipus'=>'cella','paramName' => 'diakId', + 'osztalyId'=> $osztalyId,'post' => array('osztalyId'), + 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + ); + + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv.php new file mode 100644 index 00000000..a2208099 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv.php @@ -0,0 +1 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv-pre.php new file mode 100644 index 00000000..951f9b4e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv-pre.php @@ -0,0 +1,93 @@ + 'assoc')); + // Az osztály tanárai + $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV, array('tanarral' => true)); + $ADAT['osztalyTanar'] = array(); $paros = false; + for ($i = 0; $i < count($Tankorok); $i++) { + for ($j = 0; $j < count($Tankorok[$i]['tanarok']); $j++) { + if (!is_array($ADAT['osztalyTanar'][ $Tankorok[$i]['tanarok'][$j]['tanarId'] ])) { + $ADAT['osztalyTanar'][ $Tankorok[$i]['tanarok'][$j]['tanarId'] ] = $ADAT['tanarok'][ $Tankorok[$i]['tanarok'][$j]['tanarId'] ]; + $ADAT['osztalyTanar'][ $Tankorok[$i]['tanarok'][$j]['tanarId'] ]['paros'] = $paros; + $paros = !$paros; + + } + } + } + // Az osztály tagjai + $ADAT['diakIds'] = getDiakok(array('osztalyId' => $osztalyId, 'result' => 'idonly','override' => false)); + if (is_array($ADAT['diakIds']) && count($ADAT['diakIds']) > 0) { + // a diákok alapadatai + $ADAT['diakAdat'] = getDiakAdatById($ADAT['diakIds'], array('result' => 'assoc', 'keyfield' => 'diakId')); + // SNI-s diákok kiválogatása... + $ADAT['sniDiakIds'] = $Diakok = array(); + foreach ($ADAT['diakAdat'] as $_diakId => $dAdat) { + if ($dAdat['fogyatekossag'] != '') { + $ADAT['sniDiakIds'][] = $_diakId; + $dAdat['aktualisStatusz'] = $dAdat['statusz']; + $Diakok[] = $dAdat; + } + } + } + + + // sni-s diákokon végigmenve: + foreach ($ADAT['sniDiakIds'] as $diakId) { + // Mentor/Ofő lekérdezése, konstans beállítása + $sniDA = getSniDiakAdat($diakId); + if (!is_array($sniDA)) $sniDA = array(); + $tmpArray = array_merge($ADAT['diakAdat'][$diakId], $sniDA, getHaviOsszegzes($diakId, $dt)); + if (is_array($tmpArray['felelos'])) foreach ($tmpArray['felelos'] as $key => $tanarId) $felelos[$tanarId] = array(); + else $felelos = array(); + $tmpArray['felelos'] = $felelos; + $ADAT['diakAdat'][$diakId] = $tmpArray; + } + $ADAT['file'] = fileNameNormal('haviJegyzokonyv-'.$ADAT['osztaly']['osztalyJel'].'-'.str_replace('-','',$dt)); + if (generateJegyzokonyv($ADAT)) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/sniHaviJegyzokonyv&file='.$ADAT['file'].'.pdf')); + + } + // Tool + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post' => array('dt')); + $TOOL['datumSelect'] = array( + 'tipus' => 'sor', 'ParamName' => 'dt', 'tanev' => __TANEV, 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'hanyNaponta' => 'havonta', 'post' => array('diakId', 'osztalyId') + ); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv.php new file mode 100644 index 00000000..a2208099 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv.php @@ -0,0 +1 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/szovegesErtekeles-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/szovegesErtekeles-pre.php new file mode 100644 index 00000000..0f7bdd81 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/szovegesErtekeles-pre.php @@ -0,0 +1,78 @@ + $osztalyId, 'tanev' => $tanev, 'tolDt' => $dt, 'igDt' => $dt, + 'statusz'=>array('jogviszonyban van'), 'extraAttrs'=>'oId as oktatasiAzonosito,torzslapSzam')); + if (is_array($Diakok)) for ($i = 0; $i < count($Diakok); $i++) { + $diakIds[] = $Diakok[$i]['diakId']; + $ADAT['diakAdat'][$Diakok[$i]['diakId']] = $Diakok[$i]; + } + } + $diakId = readVariable($_POST['diakId'], 'numeric unsigned', null, $diakIds); + if (isset($diakId)) $diakIds = array($diakId); + $ADAT['diakIds'] = $diakIds; + + if (count($ADAT['diakIds']) > 0 && (isset($ADAT['dt']) || isset($ADAT['szemeszterId']))) { + $ADAT['hianyzas'] = getDiakHianyzasOsszesites($ADAT['diakIds'], $ADAT['szemeszter']); + $printFile = nyomtatvanyKeszites($ADAT); // ??? + $printFile = fileNameNormal($printFile); + if ($printFile !== false && file_exists(_DOWNLOADDIR."/$policy/$page/$sub/$f/$printFile")) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/szovegesErtekeles&file='.$printFile)); + } + +// $TOOL['datumSelect'] = array( +// 'tipus' => 'cella', 'post' => array('diakId','osztalyId'), +// 'paramName' => 'dt', 'hanyNaponta' => 1, 'tolDt' => date('Y-m-d', strtotime($TA['kezdesDt'])), 'igDt' => $TA['zarasDt'] +// ); + $TOOL['datumTolIgSelect'] = array('tipus' => 'sor', 'tolParamName' => 'tolDt', 'igParamName' => 'dt', + 'tolDt' => date('Y-m-d', strtotime($TA['kezdesDt'])), 'igDt' => $TA['zarasDt'], + 'hanyNaponta' => 1, 'post' => array('osztalyId','diakId','sorrendNev') + ); + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('tolDt', 'tolDt', 'dt','sorrendNev')); + if (isset($osztalyId)) + $TOOL['diakSelect'] = array('tipus' => 'cella', 'paramName' => 'diakId', 'diakok' => $Diakok, 'post' => array('osztalyId', 'tolDt', 'dt','sorrendNev')); + $TOOL['szemeszterSelect'] = array( + 'tipus'=>'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') , + 'post' => array('osztalyId', 'tanarId', 'diakId', 'tolDt', 'dt', 'tankorId', 'kepzesId', 'evfolyam','sorrendNev') + ); + $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName' => 'sorrendNev', 'post' => array('szemeszterId', 'osztalyId','diakId','tolDt','dt','tankorId','kepzesId','evfolyam')); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/szovegesErtekeles.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/szovegesErtekeles.php new file mode 100644 index 00000000..c24a85d5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/szovegesErtekeles.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles-pre.php new file mode 100644 index 00000000..232b406b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles-pre.php @@ -0,0 +1,58 @@ + 0) { + tankorNaplohozRendeles($osztalyId, $_POST['T']); + } + + } // action + + + // A naplókhoz rendelt tanköröket lekérdezzük + $ADAT['tankorNaploja'] = getTankorokNaploja(); + $ADAT['naploTankorei'] = array(); + foreach ($ADAT['tankorNaploja'] as $_tankorId => $_osztalyId) { + $ADAT['naploTankorei'][$_osztalyId][] = $_tankorId; + } + // osztályok lekérdezése + $ADAT['osztalyok'] = getOsztalyok(); + $ADAT['osztalyJele'] = array(); + for ($i =0; $i < count($ADAT['osztalyok']); $i++) $ADAT['osztalyJele'][ $ADAT['osztalyok'][$i]['osztalyId'] ] = $ADAT['osztalyok'][$i]['osztalyJel']; + + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'osztalyok' => $ADAT['osztalyok'], 'post' => array()); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles.php new file mode 100644 index 00000000..5285af45 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles.php @@ -0,0 +1,15 @@ + 0) putOsztalyTankorei($osztalyId, $ADAT); + } else { + putHozzarendelesekTorlese(); + putHianyzoTankorok($ADAT); + putEloszlas($ADAT); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/torzslap-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/torzslap-pre.php new file mode 100644 index 00000000..16bc3ae6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/torzslap-pre.php @@ -0,0 +1,165 @@ + 'getDiakBizonyitvany/óraszám', 'modul' => 'naplo_intezmeny', 'result' => 'multiassoc', 'keyfield' => 'targyId', 'values' => $v + )); + + $szDb = $ADAT['szemeszter']['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[$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[$targyId]['evesOraszam'] = $oraszam / $szDb * TANITASI_HETEK_SZAMA; + } + return $ret; + } + + + $ADAT['magatartasIds'] = getMagatartas(); + $ADAT['szorgalomIds']= getSzorgalom(); + + // A dátum, osztály és diákok kiválasztása + $ADAT['szemeszterId'] = $szemeszterId = readVariable($_POST['szemeszterId'], 'numeric unsigned', null); + if (isset($szemeszterId)) { // szemesztert záró értékelés - intézményi adatbázis + $ADAT['szemeszter'] = getSzemeszterAdatById($ADAT['szemeszterId']); + $ADAT['dt'] = $dt = $ADAT['szemeszter']['zarasDt']; + define('__ZARO_SZEMESZTER', $ADAT['szemeszter']['szemeszter'] == $ADAT['szemeszter']['tanevAdat']['maxSzemeszter']); //?? + $ADAT['tanev'] = $tanev = $ADAT['szemeszter']['tanev']; + } + $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null); + $ADAT['targySorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'enum', 'anyakönyv', array('napló','bizonyítvány','anyakönyv','ellenőrző','egyedi')); + // Ha egy diák van kiválasztva... + $diakId = readVariable($_POST['diakId'], 'numeric unsigned', null, $diakIds); + + if (isset($osztalyId) && isset($szemeszterId)) { + define('TANITASI_HETEK_SZAMA', getTanitasiHetekSzama(array('osztalyId'=>$osztalyId))); + $diakIds = array(); + $ADAT['osztalyAdat'] = getOsztalyAdat($osztalyId, $tanev); + $ADAT['evfolyamJel'] = getEvfolyamJel($osztalyId, $tanev); + $ADAT['file'] = fileNameNormal('torzslap-'.str_replace('.', '', $ADAT['osztalyAdat']['osztalyJel'])); + $Diakok = getDiakok(array('osztalyId' => $osztalyId, 'tanev' => $tanev, 'tolDt' => $ADAT['szemeszter']['tanevAdat']['kezdesDt'], 'igDt' => $ADAT['szemeszter']['tanevAdat']['zarasDt'], + 'statusz'=>array('jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva'), + 'extraAttrs'=>'oId as oktatasiAzonosito,torzslapSzam as torzslapszam,allampolgarsag,szuletesiHely,szuletesiIdo,anyaId') + ); + osztalyTorzslapszamGeneralas($osztalyId); + $dTsz = getDiakokTorzslapszamaByOsztalyId($osztalyId); + if (is_array($Diakok)) for ($i = 0; $i < count($Diakok); $i++) { + if (!isset($diakId) || $diakId == $Diakok[$i]['diakId']) { + $diakIds[] = $Diakok[$i]['diakId']; + $Diakok[$i]['anyaNev'] = getSzuloNevById($Diakok[$i]['anyaId'], $szuleteskori = true); + $Diakok[$i]['evfolyamJel'] = $ADAT['evfolyamJel']; // kell ez?? // getEvfolyamJel($osztalyId, $ADAT['tanev']); + $Diakok[$i]['szuletesiOrszag'] = ''; // Ezzel mi legyen?? + $Diakok[$i]['feljegyzesek'] = ''; // Egyedi törzslap záradékok kellenek ide, semmi más! + $ADAT['diakAdat'][$Diakok[$i]['diakId']] = $Diakok[$i]; + $ADAT['diakAdat'][$Diakok[$i]['diakId']]['szuletesiIdo'] = dateToString($Diakok[$i]['szuletesiIdo']); + $ADAT['diakAdat'][$Diakok[$i]['diakId']]['torzslapszam'] = $dTsz[$Diakok[$i]['diakId']]; + } + } + $kovetkezoTanev = __TANEV+1; $kovTA = getTanevAdat($kovetkezoTanev); + $ADAT['diakZaradekok'] = getZaradekokByDiakIds($diakIds, array('tolDt'=>$_TANEV['kezdesDt'], 'igDt'=>$kovTA['kezdesDt'], 'tipus'=>'törzslap feljegyzés','keyfield'=>'diakId','result'=>'multiassoc')); // kell a tol-ig szűrés?? + $ADAT['diakZaradekok'] = getZaradekokByDiakIds($diakIds, array('tolDt'=>$_TANEV['kezdesDt'], 'igDt'=>$kovTA['kezdesDt'], 'dokumentum'=>'törzslap','keyfield'=>'diakId','result'=>'multiassoc')); // kell a tol-ig szűrés?? + $ADAT['diakBejegyzesek'] = getTorzslapBejegyzesByDiakIds($diakIds, array('tanev' => $tanev)); + + $ADAT['diakIds'] = $diakIds; + + if (count($ADAT['diakIds']) > 0) { + $ADAT['hianyzas'] = getDiakHianyzasOsszesites($ADAT['diakIds'], $ADAT['szemeszter']); + $ADAT['targyak'] = getTargyakByDiakIds($ADAT['diakIds'], $ADAT['szemeszter'], $osztalyId, $sorrendNev); + $ADAT['jegyek'] = getDiakZarojegyekByEvfolyamJel($ADAT['diakIds'], $ADAT['evfolyamJel'], $ADAT['szemeszter'], array('felevivel'=>true)); // TODO: ellenőrzés + + foreach ($ADAT['jegyek'] as $diakId => $dJegyek) { + $ADAT['targyOraszam'][$diakId] = getDiakTargyOraszam($diakId, $osztalyId, $tanev, $ADAT); + } + + $printFile = torzslapNyomtatvanyKeszites($ADAT); // ??? + $printFile = fileNameNormal($printFile); + if ($printFile !== false && file_exists(_DOWNLOADDIR."/$policy/$page/$sub/$f/$printFile")) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/torzslap&file='.$printFile)); + } + } // van osztály és szemeszter + + + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('szemeszterId', 'tolDt', 'dt','sorrendNev')); + if (isset($osztalyId)) + $TOOL['diakSelect'] = array('tipus' => 'cella', 'paramName' => 'diakId', 'diakok' => $Diakok, 'post' => array('szemeszterId', 'osztalyId', 'tolDt', 'dt','sorrendNev')); + $TOOL['szemeszterSelect'] = array( + 'tipus'=>'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') , + 'post' => array('osztalyId', 'tanarId', 'diakId', 'tolDt', 'dt', 'tankorId', 'kepzesId', 'evfolyamJel','sorrendNev') + ); + $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName' => 'sorrendNev', 'post' => array('szemeszterId', 'osztalyId','diakId','tolDt','dt','tankorId','kepzesId','evfolyamJel')); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/torzslap.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/torzslap.php new file mode 100644 index 00000000..c24a85d5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/torzslap.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat-pre.php new file mode 100644 index 00000000..f7250037 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat-pre.php @@ -0,0 +1,40 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat.php new file mode 100644 index 00000000..bc70f948 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat.php @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/zaradekok-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/zaradekok-pre.php new file mode 100644 index 00000000..4694c82f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/zaradekok-pre.php @@ -0,0 +1,49 @@ + 'indexed', 'tolDt' => $ADAT['tolDt'], 'igDt' => $ADAT['igDt'], 'dokumentum' => 'osztálynapló')); + $ADAT['bejegyzes'][ $ADAT['diakIds'][$i] ] = getDiakBejegyzesekByTanev($ADAT['diakIds'][$i], $ADAT['tanev']); + } + $ADAT['file'] = fileNameNormal($ADAT['file']); + if (pdfZaradekok($ADAT)) + header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/zaradekok&file='.$ADAT['file'].'.pdf')); + + } + + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array()); + getToolParameters(); + +} + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/zaradekok.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/nyomtatas/zaradekok.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/ascExport-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/ascExport-pre.php new file mode 100644 index 00000000..878bb8e6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/ascExport-pre.php @@ -0,0 +1,110 @@ + $tanev, 'tolDt' => $dt, 'igDt' => $dt, 'csakOrarendbol' => true)); + $ADAT['exportalandoHet'] = readVariable($_POST['orarendiHet'], 'numeric', null, $ADAT['orarendiHet']); + if (isset($ADAT['exportalandoHet'])) $ADAT['szeminariumkent'] = true; + else $ADAT['szeminariumkent'] = readVariable($_POST['szeminariumkent'], 'bool', false, array(true, false)); + $ADAT['szakkorokkel'] = readVariable($_POST['szakkorokkel'], 'bool', false, array(true, false)); + $ADAT['targyBontas'] = readVariable($_POST['targyBontas'], 'bool', false, array(true, false)); + + // Bontások lekérdezése + $ADAT['bontas'] = ascBontasLekerdezes($ADAT['tanevDb']); + + if (!readVariable($_POST['blokkokNelkul'], 'bool', false, array(true, false))) $ADAT['tankorBlokk'] = getTankorBlokkok($tanev); + else $ADAT['tankorBlokk'] = array(); + // A tankörök blokk óraszámai + $tankor2blokk = array(); + if (is_array($ADAT['tankorBlokk']['exportOraszam'])) + foreach ($ADAT['tankorBlokk']['exportOraszam'] as $bId => $oraszam) { // blokkonként + for ($i = 0; $i < count($ADAT['tankorBlokk']['idk'][$bId]); $i++) { // az érintett tankörökön végigmenve + $tankor2blokk[ $ADAT['tankorBlokk']['idk'][$bId][$i] ]['blokkOraszam'] += $oraszam; + } + } + $ADAT['tankorIndex'] = array(); + if ($ADAT['szakkorokkel']) $ADAT['tankorok'] = getTankorok(array("tanev=$tanev")); + else $ADAT['tankorok'] = getTankorok(array("tanev=$tanev","jelenlet='kötelező'")); + for ($i = 0; $i < count($ADAT['tankorok']); $i++) { + $tankorId = $ADAT['tankorok'][$i]['tankorId']; + $ADAT['tankorok'][$i]['tankorAdat'] = getTankorAdat($tankorId, $tanev); + // óraszám + if (isset($ADAT['exportalandoHet'])) { + $ADAT['tankorok'][$i]['hetiOraszam'] = getTankorHetiOraszam($tankorId, array('tanev' => $tanev, 'dt' => $dt, 'het' => $ADAT['exportalandoHet'])); + } else { + $ADAT['tankorok'][$i]['hetiOraszam'] = 0; + for ($j = 0; $j < count($ADAT['tankorok'][$i]['tankorAdat'][$tankorId]); $j++) // Szemeszterenként végigmenve + $ADAT['tankorok'][$i]['hetiOraszam'] += $ADAT['tankorok'][$i]['tankorAdat'][$tankorId][$j]['oraszam']; + if ($j != 0) { + $ADAT['tankorok'][$i]['hetiOraszam'] /= $j; + // Korrigáljuk a tankört érintő blokkok óraszámával + if ($ADAT['tankorok'][$i]['hetiOraszam'] >= $tankor2blokk[$tankorId]['blokkOraszam']) + $ADAT['tankorok'][$i]['hetiOraszam'] -= $tankor2blokk[$tankorId]['blokkOraszam']; + else + $_SESSION['alert'][] = 'message:wrong_data:tankorOraszam='.$ADAT['tankorok'][$i]['hetiOraszam'].'; blokkOraszam=' + .$tankor2blokk[$tankorId]['blokkOraszam'].'; tankorId='.$tankorId; + } + } // óraszám + $ADAT['tankorIndex'][$tankorId] = $i; + } + + // --------------------- action -------------------------- // + + if ($action == 'ascExport') { + if ( +// tankorTanarRendbenE($tanev, $dt) +// && + ascExport($ADAT) + ) +define('__LOADURL', href('index.php?page=session&f=download&download=true&dir=orarend&file=ascExport.xml',array('sessionID','lang','skin','policy','alert'))); +//header('Location: '.location('index.php?page=session&f=download&download=true&dir=orarend&file=ascExport.xml',array('sessionID','lang','skin','policy','alert'))); + + } elseif ($action == 'blokkOraszam') { + + if (is_array($_POST['blokkOraszam'])) + for ($i = 0; $i < count($_POST['blokkOraszam']); $i++) { + list($bId, $oraszam) = explode(':', $_POST['blokkOraszam'][$i]); + $blokkOraszam = readVariable($oraszam, 'float unsigned', 0); + if ($blokkOraszam >= 0) $ADAT['blokkOraszam'][$bId] = $oraszam; + } // if+for + blokkOraszamRogzites($ADAT['blokkOraszam'], $ADAT['tanevDb']); + $ADAT['tankorBlokk'] = getTankorBlokkok($tanev); + + } elseif ($action == 'tobbszorosOra') { + + ascBontasModositas($ADAT); + $ADAT['bontas'] = ascBontasLekerdezes($ADAT['tanevDb']); + + } + + // --------------------- action -------------------------- // + + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'paramName' => 'tanev', 'post' => array()); + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post' => array('tanev'),'paramName' => 'dt', 'hanyNaponta' => 1, + 'override'=>true,'tolDt' => $_TA['kezdesDt'],'igDt' => $_TA['zarasDt'], + ); + + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/ascExport.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/ascExport.php new file mode 100644 index 00000000..7972ab6b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/ascExport.php @@ -0,0 +1,11 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/helyettesites-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/helyettesites-pre.php new file mode 100644 index 00000000..c4ed7cb9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/helyettesites-pre.php @@ -0,0 +1,80 @@ + 0) $tolDt = $_POST['tolDt']; + + /* Az órarendihét kiválasztása */ + if (!isset($tolDt)) $tolDt = date('Y-m-d'); + if (strtotime($tolDt) > strtotime($_TANEV['zarasDt'])) $tolDt = $_TANEV['zarasDt']; + elseif (strtotime($tolDt) < strtotime($_TANEV['kezdesDt'])) $tolDt = $_TANEV['kezdesDt']; + if ($tolDt != '') $het = getOrarendiHetByDt($tolDt); + if ($het == '') $het = getLastOrarend(); + //$igDt = date('Y-m-d', mktime(0,0,0,date('m',strtotime($tolDt)), date('d',strtotime($tolDt))+6, date('Y',strtotime($tolDt)))); + $igDt = $tolDt; + + if ($osztalyId!='') { + $TANKORIDK = getTankorByOsztalyId($osztalyId,__TANEV,array('csakId'=>true)); + $ADAT['orak'] = getHelyettesitendoOrak(array('osztalyId'=>$osztalyId,'tolDt'=>$tolDt,'igDt'=>$igDt,'tankorIdk'=>$TANKORIDK)); + } elseif ($tanarId!='') { + $TANKORIDK = getTankorByTanarId($tanarId,__TANEV,array('csakId'=>true)); + $ADAT['orak'] = getHelyettesitendoOrak(array('tolDt'=>$tolDt,'igDt'=>$igDt,'tankorIdk'=>$TANKORIDK)); + } else { + $ADAT['orak'] = getHelyettesitendoOrak(array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephelyId'=>$telephelyId)); + } + $ADAT['tankorok'] = getTankoradatByIds($ADAT['orak']['tankorok'],array('dt'=>$tolDt)); // $ADAT['orak'] at vizsgáld meg! + $ADAT['tanarok'] = getTanarok(array('result'=>'assoc')); + $ADAT['termek'] = getTermek(array('result'=>'assoc')); + + /* TOOL ME :) */ + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId'), + 'paramName' => 'tolDt', 'hanyNaponta' => 1, + 'override'=>true, // használathoz még át kell írni pár függvényt!!! + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + ); + $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'post'=>array('tolDt','osztalyId','tanarId')); + + //$TOOL['orarendiHetSelect'] = array('tipus'=>'cella' , 'paramName' => 'het', 'post'=>array('targyId','tankorId','osztalyId','tanarId'), 'disabled'=>true); + //$TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post'=>array('tanev')); + //$TOOL['targySelect'] = array('tipus'=>'cella', 'paramName' => 'targyId', 'post'=>array('het')); +// if ($osztalyId!='') { +// $TOOL['diakSelect'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array('tolDt','osztalyId')); +// } else +// $TOOL['munkakozossegSelect'] = array('tipus'=>'sor','paramName'=>'mkId', 'post'=>array('tolDt')); + $TOOL['osztalySelect']= array('tipus'=>'cella','paramName'=>'osztalyId', 'post'=>array('tolDt')); + $TOOL['tanarSelect'] = array('tipus'=>'cella','paramName'=>'tanarId', 'post'=>array('tolDt')); +// if ($osztalyId!='' || $tanarId!='' || $diakId!='' || $mkId!='') $TOOL['tankorSelect'] = array('tipus'=>'sor','paramName'=>'tankorId', 'post'=>array('tolDt','osztaly + + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/helyettesites.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/helyettesites.php new file mode 100644 index 00000000..e5eca8ff --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/helyettesites.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarend-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarend-pre.php new file mode 100644 index 00000000..f570cc8f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarend-pre.php @@ -0,0 +1,312 @@ +0) $PAGESTATE[$key]=intval($val); + } + } + } + + // -- TESZT VÉGE + $targyId = readVariable($_POST['targyId'], 'id', getPSFvar('targyId')); + $tankorId = readVariable($_POST['tankorId'], 'id', readVariable($_GET['tankorId'],'id',getPSFvar('tankorId'))); + $osztalyId = readVariable($_POST['osztalyId'], 'id', readVariable($_GET['osztalyId'],'id',getPSFvar('osztalyId'))); + $tanarId = $_POST['tanarId'] = readVariable($_POST['tanarId'], 'id', readVariable($_GET['tanarId'],'id',getPSFvar('tanarId'))); + $diakId = $_POST['diakId'] = readVariable($_POST['diakId'], 'id', readVariable($_GET['diakId'],'id',getPSFvar('diakId'))); + $teremId = readVariable($_POST['teremId'], 'id', getPSFvar('teremId')); + $mkId = readVariable($_POST['mkId'], 'id',getPSFvar('mkId')); + $het = readVariable($_POST['het'], 'id',getPSFvar('het')); // ??? + + $ADAT['telephelyek'] = getTelephelyek(); + $telephelyIds = array(); + foreach ($ADAT['telephelyek'] as $tAdat) $telephelyIds[] = $tAdat['telephelyId']; + $telephelyId = readVariable($_POST['telephelyId'], 'id', (count($ADAT['telephelyek'])>1?null:1), $telephelyIds); + /* A telephelyet ki tudnánk találni a lekérdezett órák termeiből is... */ + $tolDt = readVariable($_POST['tolDt'], 'date', getTanitasihetHetfo(array('napszam'=>0))); + $dt = readVariable($_POST['dt'], 'date'); // mutatni + + if ($mkId=='' && $tanarId=='' && $diakId=='' && $osztalyId=='' && $tankorId=='' && $teremId=='') { // ez itt mind isnotset + if (__DIAK && defined('__USERDIAKID')) $diakId=__USERDIAKID; + if (__TANAR && defined('__USERTANARID')) $tanarId=__USERTANARID; + } + + /* ----------------------------------------- */ + if (_POLICY=='private' && $action == 'setPublic' && is_numeric($diakId) && ((__NAGYKORU===true && $diakId==__USERDIAKID) || (__NAGYKORU === false && $diakId==__SZULODIAKID))) { + require_once('include/modules/naplo/share/diakModifier.php'); + diakAdatkezelesModositas(array('diakId'=>$diakId,'kulcs'=>'publikusOrarend','ertek'=>'1')); + } + /* ----------------------------------------- */ + + /* Az órarendihét kiválasztása */ + if (isset($dt)) $tolDt = date('Y-m-d', strtotime('last Monday', strtotime('+1 days', strtotime($dt) ))); + if (!isset($tolDt)) + // A következő nap előtti hétfő + $tolDt = date('Y-m-d', strtotime('last Monday', strtotime('+1 days', time()))); + +/* + if (strtotime($tolDt) > strtotime($_TANEV['zarasDt'])) $_tolDt = $_TANEV['zarasDt']; + elseif (strtotime($tolDt) < strtotime($_TANEV['kezdesDt'])) $_tolDt = $_TANEV['kezdesDt']; + // és akkor korrigáljunk még egyszer + if (isset($_tolDt)) // A következő nap előtti hétfő + $tolDt = date('Y-m-d', strtotime('last Monday', strtotime('+1 days', time()))); +*/ + if ($tolDt != '') $het = getOrarendiHetByDt($tolDt); + if ($het == '') $het = getLastOrarend(); + $igDt = date('Y-m-d', mktime(0,0,0,date('m',strtotime($tolDt)), date('d',strtotime($tolDt))+6, date('Y',strtotime($tolDt)))); + + // SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL + if (MAYOR_SOCIAL === true && $action== 'orarendiOraTeremModosit') { + if(is_array($_POST)) { + $TMP_TERMEK = getTermek(array('result' => 'assoc')); + $TMP_TEREMIDS = array_keys($TMP_TERMEK); + foreach($_POST as $_pk => $_pv) { + if (($_pv>0 || $_pv=="teremTorol") && substr($_pk,0,3) == 'OOM') { + list($placeholder, $M['het'], $M['nap'], $M['ora'], $M['tanarId'],$M['dt']) = explode('+',$_pk); + if ($_pv=='teremTorol') $_pv=0; // hackit + $M['teremId'] = readVariable($_pv,'id',0,$TMP_TEREMIDS); + $M['tanev'] = __TANEV; + $teremModositasResult = teremModositas($M); + } + } + } + } + // SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL SOCIAL + + $ADAT['termek'] = getTermek(array('result'=>'assoc','telephelyId'=>$telephelyId)); + $ADAT['tanarok'] = getTanarok(array('result'=>'assoc','telephelyId'=>$telephelyId)); //--TODO telephely +// ===================== + if ($tankorId!='') { + $ADAT['orarend'] = getOrarendByTankorId($tankorId, array('tolDt'=>$tolDt,'igDt'=>$igDt)); + //$ADAT['toPrint'] = getTankorNev($tankorId); // vagy getTankornev külön? + $TANKOROK['haladasi'] = array($tankorId); + $ADAT['kivalasztott'] = array('tankor',$tankorId); + } elseif($tanarId!='') { +// if (_POLICY == 'public') $_SESSION['alert'][] = 'info:adatkezeles:letilva'; +// else { + $ADAT['orarend'] = getOrarendByTanarId($tanarId,array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephelyId'=>$telephelyId,'orarendiOraTankor'=>true)); + $ADAT['toPrint'] = $ADAT['tanarok'][$tanarId]['tanarNev']; +// } + $ADAT['kivalasztott'] = array('tanar',$tanarId); + } elseif($diakId!='') { + $ADAT['orarendTipus'] = 'diakOrarend'; + /* ide kerülhet, hogy a diák (__NAGYKORU)/szülő engedélyezte-e a saját/gyermeke órarendjének mutatását */ + $ADAT['adatKezeles'] = getDiakAdatkezeles($diakId,array('publikusOrarend'=>1)); + $ADAT['publikusOrarend'] = ($ADAT['adatKezeles']['publikusOrarend']['ertek'] == 1) ? true : false; + + // if (MAYOR_SOCIAL === true) $ADAT['publikusOrarend'] = true; + + /* Ha belül vagyunk, akkor állíthassa be egy gombnyomással, hogy ő bizony engedélyezi */ + define(__ALLOWSET, ((__NAGYKORU===true && $diakId==__USERDIAKID) || (__NAGYKORU === false && $diakId==__SZULODIAKID))); + if (_POLICY == 'public' && $ADAT['publikusOrarend'] === false) { + $_SESSION['alert'][] = 'info:adatkezeles:'.'A keresési feltétel a felhasználó által belépés után a napló modulban engedélyezhető!'; + } else { + $ADAT['orarend'] = getOrarendByDiakId($diakId,array('tolDt'=>$tolDt,'igDt'=>$igDt,'osztalyId'=>$osztalyId)); // itt az osztalyId-t nem lenne kötelező megadni, de a felületen úgysem lehet máshogy idejutni + $TANKOROK['haladasi'] = getTankorByDiakId($diakId, __TANEV, array('csakId' => true, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result'=>'idonly')); + $ADAT['diakFelmentes'] = getTankorDiakFelmentes($diakId, __TANEV, array('tolDt'=>$tolDt,'igDt'=>$igDt)); + } + $ADAT['diakEvfolyamAdat'] = getEvfolyamAdatByDiakId($diakId,$tolDt,__TANEV); + $ADAT['kepzes'] = getKepzesByDiakId($diakId, array('result' => '', 'dt' => $tolDt, 'arraymap' => null)); + if (count($ADAT['kepzes'])==1) { + $ADAT['kepzesOraterv'] = getOraszamByKepzes($ADAT['kepzes'][0]['kepzesId'], array('szemeszter'=>1,'evfolyam'=>$ADAT['diakEvfolyamAdat']['evfolyam'])); + } else {//nincs képzése, vagy több van + } + + $ADAT['kivalasztott'] = array('diak',$diakId); + } elseif ($osztalyId!='') { + $ADAT['orarendTipus'] = 'osztalyOrarend'; + $ADAT['orarend'] = getOrarendByOsztalyId($osztalyId,array('tolDt'=>$tolDt,'igDt'=>$igDt)); + $OADAT = getOsztalyAdat($osztalyId); + $ADAT['toPrint'] = $OADAT['osztalyJel']; + $TANKOROK['haladasi'] = getTankorByOsztalyId($osztalyId, __TANEV, array('csakId' => true, 'tanarral' => false, 'result' => 'idonly')); + $ADAT['kivalasztott'] = array('osztaly',$osztalyId); + } elseif ($mkId!='') { + $ADAT['orarend'] = getOrarendByMkId($mkId,array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephelyId'=>$telephelyId)); + $TANKOROK['haladasi'] = getTankorByMkId($mkId, __TANEV, array('csakId' => true,'filter' => array()) ); + $ADAT['kivalasztott'] = array('munkakozosseg',$mkId); + } elseif ($teremId!='') { + $teremAdat = getTeremAdatById($teremId); + $ADAT['orarend'] = getOrarendByTeremId($teremId,'',array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephelyId'=>$telephelyId)); + $ADAT['toPrint'] = $teremAdat['leiras']; + $ADAT['kivalasztott'] = array('terem',$teremId); + } + else $ADAT = array(); +// ----------- + $TANKOROK['erintett'] = $ADAT['orarend']['tankorok']; // --FIXME (2013.05.03) + $TANKOROK['mindenByDt'] = $ADAT['orarend']['mindenTankorByDt']; // --FIXME (2013.05.03) + + $ADAT['NAPOK'] = $_NAPOK = _genNapok($tolDt,$igDt); + + if (isset($tanarId)) { + $ADAT['haladasi'] = getTanarOrak($tanarId,array('tolDt'=>$tolDt,'igDt'=>$igDt,'result'=>'likeOrarend')); + } elseif ((is_array($TANKOROK['mindenByDt']) && count($TANKOROK['mindenByDt']>0)) || $teremId!='') { + // akkor egészítsük ki a haladási naplós órákkal + /* FS#100 */ + $ADAT['haladasi'] = array('tankorok'=>array()); + // dátumfüggő FS#100 + for ($i=0; $i$_dt,'igDt'=>$_dt,'result'=>'likeOrarend')); + else + $_D = getOrak($TANKOROK['haladasi'],array('tolDt'=>$_dt,'igDt'=>$_dt,'result'=>'likeOrarend')); + $ADAT['haladasi']['orak'][$_dt] = $_D['orak'][$_dt]; + if (is_array($_D['tankorok'])) $ADAT['haladasi']['tankorok'] = array_map('intval',array_unique(array_merge($_D['tankorok'],$ADAT['haladasi']['tankorok']))); + } + } + + /* FIX */ + // a haladási naplóban olyan tankörök is szerepelnek, amik eddig nem... + // először gyűjtsük ki a szükséges tanköröket, és utána kérdezzük le az adataikat egyben + // ... + + if (!is_array($TANKOROK['haladasi'])) $TANKOROK['haladasi'] = array(); + if (is_array($ADAT['orarend']['tankorok']) && is_array($ADAT['haladasi']['tankorok'])) { + $TANKOROK = array_unique(array_map('intval',array_merge($ADAT['orarend']['tankorok'],$ADAT['haladasi']['tankorok'],$TANKOROK['haladasi']))); + } elseif (is_array($ADAT['haladasi']['tankorok'])) { + $TANKOROK = $ADAT['haladasi']['tankorok']; + } else { + $TANKOROK = $ADAT['orarend']['tankorok']; + } + if (count($TANKOROK)>0) $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)); + } + if (is_array($TANKOROK)) for ($i=0; $i$tolDt)); + } + //--// + $ADAT['dt'] = $dt; // show this... ha a skin ajax + + $ADAT['csengetesiRend'] = getCsengetesiRend(); + $ADAT['telephelyId'] = $telephelyId; + $ADAT['napiMinOra'] = getMinOra(); + $ADAT['napiMaxOra'] = getMaxOra(); + $ADAT['hetiMaxNap'] = getMaxNap(array('haladasi'=>true,'tolDt'=>$tolDt,'igDt'=>$igDt)); + if ($ADAT['hetiMaxNap']<5) $ADAT['hetiMaxNap'] = 5; + $ADAT['tankorTipus'] = getTankorTipusok(); + $ADAT['orakMost'] = getOrakMost(); + + $_napok = getNapok(array('tolDt'=>$tolDt,'igDt'=>$igDt)); + for ($i=0; $i$tanev,'tolDt'=>$dt,'igDt'=>$dt)); + } elseif (__JEGYZETSZEREPTIPUS == 'tanar') { + $JA['tankorok'] = getTankorByTanarId(__JEGYZETSZEREPID); + if (is_array($_OSZTALYA) && count($_OSZTALYA)>0) $JA['osztalyok'] = getOsztalyok(null,array('osztalyIds'=>$_OSZTALYA)); + $JA['munkakozossegek'] = getMunkakozossegByTanarId(__JEGYZETSZEREPID, array('idonly'=>false)); + } + for ($i=0; $i$tolDt,'igDt'=>$igDt,'tankorIdk'=>$JA['tankorIdk'],'osztalyIdk'=>$JA['osztalyIdk'])); + + if (in_array(_POLICY,array('private','parent')) && (isset($diakId) && ((__DIAK===true && $diakId==_USERDIAKID) || __TANAR===true || __NAPLOADMIN===true ))) { + $ADAT['hianyzas'] = getHianyzasByDiakIds(array($diakId), array('tolDt' => $tolDt, 'igDt' => $igDt, 'result' => 'multiassoc', 'keyfield'=>'oraId')); + } + } + + // $ADAT['dt'] = $tolDt; // BUG - ez vajon miért volt??? - Mert a MSE (Social Edition), ben használtuk. Hibásan. Áttérés tolDt - re + $ADAT['tolDt'] = $tolDt; + $ADAT['tanarId'] = $tanarId; + $ADAT['osztalyId'] = $osztalyId; + $ADAT['diakId'] = $diakId; + $ADAT['tankorId'] = $tankorId; + $ADAT['teremId'] = $teremId; + if ($skin=='ajax' && $_REQUEST['httpResponse']=='json') $_JSON['orarend']=$ADAT; + +//===================================== + + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId','mkId','diakId','telephelyId','teremId'), + 'paramName' => 'tolDt', 'hanyNaponta' => 7, + 'override'=>true, // használathoz még át kell írni pár függvényt!!! +// 'tolDt' => date('Y-m-d', strtotime('Monday', strtotime($_TANEV['kezdesDt']))), + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + 'lapozo' => 0 + ); + $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'post'=>array('tolDt','mkId','tanarId')); + //$TOOL['orarendiHetSelect'] = array('tipus'=>'cella' , 'paramName' => 'het', 'post'=>array('targyId','tankorId','osztalyId','tanarId'), 'disabled'=>true); + if (($osztalyId!='' || $diakId!='') //&& _POLICY=='private' + ) { + $TOOL['diakSelect'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array('tolDt','osztalyId','telephelyId')); + } else { + $TOOL['munkakozossegSelect'] = array('tipus'=>'sor', 'paramName'=>'mkId', 'post'=>array('tolDt','telephelyId')); + } + $TOOL['tanarSelect'] = array('tipus'=>'cella', 'paramName'=>'tanarId', 'post'=>array('tolDt','telephelyId')); + $TOOL['osztalySelect']= array('tipus'=>'cella', 'paramName'=>'osztalyId', 'post'=>array('tolDt','telephelyId')); + $TOOL['teremSelect'] = array('tipus'=>'cella', 'paramName'=>'teremId', 'telephelyId'=>$telephelyId, 'post'=>array('tolDt','telephelyId')); + if ($osztalyId!='' || $tanarId!='' || $diakId!='' || $mkId!='' || $tankorId!='') + $TOOL['tankorSelect'] = array('tipus'=>'sor','paramName'=>'tankorId', 'tolDt'=>$tolDt, 'igDt'=>$igDt, + 'post'=>array('tolDt','osztalyId','targyId','tanarId','diakId','telephelyId')); + + $TOOL['general']['post'] = $TOOLBARVARS; + getToolParameters(); + + +//************************************** + /* TESZT - savePageState() */ + if ($preSetSave || $preSetLoad) { + $SAVESTATE = array(); + foreach($TOOLBARVARS as $key) { + if (isset($$key) && intval($$key)>0) { + $SAVESTATE[] = $key.'-'.intval($$key); + $stateCounter++; + } + } + if ($stateCounter>0) setcookie($page.'_'.$sub.'_'.$f, implode('+',$SAVESTATE), 0, '', '', TRUE, TRUE); + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarend.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarend.php new file mode 100644 index 00000000..b0ed3b60 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarend.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendBetolto-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendBetolto-pre.php new file mode 100644 index 00000000..df4db33a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendBetolto-pre.php @@ -0,0 +1,80 @@ + 'cella', 'paramName' => 'tanev','post' => array('fileName','conv')); + $TOOL['datumTolIgSelect'] = array( + 'tipus' => 'sor', 'post' => array('tanev','fileName','conv','orarendiHet'), + 'tolParamName' => 'tolDt', 'igParamName' => 'igDt', 'hanyNaponta' => 1, + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($TA['kezdesDt']))), + 'igDt' => $TA['zarasDt'], + ); + $TOOL['orarendiHetSelect'] = array( + 'tanev' => $tanev, 'tolDt' => $tolDt, 'igDt' => $igDt, 'tipus' => 'cella', + 'megjelenitendoHetek' => array(1,2,3,4,5,6,7,8,9,10), + 'post' => array('fileName','tanev','tolDt','igDt','conv'), 'paramName' => 'orarendiHet' + ); + getToolParameters(); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendBetolto.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendBetolto.php new file mode 100644 index 00000000..8d4105bd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendBetolto.php @@ -0,0 +1,14 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendEllenorzes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendEllenorzes-pre.php new file mode 100644 index 00000000..45ab709f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendEllenorzes-pre.php @@ -0,0 +1,56 @@ + $tanev, 'result' => 'assoc')); + $ADAT['termek'] = getTermek(array('tipus'=>array())); + $ADAT['tankorok'] = getTankorok(array("tanev=$tanev")); + for ($i = 0; $i < count($ADAT['tankorok']); $i++) { + $tankorId = $ADAT['tankorok'][$i]['tankorId']; + $ADAT['tankorok'][$i]['tankorAdat'] = getTankorAdat($tankorId, $tanev); + $ADAT['tankorok'][$i]['hetiOraszam'] = 0; + for ($j = 0; $j < count($ADAT['tankorok'][$i]['tankorAdat'][$tankorId]); $j++) // Szemeszterenként végigmenve + $ADAT['tankorok'][$i]['hetiOraszam'] += $ADAT['tankorok'][$i]['tankorAdat'][$tankorId][$j]['oraszam']; + if ($j != 0) { + $ADAT['tankorok'][$i]['hetiOraszam'] /= $j; + } + $ADAT['tankorIndex'][$tankorId] = $i; + } + + $ADAT['orarendiHetek'] = getOrarendiHetek(array('tanev' => $tanev, 'tolDt' => $dt, 'igDt' => $dt, 'csakOrarendbol'=>false)); + + // orarendiOra - tankor ellenőrzés + $ADAT['check']['orarendiOraTankor'] = checkOrarendiOraTankor($ADAT); + // tankör óraszám ellenőrzés + $ADAT['check']['tankorOraszam'] = checkTankorOraszam($ADAT); + // hiányzó termek + $ADAT['check']['hianyzoTermek'] = checkHianyzoTermek($ADAT); + // teremütközés + $ADAT['check']['teremUtkozes'] = checkTeremUtkozes($ADAT); + + } + + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'paramName' => 'tanev', 'post' => array()); + $TOOL['datumSelect'] = array( + 'tipus' => 'cella', 'post' => array('tanev'),'paramName' => 'dt', 'hanyNaponta' => 1, + 'override' => true,'tolDt' => $_TA['kezdesDt'], 'igDt' => $_TA['zarasDt'], + ); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendEllenorzes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendEllenorzes.php new file mode 100644 index 00000000..6cd2b79f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendEllenorzes.php @@ -0,0 +1,9 @@ + 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 new file mode 100644 index 00000000..6d80c3fa --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php @@ -0,0 +1,287 @@ + strtotime($_TANEV['zarasDt'])) $_tolDt = $_TANEV['zarasDt']; + elseif (strtotime($tolDt) < strtotime($_TANEV['kezdesDt'])) $_tolDt = $_TANEV['kezdesDt']; + // és akkor korrigáljunk még egyszer + if (isset($_tolDt)) // A következő nap előtti hétfő + $tolDt = date('Y-m-d', strtotime('last Monday', strtotime('+1 days', time()))); +*/ + + if ($tolDt != '') $het = getOrarendiHetByDt($tolDt); + if ($het == '') $het = getLastOrarend(); + $igDt = date('Y-m-d', mktime(0,0,0,date('m',strtotime($tolDt)), date('d',strtotime($tolDt))+6, date('Y',strtotime($tolDt)))); + + // itt ellenőrizzük, hogy a dt (referenciadátum) beleesik-e a tolIg be! + if (isset($tolDt) && isset($refTolDt) && isset($refIgDt)) { + if (strtotime($tolDt)strtotime($refIgDt)) $_SESSION['alert'][] = 'message:wrong_data:hibás referenciadátum!'; + if (strtotime($refTolDt)>strtotime($refIgDt)) $_SESSION['alert'][] = 'message:wrong_data:hibás referenciadátum!'; + } + if ($action==='do') { + $HOT = readVariable($_POST['HALADASIORATOROL'],'id'); + for ($i=0; $i0) $_ADAT['tanarId'] = readVariable($tanarId,'id',null); + else $_ADAT['tanarId'] = readVariable($_tanarId,'id',null); + $_ADAT['haladasiModositando'] = $ADAT['haladasiModositando']; + if ($_TB == 'T') pluszOraFelvesz($_ADAT); + elseif ($_TB == 'B') pluszBlokkFelvesz($_ADAT); + else $_SESSION['alert'][] = '::ajjajj'; + } + } + /* A termeken külön */ + foreach($_POST as $key=>$value) { + if ($value!='' && substr($key,0,2)=='T_') { + $_ADAT = array(); + list($_pre,$_het,$_nap,$_ora,$_tanarId,$_kulcsTolDt) = explode('_',$key); + $_ADAT['teremId'] = readVariable($value, 'id'); + $_ADAT['het'] = readVariable($_het,'id'); + $_ADAT['nap'] = readVariable($_nap,'id'); + $_ADAT['ora'] = readVariable($_ora,'id'); + $_ADAT['tolDt'] = readVariable($refTolDt,'date'); + $_ADAT['igDt'] = readVariable($refIgDt,'date'); + $_ADAT['refDt'] = readVariable($refDt,'date'); + $_ADAT['tanarId'] = readVariable($_tanarId,'id',null); + teremModosit($_ADAT); + } + } + unset($_ADAT); + } + + + $ADAT['termek'] = getTermek(array('result'=>'assoc')); + $ADAT['tanarok'] = getTanarok(array('result'=>'assoc')); +// ===================== + if ($tankorId!='') { + $ADAT['orarend'] = getOrarendByTankorId($tankorId, array('tolDt'=>$tolDt,'igDt'=>$igDt)); + //$ADAT['toPrint'] = getTankorNev($tankorId); // vagy getTankornev külön? + } elseif($tanarId!='') { + $ADAT['orarend'] = getOrarendByTanarId($tanarId,array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephely'=>$telephely,'orarendiOraTankor'=>true)); + $ADAT['toPrint'] = $ADAT['tanarok'][$tanarId]['tanarNev']; + $ADAT['felvehetoTankorok'] = getTankorByTanarId($tanarId,$tanev, array('csakId'=>false,'tolDt'=>$refTolDt, 'igDt'=>$refIgDt)); + +//======================== +/* illesszük ide az Órarendi óra tankör összerendezés 4.6 */ + $ADAT['orarendioraTankor'] = getOrarendByTanarId($tanarId,array('tolDt'=>$tolDt,'igDt'=>$igDt,'orarendiOraTankor'=>true)); +//======================== + $TANKORIDK = getTankorByTanarId($tanarId, __TANEV, array('csakId' => true, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result' => 'indexed', 'tanarral' => false)); + $ADAT['haladasi'] = getOrak($TANKORIDK, array('tolDt'=>$tolDt,'igDt'=>$igDt, 'result'=>'likeOrarend', 'elmaradokNelkul'=>false)); + $ADAT['vanHaladasi'] = checkHaladasi(array('tolDt'=>$refTolDt,'igDt'=>$refIgDt)); + } elseif($diakId!='') { + $ADAT['orarend'] = getOrarendByDiakId($diakId,array('tolDt'=>$tolDt,'igDt'=>$igDt)); + } elseif ($osztalyId!='') { + $ADAT['orarend'] = getOrarendByOsztalyId($osztalyId,array('tolDt'=>$tolDt,'igDt'=>$igDt)); + + $OADAT = getOsztalyAdat($osztalyId); + $ADAT['toPrint'] = $OADAT['osztalyJel']; + + + $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)); + } elseif ($teremId!='') { + $ADAT['orarend'] = getOrarendByTeremId($teremId,'',array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephely'=>$telephely)); + } + else $ADAT = array(); + + $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']; + $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)); + } + + /* quick fix */ + $_T = array(); + //if (count($TANKOROK)==0) { + for ($i=0; $i$_T)); + + $ADAT['hibasOrak'] = getHibasOrak(); + + //--// + $ADAT['dt'] = $dt; // show this... ha a skin ajax + + //$ADAT['napiMinOra'] = getMinOra(); + $ADAT['napiMinOra'] = 0; // Ha még nincs is 0. óra, lehessen felvenni, ha kell + $ADAT['napiMaxOra'] = getMaxOra()+1; // +1 mindig legyen, ha nincs konstans, akkor is + if ($ADAT['napiMaxOra'] < __MAXORA_MINIMUMA) $ADAT['napiMaxOra'] = __MAXORA_MINIMUMA; // Legalább __MAXORA_MINIMUMA órát fel lehessen venni + $ADAT['hetiMaxNap'] = getMaxNap(); + if ($ADAT['hetiMaxNap'] < __HETIMAXNAP_MINIMUMA) $ADAT['hetiMaxNap'] = __HETIMAXNAP_MINIMUMA; + + $ADAT['tanarId'] = $tanarId; + $ADAT['osztalyId'] = $osztalyId; + $ADAT['refTolDt'] = $refTolDt; + $ADAT['refIgDt'] = $refIgDt; + $ADAT['tolDt'] = $tolDt; +//===================================== + + /* TOOL ME :) */ + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId','mkId','diakId','telephely','refTolDt','refIgDt'), + 'paramName' => 'tolDt', 'title' => 'ORARENDDT', + 'hanyNaponta' => 7, + 'override'=>true, // használathoz még át kell írni pár függvényt!!! +// 'tolDt' => date('Y-m-d', strtotime('Monday', strtotime($_TANEV['kezdesDt']))), + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), +// 'tolDt' => $_TANEV['elozoZarasDt'], + 'igDt' => $_TANEV['kovetkezoKezdesDt'], + ); + $TOOL['datumTolIgSelect'] = array( + 'tipus' => 'sor', 'title' => 'REFDT', + 'post'=>array('tolDt','tanarId','osztalyId','tankorId','mkId','diakId','telephely'), + 'tolParamName' => 'refTolDt', 'igParamName' => 'refIgDt', 'hanyNaponta' => 1, + 'tolDt' => $_TANEV['elozoZarasDt'], + 'igDt' => $_TANEV['kovetkezoKezdesDt'], + 'override' => true, + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + ); + + //$TOOL['orarendiHetSelect'] = array('tipus'=>'cella' , 'paramName' => 'het', 'post'=>array('targyId','tankorId','osztalyId','tanarId'), 'disabled'=>true); +// if ($osztalyId!='' || $diakId!='') { +// $TOOL['diakSelect'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array('refTolDt','refIgDt','tolDt','osztalyId','telephely')); +// } else +// $TOOL['munkakozossegSelect'] = array('tipus'=>'sor', 'paramName'=>'mkId', 'post'=>array('refTolDt','refIgDt','tolDt','telephely')); + $TOOL['tanarSelect'] = array('tipus'=>'cella', 'paramName'=>'tanarId', 'post'=>array('refTolDt','refIgDt','tolDt','telephely')); + $TOOL['osztalySelect']= array('tipus'=>'cella', 'paramName'=>'osztalyId', 'post'=>array('refTolDt','refIgDt','tolDt')); +// $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephely', 'post'=>array('refTolDt','refIgDt','tolDt','mkId','tanarId')); +// $TOOL['teremSelect'] = array('tipus'=>'cella', 'paramName'=>'teremId', 'telephely'=>$telephely, 'post'=>array('refTolDt','refIgDt','tolDt','telephely')); + if ($osztalyId!='' || $tanarId!='' || $diakId!='' || $mkId!='') $TOOL['tankorSelect'] = array('tipus'=>'sor','paramName'=>'tankorId', 'post'=>array('refTolDt','refIgDt','tolDt','osztalyId','targyId','tanarId','diakId','telephely')); + getToolParameters(); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito.php new file mode 100644 index 00000000..59ad88ac --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito.php @@ -0,0 +1,14 @@ + 0 + ) + putOrarend($ADAT); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTankor-pre.php new file mode 100644 index 00000000..68a32271 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTankor-pre.php @@ -0,0 +1,56 @@ +$tolDt,'igDt'=>$igDt,'orarendiOraTankor'=>true)); + $ORAREND['napiMinOra'] = getMinOra(); + $ORAREND['napiMaxOra'] = $ORAREND['maxOra'] = getMaxOra(); + $ORAREND['hetiMaxNap'] = getMaxNap(); + $TANKOROK = getTankorByTanarId($tanarId,__TANEV,array('csakId'=>false,'result'=>'multiassoc','tolDt'=>$_TANEV['kezdesDt'],'igDt'=>$_TANEV['zarasDt'])); + foreach($TANKOROK as $_tankorId => $_TA) { + $tankorBlokk = getTankorBlokkByTankorId($_tankorId, __TANEV, array('blokkNevekkel'=> true)); + if (is_array($tankorBlokk )) + $TANKOROK[$_tankorId][0]['blokkAdat'] = $tankorBlokk; + } + dump($TANKOROK); + } else { $ORAREND = array(); } + + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId'), + 'paramName' => 'tolDt', 'hanyNaponta' => 7, + 'override'=>true, // használathoz még át kell írni pár függvényt!!! + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + ); + $TOOL['tanarSelect'] = array('tipus'=>'cella','paramName'=>'tanarId', 'post'=>array('het','tolDt')); + getToolParameters(); + + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTankor.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTankor.php new file mode 100644 index 00000000..f1962014 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTankor.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTeremModositas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTeremModositas-pre.php new file mode 100644 index 00000000..c79371fb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTeremModositas-pre.php @@ -0,0 +1,86 @@ + $tanev)); + $ADAT['napiMaxOra'] = getMaxOra(array('tanev' => $tanev)); + $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'datetime', $_TA['kezdesDt']); + + $ADAT['tanarok'] = getTanarok(array('tanev' => $tanev, 'result' => 'assoc')); + $ADAT['termek'] = getTermek(array('tipus'=>array())); + $ADAT['tankorok'] = getTankorok(array("tanev=$tanev")); + for ($i = 0; $i < count($ADAT['tankorok']); $i++) { + $tankorId = $ADAT['tankorok'][$i]['tankorId']; + $ADAT['tankorok'][$i]['tankorAdat'] = getTankorAdat($tankorId, $tanev); + $ADAT['tankorIndex'][$tankorId] = $i; + } + + $ADAT['orarendiHetek'] = getOrarendiHetek(array('tanev' => $tanev, 'tolDt' => $dt, 'igDt' => $dt,'felsohatar'=>99)); + $ADAT['orak'] = array(); + if (isset($ADAT['napiMaxOra']) && isset($ADAT['napiMinOra'])) { + for ($n = $ADAT['napiMinOra']; $n <= $ADAT['napiMaxOra']; $n++) $ADAT['orak'][] = $n; + } else { + $_SESSION['alert'][] = 'message:nincs órarend?:'.$ADAT['napiMaxOra'].', '.$ADAT['napiMinOra']; + $ADAT['orak'] = array(0,1,2,3,4,5,6,7,8,9); + } + + if ($action == 'orarendTeremModositas') { + + $ADAT['tanarId'] = readVariable($_POST['tanarId'], 'numeric unsigned', null); + $ADAT['het'] = readVariable($_POST['het'], 'numeric unsigned', null, $ADAT['orarendiHet']); + $ADAT['nap'] = readVariable($_POST['nap'], 'numeric unsigned', null, array(1,2,3,4,5,6,7)); + $ADAT['ora'] = readVariable($_POST['ora'], 'numeric unsigned', null, $ADAT['orak']); + + if (isset($ADAT['tanarId']) && isset($ADAT['het']) && isset($ADAT['nap']) && isset($ADAT['ora'])) { + + $ADAT['termek'] = getTermek(array('result' => 'assoc')); + $ADAT['orarendiOra'] = getOrarendiOraAdat($ADAT); + $ADAT['foglaltTermek'] = getFoglaltTeremekByOrarendiOra($ADAT); + + $ADAT['teremIds'] = array_keys($ADAT['termek']); + + $ADAT['teremId'] = readVariable($_POST['teremId'], 'numeric unsigned', intval($ADAT['orarendiOra']['teremId']), $ADAT['teremIds']); + if ($ADAT['teremId'] != $ADAT['orarendiOra']['teremId']) { + if ($tanarId = teremModositas($ADAT)) { // ütközés esetén az ütkörő óra adatait + $ADAT['tanarId'] = $tanarId; + $ADAT['orarendiOra'] = getOrarendiOraAdat($ADAT); + } else { + $ADAT['orarendiOra']['teremId'] = $ADAT['teremId']; + } + $ADAT['foglaltTermek'] = getFoglaltTeremekByOrarendiOra($ADAT); + } + + } + + } + + } + + $TOOL['tanevSelect'] = array('tipus' => 'cella', 'paramName' => 'tanev', 'post' => array()); + $TOOL['datumSelect'] = array( + 'tipus' => 'cella', 'post' => array('tanev'),'paramName' => 'dt', 'hanyNaponta' => 1, + 'override' => true,'tolDt' => $_TA['kezdesDt'], 'igDt' => $_TA['zarasDt'], + ); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTeremModositas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTeremModositas.php new file mode 100644 index 00000000..0473433c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendTeremModositas.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendUtkozes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendUtkozes-pre.php new file mode 100644 index 00000000..573fa8d8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendUtkozes-pre.php @@ -0,0 +1,77 @@ + strtotime($_TANEV['zarasDt'])) $tolDt = $_TANEV['zarasDt']; + elseif (strtotime($tolDt) < strtotime($_TANEV['kezdesDt'])) $tolDt = $_TANEV['kezdesDt']; + if ($tolDt != '') $het = getOrarendiHetByDt($tolDt); + if ($het == '') $het = getLastOrarend(); + $igDt = date('Y-m-d', mktime(0,0,0,date('m',strtotime($tolDt)), date('d',strtotime($tolDt))+6, date('Y',strtotime($tolDt)))); + + $ADAT['tanarok'] = getTanarok(array('result'=>'assoc')); + +// ===================== + if ($tankorId!='') { + $ADAT['orarend'] = getOrarendByTankorId($tankorId, array('tolDt'=>$tolDt,'igDt'=>$igDt)); + //$ADAT['toPrint'] = getTankorNev($tankorId); // vagy getTankornev külön? + } elseif($tanarId!='') { + $ADAT['orarend'] = getOrarendByTanarId($tanarId,array('tolDt'=>$tolDt,'igDt'=>$igDt)); + $ADAT['toPrint'] = $ADAT['tanarok'][$tanarId]['tanarNev']; + } elseif($diakId!='') { + $ADAT['orarend'] = getOrarendByDiakId($diakId,array('tolDt'=>$tolDt,'igDt'=>$igDt)); + } elseif ($osztalyId!='') { + + $ADAT['diakok'] = getDiakokByOsztaly($osztalyId, array('tanev' => $tanev, 'statuszonkent' => 0)); + + foreach ($ADAT['diakok'] as $_diakId => $dAdat) { + $D = array(); + $D['orarend'] = getOrarendByDiakId($_diakId,array('tolDt'=>$tolDt,'igDt'=>$igDt)); + $D['tankorok'] = getTankorByDiakId($_diakId,__TANEV,array('csakId'=>false,'result'=>'multiassoc','tolDt'=>$tolDt,'igDt'=>$igDt)); + $ADAT['diakOrarend'][$_diakId] = $D; + } + + } elseif ($mkId!='') { + $ADAT['orarend'] = getOrarendByMkId($mkId,array('tolDt'=>$tolDt,'igDt'=>$igDt)); + } elseif ($teremId!='') { + $ADAT['orarend'] = getOrarendByTeremId($teremId,'',array('tolDt'=>$tolDt,'igDt'=>$igDt)); + } + else $ADAT = array(); + + /* TOOL ME :) */ + + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId'), + 'paramName' => 'tolDt', 'hanyNaponta' => 7, + 'tolDt' => date('Y-m-d', strtotime('Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + ); + $TOOL['osztalySelect']= array('tipus'=>'cella','paramName'=>'osztalyId', 'post'=>array('tolDt')); + getToolParameters(); + +} + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendUtkozes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendUtkozes.php new file mode 100644 index 00000000..a2ea24cb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendUtkozes.php @@ -0,0 +1,47 @@ + $dAdat) { + _check($ADAT['diakOrarend'][$_diakId],$dAdat,$err); + } + + if ($err==0) echo 'nincs ütközés'; + + +function _check($ADAT,$dAdat,&$err) { + $TANKORADAT = $ADAT['tankorok']; + if (is_array($ADAT['orarend']['assoc'])) + foreach($ADAT['orarend']['assoc'] as $het => $HETI) { + foreach ($HETI as $nap => $NAPI) { + foreach($NAPI as $ora => $ORA) { + if (count($ORA)>1) { + $db=0; + for ($j=0; $j1) { + $err++; + echo $dAdat['diakNev']; + echo " hét:$het nap:$nap ora:$ora ütközés szám:".count($ORA)."db.
    "; + echo '
      '; + for ($j=0; $j'; + echo $TANKORADAT[$ORA[$j]['tankorId']][0]['tankorNev']; + echo '('.$TANKORADAT[$ORA[$j]['tankorId']][0]['jelenlet'].')'; + echo $TANKORADAT[$ORA[$j]['tankorId']][0]['tankorId']; + echo ''; + } + echo '
    '."\n"; + } + } + } + } + } +} + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/szabadTerem-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/szabadTerem-pre.php new file mode 100644 index 00000000..404c18b1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/szabadTerem-pre.php @@ -0,0 +1,35 @@ + 'assoc')); + $ADAT['teremIdk'] = getTermek(array('result' => 'idonly', 'tipus' => array('tanterem','szaktanterem','osztályterem','labor','gépterem','tornaterem','tornaszoba','fejlesztőszoba','tanműhely','előadó','könyvtár','díszterem','templom','egyéb'), 'telephelyId' => $telephelyId)); + $ADAT['szabadTermek'] = getSzabadTermekByDtInterval($tolDt, $igDt, $ADAT['teremIdk'], $forras); + $ADAT['toPrint'] = 'Szabad termek ('.$forras.')'; + + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId','mkId','diakId'), + 'paramName' => 'tolDt', 'hanyNaponta' => 7, + 'override'=>true, // használathoz még át kell írni pár függvényt!!! + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + ); + $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'telephelyek'=>$ADAT['telephelyek'], 'post'=>array('tolDt')); + + $TOOL['forrasSelect'] = array('tipus'=>'cella', 'paramName'=>'forras', 'paramValue'=>$forras, 'adatok'=>array('ora'=>'haladási napló','orarendiOra'=>'órarend'), 'post'=>array('tolDt','telephelyId')); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/szabadTerem.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/szabadTerem.php new file mode 100644 index 00000000..4b3becbe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/szabadTerem.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/tanarOrarend-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/tanarOrarend-pre.php new file mode 100644 index 00000000..51110328 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/tanarOrarend-pre.php @@ -0,0 +1,49 @@ +'cella', 'post'=>array('orarendiHet','felev'), + 'paramName' => 'tolDt', 'hanyNaponta' => 1, + 'override'=>true, // használathoz még át kell írni pár függvényt!!! + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + ); + $TOOL['orarendiHetSelect'] = array( + 'tanev' => $tanev, 'tolDt' => $tolDt, 'igDt' => $igDt, 'tipus' => 'cella', +// 'megjelenitendoHetek' => array(1,2,3,4,5,6,7,8,9,10), + 'post' => array('fileName','tanev','tolDt','igDt','conv','felev'), 'paramName' => 'orarendiHet' + ); + $TOOL['felevSelect'] = array( + 'tanev'=>$tanev,'tipus' => 'cella', 'post' => array('fileName','tanev','tolDt','igDt','conv','orarendiHet'), 'paramName' => 'felev' + ); + getToolParameters(); +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/tanarOrarend.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/tanarOrarend.php new file mode 100644 index 00000000..5c911be6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/tanarOrarend.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/termez-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/termez-pre.php new file mode 100644 index 00000000..1d6ba091 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/termez-pre.php @@ -0,0 +1,173 @@ +24) $NAGYTEREM[$T[$i]['telephelyId']][] = $T[$i]['teremId']; + elseif ($T[$i]['ferohely']>0) $KISTEREM[$T[$i]['telephelyId']][] = $T[$i]['teremId']; + } + // + + $ADAT['terem'] = getTermek(array('result'=>'assoc')); + $ADAT['teremPreferencia'] = $P = getTeremPreferencia(); + + $ADAT['tanar'] = getTanarok(array('result'=>'assoc')); + $ADAT['targy'] = getTargyak(array('result'=>'assoc','arraymap'=>array('targyId'))); + + if ($action=='del') { + $delTeremPreferenciaId = readVariable($_GET['delTeremPreferenciaId'],'id'); + $q = "DELETE FROM teremPreferencia WHERE teremPreferenciaId=%u"; + $v = array($delTeremPreferenciaId); + $ret = db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo_intezmeny','values'=>$v)); + $ADAT['teremPreferencia'] = getTeremPreferencia(); + } elseif ($action=='run') { + $runTeremPreferenciaId = readVariable($_GET['runTeremPreferenciaId'],'id'); + $P = getTeremPreferencia(array('teremPreferenciaId'=>$runTeremPreferenciaId)); + //$q = "SELECT tanarId FROM teremPreferencia WHERE teremPreferenciaId=%u"; + //$_tanarId = db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo','values'=>array($runTeremPreferenciaId)),$lr); + + for ($i=0; $i0) { + for ($t=0; $tfalse,'fv' => '****', 'modul' => 'naplo','values'=>array($_termek[$t],$tolDt)),$lr); + $q = "UPDATE orarendiOra AS y LEFT JOIN orarendiOraTankor USING (tanarId,osztalyJel,targyJel) LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) +SET teremId=%u WHERE tanarId=%u AND teremId IS NULL AND targyId=%u +AND (SELECT count(*) FROM __o__ AS x WHERE y.het=x.het AND y.nap=x.nap AND y.ora=x.ora)=0 +"; + $v = array($_termek[$t],$_tanarId,$_targyId); + $db += db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo','values'=>$v,'result'=>'affected rows'),$lr); + $q = "DROP TABLE __o__"; + db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo'),$lr); + } + } else { + for ($t=0; $tfalse,'fv' => '****', 'modul' => 'naplo','values'=>array($_termek[$t],$tolDt)),$lr); + + $q = "UPDATE orarendiOra AS y SET teremId=%u WHERE tanarId=%u AND teremId IS NULL +AND (SELECT count(*) FROM __o__ AS x WHERE y.het=x.het AND y.nap=x.nap AND y.ora=x.ora)=0 +"; + $v = array($_termek[$t],$_tanarId); + $db += db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo','values'=>$v,'result'=>'affected rows'),$lr); + $q = "DROP TABLE __o__"; + db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo'),$lr); + } + } + db_close($lr); + $_SESSION['alert'][] = 'info:success:'.$db; + } + + } elseif ($action=='beallitasokModositasa') { + if (is_array($_POST)) { + foreach($_POST as $k=>$v) { + if (strstr($k,'teremPreferenciaId')!==false) { + list($_rest,$_teremPreferenciaId) = explode('_',$k); + if ($_teremPreferenciaId!=$v) { + echo 'csere'; + echo $_teremPreferenciaId.'==>'.$v; + $q = "UPDATE teremPreferencia SET teremPreferenciaId=%u WHERE teremPreferenciaId=%u"; + $v = array($v,$_teremPreferenciaId); + $ret = db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo_intezmeny','values'=>$v,'result'=>'update')); + } + } + } + $ujTeremPreferenciaId = readVariable($_POST['ujTeremPreferenciaId'],'id'); + $ujTanarId = readVariable($_POST['ujTanarId'],'id'); + $ujTargyId = readVariable($_POST['ujTargyId'],'id'); + $ujTeremStr = readVariable($_POST['ujTeremStr'],'string'); // ezt validálni kellene... + // terem validál + $_UJTERMEK = explode(',',$ujTeremStr); + for ($i=0; $ifalse,'fv' => '****', 'modul' => 'naplo_intezmeny','values'=>$v,'result'=>'update')); + } + } + /* RELOAD! */ + $ADAT['teremPreferencia'] = $P = getTeremPreferencia(); + } elseif ($action=='magic') { + + $lr = db_connect('naplo'); + for ($i=0; $i0) { + for ($t=0; $tfalse,'fv' => '****', 'modul' => 'naplo','values'=>array($_termek[$t],$tolDt)),$lr); + $q = "UPDATE orarendiOra AS y LEFT JOIN orarendiOraTankor USING (tanarId,osztalyJel,targyJel) LEFT JOIN ".__INTEZMENYDBNEV.".tankor USING (tankorId) +SET teremId=%u WHERE tanarId=%u AND teremId IS NULL AND targyId=%u +AND (SELECT count(*) FROM __o__ AS x WHERE y.het=x.het AND y.nap=x.nap AND y.ora=x.ora)=0 +"; + $v = array($_termek[$t],$_tanarId,$_targyId); + $db += db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo','values'=>$v,'result'=>'affected rows'),$lr); + $q = "DROP TABLE __o__"; + db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo'),$lr); + } + } else { + for ($t=0; $tfalse,'fv' => '****', 'modul' => 'naplo','values'=>array($_termek[$t],$tolDt)),$lr); + + $q = "UPDATE orarendiOra AS y SET teremId=%u WHERE tanarId=%u AND teremId IS NULL +AND (SELECT count(*) FROM __o__ AS x WHERE y.het=x.het AND y.nap=x.nap AND y.ora=x.ora)=0 +"; + $v = array($_termek[$t],$_tanarId); + $db += db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo','values'=>$v,'result'=>'affected rows'),$lr); + $q = "DROP TABLE __o__"; + db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo'),$lr); + } + } + } + db_close($lr); + $_SESSION['alert'][] = 'info:success:'.$db; + + } // action + + $TOOL['datumSelect'] = array( + 'tipus'=>'cella', 'post'=>array(), + 'paramName' => 'tolDt', + 'hanyNaponta' => 1, + 'override'=>true, // használathoz még át kell írni pár függvényt!!! +// 'tolDt' => date('Y-m-d', strtotime('Monday', strtotime($_TANEV['kezdesDt']))), + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), +// 'tolDt' => $_TANEV['elozoZarasDt'], + 'igDt' => $_TANEV['kovetkezoKezdesDt'], + ); +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/termez.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/termez.php new file mode 100644 index 00000000..8ff70034 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/termez.php @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizelomenetel-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizelomenetel-pre.php new file mode 100644 index 00000000..1c12e7fd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizelomenetel-pre.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizelomenetel.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizelomenetel.php new file mode 100644 index 00000000..62a2de0c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizelomenetel.php @@ -0,0 +1,3 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizonyitvany-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizonyitvany-pre.php new file mode 100644 index 00000000..f80adda1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizonyitvany-pre.php @@ -0,0 +1,166 @@ += _TIME + ) { + $szemeszterId = $_POST['szemeszterId'] = $_TANEV2['szemeszter'][$i]['szemeszterId']; + $tanev = $_TANEV2['szemeszter'][$i]['tanev']; + $szemeszter = $_TANEV2['szemeszter'][$i]['szemeszter']; + break; + } + } + } + + if (!is_null($szemeszterId)) $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId); + + if (__DIAK) { // diák / szülő csak a saját adatait nézheti + $diakId = __USERDIAKID; + } elseif (isset($_POST['diakId']) && $_POST['diakId'] != '') { + $diakId = readVariable($_POST['diakId'],'numeric'); + } + + if (!is_null($diakId)) { + // intézmlényi adatok lekérdezése + $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY); + // diák adatai + $ADAT['diakAdat'] = getDiakAdatById($diakId); + $ADAT['diakKepzes'] = getKepzesByDiakId($diakId, array('result'=>'indexed')); // itt a valaha volt összes képzés lekérdezésre kerül! + for ($i=0; $iarray('targyId','evfolyam','szemeszter'))); + } + + if (isset($szemeszterId)) { + + define('__MODOSITHAT',($ADAT['szemeszterAdat']['statusz'] == 'aktív' && __NAPLOADMIN)); + define('__ZARO_SZEMESZTER', $ADAT['szemeszterAdat']['szemeszter'] == $ADAT['szemeszterAdat']['tanevAdat']['maxSzemeszter']); + define('__FOLYO_SZEMESZTER', + strtotime($ADAT['szemeszterAdat']['kezdesDt']) <= _TIME + && strtotime($ADAT['szemeszterAdat']['zarasDt']) >= _TIME + ); + // ---- action ---- // + if (__MODOSITHAT) { + $evfolyam = readVariable($_POST['evfolyam'],'numeric',null); + $targyId = readVariable($_POST['targyId'],'id',null); + if ($action == 'zaroJegyModositas' && isset($_POST['targyId']) && $_POST['targyId'] != '') { + // jogviszony ellenőrzés, + // majd beírás: + for ($i=0; $i $ADAT['szemeszterAdat']['tanev'])); + /* + A tanítási hetek számát nem tankörönként vagy tárgyanként nézzük, hanem egységesen - tehát, ha több osztálya + van a tanulónak és azokban eltérő a tanítási hetek száma, akkor úgy is hibás lesz a mutatott kép. + */ + if (!isset($ADAT['osztalyId'])) $ADAT['osztalyId'] = intval($ADAT['diakAdat']['osztaly'][0]['osztalyId']); + // A tanítási hetek száma csak az aktuális évben kérdezhető le (az osztalyJelleg alaján döntjük el, hogy végzős/érettségiző-e + if ($ADAT['szemeszterAdat']['tanev'] == __TANEV) + define('TANITASI_HETEK_SZAMA', getTanitasiHetekSzama(array('osztalyId'=>$ADAT['osztalyId']))); + /* Évfolyam meghatározás ha lehet + Peremfeltétel: adott legyen a szemeszter + */ + $ADAT['diakOsztaly'] = getDiakokOsztalyai(array($diakId), array('tanev' => $ADAT['szemeszterAdat']['tanev'])); + for($j=0; $j nincs évfolyama sem + if (!is_array($ADAT['diakEvfolyam']) || count($ADAT['diakEvfolyam'])==0) $ADAT['diakEvfolyam'] = $ADAT['diakEvfolyamJel'] = range(1,16); + + // diák adott szemeszterének bizonyítványa + $ADAT['bizonyitvany'] = getDiakBizonyitvany($diakId, $ADAT); + $ADAT['hianyzas'] = getHianyzasOsszesitesByDiakId($diakId, $ADAT['szemeszterAdat']); + } else { + // diák eddigi "pályafutása" (több szemeszter adatai együtt) + $ADAT['bizonyitvany'] = getDiakBizonyitvany($diakId, $ADAT); + $ADAT['hianyzas'] = getHianyzasOsszesitesByDiakId($diakId); + } +// dump($ADAT['bizonyitvany']); + $_VIZSGA = getVizsgak(array('diakId'=>$diakId)); + /* REINDEX */ + for ($i=0; $i'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') , 'post' => array('osztalyId', 'diakId', 'sorrendNev')); + if (!__DIAK) { + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post' => array('szemeszterId', 'sorrendNev')); + $TOOL['diakSelect'] = array( + 'tipus'=>'sor','paramName' => 'diakId', + 'osztalyId'=> $osztalyId,'post' => array('osztalyId','szemeszterId', 'sorrendNev'), + 'statusz' => array('vendégtanuló','jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + ); + if (isset($diakId)) { + $TOOL['diakLapozo'] = array( + 'tipus'=>'sor','paramName' => 'diakId', + 'osztalyId'=> $osztalyId,'post' => array('osztalyId','szemeszterId', 'sorrendNev'), + 'statusz' => array('vendégtanuló','jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + ); + } + } + $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName' => 'sorrendNev', 'post' => array('szemeszterId', 'osztalyId', 'diakId')); + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizonyitvany.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizonyitvany.php new file mode 100644 index 00000000..a8f104fa --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/bizonyitvany.php @@ -0,0 +1,16 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/diak-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/diak-pre.php new file mode 100644 index 00000000..154a9097 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/diak-pre.php @@ -0,0 +1,100 @@ + $sulyozas)); + $ADAT['diakTargy'] = getTargyakByDiakId($diakId, array('tanev' => __TANEV, 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], 'result' => 'indexed', 'filter' => 'kovetelmeny', 'targySorrendNev' => $targySorrend)); // OK + // Az aktuális szemeszter kiválasztása + if (__FOLYO_TANEV) { + $time = time(); + foreach ($_TANEV['szemeszter'] as $szemeszter => $szemeszterAdat) { + if ($time > strtotime($szemeszterAdat['kezdesDt']) && $time < strtotime($szemeszterAdat['zarasDt'])) + break; + } + if ($szemeszter !== false) { + define('__FOLYO_SZEMESZTER', $szemeszter); + $szemeszterKezdesDt = $szemeszterAdat['kezdesDt']; + $szemeszterZarasDt = $szemeszterAdat['zarasDt']; + } + } + if (!defined('__FOLYO_SZEMESZTER')) define('__FOLYO_SZEMESZTER',false); + + if (isset($_POST['tolDt']) && $_POST['tolDt'] != '') $tolDt = readVariable($_POST['tolDt'], 'date'); +// elseif (isset($szemeszterKezdesDt)) $tolDt = $szemeszterKezdesDt; + else $tolDt = $_TANEV['kezdesDt']; + + if (isset($_POST['igDt']) && $_POST['igDt'] != '') $igDt = readVariable($_POST['igDt'],'date'); + elseif (isset($szemeszterZarasDt)) $igDt = $szemeszterZarasDt; + else $igDt = $_TANEV['zarasDt']; + $ADAT['zaroJegyek'] = getDiakZarojegyek($diakId,$_TANEV['tanev'],null,array('arraymap'=>array('diakId','targyId','tanev','szemeszter'))); + $tmp = getTankorByDiakId($diakId); + $ADAT['targyTankor'] = reindex ( $tmp, array('targyId') ); + } + if ($skin=='pda') { + + } else { + if (!__DIAK) { + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post'=>array('tolDt', 'igDt', 'targySorrend')); + $TOOL['diakSelect'] = array('tipus'=>'cella','paramName'=>'diakId', 'post'=>array('osztalyId','tolDt', 'igDt', 'targySorrend')); + $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName'=>'targySorrend', 'post'=>array('diakId','osztalyId','tolDt', 'igDt', 'targySorrend')); + if (__NAPLOADMIN) $TOOL['diakSelect']['statusz'] = array('jogviszonyban van', 'magántanuló', 'jogviszonya felfüggesztve', 'jogviszonya lezárva', 'vendégtanuló'); + $TOOL['diakLapozo'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array('osztalyId','tolDt', 'igDt', 'targySorrend')); + } +/* if (isset($diakId)) { + $TOOL['datumTolIgSelect'] = array('tipus' => 'sor', 'tolParamName' => 'tolDt', 'igParamName' => 'igDt', + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'hanyNaponta' => 'havonta', 'post'=>array('osztalyId', 'diakId', 'targySorrend')); + } +*/ + if (isset($osztalyId)) { + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=osztalyozo&f=tankor'), + 'titleConst' => array(''), 'post' => array('osztalyId'), + 'paramName'=>'diakId'); + } + getToolParameters(); + } + +// tankorSelect +// targySorrendSelecct +// diakSelect --> diakLapozo + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/diak.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/diak.php new file mode 100644 index 00000000..3173d8a7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/diak.php @@ -0,0 +1,12 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/dolgozat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/dolgozat-pre.php new file mode 100644 index 00000000..1672b48b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/dolgozat-pre.php @@ -0,0 +1,168 @@ + false, 'lista' => true)); + } elseif (isset($tankorId)) $Dolgozat = getTankorDolgozatok($tankorId); +// elseif (isset($diakId) || isset($osztalyId) || isset($tanarId)) $Dolgozat = getTankorDolgozatok($Tankorok); + + // ------ action ----------------------------- // + + if ($action == 'dolgozatBejelentes') { + if (defined('__USERTANARID') && __USERTANARID == $tanarId && isset($tankorId)) { + $dolgozatId = ujDolgozat(__USERTANARID, $tankorId); + $Dolgozat = getDolgozat($dolgozatId); + $valaszthatoTankorok = getTankorByTargyId($Dolgozat['targyId'],__TANEV,array('idonly' => false, 'lista' => true)); + } + } elseif ($action == 'dolgozatTorles') { + + } + + define(__MODOSITHAT, + isset($dolgozatId) + && ( + (__NAPLOADMIN && $_TANEV['statusz'] == 'aktív') + || ( + __FOLYO_TANEV && __TANAR + && is_array($Dolgozat['tanarIds']) + && in_array(__USERTANARID, $Dolgozat['tanarIds']) + ) + ) + ); + + if (__MODOSITHAT) if ($action == 'dolgozatModositas') { + + if (isset($_POST['dolgozatTorles'])) { + if (!$Dolgozat['ertekelt']) { + $action = 'dolgozatTorles'; + if (dolgozatTorles($dolgozatId)) { + logAction( + array( + 'szoveg'=>'Dolgozat törlés: '.$dolgozatId, + 'table'=>'dolgozat' + ) + ); + unset($Dolgozat); unset($dolgozatId); + $_SESSION['alert'][] = 'info:success:dolgozat törlés'; + } + } + } else { + $dolgozatNev = $_POST['dolgozatNev']; + $tervezettDt = readVariable($_POST['tervezett-dt'],'datetime',null); + if (dolgozatModositas($dolgozatId, $dolgozatNev, $tervezettDt)) { + logAction( + array( + 'szoveg'=>'Dolgozat módosítás (név, tervezett dátum): '.$dolgozatId, + 'table'=>'dolgozat' + ) + ); + $Dolgozat['dolgozatNev'] = $dolgozatNev; + $Dolgozat['tervezettDt'] = $tervezettDt; + $_SESSION['alert'][] = 'info:done:'; + } + } + + } elseif ($action == 'dolgozatTankorHozzarendeles') { + + if (is_array($_POST['tankorIds']) && count($_POST['tankorIds']) > 0) { + + $tankorIds = $_POST['tankorIds']; + $torlendoTankorIds = array_diff($Dolgozat['tankorIds'], $tankorIds); + $ujTankorIds = array_values(array_diff($tankorIds, $Dolgozat['tankorIds'])); + dolgozatTankorHozzarendeles($dolgozatId, $torlendoTankorIds, $ujTankorIds); + $Dolgozat = getDolgozat($dolgozatId); + + } else { + $_SESSION['alert'][] = 'message:empty_field:tankorId:dolgozatTankorHozzarendeles'; + } + + } elseif ($action == 'dolgozatJegyekTorlese') { + + foreach ($_POST as $name => $value) { + if (substr($name, 0, 8) == 'tankorId') $tankorId = substr($name, 8); + } + dolgozatJegyekTorlese($dolgozatId, $tankorId); + $Dolgozat = getDolgozat($dolgozatId); + + } + + define(__TOROLHET, + __MODOSITHAT + && !$Dolgozat['ertekelt'] + ); + + + // ------ action vége ------------------------- // + + // TOOL + if (!__DIAK) { + $TOOL['tanarSelect'] = array('tipus' => 'cella', 'post' => array()); + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array()); + } + if (isset($osztalyId)) + $TOOL['diakSelect'] = array('tipus' => 'cella', 'paramName' => 'diakId', 'post' => array('osztalyId')); + if (isset($osztalyId) or isset($tanarId) or isset($diakId)) + $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $Tankorok, 'paramName' => 'tankorId', 'post' => array('osztalyId', 'tanarId', 'diakId')); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/dolgozat.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/dolgozat.php new file mode 100644 index 00000000..cb3d52be --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/dolgozat.php @@ -0,0 +1,16 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/jegy-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/jegy-pre.php new file mode 100644 index 00000000..f0f861c9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/jegy-pre.php @@ -0,0 +1,120 @@ + $action, 'result' => true, 'data' => array('jegyId' => $jegyId)); + //$_SESSION['alert'][] = 'info:delete_success:jegyTorles:'.$jegyId; + unset($jegyId); unset($jegy); + } + } + } else { // vagy módosítás: + list($__jegyTipus,$__jegy) = explode(':', $_POST['jegy']); + $_jegy = readVariable($__jegy,'regexp',null,array('^[0-9]*\.[0-9]$')); + $_jegyTipus = readVariable($__jegyTipus, 'enum', null, $ADAT['jegyTipusok']); + $_megjegyzes = readVariable($_POST['megjegyzes'],'sql'); + $_oraId = readVariable($_POST['oraId'],'id',null); + $_dolgozatId = readVariable($_POST['dolgozatId'],'id',null); + // csak (1,2),(3,4,5) váltás, ill. törlés (0) a megengedett + if (($_tipus-2.5)*($jegy['tipus']-2.5) < 0) $_tipus = $jegy['tipus']; + if ((!is_null($_jegyTipus) && __JEGYTIPUS_VALTHATO === true) || $_jegyTipus == $jegy['jegyTipus']) { + if (jegyModositas($jegyId, $_jegy, $_jegyTipus, $_tipus, $_oraId, $_dolgozatId, $_megjegyzes)) { + logAction( + array( + 'szoveg'=>"Jegy módosítás: $jegyId, ".$jegy['diakId'].", $_jegy, $_tipus, ".$jegy['tankorId'].", ".$jegy['dt'].", $_oraId, $_dolgozatId", + 'table'=>'jegy' + ), + $lr + ); + $jegy = getJegyInfo($jegyId, __TANEV, $lr); + $_JSON = array( + 'action' => $action, 'result' => true, + 'data' => array( + 'jegyId'=>$jegyId, 'tipus'=>$jegy['tipus'], 'diakId'=>$jegy['diakId'], 'dolgozatId'=>$jegy['dolgozatId'], + 'jegyStr'=>$KOVETELMENY[ $jegy['jegyTipus'] ][ $jegy['jegy'] ]['rovid'] + ) + ); + } + } else { $_SESSION['alert'][] = 'message:wrong_data:A jegyTipus nem módosítható!:'.$_jegyTipus.' - '.$jegy['jegyTipus']; } + + } + + } + // --------- action vége -------- // + + } else { + define('_MODOSITHAT', false); + // ezeket minek üzenjük? nem is akarta senki módosítani: +/* + if ($_TANEV['statusz'] != 'aktív') $_SESSION['alert'][] = 'info:nem_modosithato:nem aktív tanév'; + elseif (__FOLYO_TANEV===false) $_SESSION['alert'][] = 'info:nem_modosithato:nem folyó tanév'; + elseif (__TANAR===false) $_SESSION['alert'][] = 'info:nem_modosithato:nem tanár'; + elseif (!in_array(__USERTANARID, $jegy['tanár']['idk'])) $_SESSION['alert'][] = 'info:nem_modosithato:nem tanítja'; + elseif (strtotime(_OSZTALYOZO_HATARIDO) > strtotime($jegy['dt'])) $_SESSION['alert'][] = 'info:nem_modosithato:lejárt a módosítási határidő'; +*/ + } + + if (isset($jegyId)) { // ajax-os törlés esetén lehet, hogy már nincs jegy... + $Orak = getOraAdatByTankor($jegy['tankorId']); + $Dolgozatok = getTankorDolgozatok($jegy['tankorId']); + } + + } + + } else { + $_SESSION['alert'][] = 'message:wrong_data:jegy:jegyId='.$jegyId; + unset($jegyId); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/jegy.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/jegy.php new file mode 100644 index 00000000..f6dd872f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/jegy.php @@ -0,0 +1,12 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/osztalyozo-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/osztalyozo-pre.php new file mode 100644 index 00000000..e88346aa --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/osztalyozo-pre.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/osztalyozo.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/osztalyozo.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/stat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/stat-pre.php new file mode 100644 index 00000000..d473790d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/stat-pre.php @@ -0,0 +1,319 @@ += _TIME + ) { + $_POST['szemeszterId'] = $szemeszterId = $_TANEV['szemeszter'][$i]['szemeszterId']; + break; + } + } + } + if (isset($_POST['sorrendNev']) && $_POST['sorrendNev'] != '') + $ADAT['sorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'emptystringnull', '', getTargySorrendNevek(__TANEV)); +// $ADAT['telephelyId'] = $telephelyId = readVariable($_POST['telephelyId'], 'id',__TELEPHELYID); + + $ADAT['telephelyAdat'] = getTelephelyek(array('result' => 'assoc', 'keyfield' => 'telephelyId')); + $ADAT['telephelyIds'] = array_keys($ADAT['telephelyAdat']); + $ADAT['telephelyId'] = $telephelyId = readVariable($_GET['telephelyId'], 'id', readVariable( + $_POST['telephelyId'], 'id', (isset($_POST['telephelyId'])?null:readVariable(__TELEPHELYID,'id')), $ADAT['telephelyIds'] + ), $ADAT['telephelyIds']); + + if (!__DIAK) { + if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') { $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'],'id'); } + elseif (__OSZTALYFONOK && !isset($_POST['osztalyId'])) { $osztalyId = $ADAT['osztalyId'] = $_POST['osztalyId'] = $_OSZTALYA[0]; } + } // diák, szülő csak az iskola statisztikát látja + + if (isset($szemeszterId)) { + + $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId); + $Osztalyok = getOsztalyok($ADAT['szemeszterAdat']['tanev'],array('result' => 'indexed', 'minden'=>false, 'telephelyId' => $telephelyId)); + if (isset($osztalyId)) { + define('TANITASI_HETEK_SZAMA', getTanitasiHetekSzama(array('osztalyId'=>$osztalyId))); + define('__OSZTALYFONOKE', (__OSZTALYFONOK === true && in_array($osztalyId, $_OSZTALYA))); + $ADAT['evfolyam'] = getEvfolyam($osztalyId, $ADAT['szemeszterAdat']['tanev']); + $ADAT['evfolyamJel'] = getEvfolyamJel($osztalyId, $ADAT['szemeszterAdat']['tanev']); + $ADAT['kovetkezoEvfolyamJel'] = getKovetkezoEvfolyamJel($ADAT['evfolyamJel']); + $ADAT['utolsoTanitasiNap'] = getOsztalyUtolsoTanitasiNap($osztalyId, $ADAT['szemeszterAdat']['tanev']); + + // magatartás és szorgalom jegyek beírásának jogosultsága + if ($ADAT['szemeszterAdat']['statusz'] != 'aktív') { + define('_BEIRHATO', false); + } else { + $time = time(); + // Keresünk bitonyítvány írás időszakot + foreach ($ADAT['szemeszterAdat']['idoszak'] as $i => $idoszakAdat) { + if ( + $idoszakAdat['tipus'] == 'bizonyítvány írás' + && strtotime($idoszakAdat['tolDt']) <= $time + && $time <= strtotime($idoszakAdat['igDt']) + ) { + $idoszak = $idoszakAdat; + break; + } + } + + if (__NAPLOADMIN) define('_BEIRHATO', true); + elseif (__VEZETOSEG) define('_BEIRHATO', (isset($idoszak['tolDt'])) ); + elseif (__OSZTALYFONOKE) define('_BEIRHATO', (isset($idoszak['tolDt'])) ); + else define('_BEIRHATO', false); + + if ((__VEZETOSEG || __OSZTALYFONOKE) && !isset($idoszak['tolDt'])) $_SESSION['alert'][] = 'info:idoszak_bizir_nincs'; + + } + /* ---- action ---- */ + + if (_BEIRHATO && $action == 'jegyLezaras') { + + $zaroJegyek = $_POST['zaroJegy']; + if (is_array($zaroJegyek)) { + /* Prepare */ + for($i=0; $i $ADAT['evfolyamJel']."."); + else $csere = array('%évfolyam%' => ($ADAT['kovetkezoEvfolyamJel']).".", '%évfolyam betűvel%' => ($_EVFOLYAMJEL_BETUVEL[ $ADAT['kovetkezoEvfolyamJel'] ])."."); + $csere['%tantárgy%'] = str_replace('=',', ',$csereStr); // TODO, és-re cserélhetjük vessző helyett + zaradekRogzites(array('diakId'=>$_diakId, 'zaradekId' => $zaradekId, 'zaradekIndex'=>$_zaradekIndex, 'dt'=>$ADAT['utolsoTanitasiNap'], 'csere' => $csere)); + } + } + } + + } + + /* ---- action vége ---- */ + + // osztály statisztikák + $ADAT['osztaly'] = getOsztalyAdat($osztalyId, $ADAT['szemeszterAdat']['tanev']); + + if (!isset($ADAT['osztalyId'])) $ADAT['osztalyId'] = $ADAT['osztaly'][0]['osztalyId']; + // Az adott szemeszterben létezik-e az osztály + for ($i = 0; ($i < count($Osztalyok) && $Osztalyok[$i]['osztalyId'] != $osztalyId); $i++); + if ($i < count($Osztalyok)) { + $ADAT['diakok'] = getDiakok(array( + 'osztalyId' => $osztalyId, 'tanev' => $ADAT['szemeszterAdat']['tanev'], + 'tolDt' => $ADAT['szemeszterAdat']['tanevAdat']['kezdesDt'], 'igDt' => $ADAT['szemeszterAdat']['zarasDt'], // A tanév kezdetétől a szemeszter végéig + 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + )); + $ADAT['zaraskoriDiakIds'] = getDiakok(array( + 'osztalyId' => $osztalyId, 'tanev' => $ADAT['szemeszterAdat']['tanev'], + 'tolDt' => $ADAT['szemeszterAdat']['zarasDt'], 'igDt' => $ADAT['szemeszterAdat']['zarasDt'], + 'statusz' => array('jogviszonyban van','magántanuló'), 'result' => 'idonly' +// 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva'), 'result' => 'idonly' + )); + for ($i = 0; $i < count($ADAT['diakok']); $i++) $ADAT['diakIds'][] = $ADAT['diakok'][$i]['diakId']; + $ADAT['targyak'] = getTargyakByDiakIds($ADAT['diakIds'], $ADAT['szemeszterAdat'], $osztalyId, $sorrendNev); // TODO + $targyIds = array($ADAT['magatartasTargyIdk'][0], $ADAT['szorgalomTargyIdk'][0]); + if (is_array($ADAT['targyak'])) foreach ($ADAT['targyak'] as $index => $tAdat) $targyIds[] = $tAdat['targyId']; + //$ADAT['targyAdat'] = getTargyAdatByIds($ADAT['targyak']); + $ADAT['targyAdat'] = getTargyAdatByIds($targyIds); + $ADAT['tanarok'] = getTanarokByDiakIds($ADAT['diakIds'], $ADAT['szemeszterAdat']); + $ADAT['evkoziJegyAtlag'] = getDiakJegyAtlagok($ADAT['diakIds']); // évközi! + $ADAT['jegyek'] = getDiakZarojegyekByEvfolyamJel($ADAT['diakIds'], $ADAT['evfolyamJel'], $ADAT['szemeszterAdat'], array('felevivel'=>true)); // TODO: ellenőrzés: evfolyam-->evfolyamJel + $ADAT['atlagok'] = getDiakZarojegyAtlagok($ADAT['zaraskoriDiakIds'], $ADAT['szemeszterAdat']['tanev'], $ADAT['szemeszterAdat']['szemeszter']); + $ADAT['tantargyiAtlagok'] = getTargyZarojegyAtlagok($ADAT['zaraskoriDiakIds'], $ADAT['szemeszterAdat']['tanev'], $ADAT['szemeszterAdat']['szemeszter']); + $ADAT['hianyzas'] = getDiakHianyzasOsszesites($ADAT['diakIds'], $ADAT['szemeszterAdat']); + $ADAT['zaradekok'] = getDiakKonferenciaZaradekok($ADAT['diakIds'], $ADAT['utolsoTanitasiNap']); + $ADAT['adhatoZaradekok'] = getZaradekokByTipus('konferencia, konferencia bukás'); + + //foreach ($ADAT['hianyzas'] as $diakId => $hianyzasAdat) { + for ($i=0; $i$tanev)); + +//2013NKT if (_KESESI_IDOK_OSSZEADODNAK===true) + $ADAT['hianyzas'][$diakId]['igazolatlan'] + = $hianyzasAdat['igazolatlan'] + = floor($hianyzasAdat['kesesPercOsszeg']/45)+intval($hianyzasAdat['igazolatlan']); + + //$ADAT['hianyzas'][$diakId]['igazolatlan'] += intval($HOZOTT['igazolatlan']['db']); + //$ADAT['hianyzas'][$diakId]['igazolt'] += intval($HOZOTT['igazolt']['db']); + + if (in_array($diakId, $ADAT['zaraskoriDiakIds'])) { // Csak a záráskori névsort vesszük figyelembe + $ADAT['stat']['igazolt'] += $hianyzasAdat['igazolt']; + $ADAT['stat']['igazolatlan'] += $hianyzasAdat['igazolatlan']; + //$ADAT['stat']['igazolatlan'] += intval($HOZOTT['igazolatlan']['db']); + //$ADAT['stat']['igazolt'] += intval($HOZOTT['igazolt']['db']); + if ($hianyzasAdat['igazolatlan'] >= 10) $ADAT['stat']['tiznel tobb']++; + elseif ($hianyzasAdat['igazolatlan'] >= 5) $ADAT['stat']['otnel tobb']++; + elseif ($hianyzasAdat['igazolatlan'] == 0) $ADAT['stat']['nincs']++; + } + } + // Diákok statisztikai adatai + //jegyek tömb: [diakId][targyId][$INDEX!!!] +// ----------------------------------------------------------------- + $utolsoTanitasiNap = getOsztalyUtolsoTanitasiNap($osztalyId); + for ($i=0; $i '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 ($j = 0; $j < count($tAdat); $j++) { + $oraszam += $tAdat[$j]['oraszam']; + } + $ADAT['targyOraszam'][$diakId][$targyId]['hetiOraszam'] = $oraszam / $szDb; + if (defined('TANITASI_HETEK_SZAMA')) $ADAT['targyOraszam'][$diakId][$targyId]['evesOraszam'] = $oraszam / $szDb * TANITASI_HETEK_SZAMA; + } + } +// ------------------------------------------------------------------ + $_tmp=array(); + if (is_array($ADAT['jegyek'])) + foreach ($ADAT['jegyek'] as $diakId => $jegyek) { + $zaraskorTag = in_array($diakId, $ADAT['zaraskoriDiakIds']); + $atlag = floatval($ADAT['atlagok'][$diakId]); + // kitűnők száma + if ($atlag >= _KITUNO_ATLAG) { + if ($zaraskorTag) $ADAT['stat']['kituno']++; + $ADAT['diakAdat'][$diakId]['kituno'] = true; + // jelesek száma + } elseif ($atlag >= _JELES_ATLAG) { + reset($jegyek); + $found = false; + while (list($key, $jegyAdatok) = each($jegyek)) { + for ($i=0; $i $jegyAdatok) { + $ADAT['targyboljegy'][$targyId] = true; + for ($i=0; $i 'indexed', 'minden'=>false, 'telephelyId' => $telephelyId)); + $ADAT['targyak'] = getTargyakBySzemeszter($ADAT['szemeszterAdat']); // nem kéne minden tárgy? + $ADAT['mindenTargy'] = getTargyak(array('targySorrendNev' => $sorrendNev) ); + $ADAT['jegyek'] = getZarojegyStatBySzemeszter($ADAT['szemeszterAdat'],array('telephelyId'=>$telephelyId)); + $ADAT['tantargyiAtlagok'] = getTargyAtlagokBySzemeszter($ADAT['szemeszterAdat']); + $ADAT['hianyzas'] = getOsztalyHianyzasOsszesites($ADAT['szemeszterAdat']); + $ADAT['vizsgaSzint'] = getEnumField('naplo_intezmeny','diakNyelvvizsga','vizsgaSzint'); + $ADAT['nyelvvizsgak'] = getNyelvvizsgak(array('igDt'=>$ADAT['szemeszterAdat']['zarasDt'])); + $intezmeny_lr = db_connect('naplo_intezmeny'); + for ($x=0; $x__TANEV,'tolDt'=>$ADAT['szemeszterAdat']['kezdesDt'],'igDt'=>$ADAT['szemeszterAdat']['zarasDt']), $intezmeny_lr); + $ADAT['nyelvvizsgak'][$x]['osztalyId'] = $ADAT['nyelvvizsgak'][$x]['osztalyAdat'][0]['osztalyId']; + } + db_close($intezmeny_lr); + $ADAT['nyelvvizsgak'] = reindex($ADAT['nyelvvizsgak'],array('targyId','osztalyId','vizsgaSzint')); + //select * from osztalyJelleg where osztalyJellegNev like '%nyelvi%'; + $ADAT['nyekJellegu'] = array(36,46,53,54,63,76); + } + + $ADAT['targyTargy'] = getTargyTargy(); + + } + + $TOOL['telephelySelect'] = array('tipus' => 'cella','paramName'=>'telephelyId'); + $TOOL['szemeszterSelect'] = array('tipus'=>'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') , 'post' => array('sorrendNev', 'osztalyId', 'telephelyId')); + if (!__DIAK) { + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'tanev' => $ADAT['szemeszterAdat']['tanev'], 'post' => array('szemeszterId', 'sorrendNev', 'telephelyId')); + } + $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName' => 'sorrendNev', 'post' => array('szemeszterId', 'osztalyId', 'telephelyId')); + if (isset($osztalyId) && isset($szemeszterId)) + $TOOL['nyomtatasGomb'] = array('titleConst' => '_NYOMTATAS','tipus'=>'cella', 'url'=>'index.php?page=naplo&sub=nyomtatas&f=ertesito','post' => array('osztalyId','szemeszterId','sorrendNev', 'telephelyId')); + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/stat.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/stat.php new file mode 100644 index 00000000..e5849121 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/stat.php @@ -0,0 +1,15 @@ +=1) { + if (is_array($ADAT['diakok'])) { + putOsztalyBizonyitvany($ADAT); + } + } else { + putIskolaStatisztika($ADAT); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szempontRendszer-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szempontRendszer-pre.php new file mode 100644 index 00000000..1d975701 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szempontRendszer-pre.php @@ -0,0 +1,51 @@ +'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt','tervezett') , 'post' => array('kepzesId','evfolyamJel','targyId')); + $TOOL['evfolyamJelSelect'] = array( + 'tipus' => 'cella', 'paramName' => 'evfolyamJel', 'paramDesc'=>'evfolyamJel','adatok' => getEvfolyamJelek(), 'post' => array('kepzesId','targyId') + ); + + $TOOL['targySelect'] = array('tipus'=>'cella', 'post' => array('kepzesId','evfolyamJel')); + $TOOL['kepzesSelect'] = array('tipus'=>'cella', 'post' => array('evfolyamJel','targyId')); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szempontRendszer.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szempontRendszer.php new file mode 100644 index 00000000..66d5f8cd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szempontRendszer.php @@ -0,0 +1,16 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szovegesErtekeles-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szovegesErtekeles-pre.php new file mode 100644 index 00000000..50293bac --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szovegesErtekeles-pre.php @@ -0,0 +1,258 @@ + __TANEV, 'tolDt' => $now, 'igDt' => $now, 'tipus' => array('zárás'))); + // Ha nincs kiválasztva szemeszter, de épp zárási időszak van, akkor legyen kiválasztva az aktuális szemeszter + if (!isset($_POST['szemeszterId']) && is_array($ADAT['idoszak']) && count($ADAT['idoszak']) > 0) { + $ADAT['szemeszterId'] = $szemeszterId = $_POST['szemeszterId'] = getSzemeszterIdBySzemeszter($ADAT['idoszak'][0]['tanev'], $ADAT['idoszak'][0]['szemeszter']); + } else { + $ADAT['szemeszterId'] = $szemeszterId = readVariable($_POST['szemeszterId'], 'numeric unsigned', null); + } + if (is_null($szemeszterId)) { + $_tanev = readVariable($_POST['tanev'], 'numeric unsigned', null); + $_szemeszter = readVariable($_POST['szemeszter'], 'numeric unsigned', null); + if (!is_null($_tanev) && !is_null($_szemeszter)) { + $ADAT['szemeszterId'] = $szemeszterId = $_POST['szemeszterId'] = getSzemeszterIdBySzemeszter($_tanev, $_szemeszter); + } + } + + if (isset($szemeszterId)) { // szemesztert záró értékelés - intézményi adatbázis + $ADAT['szemeszter'] = getSzemeszterAdatById($ADAT['szemeszterId']); + // Annak eldöntése, hogy _MOST_ az adott szemeszter zárási időszaka van-e - ezért itt nem kell a $dt-t módosítani. Ez átkerült alább... + // $ADAT['dt'] = $dt = $ADAT['szemeszter']['zarasDt']; + // zárási időszak-e + $zarasIdoszak = false; + for ($i = 0; $i < count($ADAT['szemeszter']['idoszak']); $i++) { + $ISz = $ADAT['szemeszter']['idoszak'][$i]; + if ($ISz['tipus'] == 'zárás' && strtotime($ISz['tolDt']) <= strtotime($now) && strtotime($now) <= strtotime($ISz['igDt'])) { + $zarasIdoszak = true; + break; + } + } + // Gondolom ez a dátum az értékelés hivatalos dátuma lesz. Itt jogos a zarasDt-re állítás.... + $ADAT['dt'] = $dt = $ADAT['szemeszter']['zarasDt']; + } else { // évközi értékelés - tanáv adatbázis + $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'datetime', ''); + if (!isset($dt)) $ADAT['dt'] = $dt = date('Y-m-d'); + $ADAT['szemeszter'] = getSzemeszterByDt($ADAT['dt']); +// $ADAT['tolDt'] = $tolDt = readVariable($_POST['tolDt'], 'datetime', $_TANEV['kezdesDt']); // Ezt nem is használjuk!!! + } + $tanev = readVariable($ADAT['szemeszter']['tanev'], 'numeric unsigned', __TANEV); + + if (__DIAK) { + $ADAT['diakId'] = $diakId = __USERDIAKID; + } else { + $ADAT['diakId'] = $diakId = readVariable($_POST['diakId'], 'numeric unsigned', null); + $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null); + $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'numeric unsigned', null); + if (!isset($osztalyId) && !isset($tanarId) && __TANAR && $_POST['tanarId'] !== '') $ADAT['tanarId'] = $tanarId = __USERTANARID; + if (isset($tanarId)) $_POST['tanarId'] = $tanarId; + } + if (isset($diakId)) { + $Tankorok = getTankorByDiakId($diakId, $tanev); + $Targyak = getTargyakByDiakId($diakId, array('tanev' => $tanev, 'result' => 'indexed')); + $targyIds = array(); foreach ($Targyak as $key => $val) $targyIds[] = $val['targyId']; + $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'], 'numeric unsigned', null, $targyIds); + if (isset($targyId)) { + $magatartasId = getMagatartas(array('result'=>'value')); + $szorgalomId = getSzorgalom(array('result' => 'value')); + $ADAT['targyTankorei'] = array(); + foreach ($Tankorok as $key => $tAdat) { + if ($tAdat['targyId'] == $targyId) { + $ADAT['targyTankorei'][] = $tAdat['tankorId']; + } + } + } + } elseif (isset($osztalyId)) { + $Tankorok = getTankorByOsztalyId($osztalyId, $tanev); + } elseif (isset($tanarId)) { + $Tankorok = getTankorByTanarId($tanarId, $tanev); + } + + $tankorIds = array(); + if (is_array($Tankorok)) for ($i = 0; $i < count($Tankorok); $i++) $tankorIds[] = $Tankorok[$i]['tankorId']; + + $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'], 'numeric unsigned', null, $tankorIds); + if (isset($tankorId)) { + $D = getTankorDiakjaiByInterval($tankorId, $tanev, $dt, $dt); + $Diakok = array(); + foreach ($D['nevek'] as $_diakId => $dAdat) $Diakok[] = $dAdat; + if (isset($diakId) && !in_array($diakId, $D['idk'])) { unset($diakId); unset($ADAT['diakId']); } + } + + // Az értékelési szempontrendszer lekérdezése + if (isset($diakId) && isset($dt)) { + // Az értékeléshez kell: évfolyam [ képzésId ] (targyId | targyTipus) [ tanev, szemeszter ] + $diakOsztaly = getDiakOsztalya($diakId, array('tanev'=>$tanev,'tolDt'=> $dt,'igDt'=> $dt, 'result'=>'csakid')); + if (is_array($diakOsztaly) && count($diakOsztaly) > 0) { + // évfolyam + $diakEvfolyamJel = array(); + for ($i = 0; $i < count($diakOsztaly); $i++) { + $evf = getEvfolyamJel($diakOsztaly[$i], $tanev); + if (!in_array($evf, $diakEvfolyamJel)) $diakEvfolyamJel[] = $evf; + foreach (getOsztalyfonokok($diakOsztaly[$i], $tanev) as $key => $oAdat) + if ($oAdat['aktiv']) $ADAT['diakOsztalyfonokei'][] = $oAdat['tanarId']; + } + if (count($diakEvfolyamJel) == 1) $ADAT['evfolyamJel'] = $evfolyamJel = $diakEvfolyamJel[0]; + else $ADAT['evfolyamJel'] = $evfolyamJel = readVariable($_POST['evfolyamJel'], 'enum', null, $diakEvfolyamJel); + // képzés + $diakKepzesIds = getKepzesByDiakId($diakId, array('result' => 'csakid', 'dt' => $dt)); + if (is_array($diakKepzesIds)) + if (count($diakKepzesIds) == 1) $ADAT['kepzesId'] = $kepzesId = $diakKepzesIds[0]; + else $ADAT['kepzesId'] = $kepzesId = readVariable($_POST['kepzesId'], 'numeric unsigned', null, $diakKepzesIds); + } + $ADAT['diakTargyak'] = getTargyakByDiakId($diakId, array('tanev' => $tanev, 'dt' => $dt, 'result' => 'assoc')); + + if (isset($tankorId)) { + // Jogosultsághoz + $tankorTanarIds = getTankorTanaraiByInterval($tankorId, array('tanev' => $tanev, 'tolDt' => $dt, 'igDt' => $dt, 'result' => 'idonly')); + $tankorAdat = getTankorAdat($tankorId); + // targyId + $ADAT['targyId'] = $tankorAdat[$tankorId][0]['targyId']; + + } elseif (isset($targyId)) { + $tankorTanarIds = getTankorTanaraiByInterval($ADAT['targyTankorei'], array('tanev' => $tanev, 'tolDt' => $dt, 'igDt' => $dt, 'result' => 'idonly')); + // magatartás és szorgalom értékelse az osztályfőnökkel mehet + if ($targyId == $magatartasId || $targyId == $szorgalomId) { + foreach ($ADAT['diakOsztalyfonokei'] as $key => $id) $tankorTanarIds[] = $id; + } + } + + if (isset($ADAT['targyId'])) { + // Módosíthatja az értékelést: + // A naplóadmin bármikor + // A tankör tanára (v. ofő magatartás/szorgalom esetén), ha évközi értékelés, vagy záró értékelés és a szemeszter zárási időszakában vagyunk + define(__MODOSITHAT, + __NAPLOADMIN + || ( + __VEZETOSEG + // itt kellene, hogy csak bizonyítvány írás időszakban... + ) + || ( + __TANAR && is_array($tankorTanarIds) && in_array(__USERTANARID, $tankorTanarIds) + && (!isset($ADAT['szemeszterId']) || $zarasIdoszak) + && $ADAT['szemeszter']['statusz'] == 'aktív' + ) + ); + // ?? targyTipus ?? + $ADAT['szempontRendszer'] = getSzempontRendszer($ADAT); + if (is_array($ADAT['szempontRendszer'])) { + $szrId = $ADAT['szempontRendszer']['szrId']; + // Kérdezzük le a diák utolsó értékelését - ha van + if (isset($szemeszterId)) $ADAT['szovegesErtekeles'] = getDiakSzovegesTargyZaroErtekeles($diakId, $szrId, $ADAT['targyId'], $tanev, $ADAT['szemeszter']['szemeszter']); + else $ADAT['szovegesErtekeles'] = getDiakUtolsoSzovegesTargyErtekeles($diakId, $szrId, $ADAT['targyId'], $dt); + + if (__MODOSITHAT && $action == 'ujErtekeles') { + for ($i = 0; $i < count($_POST['egyediMinosites']); $i++) { + $tmp = readVariable($_POST['egyediMinosites'][$i], 'string', null); + if ($tmp != '') { + $szempontId = readVariable($_POST['szempontId'][$i], 'numeric unsigned', null, $ADAT['szempontRendszer']['szempontIds']); + if (isset($szempontId)) $egyediMinosites[$szempontId] = $tmp; + } + } + for ($i = 0; $i < count($_POST['minosites']); $i++) { + $tmp = readVariable($_POST['minosites'][$i], 'numeric unsigned', null, $ADAT['szempontRendszer']['minositesIds']); + if (isset($tmp)) $minosites[] = $tmp; + } + if (isset($szemeszterId)) { + // Az értékelések újraolvasása + ujZaroErtekeles($diakId, $szrId, $ADAT['targyId'], $tanev, $ADAT['szemeszter']['szemeszter'], $minosites, $egyediMinosites); + $ADAT['szovegesErtekeles'] = getDiakSzovegesTargyZaroErtekeles($diakId, $szrId, $ADAT['targyId'], $tanev, $ADAT['szemeszter']['szemeszter']); + } else { + // Az új értékelés rögzítése + if (ujErtekeles($diakId, $szrId, $ADAT['targyId'], date('Y-m-d'), $minosites, $egyediMinosites)) + // Az értékelések újraolvasása + $ADAT['szovegesErtekeles'] = getDiakUtolsoSzovegesTargyErtekeles($diakId, $szrId, $ADAT['targyId'], $dt); + } + } + } else { + $_SESSION['alert'][] = 'info:nincs_szempontrendszer'; + } + } else { // Egy diák összes értékelése + define(__MODOSITHAT, false); + $ADAT['osszes'] = getDiakOsszesSzovegesErtekeles($ADAT); + } + } + +/* **** ToolBar **** */ + + // tanár vagy osztály szerint szűkíthetünk, majd diákot választunk + if (__TANAR || __NAPLOADMIN) { + if (!isset($osztalyId) || __OSZTALYFONOK === true) + $TOOL['tanarSelect'] = array('tipus' => 'cella', 'post' => array('tolDt', 'dt', 'szemeszterId')); + if (!isset($tanarId) || __OSZTALYFONOK === true) + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('tolDt', 'tolDt', 'dt', 'szemeszterId')); + $TOOL['diakSelect'] = array( + 'tipus' => 'sor', 'paramName' => 'diakId', 'diakok' => $Diakok, + 'post' => array('osztalyId', 'targyId', 'tankorId', 'tanarId', 'tolDt', 'dt', 'szemeszterId') + ); + if (isset($diakId)) $TOOL['diakLapozo'] = array( 'withSelect' => false, + 'tipus' => 'sor', 'paramName' => 'diakId', 'diakok' => $Diakok, + 'post' => array('osztalyId', 'targyId', 'tankorId', 'tanarId', 'tolDt', 'dt', 'szemeszterId') + ); + } + // Záró vagy évközi értékelés - dt vagy szemeszterId van kiválasztva + if (!isset($szemeszterId)) { + $TOOL['datumSelect'] = array( + 'tipus' => 'cella', 'paramName' => 'dt', 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], 'hanyNaponta' => 1, + 'post' => array('tankorId','tanarId','osztalyId','diakId','szemeszterId')); + } + if ($dt == $ADAT['szemeszter']['zarasDt']) { + $TOOL['szemeszterSelect'] = array( + 'tipus'=>'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') , + 'post' => array('osztalyId', 'tanarId', 'diakId', 'dt', 'tankorId', 'kepzesId', 'evfolyamJel')); + } + // tárgyat vagy tankört választunk (és ezen keresztül tárgyat) + if (!isset($targyId) && (isset($osztalyId) || isset($tanarId) || isset($diakId))) { + $TOOL['tankorSelect'] = array( + 'tipus' => 'sor', 'tankorok' => $Tankorok, 'paramName' => 'tankorId', + 'post' => array('osztalyId', 'tanarId', 'diakId', 'dt', 'szemeszterId') + ); + } + if (!isset($tankorId) && isset($diakId)) { + $TOOL['targySelect'] = array( + 'tipus' => 'sor', 'targyak' => $Targyak, 'paramName' => 'targyId', + 'post' => array('osztalyId', 'tanarId', 'diakId', 'dt', 'szemeszterId') + ); + } + if (is_array($diakEvfolyamJel) && count($diakEvfolyamJel) > 1) + $TOOL['evfolyamJelSelect'] = array( + 'tipus' => 'cella', 'evfolyamJel' => $diakEvfolyamJel, 'paramName' => 'evfolyamJel', + 'post' => array('osztalyId', 'tanarId', 'diakId', 'dt', 'tankorId', 'kepzesId', 'szemeszterId') + ); + if (is_array($diakKepzesIds) && count($diakKepzesIds) > 1) + $TOOL['kepzesSelect'] = array( + 'tipus' => 'cella', 'paramName' => 'kepzesId', + 'post' => array('osztalyId', 'tanarId', 'diakId', 'dt', 'tankorId', 'evfolyamJel', 'szemeszterId') + ); + $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName' => 'sorrendNev', 'post' => array('szemeszterId', 'osztalyId','diakId','tolDt','dt','tankorId','kepzesId','evfolyamJel')); + $TOOL['nyomtatasGomb'] = array('titleConst' => '_NYOMTATAS','tipus'=>'cella','url'=>'index.php?page=naplo&sub=nyomtatas&f=szovegesErtekeles', + 'post' => array('osztalyId','szemeszterId','sorrendNev')); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szovegesErtekeles.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szovegesErtekeles.php new file mode 100644 index 00000000..7908d085 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/szovegesErtekeles.php @@ -0,0 +1,15 @@ + $tAdat) + if (is_array($ADAT['osszes'][$targyId])) + if ($ADAT['tolDt'] <= $ADAT['osszes'][$targyId]['szovegesErtekeles']['dt']) putErtekeloForm($ADAT['osszes'][$targyId]); + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/tankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/tankor-pre.php new file mode 100644 index 00000000..742b4b5d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/tankor-pre.php @@ -0,0 +1,332 @@ + __TANEV, 'tolDt' => '', 'igDt' => '', 'result' => 'csakId')); + if (in_array(__USERTANARID, $tankorTanarai)) $tanarId = __USERTANARID; + } + + $nevsor = readVariable($_POST['nevsor'],'emptystringnull','aktualis',array('aktualis','teljes')); + // tankörök lekérdzése + if (isset($diakId)) $Tankorok = getTankorByDiakId($diakId, __TANEV); + elseif (isset($osztalyId)) $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV); + elseif (isset($tanarId)) $Tankorok = getTankorByTanarId($tanarId, __TANEV); + + $ADAT['tankorok'] = $Tankorok; + + if (isset($tankorId)) { + // Az aktuális szemeszter kiválasztása + if (__FOLYO_TANEV) { + foreach ($_TANEV['szemeszter'] as $szemeszter => $szemeszterAdat) + if (strtotime($szemeszterAdat['kezdesDt']) <= $time && $time <= strtotime($szemeszterAdat['zarasDt'])) break; + if ($szemeszter !== false) { + define('__FOLYO_SZEMESZTER', $szemeszter); + $szemeszterKezdesDt = $szemeszeterAdat['kezdesDt']; + $szemeszterZarasDt = $szemeszeterAdat['zarasDt']; + } + } + if (!defined('__FOLYO_SZEMESZTER')) define('__FOLYO_SZEMESZTER',false); + + if (isset($_POST['tolDt']) && $_POST['tolDt'] != '') $tolDt = readVariable($_POST['tolDt'],'date'); + elseif (isset($szemeszterKezdesDt)) $tolDt = $szemeszterKezdesDt; + else $tolDt = $_TANEV['kezdesDt']; + + if (isset($_POST['igDt']) && $_POST['igDt'] != '') $igDt = readVariable($_POST['igDt'],'date'); + elseif (isset($szemeszterZarasDt)) $igDt = $szemeszterZarasDt; + else $igDt = $_TANEV['zarasDt']; + + // a tankör diákjainak lekérdezése + if ($nevsor == 'aktualis') $Diakok = getTankorDiakjaiByInterval($tankorId, __TANEV); + else $Diakok = getTankorDiakjaiByInterval($tankorId, __TANEV, $tolDt, $igDt); + + $dts = array(date('Y-m-d')); + foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdat) $dts[] = $szAdat['zarasDt']; + $ADAT['diakJogviszony'] = getDiakJogviszonyByDts($Diakok['idk'], $dts); + + // lehetne regexp-pel is: $sulyozas = readVariable($_POST['sulyozas'],'regexp',__DEFAULT_SULYOZAS,array('^[0-9]*:[0-9]*:[0-9]*:[0-9]*:[0-9]*$')); + $ADAT['sulyozas'] = $sulyozas = readVariable($_POST['sulyozas'],'enum',__DEFAULT_SULYOZAS,$SULYOZAS); + + // tankör osztályzatainak lekérdezése + $Jegyek = getJegyek($tankorId, $tolDt, $igDt, $sulyozas, $Diakok); + if (is_array($Jegyek['tankörök'])) for ($j=0; $j 'id')); + // Diákok osztályai - folyó tanévben: jelenleg... + if (__FOLYO_TANEV) { + $ADAT['diakOsztaly']['aktualis'] = getDiakokOsztalyai($ADAT['diakok']['idk'], array('result'=>'indexed')); + $dt['aktualis'] = date('Y-m-d'); + } else { + $ADAT['diakOsztaly']['aktualis'] = getDiakokOsztalyai($ADAT['diakok']['idk'], array('result'=>'indexed', 'tolDt' => $_TANEV['zarasDt'], 'igDt' => $_TANEV['zarasDt'])); + $dt['aktualis'] = $_TANEV['zarasDt']; + } + // Kérdezzük le a szemeszter záráskori osztályokat is! + foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdat) { + $ADAT['diakOsztaly'][$szemeszter] = getDiakokOsztalyai( + $ADAT['diakok']['idk'], array('result'=>'indexed', 'tolDt' => $szAdat['zarasDt'], 'igDt' => $szAdat['zarasDt']) + ); + $dt[$szemeszter] = $szAdat['zarasDt']; + } + /* Diákonkénti évfolyam meghatározás + Külön kell itt is meghatározni, itt esetleg leszűkíthető a több évfolyamra járó diák évfolyama */ + for ($i=0; $i $value) { // $key: aktualis, 1, 2 + $_diakEvfolyam = array(); + $_diakEvfolyamJel = array(); + if ( is_array($ADAT['diakOsztaly'][$key][$_diakId]) && is_array($ADAT['tankorAdat']['osztalyai']) ) { + $_metszet = array_intersect($ADAT['diakOsztaly'][$key][$_diakId], $ADAT['tankorAdat']['osztalyai']); +// } else { +// $_SESSION['alert'][] = 'info:nincs_osztaly:'.$ADAT['diakok']['nevek'][$_diakId]['diakNev'].':'.$key; + } + + // ez a feltétel lazítható több osztályban is, ha azok azonos évolfymon vannak: + foreach ( $_metszet as $j => $_osztalyId ) { + // csak ebben a tankörben ennek felel meg, ezen az évfolyamon levő a zárójegyet kaphatja: + $_diakEvfolyamJel[] = getEvfolyamJel($_osztalyId); + $_diakEvfolyam[] = evfolyamJel2Evfolyam(end($_diakEvfolyamJel)); + } + if (count(array_unique($_diakEvfolyamJel))==1) { // korábban az evfolyam-nak kellett uniq-nak lennie - ez szigorúbb... + $ADAT['diakEvfolyam'][$key][$_diakId] = $_diakEvfolyam[0]; + $ADAT['diakEvfolyamJel'][$key][$_diakId] = $_diakEvfolyamJel[0]; + // OK, van-e meghatározva képzés? + // TODO: képzések legyenek evfolyamJel függők - ekkor itt is javítani kell! + if (is_numeric($key)) { + $_kepzesIdk = getKepzesByDiakId($_diakId,array('result'=>'idonly', 'dt' => $dt[$key])); + if (is_array($_kepzesIdk) && count($_kepzesIdk)>0) { + // ITT MIÉRT CSAK AZ ELSŐ KÉPZÉST NÉZZÜK??? - mert nem tudjuk eldönteni, hogy melyik az erősebb + $ADAT['diakKepzesKovetelmeny'][$key][$_diakId] = getTargyAdatFromKepzesOraterv($_kepzesIdk[0], + array('targyId'=>$targyId, 'evfolyam'=>$_diakEvfolyam[0], 'evfolyamJel'=>$_diakEvfolyamJel[0], 'szemeszter'=>$key)); + } + } + // + } elseif (count($_diakEvfolyam) == 0) { // _Már_ nincs a tankör szerinti osztályok egyikében sem + } else { // Több évfolyamban is bent van... + $_SESSION['alert'][] = "info:multi_evfolyam:".$ADAT['diakok']['nevek'][$_diakId]['diakNev'].':'.$key; + } + + + } + + } + /* --még1* felmentési célból- */ + for ($i=0; $iarray('értékelés alól'),'csakId'=>true,'tolDt'=>date('Y-m-d'), 'igDt'=>date('Y-m-d'))); + } + } else { + // -- TODO - fejlesztés alatt + /*for ($i=0; $i __TANEV, 'tipus' => array('zárás','bizonyítvány írás'), 'tolDt' => date('Y-m-d H:i:s'), 'igDt' => date('Y-m-d H:i:s'), + 'arraymap'=>array('tipus','szemeszter')) + ); + + + // Beírhat-e jegyet? + define('__EVKOZI_JEGYET_ADHAT', + (__NAPLOADMIN && ($_TANEV['statusz'] == 'aktív')) + || ( + __TANAR + && __FOLYO_TANEV + && is_array($Jegyek['tankörök'][$tankorId]['tanarIds']) + && in_array(__USERTANARID, $Jegyek['tankörök'][$tankorId]['tanarIds']) + ) + ); + define('__ZAROJEGYET_ADHAT', + (__NAPLOADMIN && ($_TANEV['statusz'] == 'aktív')) + || ( + __TANAR + && is_array($Jegyek['tankörök'][$tankorId]['tanarIds']) + && in_array(__USERTANARID, $Jegyek['tankörök'][$tankorId]['tanarIds']) + && count($tanevIdoszak['zárás']) > 0 + ) + || ( + __VEZETOSEG + && !is_null($tanevIdoszak['bizonyítvány írás']) + && is_null($tanevIdoszak['zárás']) + ) + ); + + if ( __TANAR + && is_array($Jegyek['tankörök'][$tankorId]['tanarIds']) + && in_array(__USERTANARID, $Jegyek['tankörök'][$tankorId]['tanarIds']) + && count($tanevIdoszak['zárás']) > 0 ) + { + list($_szemeszter,$_idoszakok) = (each($tanevIdoszak['zárás'])); + define('__IDOSZAK_TOLDT',$_idoszakok[0]['tolDt']); // Nem lehet két szemeszterhez tartozó ugyanolyan típusú (pl. zárás) időszak egyidőben!!! + define('__IDOSZAK_IGDT',$_idoszakok[0]['igDt']); + define('__IDOSZAK_SZEMESZTER',$_szemeszter); + } elseif ( + __VEZETOSEG + && !is_null($tanevIdoszak['bizonyítvány írás']) + && is_null($tanevIdoszak['zárás']) + ) { + list($_szemeszter,$_idoszakok) = (each($tanevIdoszak['bizonyítvány írás'])); + define('__IDOSZAK_TOLDT',$_idoszakok[0]['tolDt']); + define('__IDOSZAK_IGDT',$_idoszakok[0]['igDt']); + define('__IDOSZAK_SZEMESZTER',$_szemeszter); + } + + define('__JEGYET_ADHAT',false); + +//------ + if ($action == 'jegyBeiras' && (isset($_POST['bizBeiroGomb']) || $_POST['bizBeiroGomb2']!='')) $action = 'jegyLezaras'; + if (__EVKOZI_JEGYET_ADHAT) { + + if ($action == 'jegyBeiras') { + $actionId = readVariable($_POST['actionId'],'strictstring'); + for ($i = 0; $i < count($_POST['jegy']); $i++) + if ($_POST['jegy'][$i] != '') { + list($_diakId, $_jegyTipus, $_jegy) = explode('|', $_POST['jegy'][$i]); + $Beirando[] = array('diakId' => $_diakId, 'jegy' => $_jegy, 'jegyTipus' => $_jegyTipus); + } // for-if + $oraId = readVariable($_POST['oraId'],'id','NULL'); // NULL string!!! + $megjegyzes = readVariable($_POST['megjegyzes'],'string'); + + // A jegy típusa - a submit alapján + if (isset($_POST['jegy1'])) $tipus = 1; + elseif (isset($_POST['jegy2'])) $tipus = 2; + elseif (isset($_POST['jegy3'])) $tipus = 3; + elseif (isset($_POST['jegy4'])) $tipus = 4; + elseif (isset($_POST['jegy5'])) $tipus = 5; + if ($tipus < 3 || $_POST['dolgozatId'] == '') $dolgozatId = 'NULL'; + elseif ($_POST['dolgozatId']=='uj') $dolgozatId='uj'; // uj-nak nevezzük a felveendő dolgozatot... + else $dolgozatId = readVariable($_POST['dolgozatId'],'id','NULL'); // NULL string! + + if (isset($tipus) && count($Beirando) > 0) { // Nem csak súlyozást vagy nevsort változtatott és van jeg + // --TODO: ez nem ide való + $lr = db_connect('naplo'); + // Ellenőrizzük a reload-ot!! + if (checkReloadAction($actionId, $action, 'jegy', $lr)) { + if (jegyBeiras($tankorId, $tipus, $oraId, $dolgozatId, $tanarId, $megjegyzes, $Beirando, $actionId, $lr)) { + $Jegyek = getJegyek($tankorId, $tolDt, $igDt, $sulyozas, $Diakok, $lr); + if ($tipus > 2) $Dolgozatok = getTankorDolgozatok($tankorId); + } + } // reload + db_close($lr); + + } // Nem csak súlyozást változtat + } + } + if (__ZAROJEGYET_ADHAT) { + if ($action == 'jegyLezaras') { + $zaroJegyek = $_POST['zaroJegy']; + $tankorAdat = getTankorById($tankorId); + $targyId = $tankorAdat[0]['targyId']; + $actionId = readVariable($_POST['actionId'],'strictstring'); + if (is_array($zaroJegyek)) { + /* Prepare */ + for($i=0; $iarray('diakId','evfolyamStr','felev'))); + $ADAT['vizsgaJegyek'] = getDiakokVizsgajegyeiByTargyId($Diakok['idk'],$ADAT['tankorAdat']['targyId'], array('arraymap'=>array('diakId','evfolyamStr','felev'))); + $ADAT['idoszak'] = $tanevIdoszak; + + // ----------- action vége ------------- // + + $TOOL['tanarSelect'] = array('tipus' => 'cella', 'post' => array('tolDt', 'igDt')); + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('tolDt', 'igDt')); + if (isset($osztalyId)) { + $TOOL['diakSelect'] = array('tipus' => 'cella', 'paramName' => 'diakId', 'post' => array('osztalyId', 'tolDt', 'igDt')); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=osztalyozo&f=diak','index.php?page=naplo&sub=orarend&f=orarend'), + 'title' => array('diák osztályzatai','diák órarendje'), 'post' => array('osztalyId'), + 'paramName'=>'diakId'); +// $TOOL['toolBarHamburger'] = array('tipus' => 'cella', +// 'url' => array('index.php?page=naplo&sub=osztalyozo&f=diak','index.php?page=naplo&sub=orarend&f=orarend'), +// 'title' => array('diák osztályzatai','diák órarendje'), 'post' => array('osztalyId'), +// 'paramName'=>'diakId'); + } + + + if (isset($osztalyId) or isset($tanarId) or isset($diakId)) + $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $Tankorok, 'paramName' => 'tankorId', 'post' => array('osztalyId', 'tanarId', 'diakId', 'tolDt', 'igDt')); + if (isset($tankorId) && $skin != 'pda') + $TOOL['datumTolIgSelect'] = array('tipus' => 'sor', 'tolParamName' => 'tolDt', 'igParamName' => 'igDt', + 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'hanyNaponta' => 'havonta', 'post' => array('tanarId', 'osztalyId', 'tankorId', 'sulyozas')); + + + getToolParameters(); + +} // rights + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/tankor.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/tankor.php new file mode 100644 index 00000000..f86de20a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/tankor.php @@ -0,0 +1,17 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/targySorrend-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/targySorrend-pre.php new file mode 100644 index 00000000..5dfd84c1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/targySorrend-pre.php @@ -0,0 +1,47 @@ + 0) + $_POST['targyId'] = $targyId = readVariable($_POST['targyId'][0], 'numeric unsigned', null); + + + if (isset($osztalyId) && isset($sorrendNev)) { + + if ($action == 'sorrendValtas') { // Javascript nélküli eset - fel/le lépkedés + + if (isset($_POST['fel'])) targySorrendValtas($osztalyId, $sorrendNev, $targyId, 'fel'); + elseif (isset($_POST['le'])) targySorrendValtas($osztalyId, $sorrendNev, $targyId, 'le'); + + } elseif ($action == 'ujSorrend' && is_array($_POST['targyIds']) && count($_POST['targyIds']) > 0) { + ujTargySorrend($osztalyId, $sorrendNev, $_POST['targyIds']); + + } + + $Targyak = getTanevTargySorByOsztalyId($osztalyId, __TANEV, $sorrendNev); + checkTargySor($osztalyId, $sorrendNev, $Targyak); + + } + + + if (__NAPLOADMIN || __VEZETOSEG || __TITKARSAG) + $TOOL['osztalySelect'] = array('tipus' => 'cella', 'paramName' => 'osztalyId', 'post' => array('sorrendNev')); + $TOOL['targySorrendSelect'] = array('tipus' => 'cella', 'post' => array('osztalyId')); + + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/targySorrend.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/targySorrend.php new file mode 100644 index 00000000..59aa99e9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/targySorrend.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsga-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsga-pre.php new file mode 100644 index 00000000..6ad310ab --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsga-pre.php @@ -0,0 +1,95 @@ +'idonly')); + $diakId = $ADAT['diakId'] = readVariable($_POST['diakId'], 'id', readVariable($_GET['diakId'], 'id')); + $targyId = $ADAT['targyId'] = readVariable($_POST['targyId'], 'id', readVariable($_GET['targyId'], 'id')); + $evfolyamJel = $ADAT['evfolyamJel'] = readVariable( + $_POST['evfolyamJel'], 'enum', readVariable($_GET['evfolyamJel'], 'enum', null, $ADAT['evfolyamJelek']), $ADAT['evfolyamJelek'] + ); + if (isset($evfolyamJel)) $evfolyam = $ADAT['evfolyam'] = evfolyamJel2Evfolyam($evfolyamJel); + + $ADAT['tanev'] = $_TANEV['tanev']; // ezt ellenőrizni + $felev = readVariable($_POST['felev'], 'numeric unsigned'); + if ($felev=='') foreach($_TANEV['szemeszter'] as $felev => $_SZA); + $ADAT['felev'] = $felev; // maxSzemeszter + $ADAT['vizsgatipusok'] = getEnumField('naplo_intezmeny', 'vizsga', 'tipus'); + $ADAT['zarojegytipusok'] = getEnumField('naplo_intezmeny', 'zaroJegy', 'jegyTipus'); + $ADAT['statusz'] = getEnumField('naplo_intezmeny', 'diak', 'statusz'); + $ADAT['vizsgaTipus'] = $vizsgaTipus = readVariable($_POST['vizsgaTipus'], 'enum', null, $ADAT['vizsgatipusok']); + if ($action == 'vizsgajelentkezes' && isset($diakId) && isset($targyId) && isset($evfolyamJel)) { + $ADAT['jelentkezesDt'] = readVariable($_POST['jelentkezesDt'], 'date'); + if (isset($ADAT['jelentkezesDt']) && isset($ADAT['vizsgaTipus'])) { + vizsgajelentkezes($ADAT); + } + } elseif ($action == 'vizsgaKezeles') { + $vizsgaDatum = $halasztasDatum = array(); + + // Vizsgaidőpontok kijelölése + $vizsgaIds = readVariable($_POST['vizsgaDtVizsgaIds'], 'numeric unsigned'); + $vizsgaDts = readVariable($_POST['vizsgaDts'], 'date', ''); + for ($i = 0; $i < count($vizsgaDts); $i++) if ($vizsgaDts[$i] != '') $vizsgaDatum[ $vizsgaIds[$i] ] = $vizsgaDts[$i]; + vizsgaIdopontRogzites($vizsgaDatum); + + $erthalVizsgaIds = readVariable($_POST['erthalVizsgaIds'], 'numeric unsigned'); + // Vizsga halasztása + $halasztasDts = readVariable($_POST['halasztasDts'], 'date', ''); + for ($i = 0; $i < count($halasztasDts); $i++) if ($halasztasDts[$i] != '') $halasztasDatum[ $erthalVizsgaIds[$i] ] = $halasztasDts[$i]; + vizsgaHalasztas($halasztasDatum); + // Vizsga értékelés + $jegyAdat = $_POST['jegyAdat']; + for ($i = 0; $i < count($jegyAdat); $i++) if ($jegyAdat[$i] != '') { + $X = explode('|', $jegyAdat[$i]); + for ($j = 0; $j < count($X); $j++) { + list($key, $value) = explode('=', $X[$j]); + $jegyek[ $erthalVizsgaIds[$i] ][$key] = $value; + } + } + vizsgaErtekeles($jegyek); + } elseif ($action == 'vizsgaTorlese') { + $vizsgaId = readVariable($_GET['vizsgaId'], 'id'); + if (isset($vizsgaId)) vizsgaTorlese($vizsgaId); + } + $ADAT['vizsga'] = $ADAT['diakIds'] = $ADAT['targyIds'] = array(); + if (isset($diakId) || isset($targyId)) $ADAT['vizsga'] = getVizsgak($ADAT); + + for ($i = 0; $i < count($ADAT['vizsga']); $i++) { + if (!in_array($ADAT['vizsga'][$i]['diakId'], $ADAT['diakIds'])) $ADAT['diakIds'][] = $ADAT['vizsga'][$i]['diakId']; + if (!in_array($ADAT['vizsga'][$i]['targyId'], $ADAT['targyIds'])) $ADAT['targyIds'][] = $ADAT['vizsga'][$i]['targyId']; + } + if (count($ADAT['targyIds']) > 0) $ADAT['targyak'] = getTargyAdatByIds($ADAT['targyIds']); + if (count($ADAT['diakIds']) > 0) $ADAT['diakok'] = getDiakokById($ADAT['diakIds']); + + + $TOOL['diakSelect'] = array('tipus'=>'cella', 'paramName'=>'diakId', 'post'=>array('targyId','jelentkezesDt', 'vizsgaDt', 'evfolyamJel', 'felev','vizsgaTipus'), 'statusz'=>$ADAT['statusz']); + $TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'post' => array('diakId', 'evfolyamJel', 'felev','vizsgaTipus')); + $TOOL['evfolyamJelSelect'] = array( + 'tipus' => 'cella', 'paramName' => 'evfolyamJel', 'paramDesc'=>'evfolyamJel','adatok' => getEvfolyamJelek(), + 'post' => array('targyId', 'diakId', 'jelentkezesDt', 'vizsgaDt','felev','vizsgaTipus') + ); + $TOOL['felevSelect'] = array( + 'tipus' => 'cella', 'paramName' => 'felev', 'post' => array('targyId', 'diakId', 'jelentkezesDt', 'vizsgaDt', 'evfolyamJel','vizsgaTipus') + ); + for ($i=0; $i$ADAT['vizsgatipusok'][$i]); + $TOOL['vizsgatipusSelect'] = array( + 'tipus' => 'cella', 'paramName' => 'vizsgaTipus', 'paramDesc' => 'vizsgaTipus', 'post' => array('targyId', 'diakId', 'jelentkezesDt', 'vizsgaDt', 'evfolyamJel','felev'), + 'adatok' => $toolData, 'title'=>'VIZSGATIPUS' + ); + + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsga.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsga.php new file mode 100644 index 00000000..aaccc546 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsga.php @@ -0,0 +1,11 @@ + 0) putVizsgaLista($ADAT); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes-pre.php new file mode 100644 index 00000000..0cace228 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes-pre.php @@ -0,0 +1,37 @@ + $iAdat) { + if ($iAdat['tipus'] == 'vizsga') { + $ADAT['vizsgaIdoszak'][] = $iAdat; + $idoszakIds[] = $iAdat['idoszakId']; + if (!isset($ADAT['kovetkezoIdoszakIndex']) && time() < strtotime($iAdat['tolDt'])) $ADAT['kovetkezoIdoszakIndex'] = count($ADAT['vizsgaIdoszak']) - 1; + } + } + if (count($ADAT['vizsgaIdoszak']) == 0) { + $_SESSION['alert'][] = 'message:wrong_data:nincs vizsgaidőszak kijelölve ebben a szemeszterben'; + } else { + + } // van kijelölve vizsgaidőszak + + $TOOL['szemeszterSelect'] = array('tipus'=>'cella','paramName' => 'szemeszterId', 'post' => array('sorrendNev', 'osztalyId')); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes.php new file mode 100644 index 00000000..11ad75ef --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes.php @@ -0,0 +1,9 @@ + 0) putVizsgaJelentkezes($ADAT); + elseif (__NAPLOADMIN === true) echo ''._VIZSGAIDOSZAK_FELVETELE.''; +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/zaroJegyCheck-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/zaroJegyCheck-pre.php new file mode 100644 index 00000000..0cd5bf23 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/zaroJegyCheck-pre.php @@ -0,0 +1,82 @@ + 'indexed', 'minden'=>false, 'telephelyId' => $telephelyId)); + if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') { $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'],'id'); } + elseif (__OSZTALYFONOK && !isset($_POST['osztalyId'])) { $osztalyId = $ADAT['osztalyId'] = $_POST['osztalyId'] = $_OSZTALYA[0]; } + + if (isset($_POST['tolDt']) && $_POST['tolDt'] != '') $tolDt = readVariable($_POST['tolDt'],'date'); + elseif (isset($szemeszterKezdesDt)) $tolDt = $szemeszterKezdesDt; + else $tolDt = $_TANEV['kezdesDt']; + + if (isset($_POST['igDt']) && $_POST['igDt'] != '') $igDt = readVariable($_POST['igDt'],'date'); + elseif (isset($szemeszterZarasDt)) $igDt = $szemeszterZarasDt; + else $igDt = $_TANEV['zarasDt']; + // a tankör diákjainak lekérdezése + $ADAT['diakok'] = getDiakokByOsztalyId(array($osztalyId), $SET = array('tanev' => $tanev, 'tolDt' => null, 'igDt' => null, 'result' => '', 'statusz' => array('jogviszonyban van','magántanuló'))); +/* for ($i=0; $i'naplo_intezmeny','values'=>$v),$lr); + $q = "UPDATE vizsga SET evfolyamJel='%s' WHERE zaroJegyId = %u"; + db_query($q, array('modul'=>'naplo_intezmeny','values'=>$v),$lr); + } + db_close($lr); + } + $q = "SELECT osztalyId, leiras,kezdoTanev,vegzoTanev,jel,telephelyId,osztalyJellegId, elokeszitoEvfolyam, + osztalyJelleg.osztalyJellegNev, osztalyJelleg.vegzesKovetelmenye, kovOsztalyJellegId + FROM osztaly LEFT JOIN mayor_naplo.osztalyJelleg USING (osztalyJellegId) WHERE osztalyId=%u"; + $v = array($osztalyId); + $ADAT['osztalyok'] = db_query($q,array('values'=>$v,'result'=>'record','modul'=>'naplo_intezmeny')); + + $q = "SELECT * FROM zaroJegy LEFT JOIN osztalyDiak ON (osztalyDiak.diakId=zaroJegy.diakId AND beDt<=hivatalosDt AND (kiDt IS NULL or kiDt>=hivatalosDt)) WHERE osztalyId=%u AND hivatalosDt>='%s' AND hivatalosDt<='%s' ORDER BY hivatalosDt,zaroJegy.diakId,evfolyam,evfolyamJel"; + $v = array($osztalyId,$ADAT['szemeszterAdat']['kezdesDt'],$ADAT['szemeszterAdat']['zarasDt']); + $ADAT['zaroJegyek'] = db_query($q,array('values'=>$v,'result'=>'indexed','modul'=>'naplo_intezmeny')); + } +//----------- +// $TOOL['telephelySelect'] = array('tipus' => 'cella','paramName'=>'telephelyId'); + $TOOL['szemeszterSelect'] = array('tipus'=>'cella','paramName' => 'szemeszterId', 'statusz' => array('aktív','lezárt') , 'post' => array('sorrendNev', 'osztalyId', 'telephelyId')); + if (!__DIAK) { + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'tanev' => $ADAT['szemeszterAdat']['tanev'], 'post' => array('szemeszterId', 'sorrendNev', 'telephelyId')); + } + if (isset($osztalyId) && isset($szemeszterId)) + $TOOL['nyomtatasGomb'] = array('titleConst' => '_NYOMTATAS','tipus'=>'cella', 'url'=>'index.php?page=naplo&sub=nyomtatas&f=ertesito','post' => array('osztalyId','szemeszterId','sorrendNev', 'telephelyId')); + getToolParameters(); + + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/zaroJegyCheck.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/zaroJegyCheck.php new file mode 100644 index 00000000..be582c89 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/osztalyozo/zaroJegyCheck.php @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/diakAllapot-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/diakAllapot-pre.php new file mode 100644 index 00000000..81926458 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/diakAllapot-pre.php @@ -0,0 +1,127 @@ + $osztalyId, 'result' => 'idonly','override' => false)); + if (is_array($ADAT['diakIds']) && count($ADAT['diakIds']) > 0) { + $ADAT['diakAdat'] = getDiakAdatById($ADAT['diakIds'], array('result' => 'assoc', 'keyfield' => 'diakId')); + $ADAT['sniDiakIds'] = $Diakok = array(); + foreach ($ADAT['diakAdat'] as $_diakId => $dAdat) { + if ($dAdat['fogyatekossag'] != '') { + $ADAT['sniDiakIds'][] = $_diakId; + $dAdat['aktualisStatusz'] = $dAdat['statusz']; + $Diakok[] = $dAdat; + } + } + } + $diakId = $ADAT['diakId'] = readVariable($_POST['diakId'], 'id', null, $ADAT['sniDiakIds']); + if (isset($diakId)) { + + $ADAT['fields']['olvasas'] = getEnumField('naplo','sniDiakAllapot','olvasas'); + $ADAT['fields']['olvasasTempoja'] = getEnumField('naplo','sniDiakAllapot','olvasasTempoja'); + $ADAT['fields']['olvasasHibak'] = getSetField('naplo','sniDiakAllapot','olvasasHibak'); + $ADAT['fields']['iras'] = getEnumField('naplo','sniDiakAllapot','iras'); + $ADAT['fields']['iraskepe'] = getEnumField('naplo','sniDiakAllapot','iraskepe'); + $ADAT['fields']['irasHibak'] = getSetField('naplo','sniDiakAllapot','irasHibak'); + $ADAT['fields']['szovegertes'] = getEnumField('naplo','sniDiakAllapot','szovegertes'); + $ADAT['fields']['matematika'] = getSetField('naplo','sniDiakAllapot','matematika'); + $ADAT['fogyatekossag'] = getSetField('naplo_intezmeny','diak', 'fogyatekossag'); + + // Mentor/Ofő lekérdezése, konstans beállítása + $ADAT['sniDiakAdat'] = getSniDiakAdat($diakId); + define('__MENTOR', + __TANAR + && ( + (__OSZTALYFONOK && in_array($osztalyId, $_OSZTALYA)) + || __USERTANARID == $ADAT['sniDiakAdat']['mentorTanarId'] + ) + ); + // Action + if ( + $_TANEV['statusz'] == 'aktív' + && (__NAPLOADMIN || __VEZETOSEG || __MENTOR) + ) { // ? egyéb feltételek - határidő??? + if ($action == 'allapotRogzites') { + $Fields = getTableFields('sniDiakAllapot','naplo'); + foreach ($Fields as $attr => $attrNev) { + if (is_array($ADAT['fields'][$attr])) { + $Param['diakAllapot'][$attr] = readVariable($_POST[$attr], 'enum', null, $ADAT['fields'][$attr]); + if (is_array($Param['diakAllapot'][$attr])) $Param['diakAllapot'][$attr] = implode(',',$Param['diakAllapot'][$attr]); + } elseif (in_array($attr, array('diakId','szemeszter','vizsgalatTanarId','priorizalas'))) { + $Param['diakAllapot'][$attr] = readVariable($_POST[$attr], 'id'); + } elseif ($attr == 'vizsgalatDt') { + $Param['diakAllapot'][$attr] = readVariable($_POST[$attr], 'date'); + } else { + $Param['diakAllapot'][$attr] = readVariable($_POST[$attr], 'string'); + } + } + foreach (array('gyengeseg','erosseg') as $val) { + $Param['gyengesegekErossegek'][$val.'Leiras'] = readVariable($_POST[$val.'Leiras'], 'string'); + $Param['gyengesegekErossegek'][$val.'Prioritas'] = readVariable($_POST[$val.'Prioritas'], 'numeric unsigned'); + } + if ($diakId != $ADAT['diakId']) { + $_SESSION['alert'][] = 'message:wrong_data:allapotRogzites:diakId='.$diakId.'?'.$Param['diakId']; + } else { + sniDiakAllapotRogzites($Param); + } + } elseif ($action == 'sniDiakAdatRogzites') { + $Param['diakId'] = $diakId; + $Param['kulsoInfo'] = readVariable($_POST['kulsoInfo'], 'string'); + $Param['mentorTanarId'] = readVariable($_POST['mentorTanarId'], 'id'); + $Param['fogyatekossag'] = readVariable($_POST['fogyatekossag'], 'enum', null, $ADAT['fogyatekossag']); + sniDiakAdatRogzites($Param); + } + } + $ADAT['diakAdat'][$diakId] = getDiakAdatById($diakId); + $ADAT['diakAllapot'] = getDiakAllapot($diakId); + $ADAT['sniDiakAdat'] = getSniDiakAdat($diakId); + // Osztály tanárai + $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV, array('tanarral' => true)); + $ADAT['tanarIds'] = array(); + for ($i = 0; $i < count($Tankorok); $i++) { + for ($j = 0; $j < count($Tankorok[$i]['tanarok']); $j++) { + if (!in_array($Tankorok[$i]['tanarok'][$j]['tanarId'], $ADAT['tanarIds'])) + $ADAT['tanarIds'][] = $Tankorok[$i]['tanarok'][$j]['tanarId']; + } + } + // Összes tanár névsorban + $ADAT['tanarok'] = getTanarok(); + } + + } + // Tool + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post' => array()); + if (isset($osztalyId)) { + $TOOL['diakSelect'] = array( + 'diakok' => $Diakok, + 'tipus'=>'cella','paramName' => 'diakId', + 'osztalyId'=> $osztalyId,'post' => array('osztalyId'), + 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva') + ); + } + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=sni&f=diakAllapot','index.php?page=naplo&sub=sni&f=fejlesztesiTerv','index.php?page=naplo&sub=sni&f=tantargyiFeljegyzesek'), + 'titleConst' => array('_DIAK_ALLAPOT','_HAVI_OSSZEGZES','_TANTARGYI_FELJEGYZESEK'), + 'post' => array('osztalyId','diakId','dt'), + 'paramName'=>'diakId'); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/diakAllapot.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/diakAllapot.php new file mode 100644 index 00000000..8eb88c0e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/diakAllapot.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/fejlesztesiTerv-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/fejlesztesiTerv-pre.php new file mode 100644 index 00000000..46dfeab1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/fejlesztesiTerv-pre.php @@ -0,0 +1,110 @@ + $osztalyId, 'result' => 'idonly','override' => false)); + if (is_array($ADAT['diakIds']) && count($ADAT['diakIds']) > 0) { + $ADAT['diakAdat'] = getDiakAdatById($ADAT['diakIds'], array('result' => 'assoc', 'keyfield' => 'diakId')); + $ADAT['sniDiakIds'] = $Diakok = array(); + foreach ($ADAT['diakAdat'] as $_diakId => $dAdat) { + if ($dAdat['fogyatekossag'] != '') { + $ADAT['sniDiakIds'][] = $_diakId; + $dAdat['aktualisStatusz'] = $dAdat['statusz']; + $Diakok[] = $dAdat; + } + } + } + $diakId = $ADAT['diakId'] = readVariable($_POST['diakId'], 'id', null, $ADAT['sniDiakIds']); + if (isset($diakId) && isset($dt)) { + + // Mentor/Ofő lekérdezése, konstans beállítása + $ADAT['sniDiakAdat'] = getSniDiakAdat($diakId); + define('__MENTOR', + __TANAR + && ( + (__OSZTALYFONOK && in_array($osztalyId, $_OSZTALYA)) + || __USERTANARID == $ADAT['sniDiakAdat']['mentorTanarId'] + ) + ); + // Action + if ( + $_TANEV['statusz'] == 'aktív' + && (__NAPLOADMIN || __VEZETOSEG || __MENTOR) + ) { // ? egyéb feltételek - határidő??? + if ($action == 'haviOsszegzesRogzitese') { + $Fields = getTableFields('sniHaviOsszegzes', 'naplo'); + foreach ($Fields as $attr => $attrNev) { + if (in_array($attr, array('diakId','valtozas'))) + $Param[$attr] = readVariable($_POST[$attr], 'id'); + elseif ($attr == 'dt') + $Param[$attr] = readVariable($_POST[$attr], 'date'); + else + $Param[$attr] = readVariable($_POST[$attr], 'string'); + } + $Param['felelos'] = readVariable($_POST['felelos'], 'id'); + sniHaviOsszegzesRogzites($Param); + } + } + + $ADAT['sniHaviOsszegzes'] = getHaviOsszegzes($diakId, $dt); + $Tankorok = getTankorByOsztalyId($osztalyId, __TANEV, array('tanarral' => true)); + $ADAT['tanarIds'] = array(); + for ($i = 0; $i < count($Tankorok); $i++) { + for ($j = 0; $j < count($Tankorok[$i]['tanarok']); $j++) { + if (!in_array($Tankorok[$i]['tanarok'][$j]['tanarId'], $ADAT['tanarIds'])) + $ADAT['tanarIds'][] = $Tankorok[$i]['tanarok'][$j]['tanarId']; + } + } + $ADAT['tanarok'] = getTanarok(); + } + + + } + // Tool + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post' => array('dt')); + $TOOL['diakSelect'] = array( + 'diakok' => $Diakok, + 'tipus'=>'cella','paramName' => 'diakId', + 'osztalyId'=> $osztalyId,'post' => array('osztalyId'), + 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva'), + 'post' => array('osztalyId','dt') + ); + $TOOL['datumSelect'] = array( + 'tipus' => 'sor', 'ParamName' => 'dt', 'tanev' => __TANEV, 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'], + 'hanyNaponta' => 'havonta', 'post' => array('diakId', 'osztalyId') + ); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=sni&f=diakAllapot','index.php?page=naplo&sub=sni&f=fejlesztesiTerv','index.php?page=naplo&sub=sni&f=tantargyiFeljegyzesek'), + 'titleConst' => array('_DIAK_ALLAPOT','_HAVI_OSSZEGZES','_TANTARGYI_FELJEGYZESEK'), + 'post' => array('osztalyId','diakId','dt'), + 'paramName'=>'diakId'); + if (isset($osztalyId)) $TOOL['nyomtatasGomb'] = array('titleConst' => '_NYOMTATAS','tipus'=>'cella', 'url'=>'index.php?page=naplo&sub=nyomtatas&f=sniHaviJegyzokonyv','post' => array('osztalyId')); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/fejlesztesiTerv.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/fejlesztesiTerv.php new file mode 100644 index 00000000..78fd73f2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/fejlesztesiTerv.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/sni-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/sni-pre.php new file mode 100644 index 00000000..94ab4312 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/sni-pre.php @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/sni.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/sni.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/tantargyiFeljegyzesek-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/tantargyiFeljegyzesek-pre.php new file mode 100644 index 00000000..f2af35f3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/tantargyiFeljegyzesek-pre.php @@ -0,0 +1,113 @@ + $osztalyId, 'result' => 'idonly','override' => false)); + if (is_array($ADAT['diakIds']) && count($ADAT['diakIds']) > 0) { + $ADAT['diakAdat'] = getDiakAdatById($ADAT['diakIds'], array('result' => 'assoc', 'keyfield' => 'diakId')); + $ADAT['sniDiakIds'] = $Diakok = array(); + foreach ($ADAT['diakAdat'] as $_diakId => $dAdat) { + if ($dAdat['fogyatekossag'] != '') { + $ADAT['sniDiakIds'][] = $_diakId; + $dAdat['aktualisStatusz'] = $dAdat['statusz']; + $Diakok[] = $dAdat; + } + } + } + $diakId = $ADAT['diakId'] = readVariable($_POST['diakId'], 'id', null, $ADAT['sniDiakIds']); + + if (isset($diakId) && isset($dt)) { + + // Az osztály tanárai + $ADAT['tankorIds'] = getTankorByDiakId($diakId, __TANEV, array('result' => 'idonly')); + $ADAT['tankorTanar'] = getTankorTanaraiByInterval($ADAT['tankorIds'], array('tanev' => __TANEV, 'tolDt' => '', 'igDt' => '', 'result' => 'assoc', 'datumKenyszeritessel' => false)); + $ADAT['tankorAdat'] = getTankorAdatByIds($ADAT['tankorIds'], array('tanev' => __TANEV, 'dt' => $dt)); + foreach ($ADAT['tankorTanar'] as $_tankorId => $Tanarok) { + $ADAT['tankorTanaraE'][$_tankorId] = false; + for ($i = 0; $i < count($Tanarok); $i++) + if ($Tanarok[$i]['tanarId'] == __USERTANARID) { $ADAT['tankorTanaraE'][$_tankorId] = true; break; } + } + + $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'], 'id', null, $ADAT['tankorIds']); + if (isset($tankorId)) { + for ($i = 0; $i < count($ADAT['tankorTanar'][$tankorId]); $i++) { + if ($ADAT['tankorTanar'][$tankorId][$i]['tanarId'] == __USERTANARID) { define('__TANARA', true); break; } + } + if (!defined('__TANARA')) define('__TANARA', false); + + } + + // Action + if ($_TANEV['statusz'] == 'aktív') { + if ($action == 'tantargyiFeljegyzesRogzites') { + $Param = array( + 'diakId' => $diakId, + 'tankorId' => readVariable($_POST['feljegyzesTankorId'], 'id', null, $ADAT['tankorIds']), + 'dt' => readVariable($_POST['feljegyzesDt'], 'date'), + 'megjegyzes' => readVariable($_POST['megjegyzes'], 'string') + ); + if ( + __NAPLOADMIN + || ($ADAT['tankorTanaraE'][$Param['tankorId']] && strtotime($Param['dt']) >= strtotime(_HALADASI_HATARIDO)) + ) tantargyiFeljegyzesRogzites($Param); + } + } + if (isset($tankorId)) $ADAT['sniTantargyiFeljegyzes'] = getDiakFeljegyzesByTankorId($ADAT); + else $ADAT['sniTantargyiFeljegyzes'] = getDiakFeljegyzesByDt($ADAT); + } + + } + + // Tool + $TOOL['osztalySelect'] = array('tipus'=>'cella','paramName' => 'osztalyId', 'post' => array('dt')); + if (isset($osztalyId)) + $TOOL['diakSelect'] = array( + 'diakok' => $Diakok, + 'tipus'=>'cella','paramName' => 'diakId', + 'osztalyId'=> $osztalyId,'post' => array('osztalyId'), + 'statusz' => array('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva'), + 'post' => array('osztalyId','dt') + ); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', + 'url' => array('index.php?page=naplo&sub=sni&f=diakAllapot','index.php?page=naplo&sub=sni&f=fejlesztesiTerv','index.php?page=naplo&sub=sni&f=tantargyiFeljegyzesek'), + 'titleConst' => array('_DIAK_ALLAPOT','_HAVI_OSSZEGZES','_TANTARGYI_FELJEGYZESEK'), + 'post' => array('osztalyId','diakId','tankorId'), + 'paramName'=>'diakId'); + if (isset($diakId)) + $TOOL['tankorSelect'] = array('tipus' => 'sor', 'tankorok' => $TankorokMutat, 'paramName' => 'tankorId', 'post' => array('osztalyId','diakId','dt')); + if (!isset($tankorId)) + $TOOL['datumSelect'] = array( + 'lapozo' => true, + 'tipus'=>'sor', 'post'=>array('diakId', 'osztalyId', 'tankorId'), 'paramName' => 'dt', 'hanyNaponta' => 7, + 'tolDt' => $ADAT['tolDt'], + 'igDt' => $_TANEV['zarasDt'], 'override' => true + ); + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/tantargyiFeljegyzesek.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/tantargyiFeljegyzesek.php new file mode 100644 index 00000000..b706e6db --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/sni/tantargyiFeljegyzesek.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/lemorzsolodas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/lemorzsolodas-pre.php new file mode 100644 index 00000000..0e33b8fc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/lemorzsolodas-pre.php @@ -0,0 +1,38 @@ +'naplo_intezmeny','result'=>'indexed')); + for ($i=0; $i'cella', 'post' => array(), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'napok' => $NAPOK + ); + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/lemorzsolodas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/lemorzsolodas.php new file mode 100644 index 00000000..e144b075 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/lemorzsolodas.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/letszam-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/letszam-pre.php new file mode 100644 index 00000000..5320b816 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/letszam-pre.php @@ -0,0 +1,88 @@ +'naplo_intezmeny','result'=>'indexed')); + for ($i=0; $i MAX(IF(statusz NOT IN ('jogviszonyban van') AND dt <= '".$dt."',dt,'0000-00-00'))"; + $r = db_query($q,array('modul'=>'naplo_intezmeny'),$lr); + $q = "SELECT CONCAT(IF(telephelyId IS NULL,0,telephelyId),LPAD(osztalyJel,4,0)) AS sorrend,osztalyId,osztalyJel,osztaly.kezdoTanev,osztaly.vegzoTanev,count(_diakOkt.diakId) AS dbDiak, YEAR(szuletesiIdo) AS szuletesiEv, + IF(diak.nem IS NOT NULL,nem,'fiú') AS neme,nem FROM `_diakOkt` + LEFT JOIN `osztalyDiak` ON (_diakOkt.diakId=osztalyDiak.diakId AND beDt<='".$dt."' AND (kiDt IS NULL OR kiDt>='".$dt."')) + LEFT JOIN `osztaly` USING (osztalyId) + LEFT JOIN `diak` ON (_diakOkt.diakId=diak.diakId) + LEFT JOIN `naplo_".__INTEZMENY."_".$tanev."`.osztalyNaplo USING (osztalyId) + WHERE osztaly.kezdoTanev<=".$tanev." AND osztaly.vegzoTanev>=".$tanev." + GROUP BY osztalyId,YEAR(szuletesiIdo),neme + ORDER BY szuletesiEv,LPAD(osztalyJel,10,0),nem"; + $r = db_query($q,array('modul'=>'naplo_intezmeny','result'=>'indexed'),$lr); + $x = reindex($r,array('szuletesiEv','osztalyId','nem')) ; + + for ($i=0; $i$r[$i]['osztalyJel'],'osztalyId'=>$r[$i]['osztalyId']); + } + ksort($_TMP); + $ADAT['osztalyok'] = $_TMP; + +} + + $ADAT['eletkor'] = $x; + + + +/* Nyelvek statisztikája */ +// ennyi darab tankör van nyelvek szerint, bár ezt senki nem kérdezte :) select targyId,count(*) from tankor left join tankorTipus USING (tankorTipusId) WHERE rovidNev='első nyelv' group by targyId; +// select targyId,count(*) from tankor left join tankorTipus USING (tankorTipusId) LEFT JOIN tankorDiak USING (tankorId) WHERE rovidNev='első nyelv' group by targyId; + +/* + +$q = "select targyId,count(*) from tankor left join tankorTipus USING (tankorTipusId) LEFT JOIN tankorDiak USING (tankorId) LEFT JOIN _diakOkt USING (diakId) +WHERE _diakOkt.diakId is not null AND rovidNev='első nyelv' +AND beDt<='".$dt."' AND (kiDt is null OR kiDt>='".$dt."') +group by targyId"; + + $r = db_query($q,array('modul'=>'naplo_intezmeny','result'=>'indexed'),$lr); + +echo '
    ';
    +var_dump($r);
    +
    +
    +    $_SESSION['alert'][] = 'info::Nyelvek hibásak lehetnek, ha van olyan tárgy, ami nem első-második nyelvnek van megjelölve';
    +*/
    +
    +    $_SESSION['alert'][] = 'info::csak a kiválasztott dátumkor "jogviszonyban van" jogviszonyú diákok látszanak ebben a táblázatban (a fiú/lány mezők hiánya hibás adatokhoz vezethet)';
    +
    +    $TOOL['datumSelect'] = array(
    +        'tipus'=>'cella', 'post' => array(),
    +        'paramName' => 'dt', 'hanyNaponta' => 1,
    +//        'tolDt' => date('Y-m-d', strtotime($_TANEV['kezdesDt'])),
    +//        'igDt' => $_TANEV['zarasDt'],
    +        'napok' => $NAPOK
    +    );
    +
    +
    +?>
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/letszam.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/letszam.php
    new file mode 100644
    index 00000000..d521ccc6
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/letszam.php
    @@ -0,0 +1,8 @@
    +
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/tantargyFelosztas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/tantargyFelosztas-pre.php
    new file mode 100644
    index 00000000..a47d6316
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/tantargyFelosztas-pre.php
    @@ -0,0 +1,127 @@
    +'idonly'));
    +    $ADAT['tankorTipusok'] = getTankorTipusok();
    +    foreach ($ADAT['tankorTipusok'] as $tankorTipusId => $tAdat) $ADAT['tankorTipusIds'][$tAdat['oratervi']][] = $tankorTipusId;
    +    $ADAT['finanszírozott pedagógus létszám'] = array(
    +	'általános iskola' 				=> 11.8, // 11.8 tanuló / 1 pedagógus
    +	'gimnázium' 					=> 12.5, // 12.5 tanuló / 1 pedagógus
    +	'szakiskola, Híd programok' 			=> 12,   // ...
    +	'szakközépiskola, nem szakkképző évfolyam' 	=> 12.4,
    +	'szakközépiskola, szakkképző évfolyam' 		=> 13.7
    +    ); // -- TODO szakgimnázium???
    +
    +
    +
    +    $IA['intezmenyAdat'] = getIntezmenyByRovidnev(__INTEZMENY);
    +    $IA['osztalyAdat'] = getOsztalyok(__TANEV, array('result' => 'assoc', 'minden'=>false, 'telephelyId' => null));
    +    foreach ($IA['osztalyAdat'] as $idx => $oAdat) $IA['osztalyIds'][] = $oAdat['osztalyId'];
    +    $IA['targyAdat'] = getTargyAdatByIds();
    +
    +    $IA['diakLetszam']['statusz'] = getDiakLetszamByStatusz();
    +    $IA['diakLetszam']['osztaly'] = getDiakLetszamByOsztalyId($IA['osztalyIds']);
    +    foreach ($IA['diakLetszam']['osztaly'] as $osztalyId => $letszam) 
    +	if (is_numeric($osztalyId)) $IA['diakLetszam']['evfolyamJel'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ]['összes'] += intval($letszam);
    +    foreach ($IA['diakLetszam']['osztaly']['fiú'] as $osztalyId => $letszam) 
    +	if (is_numeric($osztalyId)) $IA['diakLetszam']['evfolyamJel'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ]['fiú'] += intval($letszam);
    +    foreach ($IA['diakLetszam']['osztaly']['lány'] as $osztalyId => $letszam) 
    +	if (is_numeric($osztalyId)) $IA['diakLetszam']['evfolyamJel'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ]['lány'] += intval($letszam);
    +    $IA['tanarLetszam']['besorolas'] = getTanarLetszamByBesorolas();
    +    $IA['tanarLetszam']['statusz'] = getTanarLetszamByStatusz();
    +    $IA['oraszamok'] = getTankorOraszamOsszesites($ADAT['tankorTipusIds']);
    +    $IA['targyOraszamok'] = getTargyOraszamok($ADAT['tankorTipusIds']);
    +    $IA['osztalyOraszamok'] = getOsztalyOraszamok($IA['osztalyIds'], $ADAT['tankorTipusIds']);
    +    foreach ($IA['osztalyOraszamok']['összes'] as $osztalyId => $oraszam) {
    +	$IA['evfolyamOraszamok']['összes'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ] += intval($oraszam);
    +	$IA['evfolyamOraszamok']['óratervi'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ] += intval($IA['osztalyOraszamok']['óratervi'][$osztalyId]);
    +	$IA['evfolyamOraszamok']['tanórán kívüli'][ $IA['osztalyAdat'][$osztalyId]['evfolyamJel'] ] += intval($IA['osztalyOraszamok']['tanórán kívüli'][$osztalyId]);
    +    }
    +    $egyhaziE = ($IA['intezmenyAdat']['fenntarto']=='egyházi');
    +    foreach ($IA['osztalyAdat'] as $osztalyId => $osztalyAdat) {
    +	$IA['osztalyIdokeret'][$osztalyId] = getOsztalyHetiIdokeret($osztalyId, $osztalyAdat, array('egyhaziE'=>$egyhaziE));
    +	$IA['osztalyIdokeret']['összesen']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes'];
    +	$IA['osztalyIdokeret']['összesen']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett'];
    +	$IA['osztalyIdokeret']['összesen']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás'];
    +	$IA['osztalyIdokeret']['összesen']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi'];
    +	$IA['osztalyIdokeret']['összesen']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium'];
    +	$IA['osztalyIdokeret']['összesen']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi'];
    +	if (in_array($osztalyAdat['osztalyJellegId'], array(21,22)) && in_array($osztalyAdat['evfolyamJel'], array('1','2','3','4'))) {
    +	    $IA['osztalyIdokeret']['alsó']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes'];
    +	    $IA['osztalyIdokeret']['alsó']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett'];
    +	    $IA['osztalyIdokeret']['alsó']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás'];
    +	    $IA['osztalyIdokeret']['alsó']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi'];
    +	    $IA['osztalyIdokeret']['alsó']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium'];
    +	    $IA['osztalyIdokeret']['alsó']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi'];
    +	}
    +	if (in_array($osztalyAdat['osztalyJellegId'], array(21,23)) && in_array($osztalyAdat['evfolyamJel'], array('5','6','7','8'))) {
    +	    $IA['osztalyIdokeret']['felső']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes'];
    +	    $IA['osztalyIdokeret']['felső']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett'];
    +	    $IA['osztalyIdokeret']['felső']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás'];
    +	    $IA['osztalyIdokeret']['felső']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi'];
    +	    $IA['osztalyIdokeret']['felső']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium'];
    +	    $IA['osztalyIdokeret']['felső']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi'];
    +	}
    +	if (in_array($osztalyAdat['osztalyJellegId'], array(21,22,23)) && in_array($osztalyAdat['evfolyamJel'], array('1','2','3','4','5','6','7','8'))) {
    +	    $IA['osztalyIdokeret']['általános']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes'];
    +	    $IA['osztalyIdokeret']['általános']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett'];
    +	    $IA['osztalyIdokeret']['általános']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás'];
    +	    $IA['osztalyIdokeret']['általános']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi'];
    +	    $IA['osztalyIdokeret']['általános']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium'];
    +	    $IA['osztalyIdokeret']['általános']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi'];
    +	}
    +	if (in_array($osztalyAdat['osztalyJellegId'], array(51,52,53,61,62,63)) && in_array($osztalyAdat['evfolyamJel'], array('1','2','3','4','5','6','7','8'))) {
    +	    $IA['osztalyIdokeret']['gimnázium18']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes'];
    +	    $IA['osztalyIdokeret']['gimnázium18']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett'];
    +	    $IA['osztalyIdokeret']['gimnázium18']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás'];
    +	    $IA['osztalyIdokeret']['gimnázium18']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi'];
    +	    $IA['osztalyIdokeret']['gimnázium18']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium'];
    +	    $IA['osztalyIdokeret']['gimnázium18']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi'];
    +	}
    +	if (in_array($osztalyAdat['osztalyJellegId'], array(31,32,33,34,35,36,51,52,53,61,62,63)) && in_array($osztalyAdat['evfolyamJel'], array('9','10','11','12'))) {
    +	    $IA['osztalyIdokeret']['gimnázium92']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes'];
    +	    $IA['osztalyIdokeret']['gimnázium92']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett'];
    +	    $IA['osztalyIdokeret']['gimnázium92']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás'];
    +	    $IA['osztalyIdokeret']['gimnázium92']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi'];
    +	    $IA['osztalyIdokeret']['gimnázium92']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium'];
    +	    $IA['osztalyIdokeret']['gimnázium92']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi'];
    +	}
    +	if (in_array($osztalyAdat['osztalyJellegId'], array(31,32,33,34,35,36,51,52,53,61,62,63))) {
    +	    $IA['osztalyIdokeret']['gimnázium']['összes'] += $IA['osztalyIdokeret'][$osztalyId]['összes'];
    +	    $IA['osztalyIdokeret']['gimnázium']['engedélyezett'] += $IA['osztalyIdokeret'][$osztalyId]['engedélyezett'];
    +	    $IA['osztalyIdokeret']['gimnázium']['tehetséggondozás-felzárkóztatás'] += $IA['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás'];
    +	    $IA['osztalyIdokeret']['gimnázium']['egyházi'] += $IA['osztalyIdokeret'][$osztalyId]['egyházi'];
    +	    $IA['osztalyIdokeret']['gimnázium']['gimnázium'] += $IA['osztalyIdokeret'][$osztalyId]['gimnázium'];
    +	    $IA['osztalyIdokeret']['gimnázium']['nemzetiségi'] += $IA['osztalyIdokeret'][$osztalyId]['nemzetiségi'];
    +	}
    +	// Finanszírozott pedagógus létszámhoz diáklészámok osztály-típusonként
    +	if (in_array($osztalyAdat['osztalyJellegId'], array(21,22,23))) { // általános iskola
    +	    $IA['diakLetszam']['általános iskola'] += $IA['diakLetszam']['osztaly'][$osztalyId];
    +	} else if (in_array($osztalyAdat['osztalyJellegId'], array(31,32,33,34,35,36,51,52,53,61,62,63,65))) { // gimnázium
    +	    $IA['diakLetszam']['gimnázium'] += $IA['diakLetszam']['osztaly'][$osztalyId];
    +	} else if (in_array($osztalyAdat['osztalyJellegId'], array(82,83,84,85,91,92,93))) { // szakiskola, Híd programok
    +	    $IA['diakLetszam']['szakiskola, Híd programok'] += $IA['diakLetszam']['osztaly'][$osztalyId];
    +	} else if (in_array($osztalyAdat['osztalyJellegId'], array(71,72,73,74,75,76,77,78,79))) { // szakközépiskola, nem szakképző évfolyam
    +	    $IA['diakLetszam']['szakközépiskola, nem szakkképző évfolyam'] += $IA['diakLetszam']['osztaly'][$osztalyId];
    +	} else if (in_array($osztalyAdat['osztalyJellegId'], array())) { // szakközépiskola, szakképző évfolyam
    +	    $IA['diakLetszam']['szakközépiskola, szakképző évfolyam'] += $IA['diakLetszam']['osztaly'][$osztalyId];
    +	}
    +    } // osztályok
    +    $IA['tankorLetszamStat'] = getTankorLetszamStat();
    +*/
    +    $IA = getTantargyfelosztasStat();
    +
    +    $ADAT['intezmeny'][__INTEZMENY] = $IA;
    +
    +?>
    \ No newline at end of file
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/tantargyFelosztas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/tantargyFelosztas.php
    new file mode 100644
    index 00000000..1e5786be
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/stat/tantargyFelosztas.php
    @@ -0,0 +1,10 @@
    +
    \ No newline at end of file
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/szulinap-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/szulinap-pre.php
    new file mode 100644
    index 00000000..46164faf
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/szulinap-pre.php
    @@ -0,0 +1,15 @@
    +'assoc'));
    +
    +    }
    +
    +?>
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/szulinap.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/szulinap.php
    new file mode 100644
    index 00000000..93606734
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/szulinap.php
    @@ -0,0 +1,44 @@
    +';
    +	for ($i=0; $i';
    +	echo $ADAT['ma']['diak'][$i]['viseltNevElotag'].' ';
    +	echo $ADAT['ma']['diak'][$i]['viseltCsaladinev'].' ';
    +	echo $ADAT['ma']['diak'][$i]['viseltUtonev'];
    +	echo '';
    +	}
    +	echo '';
    +    }
    +
    +    if (is_array($ADAT['ma']['diakOsztaly'])) foreach($ADAT['ma']['diakOsztaly'] as $_diakId => $_osztalyId) {
    +	$O[$_osztalyId[0]]++;
    +	if ( defined('__USERDIAKID') && __USERDIAKID == $_diakId ) $szulinapos = true;
    +
    +    }
    +
    +    if ($szulinapos) echo _HAPPYBIRTHDAY;
    +
    +    if (is_array($O)) {
    +	echo '
      '; + foreach($O as $osztalyId => $db) { + echo '
    • '; + echo $ADAT['osztaly'][$osztalyId]['osztalyJel'].': ' ; + echo $db.' '; + echo '
    • '; + } + echo '
    '; + } + +} + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/checkStatus-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/checkStatus-pre.php new file mode 100644 index 00000000..dbf2ba62 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/checkStatus-pre.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/checkStatus.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/checkStatus.php new file mode 100644 index 00000000..56f3a5fe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/checkStatus.php @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/diakTanarai-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/diakTanarai-pre.php new file mode 100644 index 00000000..24a3248a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/diakTanarai-pre.php @@ -0,0 +1,54 @@ + 'assoc')); + if (count($ADAT['osztalyId']) > 0 && isset($targyId)) { + + // diákok lekérdezése + $ADAT['diak'] = getDiakokByOsztalyId($ADAT['osztalyId']); + // diákok tankörei + for ($i = 0; $i < count($ADAT['diak']); $i++) { + + $diakId = $ADAT['diak'][$i]['diakId']; + $ADAT['diak'][$i]['tankorIds'] = array(); + $ret = getTankorByDiakId($diakId, $tanev = __TANEV, $SET = array('csakId' => false, 'tolDt' => '', 'igDt' => '', 'result'=>'', 'jelenlet'=>'')); + if ($ret !== false) { + for ($j = 0; $j < count($ret); $j++) { + if ($ret[$j]['targyId'] == $targyId) { + $ADAT['diak'][$i]['tankorIds'][] = $ret[$j]['tankorId']; + if (!in_array($ret[$j]['tankorId'], $ADAT['tankorIds'])) $ADAT['tankorIds'][] = $ret[$j]['tankorId']; + } + } + } + } + + // Tankörök tanárai + $ADAT['tankorTanar'] = getTankorTanaraiByInterval( + $ADAT['tankorIds'], array('tanev' => __TANEV, 'tolDt' => '', 'igDt' => '', 'result' => 'assoc') + ); + } + + + // ToolBar + $TOOL['targySelect']= array('tipus'=>'cella','paramName'=>'targyId', 'post'=>array('osztalyIds')); + getToolParameters(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/diakTanarai.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/diakTanarai.php new file mode 100644 index 00000000..2800d37a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/diakTanarai.php @@ -0,0 +1,11 @@ + 0) + putDiakTanarLista($ADAT); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/fogadoOra-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/fogadoOra-pre.php new file mode 100644 index 00000000..a57888c2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/fogadoOra-pre.php @@ -0,0 +1,142 @@ + __TANEV, null, 'tipus' => array('fogadóóra jelentkezés'), 'tolDt' => date('Y-m-d H:i:s'), 'igDt' => date('Y-m-d H:i:s'), 'return' => '', 'arraymap'=>null)); + define('__FOGADOORA_JELENTKEZES',(is_array($idoszak) && count($idoszak)>0)); + } + // ----------- action -------------- // + if (__NAPLOADMIN || __VEZETOSEG) { + if ( strtotime($_POST['tolDt']) > 0) $_tolDt = $_POST['tolDt']; + + if ($action == 'kovetkezoFogado') { + $tol = readVariable($_tolDt.' '.$_POST['tolTime'].':00', 'datetime'); + $ig = readVariable($_tolDt.' '.$_POST['igTime'].':00', 'datetime'); + if (isset($tol) && isset($ig)) kovetkezoFogadoOraInit($tol, $ig); + } elseif ($action == 'tanarFogado') { + $tol = readVariable($_tolDt.' '.$_POST['tolTime'].':00', 'datetime'); + $ig = readVariable($_tolDt.' '.$_POST['igTime'].':00', 'datetime'); + $teremId = readVariable($_POST['teremId'], 'id'); + if (tanarFogadoOra($tanarId, $tol, $ig, $teremId)) + $_SESSION['alert'][] = 'info:success'; + + } elseif ($action == 'listaLekerdezese') { + $Lista = getFogadoOraLista(); + } + } + if (__DIAK && $action == 'fogadoOraJelentkezes') { + if (__FOGADOORA_JELENTKEZES === true) { + $M = array(); + for ($i = 0; $i < count($diakTanarai); $i++) { + if (isset($_POST['jel'.$i])) { + list($tId, $datetime) = explode('/',$_POST['jel'.$i]); + $M[] = array('tanarId' => readVariable($tId, 'id'), 'datetime' => readVariable($datetime, 'datetime')); + } + } + fogadoOraJelentkezes($szuloId, $M); + } else { + $_SESSION['alert'][] = 'message:deadline_expired'; + } + } + // ----------- action vége -------------- // + $FogadoDt = getKovetkezoFogadoDtk(); + $Tanarok = getTanarok(array('result' => 'assoc')); + $Termek = getTermek(); + $TermekAsszoc = getTermek(array('result' => 'assoc', 'tipus' => array(), 'telephelyId' => null)); + $Szulok = getSzulok(); + + if (isset($tanarId)) { + $tanarFogado = getTanarFogadoOra($tanarId); + $szuloIds = array(); + foreach ($tanarFogado['jelentkezesek'] as $szId => $szAdat) $szuloIds[] = $szAdat['szuloId']; + if (count($szuloIds) > 0) $Szulok['diakjai'] = getSzulokDiakjai($szuloIds); + } elseif (__NAPLOADMIN || __VEZETOSEG || __DIAK) { + if (count($FogadoDt['dates']) > 0) { + $FogadoOsszes = getFogadoOsszes(); + } + if (is_array($Lista)) { + $szuloIds = array(2,3,4); + reset($Lista); + foreach ($Lista['jelentkezesek'] as $tanarId => $tAdat) { + foreach ($tAdat as $index => $A) { + if (!in_array($A['szuloId'], $szuloIds) && $A['szuloId'] != '') $szuloIds[] = $A['szuloId']; + } + } + reset($Lista); + if (count($szuloIds) > 0) $Szulok['diakjai'] = getSzulokDiakjai($szuloIds); + unset($tanarId); + } + } + if (__DIAK) { + // Minden tanár csak egyszer szerepeljen!! + $tanarIds = $dTanarai = $tanarTerme = array(); + for ($i = 0; $i < count($diakTanarai); $i++) + if (!in_array($diakTanarai[$i]['tanarId'], $tanarIds)) { + $diakTanarai[$i]['foglalt'] = getTanarFogadoOra($diakTanarai[$i]['tanarId']); + $tanarIds[] = $diakTanarai[$i]['tanarId']; + $dTanarai[] = $diakTanarai[$i]; + + } + $diakTanarai = $dTanarai; + $Alkalmak = array('napok' => array()); + for ($i = 0; $i < count($FogadoOsszes); $i++) { + if (in_array($FogadoOsszes[$i]['tanarId'], $tanarIds)) { + $Alkalmak[$FogadoOsszes[$i]['tanarId']] = $FogadoOsszes[$i]; + $Alkalmak['tanarTerme'][$FogadoOsszes[$i]['tanarId']] = $FogadoOsszes[$i]['teremId']; + + $nap = substr($FogadoOsszes[$i]['tol'], 0, 10); + if (!array_key_exists($nap, $Alkalmak['napok'])) { + $Alkalmak['napok'][$nap] = array( + 'tol' => substr($FogadoOsszes[$i]['tol'], 11, 5), + 'ig' => substr($FogadoOsszes[$i]['ig'], 11, 5), + ); + } else { + if ($Alkalmak['napok'][$nap]['tol'] > ($tol = substr($FogadoOsszes[$i]['tol'], 11, 5))) + $Alkalmak['napok'][$nap]['tol'] = $tol; + if ($Alkalmak['napok'][$nap]['ig'] < ($ig = substr($FogadoOsszes[$i]['ig'], 11, 5))) + $Alkalmak['napok'][$nap]['ig'] = $ig; + } + } + } + ksort($Alkalmak); + $szuloJelentkezes = getSzuloJelentkezes($szuloId); + } + + if (count($FogadoDt['dates']) > 0) { + // Szülő fogadóóra naponként jelentkezhet +// if (__DIAK) +// $TOOL['datumSelect'] = array( +// 'tipus'=>'sor', 'post'=>array('tanarId', 'diakId', 'osztalyId', 'tankorId'), +// 'paramName' => 'igDt', 'hanyNaponta' => 7, +// 'tolDt' => date('Y-m-d', strtotime('Saturday', strtotime($_TANEV['kezdesDt']))), +// 'igDt' => $_TANEV['zarasDt'], +// ); + // Aki a tanár fogadóóráit szeretné látni + if (__NAPLOADMIN || __VEZETOSEG || __TANAR || __TITKARSAG) + $TOOL['tanarSelect'] = array('tipus' => 'cella', 'post' => array('igDt')); + } + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/fogadoOra.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/fogadoOra.php new file mode 100644 index 00000000..a90526cd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/fogadoOra.php @@ -0,0 +1,26 @@ + 0 && isset($tanarId)) { + tanarFogadoIdopontModosito($tanarFogado['adatok'], $Termek); + } elseif (is_array($Lista)) { + putFogadoOraLista($Lista, $Tanarok, $Szulok); + } else { + kovetkezoFogadoIdopont($tanarFogado, $Termek); + if (is_array($FogadoOsszes)) putFogadoOsszes($FogadoOsszes, $Tanarok); + } + + } + if ((__TANAR===true || _TITKARSAG===true) && count($FogadoDt['dates']) > 0 && isset($tanarId)) { + tanarFogadoIdopont($tanarFogado, $Termek, $Szulok); + } + if (__DIAK===true) { // Szülő - jelentkezés + putFogadoOraJelentkezes($szuloId, $diakTanarai, $Alkalmak, $szuloJelentkezes, $TermekAsszoc); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/munkaterv-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/munkaterv-pre.php new file mode 100644 index 00000000..770529c2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/munkaterv-pre.php @@ -0,0 +1,102 @@ + 'assoc')); + $ADAT['fields']['csengetesiRendTipus'] = getEnumField('naplo','nap','csengetesiRendTipus'); + + if (count($ADAT['munkaterv']) == 1) $munkatervId = 1; + else $munkatervId = readVariable($_POST['munkatervId'], 'id'); + if (!isset($munkatervId)) $munkatervId = 1; + $ADAT['munkatervId'] = $munkatervId; + if (__NAPLOADMIN===true || __VEZETOSEG===true) { // csak admin és a vezetőség módosíthat bármit! + + $ADAT['osztaly'] = getOsztalyok(); + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + $ADAT['osztaly'][$i]['munkatervId'] = getMunkatervByOsztalyId($ADAT['osztaly'][$i]['osztalyId']); + } + if ($action == 'napokInit') { + for ($i = 1; $i <= intval($_POST['hetDb']); $i++) $ADAT['Hetek'][] = $i; + $ADAT['tanitasiNap'] = readVariable($_POST['tanitasiNap'], 'numeric unsigned'); + $ADAT['tanitasNelkuliMunkanap'] = readVariable($_POST['tanitasNelkuliMunkanap'], 'numeric unsigned'); + $ADAT['vegzosZarasDt'] = readVariable($_POST['vegzosZarasDt'], 'date'); + if ($initResult = initNapok($ADAT)) $ADAT['munkatervId'] = 1; + $ADAT['munkaterv'] = getMunkatervek(array('result' => 'assoc')); + } + if (__MUNKATERV_OK || $initResult===true) { + if ($action == 'hetHozzarendeles') { + // később esetleg ezt is lehetne munkatervenként külön... nem? + for ($i = 1; $i <= intval($_POST['hetDb']); $i++) $ADAT['Hetek'][] = $i; + $tolDt = readVariable($_POST['tolDt'], 'date'); + $igDt = readVariable($_POST['igDt'], 'date'); + orarendiHetekHozzarendelese($tolDt, $igDt, $ADAT['Hetek']); + } elseif ($action == 'munkatervModositas') { + $dt = readVariable($_POST['dt'], 'date'); + $tipus = readVariable($_POST['tipus'], 'enum', 'tanítási nap', $ADAT['napTipusok']); + $megj = readVariable($_POST['megjegyzes'],'string',''); + $orarendiHet = readVariable($_POST['orarendiHet'], 'numeric unsigned'); + $csengetesiRendTipus = readVariable($_POST['csengetesiRendTipus'], 'string', null, $ADAT['fields']['csengetesiRendTipus']); + $ADAT['Hetek'] = getOrarendiHetek(array('tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'])); + if ( + $_TANEV['statusz'] == 'aktív' + && (__FOLYO_TANEV || __NAPLOADMIN) + ) + munkatervModositas($dt, $tipus, $megj, $orarendiHet, $ADAT['Hetek'], $ADAT['munkatervId'], $csengetesiRendTipus); + $ADAT['Napok'] = getTanevNapjai($munkatervId); + } elseif ($action == 'ujMunkaterv') { + $ADAT['munkatervNev'] = readVariable($_POST['munkatervNev'],'string',''); + $ADAT['tanitasiNap'] = readVariable($_POST['tanitasiNap'], 'numeric unsigned'); + $ADAT['tanitasNelkuliMunkanap'] = readVariable($_POST['tanitasNelkuliMunkanap'], 'numeric unsigned'); + $ADAT['vegzosZarasDt'] = readVariable($_POST['vegzosZarasDt'], 'date'); + $ADAT['munkatervId'] = $munkatervId = ujMunkaterv($ADAT); + if ($munkatervId) { $ADAT['munkaterv'] = getMunkatervek(array('result' => 'assoc')); } + } elseif ($action == 'munkatervOsztaly') { + $ADAT['osztalyIds'] = readVariable($_POST['osztalyId'], 'id'); + $ADAT['ujMunkatervIds'] = readVariable($_POST['ujMunkatervId'], 'id'); + if (!munkatervOsztaly($ADAT)) $_SESSION['alert'][] = 'message:a hozzárendelés nem sikerült'; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + $ADAT['osztaly'][$i]['munkatervId'] = getMunkatervByOsztalyId($ADAT['osztaly'][$i]['osztalyId']); + } + } + if ($action == 'honapValasztas' && $_POST['ho'] != '') { + $ho = $_POST['ho']; + $ADAT['Napok'] = getHonapNapjai($ho, $munkatervId); + $ADAT['Hetek'] = getOrarendiHetek(array('tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'])); + } else { + $ADAT['Napok'] = getTanevNapjai($munkatervId); + } + + } else { + $ADAT['Hetek'] = getOrarendiHetek(array('tolDt'=>$_TANEV['kezdesDt'],'igDt'=>$_TANEV['zarasDt'])); + } + } else { // nem admin, nem vezető --> csak éves munkatervet lát (ha van) + $ADAT['Napok'] = getTanevNapjai($munkatervId); + } + $ADAT['NapokSzama'] = getNapokSzama(array('munkatervId' => $munkatervId)); + + + if (count($ADAT['munkaterv']) > 1) { + $TOOL['munkatervSelect'] = array('tipus' => 'cella','paramName' => 'munkatervId', 'post' => array()); + getToolParameters(); + + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/munkaterv.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/munkaterv.php new file mode 100644 index 00000000..8e9719e5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/munkaterv.php @@ -0,0 +1,26 @@ + false)); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tanev-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tanev-pre.php new file mode 100644 index 00000000..d584bfb5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tanev-pre.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tanev.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tanev.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorBlokk-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorBlokk-pre.php new file mode 100644 index 00000000..c8672be4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorBlokk-pre.php @@ -0,0 +1,114 @@ +'idonly')); + + if (isset($osztalyId)) { + $ADAT['osztalySzuro'] = array($osztalyId); + } else { + // Évfolyam szerinti szűréshez - évfolyamok + $ADAT['evfolyamJelSzuro'] = readVariable($_POST['evfolyamJel'], 'enum', null, $ADAT['evfolyamJelek']); + $ADAT['osztalySzuro'] = getOsztalyIdByEvfolyamJel($ADAT['evfolyamJelSzuro'], $tanev); + } + if (count($ADAT['osztalySzuro']) > 1) $ADAT['osztalySzurtTankorIds'] = getTankorByOsztalyIds($ADAT['osztalySzuro'], $tanev); + elseif (count($ADAT['osztalySzuro']) > 0) { + $osztalyId = $ADAT['osztalySzuro'][0]; + $ADAT['osztalySzurtTankorIds'] = getTankorByOsztalyId($osztalyId, $tanev, array('csakId' => true)); + } else $ADAT['osztalySzurtTankorIds'] = array(); + // Tárgy szerinti szűréshez - tárgyak + $ADAT['targyak'] = getTargyak(); + for ($i = 0; $i < count($ADAT['targyak']); $i++) $targyIds[] = $ADAT['targyak'][$i]['targyId']; + if (is_array($_POST['targyId'])) { + for ($i = 0; $i < count($_POST['targyId']); $i++) { + $targyId = readVariable($_POST['targyId'][$i], 'numeric unsigned', null, $targyIds); + if (isset($targyId)) { + $ADAT['targySzuro'][] = $targyId; + } + } + } + + if ($action == 'ujTankorBlokk') { + + $_DATA = array(); + $_DATA['blokkNev'] = readVariable($_POST['blokkNev'],'string'); + $_DATA['exportOraszam'] = readVariable(str_replace(',', '.', $_POST['exportOraszam']), 'float unsigned'); + $_DATA['tankorId'] = readVariable($_POST['tankorId'], 'numeric unsigned'); + ujTankorBlokk($_DATA['blokkNev'], $_DATA['exportOraszam'], $_DATA['tankorId'], $tanev); + + } elseif ($action=='modTankorBlokk') { + + $_DATA['tanev'] = $tanev; + $_DATA['blokkId'] = readVariable($_POST['blokkId'], 'numeric unsigned'); + $_DATA['exportOraszam'] = readVariable(str_replace(',', '.', $_POST['exportOraszam']), 'float unsigned'); + $_DATA['blokkNev'] = readVariable($_POST['blokkNev'], 'string'); + $_DATA['tankorIds'] = readVariable($_POST['tankorIds'], 'numeric unsigned'); +// for ($i = 0; $i < count($_POST['tankorIds']); $i++) { +// if (intval($_POST['tankorIds'][$i])) $_DATA['tankorIds'][] = intval($_POST['tankorIds'][$i]); +// } + if (isset($_POST['del']) && $_POST['del'] != '') + tankorBlokkTorles($_DATA); + else + tankorBlokkModositas($_DATA); + + } + + $tankorok= getTankorok( + array("tanev=$tanev"), + "LPAD(substring_index(substring_index(tankorNev,'-',1),'.',1),2,'0'),substring_index(substring_index(tankorNev,' ',2),' ',-1),tankorNev,tanev,szemeszter" + ); + if (count($ADAT['targySzuro']) > 0) + $szurtTankorok = getTankorok( // tárgy szerinti szűrés + array("tanev=$tanev", 'targyId IN ('.implode(',', $ADAT['targySzuro']).')'), + "LPAD(substring_index(substring_index(tankorNev,'-',1),'.',1),2,'0'),substring_index(substring_index(tankorNev,' ',2),' ',-1),tankorNev,tanev,szemeszter" + ); + else $szurtTankorok = $tankorok; + + $ADAT['tankorOraszam'] = getTankorOraszamByTanev($tanev); + $ADAT['tankorExportOraszam'] = getTankorExportOraszamByTanev($tanev); + + $ADAT['tankorBlokkok'] = getTankorBlokkok($tanev); + for ($i = 0; $i < count($tankorok); $i++) { + $ADAT['tankorIdk'][] = $tankorId = $tankorok[$i]['tankorId']; + $ADAT['tankorAdat'][$tankorId] = $tankorok[$i]; + } + $ADAT['tankorTanar'] = getTankorTanaraiByInterval($ADAT['tankorIdk'], array('tanev' => $tanev, 'result' => 'assoc')); + for ($i = 0; $i < count($szurtTankorok); $i++) { + if ( // osztály szerinti szűrés + count($ADAT['osztalySzurtTankorIds']) == 0 + || in_array($szurtTankorok[$i]['tankorId'], $ADAT['osztalySzurtTankorIds']) + ) $ADAT['szurtTankorIdk'][] = $szurtTankorok[$i]['tankorId']; + } + if (count($ADAT['szurtTankorIdk']) == 0) { + $_SESSION['alert'][] = 'message:wrong_data:A megadott tárgyakhoz nem tartozik egy tankör sem - a szűrési feltételt töröljük!'; + $ADAT['szurtTankorIdk'] = $ADAT['tankorIdk']; + $ADAT['targySzuro'] = $ADAT['osztalySzuro'] = $_POST['targyId'] = array(); + unset($osztalyId); + } + $ADAT['tanev'] = $tanev; + + $TOOL['tanevSelect'] = array('tipus'=>'cella', 'paramName'=>'tanev','post'=>array()); + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('targyId')); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorBlokk.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorBlokk.php new file mode 100644 index 00000000..51742aa9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorBlokk.php @@ -0,0 +1,14 @@ + 0) putCsoportok($Csoportok, $tankorAdat, $szTankorIds, $osztalyId); + putTankorBlokkok($ADAT); + + +?> 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 new file mode 100644 index 00000000..cddfb69c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php @@ -0,0 +1,132 @@ + $csoportAdat) { + $csoportIds[] = $csoportId; + $Csoportok[$csoportId]['csoportNev'] = $csoportAdat[0]['csoportNev']; + $Csoportok[$csoportId]['tankorok'] = array(); + for ($i = 0; $i < count($csoportAdat); $i++) { + $Csoportok[$csoportId]['tankorok'][] = $csoportAdat[$i]['tankorId']; + $csTankorIds[] = $csoportAdat[$i]['tankorId']; + } + } + $szTankorIds = array_diff($tankorIds, $csTankorIds); + +// ----------------- action --------------------- // +/* $min=0; $max=0; + + if ($min<$Tankorok[$i]['min']) $min= $Tankorok[$i]['min']; + if ($Tankorok[$i]['max']!=0 && $max>$Tankorok[$i]['max']) $max= $Tankorok[$i]['max']; +*/ + + if ($action == 'ujTankorCsoport') { + + $csoportNev = $_POST['csoportNev']; + $tankorId = $_POST['tankorId']; + ujTankorCsoport($csoportNev, $tankorId); + + } elseif ($action == 'tankorCsoportModositas') { + + $csoportId = readVariable($_POST['csoportId'], 'numeric unsigned', null, $csoportIds); + if (isset($csoportId)) { + $csoportNev = $_POST['csoportNev']; + $tankorId = $_POST['tankorId']; + if (isset($_POST['tankorCsoportTorles'])) tankorCsoportTorles($csoportId, $tanev); + else tankorCsoportModositas($csoportId, $csoportNev, $tankorId); + } + + } elseif ($action == 'tankorCsoportokKeresese') { + + // Kérdezzük le a szabad tankörök diákjait + foreach ($szTankorIds as $i => $tankorId) { + $tmp = getTankorDiakjaiByInterval($tankorId, $tanev); + $szTankorDiak[$tankorId] = $tmp['idk']; + } + // Azonos tagokkal rendelkező csoportok keresése + $ujCsoportok = $voltMar = $Nevek = array(); + foreach ($szTankorIds as $i => $tankorId) { + if (!$voltMar[$tankorId]) { + $voltMar[$tankorId] = true; + $ujCsoport = array( + 'ids' => array($tankorId), +// 'diakIds' => $szTankorDiak[ $tankorId ] + ); + foreach ($szTankorIds as $j => $_tankorId) { + if ( + !$voltMar[ $_tankorId ] + && $szTankorDiak[ $tankorId ] == $szTankorDiak[ $_tankorId ] + ) { + $ujCsoport['ids'][] = $_tankorId; + $voltMar[ $_tankorId ] = true; + } + } + // csoportnév - a tárgynevekből + $Targyak = array(); + for ($k = 0; $k < count($ujCsoport['ids']); $k++) { + $tankorId = $ujCsoport['ids'][$k]; + $tankorNev = $tankorAdat[ $tankorId ]['tankorNev']; + $Targyak[] = substr($tankorNev, ($pos = strpos($tankorNev, ' ')+1), strrpos($tankorNev, ' ')-$pos); + } + $ujCsoport['nev'] = implode(' - ', $Targyak); + $ujCsoport['nev'] .= ' '.(++$Nevek[ $ujCsoport['nev'] ]).'.'; + $ujCsoportok[] = $ujCsoport; + } + } + // új csoportok felvétele + for ($i = 0; $i < count($ujCsoportok); $i++) { + if (count($ujCsoportok[$i]['ids']) > 1) ujTankorCsoport($ujCsoportok[$i]['nev'], $ujCsoportok[$i]['ids']); + } + } + + if ($action != '') { + + $CsA = getTankorCsoportByTankorIds($tankorIds); + $Csoportok = $csTankorIds = array(); + foreach ($CsA as $csoportId => $csoportAdat) { + $Csoportok[$csoportId]['csoportNev'] = $csoportAdat[0]['csoportNev']; + $Csoportok[$csoportId]['tankorok'] = array(); + for ($i = 0; $i < count($csoportAdat); $i++) { + $Csoportok[$csoportId]['tankorok'][] = $csoportAdat[$i]['tankorId']; + $csTankorIds[] = $csoportAdat[$i]['tankorId']; + } + } + $szTankorIds = array_diff($tankorIds, $csTankorIds); + + } + +// ----------------- action --------------------- // + +//echo $q; +//echo '
    '; var_dump($ujCsoportok); echo '
    '; + + } + + + $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array()); + getToolParameters(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport.php new file mode 100644 index 00000000..955de6c7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport.php @@ -0,0 +1,11 @@ + 0) putCsoportok($Csoportok, $tankorAdat, $szTankorIds, $osztalyId); + if (count($szTankorIds) > 0) putTankorCsoportKereso($osztalyId); + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyBontas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyBontas-pre.php new file mode 100644 index 00000000..c9aaf91b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyBontas-pre.php @@ -0,0 +1,175 @@ + 'indexed', 'minden'=>false, 'telephelyId' => $telephelyId)); + foreach ($ADAT['filter']['osztalyAdat'] as $idx => $oAdat) { + $ADAT['filter']['osztalyAdat'][$idx]['bontasOk'] = osztalyBontasKeszE($oAdat['osztalyId']); + $ADAT['filter']['osztalyIds'][] = $oAdat['osztalyId']; + } + $ADAT['filter']['kepzesAdat'] = getKepzesByOsztalyId($ADAT['filter']['osztalyIds'], array('result'=>'indexed','arraymap'=>array('kepzesId'))); + + if (isset($ADAT['evfolyamJel'])) { // csak egy évfolyamhoz tartozó osztályok jelölhetők ki egyszerre + + // szűrés osztályra - osztalyId az egyik kulcs mező + $ADAT['osztalyAdat'] = array(); + $osszesOsztalyId = array(); + if (is_array($ADAT['filter']['osztalyAdat'])) foreach ($ADAT['filter']['osztalyAdat'] as $oAdat) { + if ($oAdat['evfolyamJel'] == $evfolyamJel) { + $ADAT['osztalyAdat'][$oAdat['osztalyId']] = $oAdat; + $osszesOsztalyId[] = $oAdat['osztalyId']; + } + } + if (count($osszesOsztalyId) == 0) $ADAT['osztalyIds'] = array(); // üres tömb esetén nem szűr a readVariable... + else $ADAT['osztalyIds'] = readVariable($_POST['osztalyIds'], 'id', null, $osszesOsztalyId); + $_POST['osztalyIds'] = $osztalyIds = $ADAT['osztalyIds']; + + // Az osztályokhoz rendelt tankörök lekérdezése - a bontásokban ezek lehetnek - kell a névhez... + $ADAT['tankorAdat'] = array(); + foreach ($osztalyIds as $osztalyId) { + $TA = getTankorByOsztalyId($osztalyId); + foreach ($TA as $tAdat) if (!is_array($ADAT['tankorAdat'][ $tAdat['tankorId'] ])) { + $ADAT['tankorAdat'][ $tAdat['tankorId'] ] = $tAdat; + $ADAT['tankorAdat'][ $tAdat['tankorId'] ]['tankorNevTargyNelkul'] = str_replace($ADAT['targyAdat'][ $tAdat['targyId'] ]['targyNev'].' ','',$tAdat['tankorNev']); + } + } + + // képzések lekérdezése - a képzés óratervhez + if (is_array($osztalyIds) && count($osztalyIds) > 0) { + // itt volt a kepzesTargyBontas - de az init utánra tettem... + $ADAT['kepzesek'] = getKepzesByOsztalyId($osztalyIds, array('result' => 'indexed', 'arraymap' => array('kepzesId','osztalyId'))); + $ADAT['kepzesAdat'] = array(); + if (is_array($ADAT['kepzesek'])) foreach ($ADAT['kepzesek'] as $kepzesId => $kAdat) { + $ADAT['kepzesAdat'][$kepzesId] = current(current($kAdat)); + unset($ADAT['kepzesAdat'][$kepzesId]['osztalyId']); + $ADAT['kepzesAdat'][$kepzesId]['osztalyIds'] = array_keys($kAdat); + } + $osszesKepzesId = array_keys($ADAT['kepzesek']); + unset($ADAT['kepzesek']); + } + if (is_array($_POST['kepzesIds'])) $ADAT['kepzesIds'] = readVariable($_POST['kepzesIds'], 'id', null, $osszesKepzesId); + else $ADAT['kepzesIds'] = $osszesKepzesId; + + // képzés adott évfolyamának óraterve... + if (is_array($ADAT['kepzesIds']) && count($ADAT['kepzesIds'])) { + // Itt kellene inicializálni - minden tárgyat tartalmazó kepzesOratervId:osztalyId párhoz legyen legalább egy bontás + kepzesTargyBontasInit($ADAT['osztalyIds'], $ADAT['kepzesIds']); + $ADAT['targyBontasStatus'] = checkTargyBontas(); + $ADAT['oraterv'] = kepzesOratervSorrend($evfolyamJel, $ADAT['osztalyIds'], $ADAT['kepzesIds']); + // itt volt a targyAdat... felkerült az elejére + $ADAT['osztalyTargyBontas'] = getKepzesTargyBontasByOsztalyIds($osztalyIds); +//dump($ADAT['osztalyTargyBontas']); + } + + $ADAT['oratervenKivuliTankorok'] = getOratervenKivuliTankorIds(); + + } // van evfolyamJel + + + + // Ajax action + if ($action == 'addBontas') { + $keys = explode(',', $_POST['keys']); + foreach ($keys as $key) { + list($osztalyId, $kepzesOratervId) = explode('-',$key); + $bontas[] = addBontas($osztalyId, $kepzesOratervId); + + } + $_JSON = array( + 'keys' => $_POST['keys'], + 'bontas' => $bontas, + 'targyNev' => $ADAT['targyAdat'][ $bontas[0]['targyId'] ]['targyNev'], + 'result' => 'success' + ); + } else if ($action == 'addBontasTargy') { + $targyIds = array_keys($ADAT['targyAdat']); + $targyId = readVariable($_POST['targyId'], 'id', null, $targyIds);// tárgyIds-re szűkítés!! + if ($targyId != '') { + $keys = explode(',', $_POST['keys']); + foreach ($keys as $key) { + list($osztalyId, $kepzesOratervId) = explode('-',$key); + $bontas[] = addBontas($osztalyId, $kepzesOratervId, $targyId); + } + $_JSON = array( + 'keys' => $_POST['keys'], + 'bontas' => $bontas, + 'targyNev' => $ADAT['targyAdat'][$targyId]['targyNev'], + 'result' => 'success' + ); + } else { + $_JSON = array( + 'keys' => $_POST['keys'], + 'result' => 'fail' + ); + } + } else if ($action == 'bontasTankor') { + $keys = explode(',', $_POST['keys']); + $bontasIds = readVariable($keys, 'id'); + $tankorId = readVariable($_POST['tankorId'], 'id'); + $hetiOraszam = readVariable($_POST['hetiOraszam'], 'float unsigned'); + + $targyId = getTankorTargyId($tankorId); + $targyNev = $ADAT['targyAdat'][$targyId]['targyNev']; + $ret = bontasTankor($bontasIds, $tankorId, $hetiOraszam); + $tankorNev = getTankorNevById($tankorId); // A tankörnév változhat az osztály hozzárendelés miatt... + $tankorNevTargyNelkul = str_replace($targyNev.' ','',$tankorNev); + $_JSON = array( + 'keys' => $_POST['keys'], + 'bontasIds' => $bontasIds, + 'hetiOraszam' => $hetiOraszam, + 'tankorId' => $tankorId, + 'tankorNev' => $tankorNevTargyNelkul, + 'ret' => $ret, + 'TANEV' => __TANEV, + 'result' => ($ret?'success':'fail') + ); + + } else if ($action == 'delBontas') { + $keys = explode(',', $_POST['keys']); + $bontasIds = readVariable($keys, 'id'); + $return = delBontas($bontasIds); + $_JSON = array( + 'keys' => $_POST['keys'], + 'bontasIds' => (is_array($return)?$return:array()), + 'result' => (is_array($return)?'success':'fail') + ); + } else { // Ez csak tesztelés, hibakeresés... + $_JSON = array( + 'post' => $_POST, + ); + } + // Ajax action vége + + $TOOL['telephelySelect'] = array('tipus' => 'cella','paramName' => 'telephelyId', 'post' => array('osztalyIds','kepzesIds','evfolyamJel')); + $TOOL['evfolyamJelSelect'] = array('tipus' => 'cella','paramName' => 'evfolyamJel','paramDesc'=>'evfolyamJel','adatok' => $ADAT['evfolyamJelek'],'post' => array('osztalyIds','kepzesIds','telephelyId')); + getToolParameters(); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyBontas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyBontas.php new file mode 100644 index 00000000..1a8aca25 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyBontas.php @@ -0,0 +1,19 @@ +0 + && is_array($ADAT['kepzesIds']) && count($ADAT['kepzesIds'])>0 + ) { + putTargyBontas($ADAT); + } + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyOraszam-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyOraszam-pre.php new file mode 100644 index 00000000..37d057cd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyOraszam-pre.php @@ -0,0 +1,10 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyOraszam.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyOraszam.php new file mode 100644 index 00000000..bdc6ccf3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/targyOraszam.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosOrarendLezaras-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosOrarendLezaras-pre.php new file mode 100644 index 00000000..2f29caae --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosOrarendLezaras-pre.php @@ -0,0 +1,72 @@ + 0) { + + // Végzős tankörök lekérdezése (csak végzős!!) + $ADAT['vegzosTankor'] = getTankorByOsztalyIds($ADAT['lezarandoOsztaly']); + // A tanulmányi időszakon túlnyúló órarendi órák tolDt-ének beállítása + vegzosOrarendLezaras($ADAT); + vegzosHaladasiNaploLezaras($ADAT); + foreach ($ADAT['lezarandoOsztaly'] as $index => $osztalyId) { + // osztaly diákjainak lekérdezése + $Diakok = getDiakok(array('osztalyId' => $osztalyId)); + $diakIds = array(); + for ($i = 0; $i < count($Diakok); $i++) $diakIds[] = $Diakok[$i]['diakId']; + // osztaly tanköreinek lekérdezése + $tankorIds = array_values(array_diff(getTankorByOsztalyId($osztalyId, __TANEV, array('csakId' => true)), $ADAT['vegzosTankor'])); + + if (is_array($tankorIds) && count($tankorIds) > 0) for ($i = 0; $i < count($diakIds); $i++) { + // A nem csak végzős tankörökben a tankör tagság beállítása + $Mod = array( + 'diakId' => $diakIds[$i], + 'tankorIds' => $tankorIds, + 'tolDt' => $ADAT['dt'], + 'igDt' => $_TANEV['zarasDt'], + 'utkozes' => 'torles' + ); + tankorDiakTorol($Mod); + } + } + + } + + $TOOL['datumSelect'] = array( + 'tipus' => 'cella', 'post' => array('lezarandoOsztaly'), + 'paramName' => 'dt', 'hanyNaponta' => 1, + 'override'=>true, // használathoz még át kell írni pár függvényt!!! + 'tolDt' => date('Y-m-d', strtotime('last Monday', strtotime($_TANEV['kezdesDt']))), + 'igDt' => $_TANEV['zarasDt'], + ); + getToolParameters(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosOrarendLezaras.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosOrarendLezaras.php new file mode 100644 index 00000000..1efe15cb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosOrarendLezaras.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosTankorLezaras-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosTankorLezaras-pre.php new file mode 100644 index 00000000..4695da13 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosTankorLezaras-pre.php @@ -0,0 +1,77 @@ + $osztalyId) { + // osztaly diákjainak lekérdezése + $Diakok = getDiakok(array('osztalyId' => $osztalyId)); + $diakIds = array(); + for ($i = 0; $i < count($Diakok); $i++) $diakIds[] = $Diakok[$i]['diakId']; + // osztaly tanköreinek lekérdezése + $tankorIds = getTankorByOsztalyId($osztalyId, __TANEV, array('csakId' => true)); + if (is_array($tankorIds) && count($tankorIds) > 0) for ($i = 0; $i < count($diakIds); $i++) { + // A nem csak végzős tankörökben a tankör tagság beállítása + $Mod = array( + 'diakId' => $diakIds[$i], + 'tankorIds' => $tankorIds, + 'tolDt' => $ADAT['dt'], + 'utkozes' => 'torles' + ); + tankorDiakTorol($Mod); + } + } + $_SESSION['alert'][] = 'info:success'; + + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosTankorLezaras.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosTankorLezaras.php new file mode 100644 index 00000000..1efe15cb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/vegzosTankorLezaras.php @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenet-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenet-pre.php new file mode 100644 index 00000000..58d44e40 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenet-pre.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenet.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenet.php new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetInfo-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetInfo-pre.php new file mode 100644 index 00000000..a60e71d0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetInfo-pre.php @@ -0,0 +1,35 @@ +'cella', 'paramName'=>'tanarId', 'post'=>array('targyId')); + $TOOL['targySelect'] = array('tipus'=>'cella', 'paramName'=>'targyId', 'post'=>array('tanarId')); + if (isset($tanarId) || isset($targyId)) { + $TOOL['tanmenetSelect'] = array('tipus'=>'sor', 'paramName'=>'tanmenetId', 'post'=>array('tanarId','targyId')); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=tanmenet&f=tanmenetModositas'), + 'titleConst' => array('_MODOSITAS'), 'post' => array('tanarId','targyId'), + 'paramName'=>'tanmenetId'); + } + getToolParameters(); + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetInfo.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetInfo.php new file mode 100644 index 00000000..9d2b70e0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetInfo.php @@ -0,0 +1,15 @@ +"tanmenet")); + echo ''."\n"; + echo '

    Nincs tanmenet megadva!

    '; + if ($skin != 'ajax') formEnd(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetJovahagyas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetJovahagyas-pre.php new file mode 100644 index 00000000..d173ab93 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetJovahagyas-pre.php @@ -0,0 +1,88 @@ +0) $mkId = $ADAT['vezetettMkIds'][0]; + $ADAT['mkId'] = $mkId; + + if ($mkId != 0) { + + + $ADAT['tanarok'] = getTanarok(array('mkId'=>$mkId, 'tanev'=>__TANEV, 'result'=>'assoc')); + $ADAT['tanarIds'] = array_keys($ADAT['tanarok']); + $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'id', null, $ADAT['tanarIds']); + $Filter = array(); + if ($tanarId != '') { + $tTankorIds = getTankorByTanarId($tanarId, __TANEV, array('csakId'=>true)); + if (is_array($tTankorIds) && count($tTankorIds) > 0) $Filter[] = 'tankor.tankorId IN ('.implode(',',$tTankorIds).')'; + } + $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'id', null); + if ($osztalyId != '') { + $oTankorIds = getTankorByOsztalyId($osztalyId, __TANEV, array('csakId'=>true)); + if (is_array($oTankorIds) && count($oTankorIds) > 0) $Filter[] = 'tankor.tankorId IN ('.implode(',',$oTankorIds).')'; + + } + define('__JOVAHAGYHAT', __VEZETOSEG || __NAPLOADMIN || in_array($mkId, $ADAT['vezetettMkIds'])); + $ADAT['tankorok'] = getTankorByMkId($mkId, __TANEV, array('csakId'=>false, 'filter'=>$Filter)); + $ADAT['tankorIds'] = array(); + foreach ($ADAT['tankorok'] as $tAdat) { + $ADAT['tankorIds'][] = $tAdat['tankorId']; + } + if (count($ADAT['tankorIds']) > 0) { + $ADAT['tankorTanmenet'] = getTanmenetByTankorIds($ADAT['tankorIds']); + $ADAT['tanmenetAdat'] = $tanmenetIds = array(); + foreach ($ADAT['tankorTanmenet'] as $tankorId => $tanmenetId) { + if (!in_array($tanmenetId, $tanmenetIds)) $tanmenetIds[] = $tanmenetId; + } + foreach ($tanmenetIds as $tanmenetId) $ADAT['tanmenetAdat'][$tanmenetId] = getTanmenetAdat($tanmenetId); + } // vannak tankorok + + + if ($action == 'tanmenetModositas' && __JOVAHAGYHAT) { + + $tanmenetId = readVariable($_POST['tanmenetId'], 'id'); + $statusz = readVariable($_POST['statusz'], 'enum', array('új','kész','jóváhagyott','publikus')); + if ($tanmenetId != '' && $statusz != '') { + $D = array( + 'tanmenetNev' => $ADAT['tanmenetAdat'][$tanmenetId]['tanmenetNev'], + 'oraszam' => $ADAT['tanmenetAdat'][$tanmenetId]['oraszam'], + 'evfolyamJel' => $ADAT['tanmenetAdat'][$tanmenetId]['evfolyamJel'], + 'tanmenetId' => $tanmenetId, + 'ujStatusz' => $statusz + ); + if (tanmenetAdatModositas($D)) $ADAT['tanmenetAdat'][$tanmenetId]['statusz'] = $statusz; + } + } + + } // van mkId + + $TOOL['munkakozossegSelect'] = array('tipus'=>'cella', 'paramName'=>'mkId', 'post'=>array('tanarId','osztalyId')); + if ($mkId != '') { + $TOOL['tanarSelect'] = array('tipus'=>'cella', 'paramName'=>'tanarId', 'mkId'=>$mkId, 'post'=>array('mkId','osztalyId')); + $TOOL['osztalySelect'] = array('tipus'=>'cella', 'paramName'=>'osztalyId', 'mkId'=>$mkId, 'post'=>array('mkId','tanarId')); + } +/* + $TOOL['targySelect'] = array('tipus'=>'cella', 'paramName'=>'targyId', 'post'=>array()); + if (isset($tanarId) || isset($targyId)) { + $TOOL['tanmenetSelect'] = array('tipus'=>'cella', 'paramName'=>'tanmenetId', 'post'=>array('tanarId','targyId')); + $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=tanmenet&f=tanmenetModositas'), + 'titleConst' => array('_MODOSITAS'), 'post' => array('tanarId','targyId'), + 'paramName'=>'tanmenetId'); + } +*/ + getToolParameters(); + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetJovahagyas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetJovahagyas.php new file mode 100644 index 00000000..f0a92c71 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetJovahagyas.php @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetLeadas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetLeadas-pre.php new file mode 100644 index 00000000..a71c14b0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetLeadas-pre.php @@ -0,0 +1,51 @@ + $ADAT['tanev'], 'tipus' => array('tanmenet leadás'), 'tolDt' => date('Y-m-d'), 'igDt' => date('Y-m-d'))); + define('__TANMENETLEADASIDOSZAK',(count($ADAT['idoszak']) > 0)); + if (!__TANMENETLEADASIDOSZAK) $_SESSION['alert'][] = 'info:nincs_tanmenetleadas_idoszak:tanev='.$ADAT['tanev']; + else $_SESSION['alert'][] = 'info:tanmenetleadas_idoszak_vege:'.substr($ADAT['idoszak'][0]['igDt'],0,10); + + $ADAT['tanarok'] = getTanarok(array('tanev' => $tanev)); + + $ADAT['tankorIds'] = array(); + for ($i = 0; $i < count($ADAT['tanarok']); $i++) { + $tanarId = $ADAT['tanarok'][$i]['tanarId']; + $ADAT['tanarok'][$i]['tankorIds'] = getTankorByTanarId($tanarId, __TANEV, array('csakId' => true)); + $ADAT['tankorIds'] = array_unique(array_merge($ADAT['tankorIds'], $ADAT['tanarok'][$i]['tankorIds'])); + } + $ADAT['tankorok'] = getTankorAdatByIds($ADAT['tankorIds'], array('tanev' => __TANEV, 'dt' => $_TANEV['kezdesDt'])); + $ADAT['tankorTanmenet'] = getTanmenetByTankorIds($ADAT['tankorIds'], array('tanev' => $ADAT['tanev'])); + $ADAT['tanmenetek'] = getTanmenetek(); + +//echo '
    '; var_dump($ADAT['tanmenetek']); echo '
    ';
    +    // Melyik tanárnak hány "leadott jóváhagyott" / "leadott, nem jóváhagyott" / "nem leadott" tanmenet-tankör hozzárendelése van?
    +    for ($i = 0; $i < count($ADAT['tanarok']); $i++) {
    +	$tanarId = $ADAT['tanarok'][$i]['tanarId'];
    +	foreach ($ADAT['tanarok'][$i]['tankorIds'] as $tankorId) {
    +	    if (isset($ADAT['tankorTanmenet'][$tankorId])) {
    +		$tanmenetId = $ADAT['tankorTanmenet'][$tankorId];
    +		if (
    +		    $ADAT['tanmenetek'][$tanmenetId]['statusz'] == 'jóváhagyott'
    +		    || $ADAT['tanmenetek'][$tanmenetId]['statusz'] == 'publikus'
    +		) $ADAT['tanarok'][$i]['db']['jóváhagyott']++;
    +		elseif ($ADAT['tanmenetek'][$tanmenetId]['statusz'] == 'kész') $ADAT['tanarok'][$i]['db']['kész']++;
    +		else $ADAT['tanarok'][$i]['db']['új']++;
    +//		if ($ADAT['tanmenetek'][$tanmenetId]['jovahagyva']) $ADAT['tanarok'][$i]['db']['jovahagyva']++;
    +//		else $ADAT['tanarok'][$i]['db']['nincs jovahagyva']++;
    +	    } else {
    +		$ADAT['tanarok'][$i]['db']['hiányzik']++;
    +	    }
    +	}
    +    }
    +?>
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetLeadas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetLeadas.php
    new file mode 100644
    index 00000000..12e8e920
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetLeadas.php
    @@ -0,0 +1,9 @@
    +
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetModositas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetModositas-pre.php
    new file mode 100644
    index 00000000..0afd8498
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetModositas-pre.php
    @@ -0,0 +1,83 @@
    +'idonly'));
    +	$ADAT['tanmenetAdat'] = getTanmenetAdat($tanmenetId);
    +	$ADAT['mkAdat'] = getMunkakozossegByTargyId($ADAT['tanmenetAdat']['targyId']);
    +	$ADAT['tanarId'] = $tanarId = $ADAT['tanmenetAdat']['tanarId'];
    +	$ADAT['targyId'] = $targyId = $ADAT['tanmenetAdat']['targyId'];
    +	define('__KESZITO', (__USERTANARID == $ADAT['tanmenetAdat']['tanarId']));
    +	define('__MKVEZETO', (__USERTANARID == $ADAT['mkAdat']['mkVezId']));
    +	define('__MODOSITHAT', 
    +		    __NAPLOADMIN // admin bármikor
    +			|| (
    +			    (__VEZETOSEG || __KESZITO || __MKVEZETO) // vezetőségi tag, mk.vez és a létrehozó szaktanár...
    +			    && ($ADAT['tanmenetAdat']['statusz'] == 'új' || $ADAT['tanmenetAdat']['statusz'] == 'kész') // ... ha még nincs jóváhagyva
    +			)
    +	);
    +	if (__NAPLOADMIN || __VEZETOSEG || __MKVEZETO) $ADAT['statusz'] = array('új','kész','jóváhagyott','publikus','elavult');
    +	elseif (__KESZITO)  {
    +	    if (in_array($ADAT['tanmenetAdat']['statusz'], array('új','kész'))) { $ADAT['statusz'] = array('új','kész'); }
    +	    else { $ADAT['statusz'] = array('jóváhagyott','publikus'); }	
    +	} else $ADAT['statusz'] = array();
    +
    +	if ($action != '') {
    +	  if (__MODOSITHAT && $action == 'tanmenetTemakorModositas') {
    +		$ADAT['temakor']['oraszam'] = readVariable($_POST['oraszam'], 'numeric unsigned');
    +		$ADAT['temakor']['temakorMegnevezes'] = readVariable($_POST['temakorMegnevezes'], 'string', '');
    +		tanmenetTemakorModositas($ADAT);
    +		$ADAT['tanmenetAdat'] = getTanmenetAdat($tanmenetId);
    +	  } elseif ($action == 'tanmenetAdatModositas') {
    +	    if ((__NAPLOADMIN === true || __KESZITO) && readVariable($_POST['tanmenetTorol'],'numeric unsigned') == 1) {
    +		if (tanmenetTorol($tanmenetId)===false) {
    +		    $_SESSION['alert'][] = 'info:error:hiba a tanmenet törlésekor';
    +		} else {
    +		    $_SESSION['alert'][] = 'info:success';
    +		    unset ($ADAT);
    +		    unset($tanmenetId);
    +		}
    +	    } else { 
    +		if (__MODOSITHAT) { // Az óraszám és évfolyam-jel is változtatható
    +		    $DAT['oraszam'] = readVariable($_POST['oraszam'], 'numeric unsigned');
    +	    	    $DAT['evfolyamJel'] = readVariable($_POST['evfolyamJel'], 'numeric unsigned');
    +		} else { // csak a tanmenet neve és státusza változtatható
    +		    $DAT = $ADAT['tanmenetAdat'];
    +		}
    +		$DAT['tanmenetId'] = $tanmenetId;
    +		$DAT['tanmenetNev'] = readVariable($_POST['tanmenetNev'], 'string');
    +		$DAT['ujStatusz'] = readVariable($_POST['statusz'], 'enum', $ADAT['tanmenetAdat']['statusz'], $ADAT['statusz']);
    +		tanmenetAdatModositas($DAT);
    +		$ADAT['tanmenetAdat'] = getTanmenetAdat($tanmenetId);
    +	    }
    +	  }
    +	}
    +    }
    +
    +
    +    $TOOL['tanarSelect'] = array('tipus'=>'cella', 'paramName'=>'tanarId', 'post'=>array());
    +    $TOOL['targySelect'] = array('tipus'=>'cella', 'paramName'=>'targyId', 'post'=>array());
    +    if (isset($tanarId) || isset($targyId) || isset($tanmenetId)) {
    +	$TOOL['tanmenetSelect'] = array('tipus'=>'sor', 'paramName'=>'tanmenetId', 'post'=>array('tanarId','targyId'));
    +	$TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=tanmenet&f=tanmenetInfo'),
    +        'titleConst' => array('_MUTAT'), 'post' => array('tanmenetId','tanarId','targyId'),
    +        'paramName'=>'tanmenetId');
    +    }
    +    getToolParameters();
    +
    +
    +?>
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetModositas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetModositas.php
    new file mode 100644
    index 00000000..e741e222
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetModositas.php
    @@ -0,0 +1,9 @@
    +
    diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetTankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetTankor-pre.php
    new file mode 100644
    index 00000000..74ca1a6e
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetTankor-pre.php
    @@ -0,0 +1,95 @@
    + true));
    +	$ADAT['tankorok'] = getTankorAdatByIds($ADAT['tankorIds'], array('tanev' => __TANEV, 'dt' => $_TANEV['kezdesDt']));
    +	$ADAT['tankorTanmenet'] = getTanmenetByTankorIds($ADAT['tankorIds'], array('tanev' => $ADAT['tanev']));
    +	$tanmenetAdat = $ADAT['tanmenetek'] = array();
    +	if (is_array($ADAT['tankorok']))
    +	foreach ($ADAT['tankorok'] as $tankorId => $tAdat) {
    +	    if (!is_array($ADAT['tanmenetek'][ $tAdat['targyId'] ])) {
    +		$ADAT['tanmenetek'][ $tAdat['targyId'] ] = getTanmenetByTargyId($tAdat['targyId'], array('result'=>'assoc'));
    +		if (is_array($ADAT['tanmenetek'][ $tAdat['targyId'] ]))
    +		foreach ($ADAT['tanmenetek'][ $tAdat['targyId'] ] as $tanmenetId => $tanAdat) {
    +		    // Mikor módosítható az adott tanmenet?
    +		    $ADAT['tanmenetek'][ $tAdat['targyId'] ][ $tanmenetId ]['modosithato'] =  (
    +			__NAPLOADMIN 								// admin bármikor
    +                        || (
    +                            (__VEZETOSEG || __USERTANARID == $tanAdat['tanarId']) 		// vezetőségi tag és a létrehozó szaktanár...
    +                            && ($tanAdat['statusz'] == 'új' || $tanAdat['statusz'] == 'kész')	// ... ha még nincs jóváhagyva
    +                        )
    +
    +		    ); 
    +		    $ADAT['tanmenetAdat'][$tanmenetId] = $tanAdat;
    +		}
    +	    }
    +	}
    +
    +//echo '
    '; var_dump($ADAT['tanmenetek']); echo '
    '; + + $ADAT['idoszak'] = getIdoszakByTanev(array('tanev' => $ADAT['tanev'], 'tipus' => array('tanmenet leadás'), 'tolDt' => date('Y-m-d'), 'igDt' => date('Y-m-d'))); + define('__TANMENETLEADASIDOSZAK',(count($ADAT['idoszak']) > 0)); + if (!__TANMENETLEADASIDOSZAK) $_SESSION['alert'][] = 'info:nincs_tanmenetleadas_idoszak:tanev='.$ADAT['tanev']; + define('__MODOSITHAT', + __NAPLOADMIN // admin bármikor + || __VEZETOSEG || __USERTANARID == $ADAT['tanarId'] // vezetőség és szaktanár is bármikor +// || ( +// (__VEZETOSEG || __USERTANARID == $ADAT['tanarId']) // vezetőségi tag és a létrehozó szaktanár... +// && __TANMENETLEADASIDOSZAK // megfelelő időszakban vagyunk +// ) + ); + + + if (__MODOSITHAT===true && $action == 'hozzarendeles') { + if (isset($_POST['masolas'])) $action = 'masolas'; + elseif (isset($_POST['uj'])) $action = 'uj'; + elseif (isset($_POST['modosit'])) $action = 'modosit'; + elseif (isset($_POST['info'])) $action = 'info'; + } else { + $action = ''; + } + $ADAT['tankorId'] = readVariable($_POST['tankorId'], 'id'); + + if (__MODOSITHAT === true) { + if ($action == 'hozzarendeles') { + $ADAT['tanmenetId'] = readVariable($_POST['tanmenetId'], 'id'); + tankorTanmenetHozzarendeles($ADAT); + $ADAT['tankorTanmenet'][$ADAT['tankorId']] = $ADAT['tanmenetId']; + } elseif (__TANAR && $action == 'uj') { + header('Location: '.location('index.php?page=naplo&sub=tanmenet&f=ujTanmenet&tankorId='.$ADAT['tankorId'])); + } elseif (__TANAR && $action == 'masolas') { + $eredetiTanmenetId = readVariable($_POST['tanmenetId'], 'id'); + if (isset($eredetiTanmenetId)) { + $ADAT['tanmenetId'] = tanmenetDuplikalas($eredetiTanmenetId, __USERTANARID); + tankorTanmenetHozzarendeles($ADAT); + header('Location: '.location('index.php?page=naplo&sub=tanmenet&f=tanmenetModositas&tanmenetId='.$ADAT['tanmenetId'])); + } + } elseif ($action == 'modosit') { + $ADAT['tanmenetId'] = readVariable($_POST['tanmenetId'], 'id'); + if (isset($ADAT['tanmenetId'])) header('Location: '.location('index.php?page=naplo&sub=tanmenet&f=tanmenetModositas&tanmenetId='.$ADAT['tanmenetId'])); + } elseif ($action == 'info') { + $ADAT['tanmenetId'] = readVariable($_POST['tanmenetId'], 'id'); + if (isset($ADAT['tanmenetId'])) header('Location: '.location('index.php?page=naplo&sub=tanmenet&f=tanmenetInfo&tanmenetId='.$ADAT['tanmenetId'])); + } + } + } + + + $TOOL['tanarSelect'] = array('tipus'=>'cella', 'paramName'=>'tanarId', 'post'=>array()); +// $TOOL['osztalySelect']= array('tipus'=>'cella', 'paramName'=>'osztalyId', 'post'=>array()); + getToolParameters(); +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetTankor.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetTankor.php new file mode 100644 index 00000000..814e624d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/tanmenetTankor.php @@ -0,0 +1,11 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/ujTanmenet-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/ujTanmenet-pre.php new file mode 100644 index 00000000..e0d2402d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/ujTanmenet-pre.php @@ -0,0 +1,72 @@ + 'indexed')); + $ADAT['mkIds'] = $ADAT['targyIds'] = $ADAT['targy'] = array(); + foreach ($ADAT['munkakozosseg'] as $key => $mkAdat) { + $tmp = getTargyakByMkId($mkAdat['munkakozossegId'], array('result' => 'indexed')); + $ADAT['mkIds'][] = $mkAdat['munkakozossegId']; + $ADAT['targy'] = array_merge($ADAT['targy'], $tmp); + } + for ($i = 0; $i < count($ADAT['targy']); $i++) $ADAT['targyIds'][] = $ADAT['targy'][$i]['targyId']; + + // tanév - alapértelmezetten a __TANEV + $ADAT['tanev'] = readVariable($_POST['tanev'], 'numeric unsigned', is_numeric(__TANEV)?__TANEV:null); + + // Egy tankörhöz rendelendő új tanmenethez + $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'],'id', readVariable($_GET['tankorId'], 'id')); + + // tankör --> tárgy --> munkaközösség + if (isset($tankorId)) { + $TA = getTankorAdat($tankorId); + $ADAT['tankorAdat'] = $TA[$tankorId][0]; + $ADAT['tankorAdat']['osztalyIds'] = getTankorOsztalyaiByTanev($tankorId, $ADAT['tanev']); + $evf = array(); + foreach ($ADAT['tankorAdat']['osztalyIds'] as $osztalyId) $evf[] = getEvfolyamJel($osztalyId, $ADAT['tanev']); + $ADAT['tankorAdat']['evfolyamJel'] = $evf[0]; + } + + // Munkaközösség és tankör + $mkId = readVariable($_POST['mkId'], 'id', null, $ADAT['mkIds']); + $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'], 'id', $ADAT['tankorAdat']['targyId'], $ADAT['targyIds']); + if (isset($tankorId) && $targyId != $ADAT['tankorAdat']['targyId']) unset($tankorId); + + $ADAT['evfolyamJel'] = $evfolyamJel = readVariable($_POST['evfolyamJel'], 'enum', $ADAT['tankorAdat']['evfolyamJel']); + if (isset($targyId) && isset($evfolyamJel)) { + $ADAT['targyAdat'] = getTargyById($targyId); + // Itt lekérdezhetnénk az eddigi ilyen tanmenetek listáját - megjelenítés céljából + $ADAT['tanmenetek'] = getTanmenetByTargyId($targyId); +//echo '
    '; var_dump($ADAT['tanmenetek']); echo '
    '; + } + + if ($action == 'ujTanmenet') { + $ADAT['tanmenetNev'] = readVariable($_POST['tanmenetNev'], 'string', $evfolyamJel.'. '.$ADAT['targyAdat']['targyNev'].' ('.$ADAT['targyAdat']['targyJelleg'].')'); + $ADAT['oraszam'] = readVariable($_POST['oraszam'], 'numeric unsigned'); + $ADAT['tanmenetId'] = $tanmenetId = ujTanmenet($ADAT); + if (isset($tankorId)) { + // itt kellene hozzárendelni a tankorhoz? + tankorTanmenetHozzarendeles($ADAT); + } + if ($tanmenetId) header('Location: '.location('index.php?page=naplo&sub=tanmenet&f=tanmenetModositas&tanmenetId='.$tanmenetId)); + } + + // $TOOL['tanevSelect'] = array('tipus' => 'cella', 'paramName' => 'tanev', 'post' => array('tankorId','targyId','evfolyamJel')); + $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'munkakozossegek' => $ADAT['munkakozosseg'], 'post'=>array('tankorId','evfolyamJel')); + if (isset($mkId)) $TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'post'=>array('mkId', 'tankorId','evfolyamJel')); + else $TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'targyak' => $ADAT['targy'], 'post'=>array('mkId', 'tankorId','evfolyamJel')); + $TOOL['evfolyamJelSelect'] = array('tipus'=>'cella', 'paramName' => 'evfolyamJel', 'paramDesc'=>'evfolyamJel','adatok' => $ADAT['evfolyamJelek'],'post'=>array('targyId', 'tankorId')); + getToolParameters(); + + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/ujTanmenet.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/ujTanmenet.php new file mode 100644 index 00000000..f304c404 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanmenet/ujTanmenet.php @@ -0,0 +1,8 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ajax.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ajax.php new file mode 100644 index 00000000..9d01f5fb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ajax.php @@ -0,0 +1,7 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ajaxExample.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ajaxExample.php new file mode 100644 index 00000000..41e27e62 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ajaxExample.php @@ -0,0 +1,29 @@ +$today,'tolDt'=>$today),'post'); + + echo '
    '."\n"; // -- OBSOLETE + + echo ''; +// echo ''; + echo ''; + + echo '
    '; + +echo '
    '; + + echo '
    '; + echo ''; + echo ''; + echo ''; + echo '
    '; // -- OBSOLETE + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/dolgozatAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/dolgozatAdat-pre.php new file mode 100644 index 00000000..02619e93 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/dolgozatAdat-pre.php @@ -0,0 +1,38 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getDiakAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getDiakAdat-pre.php new file mode 100644 index 00000000..5d722b38 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getDiakAdat-pre.php @@ -0,0 +1,61 @@ +true,'result'=>'assoc','keyfield'=>'osztalyId','osztalyIds'=>$OSZTALYIDS)); + $_JSON['diakJogviszony'] = getDiakJogviszony($diakId); +// $_JSON['diakHianyzasOsszesites'] = getDiakHianyzasOsszesites($diakId,szemeszteradat); + $_JSON['diakHianyzasStat'] = getDiakHianyzasStat($diakId); + $_JSON['diakTankor'] = getTankorByDiakId($diakId,__TANEV); + for ($i=0; $ifalse)); + // $_JSON['diakJogviszony'] = getDiakTorzslapszam($diakId); + + $_tmp = getKepzesByDiakId($diakId); + $_JSON['diakKepzes'] = $_tmp[$diakId]; + + $tmp = getDiakSzulei($diakId); + $_JSON['diakSzulo'] = array(); + if (is_array($tmp[0]) && count($tmp[0])>=1) { + foreach ($tmp[0] as $tipus => $id) if (!is_null($id)) $szuloIds[] = $id; + if (count($szuloIds)>0) { + $_JSON['diakSzulo'] = getSzulok(array('csakId'=>false,'result'=>'indexed','szuloIds'=>$szuloIds)); +// $_JSON['szuloIds'] = $szuloIds; + } + } +} + + /* PUBLIKUS ADATOK */ + $_JSON['diakId'] = $diakId; + $_JSON['tanev'] = __TANEV; + + // controllok: + //enum('felvételt nyert','jogviszonyban van','magántanuló','vendégtanuló','jogviszonya felfüggesztve','jogviszonya lezárva') +// if ($_JSON['statusz'] == 'jogviszonya lezárva') { +// } else { +// } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getJegyAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getJegyAdat-pre.php new file mode 100644 index 00000000..1a91a482 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getJegyAdat-pre.php @@ -0,0 +1,36 @@ +false)); +// $jegySelect .= putJegySelect($ADAT,'return'); +// $jegySelect .= formEnd(array('print'=>false)); +// $_JSON['jegySelect'] = $jegySelect; + +// $_JSON['debug'] = $ADAT; + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getOraAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getOraAdat-pre.php new file mode 100644 index 00000000..31dd4699 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getOraAdat-pre.php @@ -0,0 +1,94 @@ +'pre','modul'=>'naplo','result'=>'idonly','values'=>$v)); + + for ($i=0; $i$tolDt,'igDt'=>$igDt,'tankorIdk'=>$JA['tankorIdk'], + // módosítható az óra? + $_JSON['oraBeirhato'] = $oraBeirhato; + $_JSON['dolgozatBeirhato'] = $dolgozatBeirhato; + + if ($oraBeirhato===true) { // HTML FORM + $oraForm = '
    + + + + + '; + $oraForm .= ''; + $oraForm .= '
    '; + $_JSON['oraForm'] = $oraForm; + } + if ($dolgozatBeirhato===true) { // HTML FORM + $dolgozatForm = '
    + + + + '; + $dolgozatForm .= ''; + $dolgozatForm .= '
    '; + $_JSON['dolgozatForm'] = $dolgozatForm; + } + } + + /* PUBLIKUS ADATOK */ + $_JSON['oraId'] = $oraId; + $_JSON['tanev'] = __TANEV; + + // TEMPLATE +// $ORAK = getTanarNapiOrak($tanarId); + $s = ''; + if (is_array($ORAK) && count($ORAK)>0) { + for ($ora=__MIN_ORA; $ora<=__MAX_ORA; $ora++) { + $OA = $ORAK[$ora]; + $s .= '
    '.$ora.'. '.$OA[$i]['tankorNev']; + for ($i=0; $i \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getOsztalyAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getOsztalyAdat-pre.php new file mode 100644 index 00000000..246f5821 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getOsztalyAdat-pre.php @@ -0,0 +1,39 @@ + substr($_JSON['tankorNev'],0, strpos($_JSON['tankorNev'],' ')), + 'targyNev' => $targyAdat['targyNev'], + 'tankorJel' =>$_JSON['tankorJel'] + ); + $_JSON['tankorNevReszei']['tankorNevExtra'] = trim(str_replace($_JSON['tankorNevReszei']['evfOszt'].' '.$_JSON['tankorNevReszei']['targyNev'],'', + str_replace($_JSON['targyJel'],'',$_JSON['tankorNev']))); + $_JSON['tankorSzemeszter'] = getTankorSzemeszterei($tankorId); + $_JSON['osztalyIds'] = getTankorOsztalyai($tankorId); + $_JSON['osztalyok'] = getOsztalyok(); + $_JSON['tankorTanar'] = getTankorTanarai($tankorId); + $_JSON['tankorDiak'] = //getTankorDiakjai($tankorId); + getTankorDiakjaiByInterval($tankorId); + $_JSON['tankorBlokk'] = getTankorBlokkByTankorId(array($tankorId),__TANEV,array('blokkNevekkel'=>true)); +*/ + $_JSON['visibleData'] = true; +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getSzuloAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getSzuloAdat-pre.php new file mode 100644 index 00000000..99758d84 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getSzuloAdat-pre.php @@ -0,0 +1,27 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTanarAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTanarAdat-pre.php new file mode 100644 index 00000000..22394655 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTanarAdat-pre.php @@ -0,0 +1,56 @@ +$tanarId)); + + // TEMPLATE + $ORAK = getTanarNapiOrak($tanarId); + $s = ''; + if (is_array($ORAK) && count($ORAK)>0) { + for ($ora=__MIN_ORA; $ora<=__MAX_ORA; $ora++) { + $OA = $ORAK[$ora]; + $s .= '
    '.$ora.'. '.$OA[$i]['tankorNev']; + for ($i=0; $i \ No newline at end of file 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 new file mode 100644 index 00000000..01571f22 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php @@ -0,0 +1,38 @@ + substr($_JSON['tankorNev'],0, strpos($_JSON['tankorNev'],' ')), + 'targyNev' => $targyAdat['targyNev'], + 'tankorJel' =>$_JSON['tankorJel'] + ); + $_JSON['tankorNevReszei']['tankorNevExtra'] = trim(str_replace($_JSON['tankorNevReszei']['evfOszt'].' '.$_JSON['tankorNevReszei']['targyNev'],'', + str_replace($_JSON['targyJel'],'',$_JSON['tankorNev']))); + $_JSON['tankorSzemeszter'] = getTankorSzemeszterei($tankorId); + $_JSON['osztalyIds'] = getTankorOsztalyai($tankorId); + $_JSON['osztalyok'] = getOsztalyok(); + $_JSON['tankorTanar'] = getTankorTanarai($tankorId); + $_JSON['tankorDiak'] = //getTankorDiakjai($tankorId); + getTankorDiakjaiByInterval($tankorId); + $_JSON['tankorBlokk'] = getTankorBlokkByTankorId(array($tankorId),__TANEV,array('blokkNevekkel'=>true)); + $_JSON['tanmenetId'] = array_pop(getTanmenetByTankorIds(array($tankorId))); + $_JSON['tanmenetAdat'] = getTanmenetAdat($_JSON['tanmenetId']); + + $_JSON['visibleData'] = true; +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getZaroJegyAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getZaroJegyAdat-pre.php new file mode 100644 index 00000000..fd5a624e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getZaroJegyAdat-pre.php @@ -0,0 +1,41 @@ +false)); + $jegySelect .= putJegySelect($ZA,'return'); +// $jegySelect .= formEnd(array('print'=>false)); + $_JSON['jegySelect'] = $jegySelect; + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/intezmenyNev-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/intezmenyNev-pre.php new file mode 100644 index 00000000..e881059c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/intezmenyNev-pre.php @@ -0,0 +1,10 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/intezmenyNev.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/intezmenyNev.php new file mode 100644 index 00000000..af83206a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/intezmenyNev.php @@ -0,0 +1,8 @@ +div#naploToolIntezmenyNev {font-size:x-large; text-align: center; padding:1em;}'; + echo '
    '.$intezmeny['nev'].'
    '; +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/jegyzetAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/jegyzetAdat-pre.php new file mode 100644 index 00000000..a893ddf6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/jegyzetAdat-pre.php @@ -0,0 +1,165 @@ +$tanev,'tolDt'=>$dt,'igDt'=>$dt)); + } elseif (__JEGYZETSZEREPTIPUS == 'tanar') { + $ADAT['munkakozossegek'] = getMunkakozossegByTanarId(__JEGYZETSZEREPID, array('idonly'=>false)); + if (is_array($_OSZTALYA) && count($_OSZTALYA)>0) $ADAT['osztalyok'] = getOsztalyok(null,array('osztalyIds'=>$_OSZTALYA)); + $ADAT['tankorok'] = getTankorByTanarId(__JEGYZETSZEREPID); + } else { + + } + + // GET + $_JSON['adat'] = $ADAT['jegyzetAdat'] = getJegyzetAdat($jegyzetId); + + define('__READONLY',($jegyzetId>0 + && (__JEGYZETSZEREPTIPUS!==$ADAT['jegyzetAdat']['userTipus'] + || __JEGYZETSZEREPID!==$ADAT['jegyzetAdat']['userId']))); + if ($jegyzetId<=0) { + $dt = $_JSON['refJegyzetDt']; + $leiras = "Új jegyzet"; + } else { + $dt = $ADAT['jegyzetAdat']['dt']; + $leiras = "Jegyzet"; + } + + $_JSON['jegyzetId'] = $jegyzetId; + $_JSON['visibleData'] = true; + $_JSON['leiras'] = $leiras; + + $_CHK[$ADAT['jegyzetAdat']['publikus']] = ' checked="checked" '; + + // generate HTML Template +if (__READONLY===false) { + + // formBegin!!!!!! a pre-ben nem létezik :( + $jegyzetForm = '
    + + + + + Határidő: + '; + + $jegyzetForm .='

    Láthatóság

    +
      + +
      '; + //--@madas filter :( + if (__VEZETOSEG===true && __JEGYZETSZEREPTIPUS=='tanar') $jegyzetForm .= '
      '; + else $jegyzetForm .= '
      '; + $jegyzetForm .= '
    '; + + + $jegyzetForm .= '

    Kapcsolódó csoportok

      '; + + if (count($ADAT['tankorok'])>0) { + $jegyzetForm .= '
    • Tankörök:
    • '; + } + + if (count($ADAT['osztalyok'])>0) { + $jegyzetForm .= '
    • Osztályok:
    • '; + } + + if (count($ADAT['munkakozossegek'])>0) { + $jegyzetForm .= '
    • Munkaközösségek:
    • '; + } + + //$jegyzetForm .= '
    • Órák:
    • '; + //$jegyzetForm .= '
    • Munkaközösségek:
    • '; + + $jegyzetForm .= '
    '; + $jegyzetForm .= ''; + $jegyzetForm .= '
    '; + + // töröl + $jegyzetForm .= ' +
    + + + + + '; + $jegyzetForm .= '
    '; + +} else { + $jegyzetForm .= '

    '.supertext($_JSON['adat']['jegyzetLeiras']).'

    '; + $jegyzetForm .= '
      '; + for ($i=0; $i'.$_D['tankorNev'].''; + } + } + for ($i=0; $i'; + } + } + for ($i=0; $i'; + } + } + + $jegyzetForm .= '
    '; + + $jegyzetForm .= '

    '; + $jegyzetForm .= 'Ezt a jegyzetet más felhasználó jegyezte be. + Adatai egyelőre nem nyilvánosak. Addig is jegyezd meg, hogy ezeket így írjuk helyesen: +

    • tanár úr (fiú, tehát külön),
    • tanárnő (lány, tehát egybe),
    • muszáj (pontos jé)
    ;) +

    + '; +} + + $_JSON['jegyzetForm'] = $jegyzetForm; + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/kereso-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/kereso-pre.php new file mode 100644 index 00000000..026acd20 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/kereso-pre.php @@ -0,0 +1,25 @@ +true)); + } + + if ($ADAT['strict']==1) { + $_JSON = $ADAT; + } else { + $_JSON[] = $ADAT; // hozzáfűzzük valami random indexszel?!?! + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/napAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/napAdat-pre.php new file mode 100644 index 00000000..22ead763 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/napAdat-pre.php @@ -0,0 +1,23 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/oid.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/oid.php new file mode 100644 index 00000000..bb5e7696 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/oid.php @@ -0,0 +1 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/oraAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/oraAdat-pre.php new file mode 100644 index 00000000..67c94a57 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/oraAdat-pre.php @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankor-pre.php new file mode 100644 index 00000000..ae614514 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankor-pre.php @@ -0,0 +1,39 @@ + + table._t tr th { font-weight:normal; text-align: right; } + '; + $r.=''; + foreach($tankorAdat as $k => $v) { + $r .= ''; + } + $r.='
    '.$k.':'.$v.'
    '."\n"; + +/* $r.= 'Tankörtípus:'; + $r.= ''; + $r.=serialize($TA); +*/ + return $r; + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankorLista-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankorLista-pre.php new file mode 100644 index 00000000..7dab9b9f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankorLista-pre.php @@ -0,0 +1,66 @@ +$tolDt, 'igDt'=>$igDt)); + } elseif (isset($osztalyId) && $osztalyId!='') { // osztály tankörei + $tankorok = getTankorByOsztalyId($osztalyId, $tanev, array('tolDt'=>$tolDt, 'igDt'=>$igDt)); + } elseif (isset($tanarId) && $tanarId!='') { // tanár tankörei + $tankorok = getTankorByTanarId($tanarId, $tanev, array('tolDt'=>$tolDt, 'igDt'=>$igDt)); + } else { // általános tankörlekérdző + $WHERE = array(); + if (isset($targyId) && $targyId != '') { // leszűkítés adott tárgyra + $WHERE[] = 'targyId='.$targyId; + } elseif (isset($mkId) && $mkId != '') { // leszűkítés adott munkaközösségre + $TARGYAK = getTargyakByMkId($mkId); + for ($i = 0; $i < count($TARGYAK); $i++) $T[] = $TARGYAK[$i]['targyId']; + if (count($T) > 0) $WHERE[] = 'targyId IN ('.implode(',', $T).')'; + } + + if (isset($tanev)) // szűkítés adott tanévre + $WHERE[] = 'tankorSzemeszter.tanev='.$tanev; + + $tankorok = getTankorok($WHERE); + } + $tankorIds = array(); + for ($i=0; $i0) { + + $bontasTankorIds = getTankorByBontasIds($bontasIds); + $tankorOraszamok = getTankorTervezettOraszamok($tankorIds); + + for ($i=0; $i \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankorMod-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankorMod-pre.php new file mode 100644 index 00000000..35a4306f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/tankorMod-pre.php @@ -0,0 +1,40 @@ + substr($_JSON['tankorNev'],0, strpos($_JSON['tankorNev'],' ')), + 'targyNev' => $targyAdat['targyNev'], + 'tankorJel' =>$_JSON['tankorJel'] + ); + $_JSON['tankorNevReszei']['tankorNevExtra'] = trim(str_replace($_JSON['tankorNevReszei']['evfOszt'].' '.$_JSON['tankorNevReszei']['targyNev'],'', + str_replace($_JSON['targyJel'],'',$_JSON['tankorNev']))); + $_JSON['tankorSzemeszter'] = getTankorSzemeszterei($tankorId); + $_JSON['osztalyIds'] = getTankorOsztalyai($tankorId); + $_JSON['alert'] = $_SESSION['alert']; + $_JSON['osztalyok'] = getOsztalyok(); + $_JSON['tankorTipusok'] = getTankorTipusok(); + // $_JSON['post'] = $_POST; + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ujTankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ujTankor-pre.php new file mode 100644 index 00000000..0f581de6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/ujTankor-pre.php @@ -0,0 +1,114 @@ + $tAdat) { + foreach ($tAdat as $evfolyamJel => $eAdat) { + if ($evfolyamJel == $koAdat['evfolyamJel']) $ok = true; + if ($ok) { + foreach ($eAdat as $szemeszter => $szAdat) { + $ADAT['oraszam'][$tanev][$szemeszter] = $szAdat[0]['hetiOraszam']; + $tankorOraszam[] = array('tanev'=>$tanev,'szemeszter'=>$szemeszter,'oraszam'=>$szAdat[0]['hetiOraszam']); + } + $tanev++; + } + } + } + // a bontásokból: + // - osztalyIds + $q = "SELECT DISTINCT osztalyId FROM kepzesTargyBontas WHERE bontasId IN (".implode(',', array_fill(0, count($bontasIds), '%u')).")"; + $ADAT['osztalyIds'] = db_query($q, array('fv'=>'ujTankor-pre','modul'=>'naplo','result'=>'idonly','values'=>$bontasIds)); + // A tárgy adataiból: évközi követelmény + $targyAdat = getTargyById($ADAT['targyId']); + $ADAT['kovetelmeny'] = $targyAdat['evkoziKovetelmeny']; + // kellene még: elnevezés + $ADAT['tankorJel'] = 'B'.$bontasIds[0]; + // választható - default NULL; min/max létszám: 0; évközi követelmény: a tárgyból/jegy; + $ADAT['min'] = $ADAT['max'] = 0; + + // A tankor felvétele + $lr = db_connect('naplo_intezmeny'); + db_start_trans($lr); $ok = true; + $q = "INSERT INTO tankor (targyId,tankorTipusId,kovetelmeny,min,max) VALUES (%u,%u,'%s',%u,%u)"; + $v = array($ADAT['targyId'], $ADAT['tankorTipusId'], $ADAT['kovetelmeny'], $ADAT['min'], $ADAT['max']); + $tankorId = db_query($q, array('fv'=>'ujTankor-pre/1','modul'=>'naplo_intezmeny','result'=>'insert','values'=>$v), $lr); + $ok = $ok && $tankorId; + if ($ok) { + // tankör-osztály hozzárendelés + $q = "INSERT INTO tankorOsztaly (tankorId, osztalyId) VALUES (%u, %u)"; + foreach ($ADAT['osztalyIds'] as $index => $osztalyId) $ok = $ok && db_query($q, array('fv'=>'ujTankor-pre/3','modul'=>'naplo_intezmeny','values'=>array($tankorId, $osztalyId)), $lr); + } + if ($ok) { + // tankör-szemeszter - még tankörnév nélkül... + $tankorNev = $ADAT['tankorJel']; + foreach ($ADAT['oraszam'] as $tanev => $tAdat) { + foreach ($tAdat as $szemeszter => $oraszam) { + $q = "INSERT INTO tankorSzemeszter (tankorId, tanev, szemeszter, oraszam, tankorNev) VALUES (%u, %u, %u, %f, '%s')"; + $ok = $ok && db_query($q, array('fv'=>'ujTankor-pre/4','modul'=>'naplo_intezmeny','values'=>array($tankorId, $tanev, $szemeszter, $oraszam, $tankorNev)), $lr); + } + } + } + // tankör nevének beállítása + if ($ok) $nev = setTankorNev($tankorId, $tankorNevExtra='B'.$bontasIds[0], $lr); + $ok = $ok && ($nev !== false); + + // tankör bontásokhoz rendelése + $bontasAdat = getBontasAdat($bontasIds[0]); + $hetiOraszam = $koAdat['hetiOraszam']-$bontasAdat['hetiOraszam']; + $ok = $ok && bontasTankorHozzarendeles($bontasIds, $tankorId, $hetiOraszam, $lr); + + // visszaküldendő adatok összegyűjtése + $tankorAdat = getTankorAdat($tankorId, __TANEV, $lr); + $_JSON = array( + 'bontasIds' => $bontasIds, + 'hetiOraszam' => $hetiOraszam, + 'tankorId' => $tankorId, + 'tankorNev' => str_replace($targyAdat['targyNev'].' ','',$tankorAdat[$tankorId][0]['tankorNev']), + 'tankorNevOrig' => $tankorAdat[$tankorId][0]['tankorNev'], + 'tankorOraszam' => $tankorOraszam, + 'ideiTankorOraszam' => array( + $tankorAdat[$tankorId][0]['oraszam'], + $tankorAdat[$tankorId][1]['oraszam'] + ) + ); + if ($ok !== false) { + db_commit($lr); + } else { db_rollback($lr); } + db_close($lr); + + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/postas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/postas-pre.php new file mode 100644 index 00000000..8f44cd8c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/postas-pre.php @@ -0,0 +1,89 @@ +$ADAT['diakokkal'])); + } elseif ($ADAT['mId']!='' && count($ADAT['uzenet'])==1) { + // egy üzenet adatait nézzük, akkor kérdezzük le a feladót és a címzettet + $D = $ADAT['uzenet'][0]; + foreach (array('felado','cimzett') as $_t) { + switch ($D[$_t.'Tipus']) { + case 'tanar': $nev = getTanarNevById($D[$_t.'Id']); break; + case 'diak': $nev = getDiakNevById($D[$_t.'Id']); break; + case 'szulo': $nev = getSzuloNevById($D[$_t.'Id']); break; + case 'tankor': + case 'tankorSzulo': $nev = getTankorNevById($D[$_t.'Id']); break; + case 'munkakozosseg': $nev = getMunkakozossegNevById($D[$_t.'Id']); break; + case 'osztaly': + case 'osztalyTanar': + case 'osztalySzulo': $nev = getOsztalyNevById($D[$_t.'Id']); break; + } + if (uzenhet($_t.'Tipus')) $ADAT['r'][$D[$_t.'Tipus']][] = array($D[$_t.'Tipus'].'Id'=>$D[$_t.'Id'],$D[$_t.'Tipus'].'Nev'=>$nev); + } + } else { + $ADAT['r'] = initUzenoTipusok(array('csakId'=>false,'tanev'=>$ADAT['tanev'])); + if (uzenhet('tanar') && in_array(__SZEREP,array('diak','szulo'))) /* Írjuk felül az üres tanart a tankör tanáraival */ + $ADAT['r']['tanar'] = extendUzenoTipusok(array('csakId'=>false,'tanev'=>$ADAT['tanev'])); + if (uzenhet(__SZEREP)) $ADAT['r'][__SZEREP][] = array(__SZEREP.'Id'=>0, __SZEREP.'Nev'=>''); + } + + if ($ADAT['cimzettTipus']!='' && is_numeric($ADAT['cimzettId']) && ($_POST['postazoHash']=='submit' || $_POST['gomb']=='OK')) { + + $P = array( + 'tanev'=>__TANEV, + 'cimzettId'=>readVariable($ADAT['cimzettId'],'id'), + 'cimzettTipus' => readVariable($ADAT['cimzettTipus'],'strictstring',null), + 'txt'=> $ADAT['txt'] ); + + if (postUzenet($P) === true) { + /* Ha sikered */ + unset($_POST); + header('Location: '.location('index.php?page=naplo&sub=uzeno&f=uzeno')); + } else { + $_SESSION['alert'][] = 'page::uzenorogziteshiba'; + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/postas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/postas.php new file mode 100644 index 00000000..18ccddef --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/postas.php @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/uzeno-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/uzeno-pre.php new file mode 100644 index 00000000..4aededc1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/uzeno-pre.php @@ -0,0 +1,187 @@ +0) $defaultSzalId = __MEID.'_'.__SZEREP.'_'.$ADAT['diakId'].'_diak'; + if ($ADAT['diakId']>0) $defaultCimzett = 'diak|'.$ADAT['diakId']; + } + // vezérléshez + $ADAT['mId'] = readVariable($_GET['mId'],'id'); + $ADAT['szalId'] = readVariable($_GET['szalId'],'string',$defaultSzalId); + $ADAT['cimzettId'] = readVariable($_GET['cimzettId'],'id'); + $ADAT['cimzettTipus'] = readVariable($_GET['cimzettTipus'],'strictstring'); + $ADAT['replyTipus'] = $ADAT['cimzettTipus'] ; + $ADAT['feladoId'] = readVariable($_GET['feladoId'],'id'); + $ADAT['feladoTipus'] = readVariable($_GET['feladoTipus'],'strictstring'); + + $ADAT['mutato'] = readVariable($_GET['mutato'], 'numeric'); + $ADAT['tanev'] = readVariable($_POST['tanev'],'numeric',readVariable($_GET['tanev'],'numeric',__TANEV)); + + $ADAT['toSkin'] = readVariable($_GET['toSkin'],'enum',null,$SKINS); + + $ADAT['pattern'] = readVariable($_POST['pattern'],'string'); + /* Ha van cimzett mező, akkor az új UI-ről jön a kérés, felülírhatunk mindent. */ + $ADAT['cimzett'] = readVariable($_POST['cimzett'],'string',$defaultCimzett); + if($ADAT['cimzett']!='') { + //$_SESSION['alert'][] = '::postazonak kellene kezelni!!!'; // he? + list($ADAT['cimzettTipus'],$ADAT['cimzettId']) = explode('|',$ADAT['cimzett']); + } else { + $ADAT['cimzettTipus'] = readVariable($_POST['cimzettTipus'],'strictstring'); + $ADAT['cimzettId'] = intval($_POST[$ADAT['cimzettTipus'].'Id']); + } + +// $ADAT['r']['diak'] = getDiakokByPattern($ADAT['pattern']); + + /* Képkezelés */ + $ADAT['kepMutat'] = __SHOW_FACES_TF; + + $ADAT['tagsagok'] = initUzenoTipusok(array('csakId'=>false,'tanev'=>$ADAT['tanev'])); + $ADAT['tagsagok']['diak'] = getDiakok(); + $ADAT['tagsagok']['tanar'] = getTanarok(); +// $ADAT['tagsagok'][__SZEREP][] = setUzenoFeladoId(); + /* create id */ + + /*..*/ + $AVAIL_TIPUSOK = (array_keys($ADAT['tagsagok'])); + /* Postázó + mayorNaploUzen cookie-t minden oldalletöltésnél újrageneráljuk, így a posttal, ha nem egyezik, biza hiába minden. + */ + $kuuk = readVariable($_COOKIE['mayorNaploUzen'],'strictstring'); + $txt = (readVariable($_POST['txt'],'string')); + + if ($action == 'postUzenet' && $kuuk == $_POST['kuuk'] && in_array($_POST['cimzettTipus'],$AVAIL_TIPUSOK) && $txt!='' + && $_POST[$_POST['cimzettTipus'].'Id'] != '' + ) { + /* hacky spellchecker - to get rid of annoying mispelled... */ + if (mb_stristr($txt,'tanárúr',false,'UTF-8')!==false) $_SESSION['alert'][] = 'message:check_spelling:Tanár úr!'; + if (mb_stristr($txt,'tanár nő',false,'UTF-8')!==false) $_SESSION['alert'][] = 'message:check_spelling:Tanárnő!'; + if (mb_stristr($txt,'muszály',false,'UTF-8')!==false) $_SESSION['alert'][] = 'message:check_spelling:Muszáj!'; + /* --- */ + $P = array( + 'tanev'=>$ADAT['tanev'], + 'cimzettId'=> $ADAT['cimzettId'], + 'cimzettTipus' => $ADAT['cimzettTipus'], + 'txt'=> $txt ); + if (count($_SESSION['alert'])==0 && postUzenet($P)===true) { + $_SESSION['alert'][] = 'info:msg_success:'; // a félreértés kedvéért kitöröljük a szűrőket + unset($ADAT['feladoTipus']); unset($ADAT['feladoId']); + unset($ADAT['cimzettTipus']); unset($ADAT['cimzettId']); + } else { + $_SESSION['alert'][] = 'info::figyelmezteto uzenetkor nem rogzitjuk az uzeneteket!'; + $ADAT['txt']=$txt; + } + unset($P); + unset($ADAT['mId']); + } elseif (__UZENOADMIN===true && $_GET['action'] =='delUzenet') { + delUzenet($ADAT['mId'],$ADAT['tanev']); + unset($ADAT['mId']); + } elseif ($_GET['action'] == 'flagUzenet') { // közvetlenül is olvashatjuk + $FLAG['flag'] = readVariable($_GET['flag'],'numeric unsigned',1,array(0,1)); + $FLAG['mId'] = $ADAT['mId']; + $FLAG['tanev']= $ADAT['tanev']; + // a kapcsolótáblába rögzíthető status + flagUzenet($FLAG); + unset($ADAT['mId']); + } + + $ADAT['kuuk'] = rand(); + setcookie('mayorNaploUzen', $ADAT['kuuk']); + + $_CONVERT = array('tankorSzulo'=>'tankor', 'osztalySzulo'=>'osztaly', 'osztalyTanar'=>'osztaly'); + if ($ADAT['cimzettId']!='' && in_array($ADAT['cimzettTipus'],$AVAIL_TIPUSOK) ) { + $b = false; + for ($i=0; $i100,'pointer'=>0); + $SET['order'] = 'DESC'; + } elseif ($ADAT['mId']!='') { + $SET['filter'][] = 'uzeno.mId='.intval($ADAT['mId']); + } elseif ($skin=='ajax') { + $SET['limits'] = array('limit'=>__UZENO_AJAXLIMIT,'pointer'=>0); + $SET['filterFlag'][] = '`uzenoFlagek`.`flag`!=1 OR flag IS NULL'; + } else { + if (!is_numeric($ADAT['mutato']) || $ADAT['mutato']==0) $SET['limits'] = array('limit'=>__UZENO_DEFAULTLIMIT, 'pointer'=>0); + else $SET['limits'] = array('limit'=>__UZENO_DEFAULTLIMIT, 'mutato'=>$ADAT['mutato'], 'pointer'=>($ADAT['mutato']-1)*__UZENO_DEFAULTLIMIT); + } + $SET['tanev'] = $ADAT['tanev']; + $ADAT['limits'] = $SET['limits']; + $ADAT['uzenetek'] = getUzenoUzenetek($SET); + /* id */ + // for($i=0; $ifalse,'result'=>'standard','szuloIds'=>$_SZULOIDS)); + for($i=0; $i 0 && count($SZULOIDS)<50) $ADAT['szuloDiakjai'] = getSzulokDiakjai($SZULOIDS); + // + $SET['count'] = true; + $ADAT['limits']['max'] = getUzenoUzenetek($SET); + + $TOOL['tanevSelect'] = array('tipus'=>'cella', 'paramName'=>'tanev', 'tanev'=>$ADAT['tanev'], 'post' => array('tanev')); + $TOOL['vissza'] = array('tipus'=>'vissza','paramName'=>'','icon'=>'inbox','post'=>array('page'=>'naplo','sub'=>'uzeno','f'=>'uzeno')); + if ($ADAT['szalId']!='' || $ADAT['mId']!='') { + $TOOL['vissza']['icon'] = 'arrow-left'; + } + + getToolParameters(); + +} else { + $_SESSION['alert'][] = '::uzeno_is_not_installed'; +} +?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/uzeno.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/uzeno.php new file mode 100644 index 00000000..12036771 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/uzeno/uzeno.php @@ -0,0 +1,12 @@ +0 ) + putUzeno($ADAT); + if ($skin!='ajax' && $ADAT['feladoId']!==0) + putUzenoUzenet($ADAT); + +} +?> diff --git a/mayor-orig/mayor-naplo/www/policy/public/naplo/rpc/rpc-pre.php b/mayor-orig/mayor-naplo/www/policy/public/naplo/rpc/rpc-pre.php new file mode 100644 index 00000000..53328c7c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/public/naplo/rpc/rpc-pre.php @@ -0,0 +1,48 @@ +setRemoteOMKod($initOMKod); + $REQUEST = $RPC->processRequest($rpcDetails); + $func = $REQUEST->func; + } + catch (Exception $e) + { + $func=''; + $DATA = array('error'=>$e->getMessage()); + } + // processing + + // MASTER BOSS -> portal/rpc/rpc, ez itt ELAVULT + $DATA = array(); + if (isset($func) && $func!='') { + switch ($func) { + case 'getVersion': + case 'ping': + $DATA = $RPC->prepareReply( + array('func'=>'getVersion','response_revision'=>_MAYORREV,'pong') + ); + $RPC->setResponse($DATA); + break; + case 'checkRegistration': + $otherPublicKey = getSslPublicKeyByOMKod($REQUEST->OMKOD); + if ($otherPublicKey===false) $valid=0; + elseif ($REQUEST->publicKey == $otherPublicKey) $valid=1; + else $valid=2; + $DATA = $RPC->prepareReply( + array('func'=>$func,'response'=>serialize($REQUEST),'valid'=>$valid) + ); + $RPC->setResponse($DATA); + default: + break; + } + } +?> diff --git a/mayor-orig/mayor-naplo/www/policy/public/naplo/rpc/rpc.php b/mayor-orig/mayor-naplo/www/policy/public/naplo/rpc/rpc.php new file mode 100644 index 00000000..be00b0a5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/public/naplo/rpc/rpc.php @@ -0,0 +1,7 @@ +0) putResponse($DATA); // reply + +?> diff --git a/mayor-orig/mayor-naplo/www/policy/public/rpc/naplo/rpc-pre.php b/mayor-orig/mayor-naplo/www/policy/public/rpc/naplo/rpc-pre.php new file mode 100644 index 00000000..aba7552f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/public/rpc/naplo/rpc-pre.php @@ -0,0 +1,70 @@ +setRemoteHostByNodeId($senderNodeId); + $RPC->processRequest(); + $_RPC['request'] = $RPC->getIncomingRequest(); + */ + $func = $_RPC['request']['func']; + // processing + $DATA = array(); + if (isset($func) && $func!='') { + switch ($func) { + // itt a currens verziót kellene visszaadni + case 'getVersion': + case 'ping': + $DATA = array('func'=>'getVersion','revision'=>_MAYORREV,'pong'); + $RPC->setResponse($DATA); + break; + case 'getPrivilegeInfo': + $nodeId = $_RPC['senderNodeId']; + $userAccount = readVariable($_RPC['request']['userAccount'], 'string'); + $OMKod = readVariable($_RPC['request']['OMKod'],'numeric unsigned'); + $priv = explode(',',getRPCPrivilegeByNUO($nodeId, $userAccount, $OMKod)); + if (is_array($priv) && in_array('Jogosultság',$priv)) { + $DATA = array('func'=>'getPrivilegeInfo','result'=>'success','priv'=>$priv); + } else { + $DATA = array('func'=>'getPrivilegeInfo','result'=>'failure','alert'=>'message:insufficient_access'); + } + $RPC->setResponse($DATA); + break; + case 'getTantargyfelosztasStat': + $nodeId = $_RPC['senderNodeId']; + $userAccount = readVariable($_RPC['request']['userAccount'], 'string'); + $OMKod = readVariable($_RPC['request']['OMKod'],'numeric unsigned'); // a naplo/base/rights már felhasználta az __INTEZMENY beállításnál + $priv = explode(',',getRPCPrivilegeByNUO($nodeId, $userAccount, $OMKod)); + if (is_array($priv) && in_array('Tantárgyfelosztás',$priv)) { + // Az __INTEZMENY és __TANEV beállítását a naplo/rights.php már elvégezte... + + require_once('include/modules/naplo/share/intezmenyek.php'); + require_once('include/modules/naplo/share/osztaly.php'); + require_once('include/modules/naplo/share/targy.php'); + require_once('include/modules/naplo/share/tankor.php'); + require_once('include/modules/naplo/stat/tantargyFelosztas.php'); + global $ADAT; $ADAT = array(); + $IA = getTantargyfelosztasStat(); + + $DATA = array('func'=>'getTantargyfelosztasStat','result'=>'success','tanev'=>__TANEV,'intezmeny'=>__INTEZMENY, 'IA'=>$IA); + } else { + $DATA = array('func'=>'getTantargyfelosztasStat','result'=>'failure','alert'=>'message:insufficient_access'); + } + $RPC->setResponse($DATA); + break; + default: + $DATA['result'] = 'ismeretlen függvény: '.$func; + break; + } + + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/css/naplo.css b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/css/naplo.css new file mode 100644 index 00000000..f8b97d3c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/css/naplo.css @@ -0,0 +1,4 @@ + +div.beirasAdatok { font-size:large; margin:auto; width:90%; text-align: center; } +div.beirasAdatok a { text-decoration: none; color: inherit; } +div.beirasAdatok a:hover { text-decoration: none; color: #777777; } diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/css/orarend/orarend.css b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/css/orarend/orarend.css new file mode 100644 index 00000000..222664e5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/css/orarend/orarend.css @@ -0,0 +1,68 @@ + +table.orarend { + font-size:10px; +} +table.orarend tr th { + background-color: #eeeeee; + color: #999999; + border-width: 0px 0px 0px 0px; + width:1%; + height:30px; + font-weight: normal; + border-color: #ddd; + border-width: 0px 0px 1px 0px; + border-style: solid; + +} +table.orarend thead tr th { + background-color: #889999; + color: white; + height:1em; + +} +table.orarend thead tr th.spec { + background-color: red; +} + +table.orarend tr td { + text-align: center; + border-color: #ddd; + border-width: 0px 0px 1px 0px; + border-style: solid; + width:18%; +} + +div.unfinished { + background-color: yellow; +} + + table.orarend tbody tr td hr { width: 80% } + div.normál {} + div.plusz { + background-color: #eeccee; + } + div.elmarad { + color: white; + background-color: black; + } + div.elmarad_máskor { + color: white; + background-color: #555555; + } + div.normál_máskor { + color: white; + background-color: #776699; + } + div.felügyelet { + background-color: #bbaac0; + } + div.helyettesítés { + background-color: #ccffcc; + } + div.összevonás { + background-color: #aabbc0; + } + span.helyett { + color: gray; + text-decoration: line-through; + } diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/admin/tanevek.phtml b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/admin/tanevek.phtml new file mode 100644 index 00000000..9f32e72e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/admin/tanevek.phtml @@ -0,0 +1,9 @@ + diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/base.phtml b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/base.phtml new file mode 100644 index 00000000..c3fe9d59 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/base.phtml @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/bejegyzesek/info.phtml b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/bejegyzesek/info.phtml new file mode 100644 index 00000000..94c12c57 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/bejegyzesek/info.phtml @@ -0,0 +1,11 @@ +'; + echo _BEJEGYZESEK_SZAMA.': '; + if ($ADAT['db'] > 0) echo ''.$ADAT['db'].''; + else echo $ADAT['db']; + echo '
    '; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/haladasi/haladasi.phtml b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/haladasi/haladasi.phtml new file mode 100644 index 00000000..1511b957 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/haladasi/haladasi.phtml @@ -0,0 +1,162 @@ +'."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + $toTime = strtotime(_SHOW_DAYS_TO); + $fromTime = strtotime(_SHOW_DAYS_FROM); + + for ($time = $toTime; $time >= $fromTime; $time = strtotime('-1 day',$time)) { + $dt = date('Y-m-d',$time); + $count = count($data[$dt]); + if ($count > 0) { +// echo ''; + putTankorNap($dt, $data[$dt], $data['dolgozatok'], $order); +// echo ''."\n"; + } + } + + echo '
    '; + echo ''._TANAR.''._ORASZAM.''._TANANYAG.'
    '; +// if (_SHOW_DAYS_FROM > $_TANEV['kezdesDt']) echo ''."\n"; + echo ' '._IDOSZAK.': '.str_replace('-','.',_SHOW_DAYS_FROM) . '. - '. str_replace('-','.', _SHOW_DAYS_TO) .'. '."\n"; +// if (_SHOW_DAYS_TO < date('Y-m-d')) echo ''."\n"; + echo '
    '."\n"; + + } + + + + + function putTankorNap($dt, $dNap, $doga, $order) { + + $time = strtotime($dt); + $count = count($dNap); + +// if (date('w',$time) % 2 == 0) echo ''."\n"; +// else echo ''."\n"; + + putHaladasiDolgozat($dt,$doga); + + for ($i=0; $i<$count; $i++) { + putTankorOra($dNap[$count-$i-1]); + } // órák kiírása + +// echo ''."\n"; + + } + + + function putHaladasiDolgozat($dt,$doga) { + + for ($i=0;$i'; + echo ''; + $href = href('index.php?page=naplo&sub=osztalyozo&f=dolgozat&dolgozatId='.$did); +// echo ''; + echo _BEJELENTETT_DOLGOZAT . ': '. $doga[$did]['dolgozatNev']; + echo ' (' ; + for ($j=0;$j'; + echo ''; + echo ''."\n"; + } + + } + + + function putTankorOra($dOra) { + + global $aHetNapjai; + + $modosithatoOra = false; + + if (!in_array($dOra['tipus'],array('normál','normál máskor'))) { + $tipus = nagybetus(substr($dOra['tipus'],0,1)); + $tr_class = ' class="helyettesit"'; + } else { + $tipus = ''; + $tr_class = ''; + } + + echo ''; + + echo ''; + echo str_replace('-','.',$dOra['dt']) .'. '. $aHetNapjai[date('w',strtotime($dOra['dt']))-1].' '; + echo ''; + echo ''; + echo $dOra['ora'].'.'; + echo ''."\n"; + echo ''; + echo $tipus; +// echo $ADAT['terem'][$dOra['teremId']]['leiras']; + echo ''."\n"; + + + // ----- Tanör(ok) ------------------------------- + echo ''; + // Ha egy normál órának több tanára is van, és módosítható az óra, akkor lehet választani a tanárok közül + if (count($dOra['tanár']['id']) > 1 and $modosithatoOra) { + $_SEL = array($dOra['kiId'] => 'selected="selected" '); + echo ''; + } else { + echo $dOra['kiCn']; + } + echo ''."\n"; + + echo ''; + echo $dOra['oraszam']; + echo ''."\n"; + + echo ''.$dOra['leiras'].''."\n"; + + echo ''."\n"; + } + + function putHetesForm($ADAT) { } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/hianyzas/info.phtml b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/hianyzas/info.phtml new file mode 100644 index 00000000..2d206723 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/hianyzas/info.phtml @@ -0,0 +1,18 @@ + $D) { if ($dt!='') break; } + echo '
    '; + if ($dt == date('Y-m-d')) { + echo _MA.' '._AZ_ORAK.' '.$D['oranHianyzasSzazalek'].'%-n '._VOLT_HIANYZO.'.
    '; + echo _MA.' '.$D['hianyzokSulyozva'].' '._DIAK.' '._HIANYZIK.'.'; + } else { + list($ev,$ho,$nap) = explode('-',$dt); + echo decimal_to_roman($ho).'. '.$nap.'. napon '._AZ_ORAK.' '.$D['oranHianyzasSzazalek'].'%-n '._VOLT_HIANYZO.'.
    '; + echo decimal_to_roman($ho).'. '.$nap.'. napon '.$D['hianyzokSulyozva'].' '._DIAK.' '._HIANYZOTT.'.'; + } + echo '
    '; + //echo '
    '._TOVABB.''; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/hibabejelento/admin.phtml b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/hibabejelento/admin.phtml new file mode 100644 index 00000000..c2d3b6a1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/hibabejelento/admin.phtml @@ -0,0 +1,120 @@ +'; + for ($i = 0; $i < count($ADAT['kerelmek']); $i++) { + + if ($ADAT['kerelmek'][$i]['lezarasDt']!="") $_class = ' style="color: #777777;"' ; + elseif ($ADAT['kerelmek'][$i]['jovahagyasDt']!="") $_class = ' style="background-color: rgb(200,255,200);"' ; + else $_class = ' style="color: black;"' ; + + if (__VEZETOSEG || __NAPLOADMIN) { + echo '
  • '.$ADAT['kerelmek'][$i]['userAccount'].' '.superdate($ADAT['kerelmek'][$i]['rogzitesDt']).': '.$ADAT['kerelmek'][$i]['kategoria'].'
  • '; + } else { + echo '
  • '; + echo '
    '.$ADAT['kerelmek'][$i]['userAccount'].' '.superdate($ADAT['kerelmek'][$i]['rogzitesDt']).': '.$ADAT['kerelmek'][$i]['kategoria'].'
    '; + echo '- '.htmlspecialchars($ADAT['kerelmek'][$i]['szoveg']); + if ($ADAT['kerelmek'][$i]['valasz']!='') + echo '
    - '.htmlspecialchars($ADAT['kerelmek'][$i]['valasz']).'
    '; + echo '
  • '; + } + } + echo ''; + + } + + function putKerelmekValasszal($ADAT) { + + $K = array('jh'=>0,'njh'=>0); + $MAX = 1; + $dbKerelem = count($ADAT['kerelmek']); + $show = false; + for ($i = 0; $i < count($ADAT['kerelmek']); $i++) { + if ($ADAT['kerelmek'][$i]['jovahagyasDt']!='') { + $K['jh']++; + // A kérelmek a rögzítés dátuma szerint rendezettek, nem a jóváhagyás dátuma szerint! + if (!isset($jdt) || strtotime($jdt) < strtotime($ADAT['kerelmek'][$i]['jovahagyasDt'])) $jdt = $ADAT['kerelmek'][$i]['jovahagyasDt']; + } else $K['njh']++; + $show = true; + } + if ($show) { +/* echo '
    '; + echo '
    Kérelmek
    '; + echo '
    '; + echo "Várakozó kérelmek száma: "; + echo $K['jh'] . ' + '. $K['njh']; + if ($jdt !='') echo "
    Utolsó jóváhagyás: ".$jdt; + echo '
    '; + if (__NAPLOADMIN===true || __VEZETOSEG===true) + echo ''; + echo '
    '; +*/ + } + + echo '
    '; + for ($i = 0; $i < $dbKerelem && $i<$MAX; $i++) { + $_link = href('index.php?page=naplo&sub=hibabejelento&f=admin&kerelemId='.$ADAT['kerelmek'][$i]['kerelemId']); + $_K = $ADAT['kerelmek'][$i]; + $kerelemId = $_K['kerelemId']; + $_napja = round(((strtotime(date('Y-m-d H:i:s')) - strtotime($_K['rogzitesDt']))/(24*60*60))); + if ($_napja>60) $_napjaBg = '#f00; outline: solid 2px orange;'; else if ($_napja>7) $_napjaBg = '#f44336; outline: solid 2px red; '; else $_napjaBg = '#aaa'; + if ($_K['lezarasDt']!='') { + $_color = "#888"; + $_class="icon-paper-clip-alt"; + } elseif ($_K['jovahagyasDt']!='') { + $_color = "#64ce64"; + $_class="icon-ok-sign"; + } else { + $_color="#ce6464"; + $_class="icon-question-sign"; + } + echo '
    '; + echo '
    '; + echo '
    '.superdate($ADAT['kerelmek'][$i]['rogzitesDt']).'
    '; + echo ''; + echo '
    '.htmlspecialchars($ADAT['kerelmek'][$i]['valasz']).' '.$_K['jovahagyasAccount'].'
    '; + echo ''; + if (count($ADAT['valaszok'][$kerelemId])>0) { + $_V = $ADAT['valaszok'][$kerelemId]; + echo ''; + for ($j=0; $j'; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '.superdate($_V[$j]['valaszDt']).''.$_V[$j]['userAccount'].''.supertext($_V[$j]['valasz']).'
    '; + } + echo '
    '; + } + echo '
    '; + + //if ($i!=$dbKerelem) + {echo ' + + '; + } + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/orarend/orarend.phtml b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/orarend/orarend.phtml new file mode 100644 index 00000000..cb12b8cf --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/ajax/module-naplo/html/orarend/orarend.phtml @@ -0,0 +1,148 @@ +'."\n"; + echo ''."\n"; + for($ora=$ADAT['napiMinOra']; $ora<=$ADAT['napiMaxOra']; $ora++) { + echo ''; + echo ''.$ora.''; +// for ($nap=1; $nap<=$ADAT['hetiMaxNap']; $nap++) { // FIXME (getMaxNap) + $nap=date('w',strtotime($ADAT['dt'])); + $dt = $ADAT['orarend']['napok'][$nap]['dt']; + echo ''; + $het = 0; + $ORARENDI = array(); + for($i=0; $i'; + $_ferohely = $ADAT['termek'][$_T['teremId']]['ferohely']; + $_letszam = $ADAT['tankorLetszamok'][$_T['tankorId']]; + if ($_T['tankorId']!='') { + echo ''; + echo $ADAT['tankorok'][$_T['tankorId']][0]['tankorNev']; + echo ''; + } else { + echo "$_targyjel : $_osztalyJel : "; + } + echo ', '; + echo ''.$ADAT['termek'][$_T['teremId']]['leiras'].''; + echo '
    '; + if ($_ORA['kit']!='') { + echo ''; + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + echo ''; + if ($_ORA['ki']!='') echo ' '.$ADAT['tanarok'][$_ORA['ki']]['tanarNev']; + } else { + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + } + + if (isset($_ORA['oo'])) echo ' °'; // else tervezett + if ($_tankorTipus=='délutáni') echo ' ¹'; + + echo '
    '; + if (count($T[$nap][$ora]['orak'])>$i+1) echo '
    '; + } + /* és ide jönnek a pluszok */ + $j=0; + if (is_array($ADAT['haladasi']['orak'][$dt][$ora])) foreach ($ADAT['haladasi']['orak'][$dt][$ora] as $_tankorId => $__T) { + if (!is_array($ORARENDI) || !in_array($_tankorId,$ORARENDI)) { + if ($j!=0) echo '
    '; $j++; + $_ORA = $ADAT['haladasi']['orak'][$dt][$ora]; + _putOra($_ORA,$_tankorId); + } + } + echo ''."\n"; + //} + echo ''."\n"; + } + echo ''; + echo ''."\n\n\n\n"; + + } else { + //putOrarendPlain($ADAT); + echo '
    '._NO_TIMETABLE.'
    '; + + } + + + } + + function putOrarendPlain($ADAT) { + if (is_array($ADAT['orarend']['orarendiOra'])) { + foreach($ADAT['orarend']['orarendiOra'] as $het => $T) { + echo ''."\n"; + echo ''; + for($ora=$ADAT['napiMinOra']; $ora<=$ADAT['napiMaxOra']; $ora++) { // FIXME (getMinOra, getMaxOra konstansok!???) + echo ''; + echo ''; + for ($nap=1; $nap<=$ADAT['hetiMaxNap']; $nap++) { // FIXME (getMaxNap) + echo ''."\n"; + } + echo ''."\n"; + } + echo '
    '.$het.'. heti órarend
    '.$ora.''; + $X = $ADAT['orarend']['orarendiOra'][$het][$nap][$ora]; + + for ($i=0; $i'; + echo $X[$i]['targyJel'].' : '; + echo $X[$i]['osztalyJel'].' : '; + echo $X[$i]['teremId']; + echo ''; + } + echo '
    '."\n\n\n\n"; + } + } + } + + function _putOra($ORA,$_tankorId) { + global $ADAT; + $_ORA = $ORA[$_tankorId]; + $_tipusClass = str_replace(' ','_',$_ORA['tipus']); + $_eredetClass = $_ORA['eredet']; + echo '
    '; + + if ($ADAT['tankorok'][$_ORA['tankorId']][0]['tankorNev']!='') { + echo ''; + echo $ADAT['tankorok'][$_ORA['tankorId']][0]['tankorNev']; + echo ''; + + echo ', '.$ADAT['termek'][$_ORA['teremId']]['leiras']; + echo '
    '; + } else { + echo $_ORA['tipus'].' '.$_ORA['eredet'].' ('.$_ORA['feladatTipusId'].')
    '; + } + + + echo ''; + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + echo ''; + if ($_ORA['ki']!='') echo ' '.$ADAT['tanarok'][$_ORA['ki']]['tanarNev']; + + if (isset($_ORA['oo'])) echo ' °'; // else tervezett + + echo '
    '; + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/azonositok.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/azonositok.css new file mode 100644 index 00000000..f2024e98 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/azonositok.css @@ -0,0 +1,10 @@ + + form.azonosito table { + margin: 0px auto; background-color: rgb(20,40,80); color: white + } + form.azonosito table th { background-color: rgb(60,80,100); } + form.azonosito table td { background-color: rgb(40,80,120); } + form.azonosito table td.azonosNev { background-color: rgb(40,120,80); } + form.azonosito table td.tobbszorosOid { background-color: rgb(120,40,40); } + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/csoportok.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/csoportok.css new file mode 100644 index 00000000..0ab895f8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/csoportok.css @@ -0,0 +1,9 @@ +@CHARSET "UTF-8"; + + form.csoport { width: 80%; background-color: rgb(180,180,200); margin: 20px auto; text-align: center; padding: 5px;} + form.csoport label { color: white; padding: 8px; } + form.csoport table { margin: 20px auto; background-color: rgb(140,140,180); } + form.csoport table td { background-color: rgb(255,255,255); } + form.csoport h1 { background-color: rgb(120,120,160); color: white; } + form.csoport p { background-color: rgb(200,200,220); padding: 15px; text-align: justify; border: dotted 1px rgb(120,120,160);} + form.csoport select.kiemelt { color: red; font-weight: bold; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/import.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/import.css new file mode 100644 index 00000000..dbe69451 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/import.css @@ -0,0 +1,8 @@ +@CHARSET "UTF-8"; + +form.updateTable { width: 98%; background-color: rgb(180,180,200); margin: 20px auto; text-align: center; padding: 5px;} +form.updateTable label { color: white; padding: 8px; } +form.updateTable table { margin: 10px auto; background-color: rgb(140,140,180); width:100%; overflow:hidden; } +form.updateTable table td { background-color: rgb(255,255,255); } +form.updateTable table th { background-color: rgb(120,120,160); } +form.updateTable p { background-color: rgb(200,200,220); padding: 15px; text-align: justify; border: dotted 1px rgb(120,120,160);} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/intezmenyek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/intezmenyek.css new file mode 100644 index 00000000..25a0be92 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/intezmenyek.css @@ -0,0 +1,26 @@ + + form.intezmeny { background-color: rgb(40,60,120); color: white; margin: 20px; padding: 5px; } + form.intezmeny h2 { + background-color: rgb(20,40,80); + text-align: center; + border: white 1px dotted; + border-width: 1px 0px; + padding: 3px; + } + + form.ujTelephely { background-color: rgb(40,120,120); color: white; margin: 20px; padding: 5px; margin: 0px 30px 10px 30px} + form.ujTelephely:hover { background-color: rgb(80,160,200); } + form.ujTelephely h2 { + color: white; background-color: rgb(20,80,80); text-align: center; + border: white 1px dotted; border-width: 1px 0px; + padding: 3px; + } + form.telephely { background-color: rgb(40,120,60); color: white; margin: 20px; padding: 5px; margin: 0px 30px 10px 30px} + form.telephely:hover { background-color: rgb(120,180,60); } + form.telephely h2 { + color: white; background-color: rgb(20,80,40); text-align: center; + border: white 1px dotted; border-width: 1px 0px; + padding: 3px; + } + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/rpcPrivilege.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/rpcPrivilege.css new file mode 100644 index 00000000..680cfb1c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/rpcPrivilege.css @@ -0,0 +1,12 @@ + + form#addNode { background-color: #ceddec; margin: 10px auto; width: 600px; padding: 10px; text-align: center; border: outset 2px; color: #234; } + form#addNode p { text-align: left; padding: 1px 4px; } + form#addNode p select { width: 100%; color: #234; } + form#addNode h3 { border-bottom: 1px solid #a00; } + form#addNode label { margin-right: 5px; } + + + table#privNodes { background-color: white; border: 1px solid #ceddec; border-spacing: 0px; margin: auto; } + table#privNodes th, table#requNodes td { border: 1px solid #ddd; padding: 2px 5px; } + table#privNodes td label { padding: 2px 5px; border: 1px solid #ddd; border-radius: 4px; margin: 1px 2px; } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/szemeszterek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/szemeszterek.css new file mode 100644 index 00000000..2f72dc3a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/szemeszterek.css @@ -0,0 +1,6 @@ + + form.szemeszter { color: white; background-color: rgb(80,100,70); padding: 10px; margin: 10px; text-align: center; } + form.szemeszter h2 { background-color: rgb(40,50,35); } + form.szemeszter table { } + form.szemeszter tr td { background-color: rgb(100,50,50); margin: 1px; padding: 4px; text-align: left; } + form.szemeszter tr td input { border: solid rgb(100,50,50); } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/szuloiAzonositok.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/szuloiAzonositok.css new file mode 100644 index 00000000..ec096326 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/szuloiAzonositok.css @@ -0,0 +1,12 @@ + + form.azonosito table { + margin: 0px auto; background-color: rgb(180,180,180); color: white + } + form.azonosito table th { background-color: rgb(140,140,140); } + form.azonosito table td { background-color: rgb(160,160,160); } + form.azonosito table td.azonosNev { background-color: rgb(40,120,80); } + form.azonosito table td.tobbszorosOid { background-color: rgb(120,40,40); } + form.azonosito table td.anya { background-color: #993333; } + form.azonosito table td.apa { background-color: #333399; } + form.azonosito table td.apa span.elhunyt, + form.azonosito table td.anya span.elhunyt { background-color: black; color: white; font-style: italic; padding: 8px 20px; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tanevek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tanevek.css new file mode 100644 index 00000000..7562ff6f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tanevek.css @@ -0,0 +1,17 @@ + + form.intezmeny { background-color: rgb(40,60,120); color: white; margin: 20px; padding: 0px; } + form.intezmeny h2 { + background-color: rgb(20,40,80); + text-align: center; + border: white 1px dotted; + border-width: 1px 0px; + padding: 3px; + } + form.intezmeny div.data { + padding: 1em; + } + input.date { width: 100px; } + + form.intezmeny fieldset p { margin-left: 50px; } + form.intezmeny fieldset label { background-coor: red; padding: 0px 14px 0px 0px; } + form.intezmeny fieldset h3 { color: rgb(255,255,100); } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tankorok.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tankorok.css new file mode 100644 index 00000000..48556e71 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tankorok.css @@ -0,0 +1,8 @@ +@CHARSET "UTF-8"; + + form.updateTable { width: 80%; background-color: rgb(180,180,200); margin: 20px auto; text-align: center; padding: 5px;} + form.updateTable label { color: white; padding: 8px; } + form.updateTable table { margin: 20px auto; background-color: rgb(140,140,180); } + form.updateTable table td { background-color: rgb(255,255,255); } + form.updateTable table th { background-color: rgb(120,120,160); } + form.updateTable p { background-color: rgb(200,200,220); padding: 15px; text-align: justify; border: dotted 1px rgb(120,120,160);} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/bejegyzesTipus.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/bejegyzesTipus.css new file mode 100644 index 00000000..8f2a4592 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/bejegyzesTipus.css @@ -0,0 +1,19 @@ + + form.bejegyzes { } + form.bejegyzes ul { margin: 0px 20px 20px 30px; list-style-type: none; padding: 0; } + form.bejegyzes ul.dicseret { background-color: rgb(82,100,215); } + form.bejegyzes ul.fegyelmi { background-color: rgb(180,82,215) } + form.bejegyzes ul.uzenet { background-color: rgb(215,215,180) } + form.bejegyzes lh { text-align: center; background: rgba(0,0,0,0.5); display: block; margin: 0px; padding: 10px; color: #fff; font-weight: bold; border-bottom: solid 1px white; } + form.bejegyzes ul li { padding: 5px; } + form.bejegyzes ul li input[type=text] { width: 300px; background: rgba(255,255,255,0.5); } + form.bejegyzes span { float: right; } + form.bejegyzes label { padding-right: 15px; } + form.bejegyzes input { border: solid 1px #eeeeee; } + form.bejegyzes ul li:hover { background-color: rgba(255,255,255,0.2); } + form.bejegyzes input:hover { border-bottom: solid 1px #aaaaaa; } + form.bejegyzes input.ok { width: 500px; } + form.bejegyzes input.del { width: 200px; color: red; float: right; } + form.bejegyzes input.new { width: 200px; color: green; float: right; } + form.bejegyzes input[type=submit] { background-color: rgba(255,255,255,0.5); } + form.bejegyzes input[type=submit]:hover { background-color: rgba(255,255,255,1); } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/bejegyzesek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/bejegyzesek.css new file mode 100644 index 00000000..d90c958f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/bejegyzesek.css @@ -0,0 +1,34 @@ + +@media screen { + + div.bejegyzes { margin: 1px 40px; } + div.bejegyzes ul { list-style-type: none; padding: 0px; margin: 0px; background-color: #ffffff; } + div.bejegyzes ul li { margin: 0px; color: white; padding: 1px;} + div.bejegyzes ul li form { text-align: right; } + div.bejegyzes ul li form input { background-color: white; font-size: 10px; border: none;} + + div.bejegyzes ul li div.kategoria { text-align: center; padding: 2px; margin: 0px; font-weight: bold; } + div.bejegyzes ul li div.megjegyzes { font-style: italic; padding: 10px 20px;} + div.bejegyzes ul li.dicséret div.dt { padding: 0px 10px; } + + span.tanar { float: right; font-weight: normal; font-style: italic; } + span.dt { float: left; font-weight: normal; font-style: italic; } + div.bejegyzes form.nev { margin: 10px 0px 0px 0px; border: dotted black; border-width: 1px 0px 0px 0px; } + div.bejegyzes form.nev input { margin: 0px; background-color: white; border: none; cursor: pointer; width: 100%; font-weight: bold; text-align: left; } + + div.bejegyzes ul li.dicséret div.dt, div.bejegyzes ul li.dicséret div.kategoria { background-color: lightgreen; } + div.bejegyzes ul li.dicséret div.megjegyzes { background-color: #eee; color:black; } + div.bejegyzes ul li.dicséret form { border-bottom: solid 1px #883311; } + div.bejegyzes ul li.dicséret form input { color: #883311; } + + div.bejegyzes ul li.fegyelmi div.dt,div.bejegyzes ul li.fegyelmi div.kategoria { background-color: #e91e63; } + div.bejegyzes ul li.fegyelmi div.megjegyzes { background-color: #eee; font-style: italic; color: black; } + div.bejegyzes ul li.fegyelmi form { border-bottom: solid 1px #224466; } + div.bejegyzes ul li.fegyelmi form input { color: #224466; } + + div.bejegyzes ul li.üzenet div.dt, div.bejegyzes ul li.üzenet div.kategoria { background-color: cornflowerblue; } + div.bejegyzes ul li.üzenet div.megjegyzes { background-color: ; color: black; } + div.bejegyzes ul li.üzenet form { border-bottom: solid 1px #226644; } + div.bejegyzes ul li.üzenet form input { color: #226644; } + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/ujBejegyzes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/ujBejegyzes.css new file mode 100644 index 00000000..0f07266a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/bejegyzesek/ujBejegyzes.css @@ -0,0 +1,10 @@ + +@media screen { + + form.bejegyzes { margin: 40px; background-color: white; border: dotted 1px #446688; text-align: center; padding: 5px; } + form.bejegyzes select { color: #224466; border: dotted 1px #224466; } + form.bejegyzes textarea { color: #224466; width: 80%; border: dotted 1px #224466; margin: 2px; background-color: #e7f0ff; } + form.bejegyzes label { color: #224466; font-weight: bold; } + form.bejegyzes input { margin: 2px; padding: 0px 20px; background-color: white; color: #224466; font-size: 10px; border: dotted 1px #224466;} + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/diakValaszto.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/diakValaszto.css new file mode 100644 index 00000000..37b12d9e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/diakValaszto.css @@ -0,0 +1,4 @@ + + form.valaszto { + text-align: center; + } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/ertekeles/ertekeles.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/ertekeles/ertekeles.css new file mode 100644 index 00000000..560c2418 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/ertekeles/ertekeles.css @@ -0,0 +1,41 @@ + + form.kerdoiv { background-color: rgb(210,210,250); margin: 20px; padding: 20px 50px; } + form.kerdoiv h1 { background-color: rgb(110,110,150); color: white; font-size: 20px; border: solid white; border-width: 1px 0px; text-align: center; } + form.kerdoiv p { font-style: italic; margin: 4pt 20pt; background-color: rgb(255,255,255); padding: 20px; } + form.kerdoiv > ol > li { font-weight: bold; border: solid rgba(60,80,100,0.5); border-width: 1px 0 0 0; margin-top: 10px; padding-top: 10px; } + form.kerdoiv ol ol { list-style-type: none; box-shadow: 1px 1px 4px rgba(0,0,0,0.5); margin-top: 15px; padding: 10px; } + form.kerdoiv ol ol.negativ { background-color: #bbf; } + form.kerdoiv ol ol.semleges { background-color: #eee; } + form.kerdoiv ol ol.pozitiv { background-color: #fbb; } + form.kerdoiv ol ol li { font-weight: normal; } + form.kerdoiv input.szabadValasz { width: 100%; } + span.gomb { font-weight: bold; padding: 1px 8px; margin: 5px; cursor: pointer; float: right; } + span.pozitiv { + border: 1px solid maroon; + background-color: red; + border-radius: 4px; + box-shadow: inset 0 1px 3px pink, inset 0 -5px 12px maroon, 0 2px 1px rgba(0,0,0,0.5); + color: white; + text-shadow: 0 1px 1px #000; + } + span.semleges { + border: 1px solid #666; + background-color: #eee; + border-radius: 4px; + box-shadow: inset 0 1px 3px #888, inset 0 -5px 12px #999, 0 2px 1px rgba(0,0,0,0.5); + color: #fff; + text-shadow: 0px 1px 1px #000; + } + span.negativ { + border: 1px solid #55a; + background-color: #008; + border-radius: 4px; + box-shadow: inset 0 1px 3px #aaf, inset 0 -5px 12px #55a, 0 2px 1px rgba(0,0,0,0.5); + color: white; + text-shadow: 0 1px 1px #000; + } + ol li label { padding: 0px 4px; } + ol li label:hover { background-color: purple; color: white; } + #ok { width: 100%; } + #ok:hover { background-color: orange; } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/ertekeles/kerdoivBetoltes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/ertekeles/kerdoivBetoltes.css new file mode 100644 index 00000000..a391d32d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/ertekeles/kerdoivBetoltes.css @@ -0,0 +1,11 @@ + + form.kerdoiv { width: 80%; margin: 10px auto; background-color: rgb(20,60,40); color: white; padding: 10px; text-align: center; } + form.kerdoiv label { margin: 10px; padding: 2px; } + form.kerdoiv #megjegyzes { height: 50px; } + form.kerdoiv textarea { width: 80%; height: 400px; } + + form.kerdoivCimzett { width: 800px; margin: 10px auto; background-color: rgb(20,60,40); color: white; padding: 10px; text-align: center; } + form.kerdoivCimzett div.bal { float: left; } + form.kerdoivCimzett div.jobb { float: right; } + form.kerdoivCimzett select { height: 300px; min-width: 100px;} + form.kerdoivCimzett input[type=submit] { width: 100%; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/esemenyDiak.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/esemenyDiak.css new file mode 100644 index 00000000..97880624 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/esemenyDiak.css @@ -0,0 +1,34 @@ + + form#nevsorForm { margin-left: 35px; } + form#nevsorForm table#kontener td { vertical-align: top; background-color: #ddd; border: solid 1px #abc;} + form#nevsorForm table#kontener > tbody > tr > th { padding: 5px; background-color: #eee; cdolor: white; border: solid #aaa; border-width: 0px 1px 1px 0px; } + form#nevsorForm table#kontener > tbody > tr > th:nth-child(3) { width: 300px; } + form#nevsorForm table#kontener td#osztalyok input[type=button] { width: 100px; text-align: right; } + form#nevsorForm table#kontener td#osztalyok input[type=button]:hover { background-color: orange; } + form#nevsorForm table#kontener input.add { color: #68a; width: 100%; font-size: 22px; font-weight: bold; text-align: center; margin-top: 20px; } + form#nevsorForm table#kontener td.openable select { min-height: 300px; width: 100%; } + form#nevsorForm table#kontener input.selected { background-color: #aaccee; } + + form#nevsorForm table#nevsor { min-width: 500px; } + + form#nevsorForm table#nevsor tr th { padding: 5px; background-color: #c8c8c8; vertical-align: middle; } + form#nevsorForm table#nevsor tr td { padding: 5px; background-color: #d8d8d8; vertical-align: middle; } + form#nevsorForm table#nevsor tr td.sorsz { text-align: right; } + form#nevsorForm table#nevsor tr td.osztaly { text-align: right; cursor: pointer;} + form#nevsorForm table#nevsor tr:nth-child(odd) td { background-color: #eeeeee; } + form#nevsorForm table#nevsor tr.ujDiak td { background-color: #99dd99; } + + form#nevsorForm table#nevsor span.icon-remove-sign {color: red; cursor: pointer; padding: 3px 20px; } + form#nevsorForm table#nevsor span.icon-remove-sign:hover { color: orange; } + form#nevsorForm table#nevsor span.icon-remove-sign:hover:before { content: "\e103"; } + + form#nevsorForm table#nevsor span.icon-minus-sign { color: #800; cursor: pointer; padding: 3px 20px; } + form#nevsorForm table#nevsor span.icon-minus-sign:hover { color: orange; } + form#nevsorForm table#nevsor span.icon-minus-sign:hover:before { content: "\e06e"; } + + form#nevsorForm table#nevsor span.icon-ok-sign { color: #080; cursor: pointer; padding: 3px 20px; } + form#nevsorForm table#nevsor span.icon-ok-sign:hover { color: orange; } + form#nevsorForm table#nevsor span.icon-ok-sign:hover:before { content: "\e075"; } + + form#nevsorForm table#nevsor tr#submitRow input { width: 100%; } + form#nevsorForm table#nevsor tr#submitRow input:hover { background-color: orange; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/jelentkezes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/jelentkezes.css new file mode 100644 index 00000000..c1004624 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/jelentkezes.css @@ -0,0 +1,27 @@ + + form.esemeny table { margin-left:auto; margin-right:auto; border-spacing: 1px; border: 1px solid #aabbcc; background-color: #f0f0f0; padding: 10px; } + form.esemeny table th { background-color: #a8a8a8; padding: 4px; color: white; } + form.esemeny table tr:hover th { background-color: #ff8800; padding: 4px; color: white; cursor: pointer; } + form.esemeny table td { background-color: #ececec; padding: 4px; } + + form.esemeny table tr.jelentkezes:nth-child(odd) td { background-color: #d6d6d6; } + +/* + form.esemeny table tr.valasztott:nth-child(even) td { background-color: #a6e6a6; } + form.esemeny table tr.valasztott:nth-child(odd) td { background-color: #86d686; } +*/ + form.esemeny table tr.jelentkezes td, form.esemeny table tr.valasztott td { min-width: 60px; } + form.esemeny table input.felvesz { font-size: 12px; color: green; } + form.esemeny table input.lead { font-size: 12px; color: red; } + form.esemeny table input.felvesz:hover, form.esemeny table input.lead:hover { } + form.esemeny table input.felvesz:disabled, form.esemeny table input.lead:disabled { color: #666; } + form.esemeny table td.letszam { text-align: right; } + form.esemeny table td.minmax { text-align: center; } + form.esemeny table td.min { border-left: 1px dotted red; } + form.esemeny table td.max { border-right: 1px dotted red; } + form.esemeny table td span.icon-minus-sign { padding: 3px 20px; color: #800; } + form.esemeny table td span.icon-ok-sign { padding: 3px 20px; color: #080; } + + form.esemeny table tr td.gombKontener { text-align:center; } + form.esemeny table tr:hover td.gombKontener.lead { background-color: #fee;} + form.esemeny table tr:hover td.gombKontener.felvesz { background-color: #efe;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/ujEsemeny.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/ujEsemeny.css new file mode 100644 index 00000000..2dc8381e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/esemeny/ujEsemeny.css @@ -0,0 +1,43 @@ + + form.esemeny table { margin: 20px 35px 0px 35px; border-spacing: 0; border: 1px solid #aabbcc; background-color: #f0f0f0; padding: 10px; position: relative; width: 550px; } + form.esemeny table td, form.esemeny table th { background-color: #ececec; padding: 4px; } + form.esemeny table th { text-align: right; } + form.esemeny table td input.datetime { width: 140px; } + form.esemeny table textarea { width: 98%; margin-top: 5px; } + form.esemeny table td#submitTd { background-color: #99dd99; text-align: center; padding: 20px 0px; } +/* + form.esemeny table input[type=submit] { width: 500px; color: #080; } + form.esemeny table input:focus, form.esemeny table textarea:focus { background-color: #fd2; } + form.esemeny table input:disabled, form.esemeny table textarea:disabled, form.esemeny table select:disabled { background-color: #eee; color: #68a; border:solid #ccc 1px;} + form.esemeny table input[type=submit]:hover { } +*/ + form.esemeny table td hr { background-color: #f8f8f8; border: none; } + form.esemeny table select#kategoria { float: right; margin-top: -5px; } + + form.esemeny table td.tanarok { position: relative; } + form.esemeny table td.tanarok div.select { margin-left: 3px; display:inline-block; vertical-align:top; overflow:hidden; border:solid #ccc 1px; } + form.esemeny table select#esemenyTanar { overflow: hide; min-width: 150px; width: 300px; height: 250px; padding:10px; margin:-5px -20px -5px -5px; background-color: #f8f8f8; } + form.esemeny table select#esemenyTanar option.uj { background-color: #99dd99; } + form.esemeny table input#plusz { color: red; width: 140px; } + form.esemeny table input#minusz { color: green; width: 140px; } + form.esemeny table input#add { color: #68a; width: 100%; font-size: 22px; font-weight: bold; } + + form.esemeny table div#tanarLista { padding: 15px 5px 5px 5px; width: 300px; position: absolute; top:0px; right: -330px; background-color: #ace; border: 1px #abc solid; } + form.esemeny table span#closeTanarLista { position: absolute; font-weight: bold; color: white; padding: 0px 5px; right: 0px; top: 0px; } + form.esemeny table span#closeTanarLista:hover { cursor: pointer; } + form.esemeny table select#tanarok { width: 300px; height: 250px; } + form.esemeny table div#osztalyLista { background: #f0f0f0; position: absolute; top: 0px; right: -463px; width: 440px; border: 1px solid #aabbcc; padding: 10px; } + form.esemeny table div#osztalyLista ul { + list-style-type: none; padding: 0px 0px; +/* -moz-column-count: 2; -moz-column-gap: 0px; + -webkit-column-count: 2; -webkit-column-gap: 0px; + column-count: 2; column-gap: 0px; + width: 740px; +*/ + } + form.esemeny table div#osztalyLista ul label.oJel { display: inline-block; width: 40px; font-weight: bold; text-align: center; } + form.esemeny table div#osztalyLista ul li.uj { background-color: #99dd99; } + + form.esemenyTorles {margin: 0px 35px; border-spacing: 0; border: 1px solid #aabbcc; background-color: #f0f0f0; padding: 2px 0px; position: relative; width: 548px; text-align: center; background-color: #f00; } + form.esemenyTorles input { color: red; width: 500px; } + form.esemenyTorles input:hover { background-color: #eca; border-color: #fdd #dcc #dcc #fdd; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/bizonyitvany.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/bizonyitvany.css new file mode 100644 index 00000000..bc531fad --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/bizonyitvany.css @@ -0,0 +1,19 @@ + + form.export { background-color: white; margin: 5px 30px 20px 20px; font-size:10px; } + form.export h1 { border: dotted white; border-width: 1px 0px; background-color: rgb(80,100,120); font-size: 20px; text-align: center; } + form.export input { font-size: 10px; border: solid 1px #777777; margin-left: 3px; padding-left: 2px; } + form.export label { font-size:11px; } + form.export input:focus { background-color: orange; } + + form.export fieldset { border: solid 1px rgb(40,60,80); } + form.export fieldset th { text-align: right; } + form.export fieldset legend { + background-color: rgb(140,160,180); + color: white; + font-size:90%; + text-align: left; + margin-left:20px; + padding-left: 10px; + padding-right: 10px; + border: solid 1px rgb(40,60,80); + } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/diakExport.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/diakExport.css new file mode 100644 index 00000000..99997093 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/diakExport.css @@ -0,0 +1,19 @@ + + form.diak { margin: 5px 30px 20px 30px; font-size:10px; } + form.diak input, form.diak select { + font-size:10px; border: solid 1px #777777; margin-left: 3px; + padding-left: 2px; + } + form.diak fieldset legend { + background-color: rgb(140,160,180); color: white; + border: solid 1px rgb(40,60,80); padding: 2px 10px; margin-left:20px; + } + #tableDiv { margin: 10px 50px; } + #diakTabla { margin: auto; } + #diakTable tr:hover td { background: rgb(50,50,100); } + #exportOptions fieldset { background: rgba(150,50,100,0.9); position: absolute; left: 20px; z-index: 10; width: 80%; margin: auto 10%; box-shadow: 5px 5px 5px #999; border: 3px solid orange; color: white; } + #exportOptions select { height: 200px; width: 200px; } + #exportOptions table { margin: auto; } + #submitForm { text-align: center; } + table.TF tr:hover td { background: rgb(100,100,200); color: white; } + table.TF tr:hover td span { color: black; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/kreta.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/kreta.css new file mode 100644 index 00000000..a163f7ff --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/kreta.css @@ -0,0 +1,23 @@ + + form.export { background-color: white; margin: 5px 30px 20px 20px; } + form.export h1 { border: dotted white; border-width: 1px 0px; background-color: rgb(80,100,120); text-align: center; } + form.export input { border: solid 1px #777777; } + form.export label { } + form.export input:focus { background-color: orange; } + + form.export fieldset { border: solid 1px rgb(40,60,80); } + form.export fieldset th { } + form.export fieldset legend { + background-color: rgb(140,160,180); + color: white; + text-align: left; + margin-left:20px; + padding-left: 10px; + padding-right: 10px; + border: solid 1px rgb(40,60,80); + } + form.export:hover fieldset legend { background-color: rgb(140,160,250); } + + + form.export table { width:100%; } + form.export ul { list-style-type: none; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/sulix.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/sulix.css new file mode 100644 index 00000000..5f68d40e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/sulix.css @@ -0,0 +1,9 @@ + + form.export { width: 60%; float: left; margin: 0px 20%; } + + form.export input[type=submit] { width: 100%; } + form.export input[type=submit]:hover { background: rgb(100,100,100); color: white } + form.export div.leiras { background: rgba(200,200,200,0.8); margin: 10px; text-align: left; padding: 6px; height: 300px; } + + div.txt { margin: 1%; background: #3496B9; padding: 10px; padding-bottom: 50px; } + div.txt div { background: rgba(200,200,200,0.8); padding: 6px; margin-bottom: 10px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/tantargyFelosztas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/tantargyFelosztas.css new file mode 100644 index 00000000..c4671887 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/export/tantargyFelosztas.css @@ -0,0 +1,20 @@ + + form.export { background-color: white; margin: 5px 30px 20px 20px; font-size:10px; } + form.export h1 { border: dotted white; border-width: 1px 0px; background-color: rgb(80,100,120); font-size: 20px; text-align: center; } + form.export input { font-size: 10px; border: solid 1px #777777; margin-left: 3px; padding-left: 2px; } + form.export label { font-size:11px; } + form.export input:focus { background-color: orange; } + + form.export fieldset { border: solid 1px rgb(40,60,80); } + form.export fieldset th { text-align: right; } + form.export fieldset legend { + background-color: rgb(140,160,180); + color: white; + font-size:90%; + text-align: left; + margin-left:20px; + padding-left: 10px; + padding-right: 10px; + border: solid 1px rgb(40,60,80); + } + form.export:hover fieldset legend { background-color: rgb(140,160,250); } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/elmaradas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/elmaradas.css new file mode 100644 index 00000000..d6252159 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/elmaradas.css @@ -0,0 +1,12 @@ + + table.elmaradas { margin: 0px auto; background-color: rgb(32, 130, 155); color: white; margin-bottom:1em;} + table.elmaradas thead th { background-color: rgb(40, 40, 80); padding: 2px 4px;} + table.elmaradas tbody th { font-weight: normal; background-color: rgb(120, 140, 180); padding: 2px 4px;} + table.elmaradas tbody tr:hover th { outline: solid 1px orange; } + table.elmaradas tbody tr:hover td { outline: solid 1px orange; } + table.elmaradas tbody td { font-weight: normal; background-color: rgb(52, 150, 185); text-align: right; padding: 2px 4px;} + table.elmaradas tr.beirando td { background-color: rgb(40, 80, 60); } + + table.elmaradas tr th.tanarNev { text-align:left; } + + table.elmaradas tfoot tr th, table.elmaradas tfoot tr td { font-size: smaller; text-align: center; background-color: rgb(82,180,205); padding: 2px 4px;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/elszamolas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/elszamolas.css new file mode 100644 index 00000000..41c1d07f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/elszamolas.css @@ -0,0 +1,32 @@ + + table.elszamolas { background-color: rgb(220,220,220); margin: 10px auto; } + + table.elszamolas thead tr th { background-color: #F23668; color: white; text-align: center; padding:2px; font-weight:normal;} + table.elszamolas thead tr th.eloirt_egyeb { background-color: rgb(170, 170, 204);} + table.elszamolas thead tr th.egyeb { background-color: #E8C } + + table.elszamolas tbody tr th { background-color: #f9f9f9; text-align: left; padding-left:1em; padding-right:0.5em;} + table.elszamolas tbody tr th a { color: black; display:block; } + + table.elszamolas tbody tr th.sum { text-align:right; font-weight:normal;} + table.elszamolas tbody tr th.sum.highlight { background-color: cornflowerblue;color:white; } + table.elszamolas tbody tr th.sumsum { text-align:right;} + + table.elszamolas tbody tr td {background-color:#eee; text-align: right ; padding-right:1em;} + table.elszamolas tbody tr td.highlight {background-color: cornflowerblue !important; color: white !important;} + + table.elszamolas tr .e1 { background-color: #493E89; color: white; } + table.elszamolas tr .e2 { background-color: green; color: white; } + table.elszamolas tr .e3 { background-color: orange; color: white; } + table.elszamolas tr .e4 { background-color: red; color: white; } + + table.elszamolas tbody tr td.osszevonas { background-color: rgba(0,0,0,0.1); color: #333333; } + + table.elszamolas tbody tr:hover th { background-color: #eeeeee; } + table.elszamolas tbody tr:hover td { background-color: #E7FCFE; } + table.elszamolas tbody tr:hover td.e1 { background-color: #382d78; } + table.elszamolas tbody tr:hover td.e2 { background-color: #007000; } + table.elszamolas tbody tr:hover td.e3 { background-color: #ee9400; } + table.elszamolas tbody tr:hover td.e4 { background-color: #e00; } + + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/haladasi.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/haladasi.css new file mode 100644 index 00000000..4eae0808 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/haladasi.css @@ -0,0 +1,305 @@ +@media screen { + + table.haladasiBejegyzesek { + background-color: rgb(50,60,80); + background: linear-gradient( rgb(50,60,80), white); + margin-top: 10px; + /* font-size: 11px; */ + width: 98%; + } + table.haladasiBejegyzesek thead tr th, table.haladasiBejegyzesek tfoot tr th {height:18px; font-weight: normal;} + table.haladasiBejegyzesek thead tr th span.aktiv { + position:relative; top:-5px; padding-left:5px; + /*color: orange;*/ + } + + table.haladasiBejegyzesek tbody tr:first-child th { border-top:solid 16px white; } + table.haladasiBejegyzesek tbody:hover tr:first-child th { background-color: orange; + transition: all ease 0.1s; + } + table.haladasiBejegyzesek tbody tr td {height:18px;} + table.haladasiBejegyzesek tbody tr:hover td { background-color: rgba(255,255,255,0.2); } + table.haladasiBejegyzesek tbody tr td input:focus { + background-color: white !important; + } + table.haladasiBejegyzesek tbody tr td input.gomb:focus { + background-color: red; + } + table.haladasiBejegyzesek tbody tr.torolt td { + background-color: black; + color:#dddddd; + text-decoration:line-through; + } + table.haladasiBejegyzesek tbody tr.torolt input.ajaxRequestDone { display:none; } + table.haladasiBejegyzesek tbody tr.torolt span.INFO.ajaxRequestDone { display:none; } + + table.haladasiBejegyzesek tbody.parosNap { + background-color: #dddddd; + } + table.haladasiBejegyzesek tbody.paratlanNap { + background-color: #eeeeee; + } + table.haladasiBejegyzesek tbody td.ora { + text-align: center; + } + table.haladasiBejegyzesek tbody td.t { + padding-left:4px; + } + table.haladasiBejegyzesek tbody tr th.nap span.napNev { + background-color:white; border-radius: 2px; color: #444;padding: 0px 4px; + } + + /* ajax eredménye */ + table.haladasiBejegyzesek tbody tr.elmarad td { + background-color: #999999;color:#dddddd;text-decoration:line-through; + } + + table.haladasiBejegyzesek tbody th.nincsOra { + background-color: rgb(200,200,200); + color: rgb(100,100,100); + text-align: center; + border: none; + font-weight: normal; + } + table.haladasiBejegyzesek tbody th.nap { + text-align: center; + background-color: #666688; + color: white; + border: none; + height:1em; + font-weight: normal; + height:2em; + } + table.haladasiBejegyzesek tbody th.nap div { color: white; padding-top:4px;} + table.haladasiBejegyzesek tbody th.nap div:hover { color: #aaa; } + table.haladasiBejegyzesek tbody.szunet th.nap { + background-color: #778877; + } + table.haladasiBejegyzesek tbody.tanitasNelkul th.nap { + background-color: #aaaa44; + } + table.haladasiBejegyzesek tbody.szorgalmiIdoszakonKivul th.nap { + background-color: #e91e63; + } + + table.haladasiBejegyzesek tbody td.dolgozat { + background-color: #ffaa44; + padding-left: 20px; + } + table.haladasiBejegyzesek tbody td.dolgozat a { + text-decoration: none; + color: black; + } + + table.haladasiBejegyzesek tbody td.nincsBeirva { + font-style:italic; + } + + table.haladasiBejegyzesek th { + border-style: none none solid none; + border-width: 0 0 2px 0; + border-color: #556677; + background-color: rgb(50,60,80); + color: rgb(210,215,220); + border-style: solid; + border-width: 1px; + } + table.haladasiBejegyzesek th.fejlec8 { + font-size: 14px; + height: 30px; + text-align: center + } + table.haladasiBejegyzesek th.fejlec8 a { color: white } + + + table.haladasiBejegyzesek td.osztaly { text-align: center; } + table.haladasiBejegyzesek select { + /* font-size: 10px; */ + } + + input { color: inherit; outline: none;} + input.data { border-style: none none solid none; + border-width: 1px; + border-color: #dddddd; + width:85%; + padding-right: 10px; + } + input.data:hover { border-bottom: solid 1px #556677; background-color: white } + + table.haladasiBejegyzesek tbody tr td.ora {text-align:center;} + table.haladasiBejegyzesek tbody tr td div.oraTime {font-size:xx-small; display: block; padding-left:4px; color:#888;} + + table.haladasiBejegyzesek span.INFO { display: none; width:1em; padding:2px 2px; position: relative; left:-12px; border-radius:2px;color: white;} + table.haladasiBejegyzesek input.ajaxRequestDone+span.INFO { display: inline; background-color: green; } + table.haladasiBejegyzesek input.ajaxRequest+span.INFO { display: inline; background-color: orange; } + table.haladasiBejegyzesek input.ajaxRequestError+span.INFO { display: inline; background-color: red; } + + table.haladasiBejegyzesek input.data:focus { + border-left: solid 2px blue !important; background-color: white; color:black !important; + border-radius:2px; + } + + table.haladasiBejegyzesek tbody.parosNap input.data { border-left: solid 2px #cccccc; } + table.haladasiBejegyzesek tbody.paratlanNap input.data { border-left: solid 2px #eeeeee; } + table.haladasiBejegyzesek tbody.parosNap input.beirva { background-color: #cccccc; } + table.haladasiBejegyzesek tbody.paratlanNap input.beirva { background-color: #eeeeee; } + + table.haladasiBejegyzesek tbody.parosNap input.data.ajaxRequest, + table.haladasiBejegyzesek tbody.paratlanNap input.data.ajaxRequest { border-left: solid 2px orange; } + table.haladasiBejegyzesek tbody.parosNap input.gomb.ajaxRequest, + table.haladasiBejegyzesek tbody.paratlanNap input.gomb.ajaxRequest { background-color: orange; } + table.haladasiBejegyzesek tbody select option.ajaxRequestDone, + table.haladasiBejegyzesek tbody.parosNap input.ajaxRequestDone, + table.haladasiBejegyzesek tbody.paratlanNap input.ajaxRequestDone { border-left: solid 2px green; background-color: lightgreen; } + + table.haladasiBejegyzesek tbody.parosNap tr.helyettesit td { background-color: #ccccaa; } + table.haladasiBejegyzesek tbody.paratlanNap tr.helyettesit td { background-color: #eeeecc; } + table.haladasiBejegyzesek tbody.parosNap tr.helyettesit input.beirva { background-color: #ccccaa; } + table.haladasiBejegyzesek tbody.paratlanNap tr.helyettesit input.beirva { background-color: #eeeecc; } + + table.haladasiBejegyzesek tbody tr.egyeb { background-color: #ee88cc; } + table.haladasiBejegyzesek tbody tr.egyeb.órarend { background-color: #aaaacc; } + + input.gomb { + font-size: xx-small; + border: solid 1px #777777; + padding: 0px 1px; margin: 0px; + background-color: #009900; + color: white; + } + input.gomb:hover { background-color: rgba(255,255,255,0.8); color:black;} +/* input.rejtettGomb { border: solid 1px rgb(50,60,80);; background-color: rgb(50,60,80); } + input.rejtettGomb:hover { border: solid 1px orange; background-color: rgb(80,60,50); color: white } +*/ + div.rejtMutat { color: rgb(100,80,70);} + div.rejtMutat:hover { color: white; } + + table.haladasiBejegyzesek a.gomb { + padding: 1px; + background-color: #dddddd; + /* font-size: 10px; */ + border: outset 1px #556677; + margin: 2px; + text-decoration: none; + } + table.haladasiBejegyzesek a.gomb:hover { + padding: 1px; + background-color: #556677; + /* font-size: 10px; */ + border: outset 1px #dddddd; + margin: 2px; + text-decoration: none; + color: white; + } + + table.haladasiBejegyzesek a { + display: block; + color: black; + text-decoration: none; + } + table.haladasiBejegyzesek a:hover { + color: green; + text-decoration: underline; + } + table.haladasiBejegyzesek a.h { + text-align: center; + } + table.haladasiBejegyzesek tr.dolgozat td { + padding: 0px 10px; + background-color: rgb(160,100,120); + } + + table.haladasiBejegyzesek tr.dolgozat td a { + color: white; + text-decoration: none; + } + + table.haladasiBejegyzesek tr.dolgozat td a:hover { + color: rgb(260,200,220); + } + + table.haladasiBejegyzesek tbody tr td.mg { + text-align: center; + } + table.haladasiBejegyzesek tbody tr td.info, table.haladasiBejegyzesek tbody tr td.halad { + cursor: pointer; + } + + table.haladasiBejegyzesek tr td.mg span.latogatott { + background-color: rgb(100,150,100); + color: white; + text-decoration: none; + padding-left:5px; + padding-right:5px; + border-bottom: solid 1px green; + margin:0px; + } + + + table.haladasiBejegyzesek tr td select.teremvalt { background-color: white ; } + + form.hetes { + border: solid 1px #008800; + background-color: rgb(100,200,100); text-align: center; color: white; margin: 15px 13px; font-weight: bold; + } + form.hetes input { color: black; border: none; margin: 4px; border: solid 1px #008800; } + form.hetes span { padding-right:2em; } + form.hetes select option { + /* font-size:small; */ + background-color:# white; + border: solix 1px #00aa00; + } + + + table.haladasiNaplo { + background-color: rgb(50,60,80); + width: 98%; + /* font-size: 11px; */ + } + table.haladasiNaplo thead tr th{ + background-color: rgb(50,60,80); + color: white; + border-bottom: solid 1px white; + height:1.5em; + } + table.haladasiNaplo tr td{ padding:0.6em; background-color: #eee; } + + #updateWindow { width: 80%; top: 10%; margin-top: auto; margin-bottom: auto; height: 80%; left: 50%; margin-left: -40%; } + #updateHeader { cursor: pointer; } + + #updateForm { max-height: 95%; overflow: auto; } + + #updateForm fieldset { margin-top:2px; background-color: #eeeeee; border: solid 1px rgb(50,60,70);} + #updateForm fieldset legend { text-align: right; background-color: yellow; margin:0px 10px; padding: 2px 10px; border: solid 1px rgb(40,60,80); } + + #updateForm fieldset.alapadatok p { text-align: center; font-style: italic; } + #updateForm fieldset.alapadatok p span { color: rgb(100,50,25); font-weight: bold; font-style: normal; } + + #updateForm #temakor { list-style-type: none; } + #updateForm #temakor li { margin-top: 10px; } + #updateForm #temakor span.oraszam { display: block; float: left; width: 100px; text-align: right; color: rgb(160,80,40); margin-right: 6px; } + #updateForm #temakor div.megnevezes { display: inline-block; font-style: normal; } + #updateForm p.kiemelt { text-align: center; margin-top: 100px; font-size: 20px; } + + table.haladasiBejegyzesek label.on { color: orange; } + table.haladasiBejegyzesek label:hover { color: white; text-shadow: 1px 1px 1px orange; } + + table tr.ujOra { background-color: rgb(100, 149, 237); } + table tr.ujOra th { background-color: rgba(238, 136, 204,0.5); + font-weight:normal; + border: none 0px; + } + + table.haladasiBejegyzesek button.gomb { /*font-size:8px;*/ padding:4px;} + + table.haladasiBejegyzesek tbody tr td.ora a.tankorStat {display:none;} + table.haladasiBejegyzesek tbody tr:hover td.ora a.tankorStat { display:inline;} + +} +@media print { + table.haladasiBejegyzesek thead tr th { border-bottom: solid 1px black;} + table.haladasiBejegyzesek thead tr th:not(:last-child) { border-right: solid 1px black;} + table.haladasiBejegyzesek tbody tr td { border-bottom: solid 1px black;} + table.haladasiBejegyzesek div[class*="icon"] { display:none;} + table.haladasiBejegyzesek [class*="icon"] { display:none;} +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/helyettesites.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/helyettesites.css new file mode 100644 index 00000000..298f29f1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/helyettesites.css @@ -0,0 +1,162 @@ +/* +input[type=image] +{ +background-image: url('/skin/classic/share/javascript/jquery-mobile/images/icons-36-white.png'); +-moz-background-size: 864px 18px; +-o-background-size: 864px 18px; +-webkit-background-size: 864px 18px; +background-size: 810px 18px; +} +*/ + + span.teremId { font-style: italic; color: gray; } + + table.tanarForm { + width:50%; + border-style: solid solid solid solid; + border-width: 1px 1px 2px 1px; + border-color: rgb(100,80,100); + margin-bottom: 20px; + } + + table.tanarForm th { + background-color: rgb(140,20,100); + color: white; + height: 2em; + } + + table.tanarForm td { + background-color: #ffffff; + text-align: center; + } + + + table.tanarForm select { + height: 160px; + width: 60%; + } + + table.hianyzoTanar { + border-style: solid ; + border-width: 1px; + border-color: purple; + background-color: #dddddd; + width: 95%; + margin-bottom:30px; + } + + table.hianyzoTanar thead th { + background-color: rgb(100,100,200); + color: white; + height:2em; + } + table.hianyzoTanar tfoot th { background-color: #eeeeee; } + table.hianyzoTanar tfoot th input { + font-size:10px; + } + + table.hianyzoTanar td { + background-color: white; + color: black; + padding: 0px 10px 0px 10px; + } + + table.hianyzoTanar tr.elmarad td { + background-color: rgb(200,200,200); + color: rgb(140,140,140); + } + + table.hianyzoTanar tbody tr:hover td { + background-color: rgba(128,0,128,0.2); + } + table.hianyzoTanar tbody tr td.info { + color:rgba(128,0,128,0.6); + } + table.hianyzoTanar tr td a.O { color: #aaaaaa; border-radius: 0px; font-size:12px; background-color: rgba(255,255,255,0.9); border: solid 1px #eeeeee; padding:0px 4px;} + table.hianyzoTanar tr td a.O:hover { color: white; background-color: rgb(50,60,80); border: solid 1px grey; padding:0px 4px;} + + +/* ----------------------- */ + table.mozgatas thead th { + background-color: purple; + color: white; + height:2em; + } + table.mozgatas tfoot th { + background-color: rgb(80,100,80); + } + table.mozgatas tbody th { + background-color: rgb(80,20,80); + color: white; + } + + table.mozgatas td { + background-color: rgb(200,200,180); + padding: 0px 10px 0px 10px; + } + + table.mozgatas td.mozgatando { + background-color: rgb(220,200,180); + } + table.mozgatas td.utkozik { + background-color: rgb(160,160,160); + } + table.mozgatas td.nemMegtartott { + background-color: rgb(180,200,220); + } + +/* ---------------------- */ + + table.csere td { + background-color: rgb(200,200,190); + padding: 0px 10px 0px 10px; + } + + table.csere th { + background-color: rgb(110,120,110); + color: white; + height: 2em; + } + + table.csere td.mozgatando { + background-color: rgb(220,200,180); + } + table.csere td.orajavan { + background-color: rgb(160,200,140); + } + table.csere td.nemMegtartott { + background-color: rgb(180,200,220); + } + +/* ---------------------- */ + table.keziBeallitas { background-color: #555550; } + table.keziBeallitas td { background-color: rgb(200,200,190); } + table.keziBeallitas th { background-color: rgb(140,150,160); color: white; height:2em;} +/* ---------------------- */ + + h2 { text-align: center; border: dotted black; border-width: 1px 0px; margin: 20px 50px;} + table.csereAttekintes { background-color: #555550; margin: 10px; text-align: center; margin: auto; } + table.csereAttekintes td { background-color: rgb(200,200,190); padding: 2px 20px; } + table.csereAttekintes th { background-color: rgb(140,150,160); color: white; } + + #updateWindow { width: 80%; top: 10%; margin-top: auto; margin-bottom: auto; height: 80%; left: 50%; margin-left: -40%; } + #updateHeader { cursor: pointer; } + + #updateForm { max-height: 95%; overflow: auto; } + + table.haladasiNaplo { + background-color: rgb(50,60,80); + width: 98%; + font-size: 11px; + } + table.haladasiNaplo thead tr th{ + background-color: rgb(50,60,80); + color: white; + border-bottom: solid 1px white; + height:1.5em; + } + table.haladasiNaplo tfoot tr th{ + font-size: 10px; + color: white; + } + table.haladasiNaplo tr td{ padding:0.6em; background-color: #eee; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/hetes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/hetes.css new file mode 100644 index 00000000..78809cd3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/hetes.css @@ -0,0 +1,8 @@ +@media screen { + + table.hetes { background-color: #fefefe;} + table.hetes tr th { background-color: #64C864; border-bottom: solid 1px lightgreen; } + table.hetes tr td { padding: 1px 8px; } + table.hetes tr:nth-child(odd) td { background-color: #e0e0e0 } + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/minuszora.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/minuszora.css new file mode 100644 index 00000000..1637e333 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/minuszora.css @@ -0,0 +1,28 @@ + + form.minuszora { margin: 20px auto; width: 500px; text-align: center; } + form.minuszora ul { text-align: left; list-style-type: none; padding: 1px; background-color: rgb(20,40,60);} + form.minuszora ul li { margin: 1px; padding: 2px; background-color: rgb(20,80,40); color: white; font-weight: bold; } + form.minuszora ul ul { list-style-type: none; background-color: rgb(200,200,200); } + form.minuszora ul ul li { padding: 4px 4px; margin: 1px 20px; background-color: rgb(255,240,220); color: black; font-weight: normal; } + form.minuszora input { color: rgb(200,0,0); font-weight: bold; } + + span.latogatott { + background-color: #649664; + color: #FFF; + text-decoration: none; + padding-left: 5px; + padding-right: 5px; + border-bottom: solid 1px #008000; + margin: 0px 2px 0px 2px; + } + + form.minuszora ul li.egyéb { background-color: #ee88cc; } + form.minuszora ul li.egyéb.órarend { background-color: #aaaacc; } + + form.minuszora ul li.egyéb:after { content: "\25B5"; color: cornflowerblue; } + form.minuszora ul li.egyéb.órarend:after { content: "\25B2"; } + + form.minuszora ul li { border-left: solid 2px darkgreen; } + form.minuszora ul li ul li { border-left: solid 0px darkgreen; } + form.minuszora ul li:hover { border-left: solid 2px cornflowerblue; } + form.minuszora ul li:hover ul li { border-left: solid 0px cornflowerblue; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/oralatogatas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/oralatogatas.css new file mode 100644 index 00000000..df459f0e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/oralatogatas.css @@ -0,0 +1,12 @@ + + ul.ora { list-style-type: none; color: white; margin: 20px; padding: 0px; } + ul.ora li { background-color: rgb(130,100,130); margin: 1px 0px; padding: 0px; } + ul.ora li p { background-color: rgb(60,0,60); border: 1px solid white; border-width: 0px 0px 1px 0px; padding: 10px; text-align: center; } + ul.ora li p span.ora { float: left; color: yellow; } + ul.ora li p input { margin: 0px; float: right; } + ul.ora li select { height: 100px; } + ul.ora li textarea { width: 80%; height: 100px; } + ul.ora li div { padding: 4px; } + ul.ora li div.jobb { float: right; } + + ul.ora li form.latogatva { background-color: rgb(100,130,100); } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/osszevonas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/osszevonas.css new file mode 100644 index 00000000..edbde3bb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/osszevonas.css @@ -0,0 +1,27 @@ + + form.pluszora { + background-color: rgb(200,200,180); + margin-left: 180px; + margin-right: 180px; + text-align: center; + } + form.pluszora h2 { + margin-bottom: 2em; + font-size:larger; + } + form.pluszora ul { + text-align: left; + } + + ul.pluszora { + background-color: rgb(20,40,80); + list-style-type: none; + margin: 20px; + padding: 10px 0px; + } + + ul.pluszora li { background-color: rgb(160,160,250); margin: 2px 100px; padding: 2px 20px;} + ul.pluszora li span { color: rgb(20,40,80); padding: 0px 5px; margin: 1px 5px;} + ul.pluszora li span.oraszam { color: red; padding: 0px 20px;} + + h2 { text-align: center; border: 1px dotted rgb(20,40,80); border-width: 1px 0px; margin: 20px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/pluszora.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/pluszora.css new file mode 100644 index 00000000..4aaa1dfe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/pluszora.css @@ -0,0 +1,30 @@ + + form.pluszora { +// background-color: rgb(200,200,180); + text-align: center; + margin: 20px; + } + + ul.pluszora { +// background-color: rgb(20,40,80); + list-style-type: none; + margin: 20px; + padding: 10px 0px; + } + + ul.pluszora li { background-color: rgb(160,160,250); margin: 1px 100px; padding: 1px 20px;} + ul.pluszora li span { color: rgb(20,40,80); padding: 0px 5px; margin: 1px 5px;} + ul.pluszora li span.oraszam { color: rgb(128,0,128); padding: 0px 4px;} + + h2 { text-align: center; border: 1px dotted rgb(20,40,80); border-width: 1px 0px; margin: 20px; } + + h1 { margin:20px; } + form.pluszLila {margin:20px; padding-left:10px;} + form.pluszLila { margin:20px;} + form.pluszLila label { display:block; margin-top:2em; margin-bottom:1em; border-bottom: solid 1px #ddd; width:100px; } + + form.pluszLila button.selectorButton { font-size:14px; padding:2px; display:inline-block; cursor: pointer} + form.pluszLila button.selectorButton span.icon-plus-sign { color: #009688;} + form.pluszLila button.selectorButton span.icon-minus-sign { color: #607D8B} + + form.pluszLila button.selectorButton:active span { text-shadow: 0px 0px 1px cornflowerblue;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/specialis.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/specialis.css new file mode 100644 index 00000000..68bad63b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/specialis.css @@ -0,0 +1,36 @@ + + form.specialis { + background-color: rgb(230,230,230); + margin: 40px; + text-align: center; + padding: 10px; + border: 1px solid rgb(20, 40, 80); + border-style: solid dotted; + } + + form.specialis table { + color: white; + margin: 10px 20% 10px 20%; + width: 60%; + background-color: rgb(200,100,180); + } + + form.specialis table thead th, form.specialis table tfoot th { + background-color: rgb(140,40,120); + } + + form.specialis table th { + background-color: rgb(160,60,140); + } + + form.specialis table td { + background-color: rgb(180,80,160); + } + + table.napinfo { background: #999999; margin: 0px auto; } + table.napinfo th { background: #6688aa; color: white; text-align: center; } + table.napinfo td { padding: 5px 15px; width: 300px; } + table.napinfo td:nth-child(odd) { background: #aaeecc; } + table.napinfo td:nth-child(even) { background: #aaccee; } + table.napinfo td h3 { font-size: 12px; } + table.napinfo td strong { font-weight: normal; font-style: italic; color: #aa66aa; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/stat.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/stat.css new file mode 100644 index 00000000..d0cf780a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/stat.css @@ -0,0 +1,12 @@ + + table.stat { background-color: rgb(120,160,140); margin: 0px auto; } + table.stat thead tr th { background-color: rgb(60,100,80); padding-left: 8px; padding-right:8px; color: white; + border-bottom: solid 1px #00ff00; + height:2.5em; + } + table.stat tbody tr th { text-align: left; background-color: #dddddd; padding:0px 8px; font-weight:normal;} + table.stat tbody tr:hover th { color: white; background-color: rgba(255,255,255,0.1);} + table.stat tbody tr td { background-color: #eeeeee; text-align: right; padding: 0px 8px} + table.stat tbody tr:hover td { background-color: rgba(255,255,255,0.8); } + + table.stat tr td.ertesitendo { background-color: #880000; color: white; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/teremModositas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/teremModositas.css new file mode 100644 index 00000000..fb360e8c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/teremModositas.css @@ -0,0 +1,17 @@ + + table.terem { + background-color: #eeeeee; + } + table.terem tr th { + background-color: #666666; + color: white; + padding: 1px 3px; + } + table.terem tr td { + background-color: #cdcddc; + } + table.terem.oraAdat { + width:100%; + } + + table.terem select option.nemferbe { color: red; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diak.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diak.css new file mode 100644 index 00000000..8e8d982d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diak.css @@ -0,0 +1,131 @@ + + table.naptar { background-color: #eeeeee; border-spacing: 0px; } + table.naptar thead { background-color: #770088; font-size: medium; height:3em; color: white; } + table.naptar thead a { color: white; text-decoration: none } + table.naptar thead a:hover { color: white; text-decoration: underline } + + table.naptar thead tr th { padding: 0.4em 0.1em; border-bottom: solid 1px #aa00bb; } + + table.naptar tfoot th { padding:0.3em; text-align: center; background-color: #440055; color: white } + table.naptar tfoot td { text-align: center; background-color: #770088; border-top: solid 1px #aa00bb; } + table.naptar tfoot td select { background-color: #770088; color: white; font-size:11px; font-family: Verdana; + border: solid 1px none; } + table.naptar tfoot td select option { color: white; background: #fff; color: #000;} + + + table.naptar tbody th.fejlec { background-color: #440055; color: white; font-style:italic; padding: 0.3em; border-bottom: solid 1px #777777; border-right: solid 0px #999999; } + table.naptar tbody th.fej2 { + background-color: #440055; color: white; font-style:italic; border-bottom: solid 1px #770088; border-right: solid 1px #999999; + } + table.naptar tbody th.fej2:last-child { border-right: solid 0px #999999; } + table.naptar tbody td.egynap { + height: 40px; width:100px; + background-color: #dddddd; + border-width: 0px 0px; + border-style: solid; + border-color: #999999; + } + table.naptar tbody td.uresnap { background-color: #dddddd; height: 40px; } + + + + + table.naptar table.tanuloEgyNapja { height:100%; background-color: #667766; width:110px;} + + table.naptar table.tanuloEgyNapja:hover { background-color: #778877; outline-offset: 0px; outline: solid 2px orange;} + + + table.tanuloEgyNapja th.datum { color: #ffffff; width: 40px; height: 10px; } + table.tanuloEgyNapja th.balgomb { width:15px; } + table.tanuloEgyNapja th.balgombokhelye { min-width:30px; width:30px; max-width:30px; } + table.tanuloEgyNapja th.jobbgomb { min-width:30px; width:30px; text-align: right; background-color: #889988; } + + table.tanuloEgyNapja td { } + + table.tanuloEgyNapja form { margin:0px; } + table.tanuloEgyNapja input { border: solid 1px #666660; font-size:8px; width:14px; padding:0px; } + table.tanuloEgyNapja input.I { color: green; } + table.tanuloEgyNapja input.I:hover { background-color: green; color: white; outline: solid 1px lightgreen; } + table.tanuloEgyNapja input.H { color: red; } + table.tanuloEgyNapja input.H:hover { background-color: red; color: white; outline: solid 1px #ff5500; } + + table.tanuloEgyNapja table.orak {background-color: #889988; } + table.tanuloEgyNapja table.orak a { color: #eeeee0; text-decoration: none } + table.tanuloEgyNapja table.orak a:hover { background-color: #667766; } + + div.spec { + /* background-color: rgb(245,123,12); */ + background-color: #556699; + color: white; width:100%; height: 100%; + font-size: 10px; + text-align: center; + margin-bottom:0px; + + } + table.szunet { + /* background-color: rgb(245,123,12); */ + background-color: #667777; + color: white; width:100%; height: 100%; + font-size: 10px; + } + + + + + .jelen { + border-color: rgb(100,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .hianyzas { + border-color: rgb(200,100,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .keses { + border-color: rgb(200,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .felszereles_hiany { + color: white; + background-color:blue; + } + + .egyenruha_hiany { + color: white; + background-color:orange; + } + + .felmentes { + background-color: #eeeeee; + color: purple; + } + + table.hianyzasNaptar { + background-color: #778890; + } + + .igazolt { background-color: #008800; } + .igazolatlan { background-color: #880000; } + + table.hianyzasNaptar {background-color: #778877; font-size:10px; width:100%;} + table.hianyzasNaptar th {background-color: #889988; font-weight: normal; } + table.hianyzasNaptar a { color: #eeeee0; text-decoration: none } + table.hianyzasNaptar a:hover { background-color: red; } + table.hianyzasNaptar a.igazolatlan:hover { background-color: lightgreen; } + table.hianyzasNaptar td.felszerelesHiany { background-color: rgb(100,100,200); } + table.hianyzasNaptar td.egyenruhaHiany { background-color: orange; } + + table.hianyzasNaptar.kreta {background-color: #3facc7;} + table.hianyzasNaptar.kreta tr th {background-color: cornflowerblue;} + + table.naptar tr th span.kepzes { + padding: 1px 3px 1px 3px; font-size:10px; background-color: #776690; + border-radius: 2px 2px 2px 2px; + -moz-border-radius: 2px; + -webkit-border-radius: 2px; + } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diakIgazolatlan.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diakIgazolatlan.css new file mode 100644 index 00000000..6c83c5d6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diakIgazolatlan.css @@ -0,0 +1,12 @@ + + table.igazolatlan { margin: 3em auto; background-color: rgb(20,40,60); width: 50%; } + + table.igazolatlan tr th { background-color: rgb(120,140,160); color: white; height: 1.5em;} + table.igazolatlan tr.fej th { border-bottom: solid 1px white; } + table.igazolatlan tr.lab th { background-color: rgb(160,180,140); text-align: right; padding-right: 1em; } + + table.igazolatlan tr td { color: black; background-color: #eeeeee; } + + table.igazolatlan tr:hover:nth-child(even) td { background-color: rgb(220,240,160); } + table.igazolatlan tr:hover:nth-child(odd) td { background-color: rgb(200,240,240); } + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diakLista.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diakLista.css new file mode 100644 index 00000000..cceccd64 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/diakLista.css @@ -0,0 +1,50 @@ + + table.hianyzasLista { background-color: #eeeeee; empty-cells:show; } + table.hianyzasLista tr th { border-bottom: solid 1px #878787; background-color:#cccccc; } + table.hianyzasLista tr td { background-color: #ffffff; } + + table.hianyzasLista form { margin:0px; display: inline;} + table.hianyzasLista input { border: solid 1px #666660; font-size:8px; width:14px; } + + table.hianyzasLista caption { background-color: rgb(100,0,100); color: white; padding: 5px; font-size: 12px; font-weight: bold; } + + .jelen { + border-color: rgb(100,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .hianyzas { + border-color: rgb(200,100,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .keses { + border-color: rgb(200,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .felszereles_hiany { + color: white; + background-color:blue; + } + + .egyenruha_hiany { + color: white; + background-color: orange; + } + + .felmentes { + background-color: #eeeeee; + color: purple; + } + + table.hianyzasNaptar { + background-color: #778890; + } + + table.hianyzasLista tr td.igazolt { background-color: lightgreen; } + table.hianyzasLista tr td.igazolatlan { background-color: #cc0000; } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/info.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/info.css new file mode 100644 index 00000000..d3ac53f8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/info.css @@ -0,0 +1,19 @@ + + + table.info { background-color: #eeeeee; } + table.info thead tr th { + background-color: purple; color: white; + height: 2em; + border-bottom: solid 1px #777777; + padding-left:1em; + padding-right:1em; + } + table.info tfoot tr th { + background-color: #667760; color: white; + } + table.info tbody tr th { background-color: #aaaabb; padding-left: 2em; padding-right: 2em; } + table.info tbody tr td { background-color: white; text-align: center; padding-left: 2em; padding-right: 2em; } + table.info tbody tr th.up { background-color: red; } + table.info tbody tr th.down { background-color: green; } + + table.info tbody tr.nap0 th,table.info tbody tr.nap0 td { border-top: solid 2px #ffaab0; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/nap.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/nap.css new file mode 100644 index 00000000..c091bc02 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/nap.css @@ -0,0 +1,131 @@ +@charset "utf-8"; + + table.csoportNevsorHianyzok { + background-color: #eeeeee; + color: white; + } + table.csoportNevsorHianyzok thead { background-color: #440055; } + table.csoportNevsorHianyzok thead a { color: white; text-decoration: none } + table.csoportNevsorHianyzok thead a:hover { color: white; text-decoration: underline; } + + table.csoportNevsorHianyzok thead th.neve { + background-color: purple; + font-size: 12px; + height: 2em; + } + table.csoportNevsorHianyzok thead.oraAdat table.oraAdat td { font-weight: normal; } + + table.csoportNevsorHianyzok tfoot { background-color: #440055; } + table.csoportNevsorHianyzok tfoot input { background-color: #eeeeee; font-size:11px; } + + table.csoportNevsorHianyzok tbody { + color: black + } + table.csoportNevsorHianyzok tbody a { color: black; text-decoration: none } + table.csoportNevsorHianyzok tbody a:hover { color: black; text-decoration: underline; } + + + + table.csoportNevsorHianyzok tbody th { + /* background-color: rgb(80,100,120); */ + } + + table.csoportNevsorHianyzok td { text-align: left; } + table.csoportNevsorHianyzok td.késés { text-align: center; } + + table.csoportNevsorHianyzok tbody tr.delutani td, + table.csoportNevsorHianyzok tbody tr.tanoran_kivuli td, + table.csoportNevsorHianyzok tbody tr.egyeni_foglalkozas td + { background-color: #aaaaaa; } + + table.csoportNevsorHianyzok tbody tr:hover { background-color: #ffffff;} + table.csoportNevsorHianyzok td a { color: inherit; } + + table.csoportNevsorHianyzok select { border: solid 1px #888888; background-color: #eeeeee; } + table.csoportNevsorHianyzok select.igazolatlan { color: red } + table.csoportNevsorHianyzok select.igazolt { color: green } + table.csoportNevsorHianyzok td.igazolatlan { color: red } + table.csoportNevsorHianyzok td.igazolt { color: green } + table.csoportNevsorHianyzok th.radio { width: 28px; } + table.csoportNevsorHianyzok tr.magantanulo > td.nemkot { background-color: purple; color: white; } + + table.csoportNevsorHianyzok td.nemkot { text-align: center; color: #888888; font-style: italic; } + + table.csoportNevsorHianyzok tr td input.perc { + font-size:10px; + vertical-align: top; + border: solid 1px #aabb99; + text-align: right; + width:1.5em; + } + + + .jelen { + border-color: rgb(100,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .hianyzas, .hiányzás { + border-color: rgb(200,100,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + .hianyzas.checked, .hiányzás.checked { + background-color: darkred; + } + + .keses, .késés { + border-color: rgb(200,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + span.perc { + border-color: rgb(200,200,100); + border-width: 1px 1px 1px 1px; + border-style: solid; + background-color: rgb(230,210,130); + color: rgb(100,80,0); + } + + .felszereles_hiany { + color: white; + background-color:blue; + } + + .egyenruha_hiany { + color: white; + background-color: orange; + } + + .felmentes { + background-color: #eeeeee; + color: purple; + } + .igazolt { background-color: #008800; } + .igazolatlan { background-color: #880000; } + + .fbetus { + /* border-color: rgb(100,100,200); */ + border-color: rgb(120,120,220) rgb(190,190,230); + border-width: 0px 1px 3px 1px; + border-style: solid; + background-color: rgb(210,210,255); + min-width: 18px; + + } + + .kesett {background-color: orange;} + + table.hianyzasNaptar { + background-color: #778890; + } + + table.hianyzasNaptar {background-color: #778877; font-size:10px} + table.hianyzasNaptar th {background-color: #889988; } + table.hianyzasNaptar a { color: #eeeee0; text-decoration: none } + table.hianyzasNaptar a:hover { background-color: #667766; } + table.hianyzasNaptar td.felszerelesHiany { background-color: rgb(100,100,200); } + table.hianyzasNaptar td.egyenruhaHiany { background-color: orange; } + table.hianyzasNaptar.kreta {background-color: #3facc7;} + table.hianyzasNaptar.kreta tr th {background-color: cornflowerblue;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/oktstat.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/oktstat.css new file mode 100644 index 00000000..4f2ff500 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/oktstat.css @@ -0,0 +1,22 @@ + + + table.info { background-color: #eeeeee; } + table.info thead tr th { + background-color: purple; color: white; + height: 2em; + border-bottom: solid 1px #777777; + padding-left:1em; + padding-right:1em; + } + table.info tfoot tr th { + background-color: #667760; color: white; + } + table.info tbody tr th { background-color: #aaaabb; padding-left: 2em; padding-right: 2em; } + table.info tbody tr td { background-color: white; text-align: center; padding-left: 2em; padding-right: 2em; } + table.info tbody tr th.up { background-color: red; } + table.info tbody tr th.down { background-color: green; } + + table.info tbody tr.nap0 th,table.info tbody tr.nap0 td { border-top: solid 2px #ffaab0; } + + + div.oktstatszam { border: solid 2px #aaaaaa; display:table-cell; padding:4px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/ora.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/ora.css new file mode 100644 index 00000000..b94b9421 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/ora.css @@ -0,0 +1,130 @@ +@charset "utf-8"; + + table.csoportNevsorHianyzok { background-color: #eeeeee; color: white; } + + form.delutani table.csoportNevsorHianyzok { background-color: rgb(150,150,150); } + + form.delutani table.csoportNevsorHianyzok thead { background-color: rgb(200,100,100); } + form.delutani table.csoportNevsorHianyzok tfoot { background-color: rgb(200,100,100); } + + table.csoportNevsorHianyzok thead { background-color: #440055; } + table.csoportNevsorHianyzok thead a { color: white; text-decoration: none } + table.csoportNevsorHianyzok thead a:hover { color: white; text-decoration: underline; } + + table.csoportNevsorHianyzok thead.oraAdat table.oraAdat { + width:100%; + background-color: #eeeeee; + font-size: normal; + } + table.csoportNevsorHianyzok thead.oraAdat table.oraAdat td { font-weight: normal; } + + table.csoportNevsorHianyzok thead.fejlec tr th { font-weight: normal; height:1.8em; border-bottom: solid 2px rgb(170, 0, 187) } + + table.csoportNevsorHianyzok tfoot { background-color: #440055; } + table.csoportNevsorHianyzok tfoot input { background-color: #eeeeee; font-size:11px; } + + table.csoportNevsorHianyzok tbody { color: black ;} + table.csoportNevsorHianyzok tbody a { color: black; text-decoration: none } + table.csoportNevsorHianyzok tbody a:hover { color: black; text-decoration: underline; } + + table.csoportNevsorHianyzok tbody tr.ujTag th { background-color: lightgreen; } + table.csoportNevsorHianyzok tbody tr.ujTag td { background-color: #ffffaa; text-align: center; } + table.csoportNevsorHianyzok td { text-align: left; } + table.csoportNevsorHianyzok td.késés { text-align: center; } + table.csoportNevsorHianyzok tbody tr:hover { background-color: #ffffff;} + table.csoportNevsorHianyzok td a { color: inherit; } + + table.csoportNevsorHianyzok select { border: solid 1px #888888; background-color: #eeeeee; } + table.csoportNevsorHianyzok select.igazolatlan { color: red } + table.csoportNevsorHianyzok select.igazolt { color: green } + table.csoportNevsorHianyzok td.igazolatlan { color: red } + table.csoportNevsorHianyzok td.igazolt { color: green } + table.csoportNevsorHianyzok th.radio { width: 28px; } + + table.csoportNevsorHianyzok td.nemkot { text-align: center; color: #888888; font-style: italic; } + + table.csoportNevsorHianyzok tr td input.perc { + font-size:10px; + vertical-align: top; + border: solid 1px #aabb99; + text-align: right; + width:1.5em; + } + + table.csoportNevsorHianyzok tbody tr.magantanulo > td { background-color: purple; color: white; } + + .jelen { + width:12px; + border-color: rgb(100,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .hianyzas, .hiányzás { +/* width:12px;*/ + border-color: rgb(200,100,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + .hianyzas.checked, .hiányzás.checked { + background-color: darkred; + } + .keses, .késés { +/* width:12px;*/ + border-color: rgb(200,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + span.perc { + border-color: rgb(200,200,100); + border-width: 1px 1px 1px 1px; + border-style: solid; + background-color: rgb(230,210,130); + color: rgb(100,80,0); + } + + .felszereles_hiany { + color: white; + background-color:blue; + } + + .egyenruha_hiany { + color: white; + background-color: orange; + } + + .felmentes { + background-color: #eeeeee; + color: purple; + } + .fbetus { + /* border-color: rgb(100,100,200); */ + border-color: rgb(120,120,220) rgb(190,190,230); + border-width: 0px 1px 3px 1px; + border-style: solid; + background-color: rgb(210,210,255); + min-width: 18px; + } + + .igazolt { background-color: #008800; } + .igazolatlan { background-color: #880000; } + + + .kesett {background-color: orange;} + + table.hianyzasNaptar { background-color: #778877; font-size:10px;} + table.hianyzasNaptar th {background-color: #889988; font-weight: normal; text-align:center; } + table.hianyzasNaptar a { color: #eeeee0; text-decoration: none } + table.hianyzasNaptar a:hover { background-color: #667766; } + table.hianyzasNaptar td:nth-child(even) { } + table.hianyzasNaptar td.felszerelesHiany { background-color: rgb(100,100,200); } + table.hianyzasNaptar td.egyenruhaHiany { background-color: orange; } + table.hianyzasNaptar.kreta {background-color: #3facc7;} + table.hianyzasNaptar.kreta tr th {background-color: cornflowerblue;} + + form.vissza { background-color: white; width: 570px; margin: 0px auto; } + form.vissza input { border: none; background-color: white; cursor: pointer; } + + table.csoportNevsorHianyzok tbody tr th.c { font-weight: normal } + table.csoportNevsorHianyzok tbody tr th.c:hover span { display: none; } + table.csoportNevsorHianyzok tbody tr th.c:hover:after { content: "\e0ca"; font-family: "Elusive-Icons";} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/osztaly.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/osztaly.css new file mode 100644 index 00000000..cf0665a2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/osztaly.css @@ -0,0 +1,179 @@ + + table.hianyzas { + background-color: rgb(180,180,200); + color: white; + max-width:95%; + } + + table.hianyzas thead th { + background-color: rgb(40,80,120); + } + + table.hianyzas thead th.alcim { + background-color: rgb(255,255,255); + color: rgb(40,80,120); + font-style: italic; + padding: 0px 4px 0px 4px; + } + + table.hianyzas thead th.alcim img { hight: 16px; } + + table.hianyzas tfoot th { background-color: rgb(80,20,80); } + table.hianyzas tfoot td { background-color: rgb(95,75,95); text-align: center; } + + table.hianyzas tbody td { text-align: center; } + table.hianyzas tbody td.nev { + background-color: rgb(90,90,110); + font-style: italic; + padding: 4px 10px 4px 10px; + text-align:left; + } + + table.hianyzas tbody tr.jogviszonyalezarva td.nev { + background-color: rgb(40,40,90); + } + + table.hianyzas tbody tr.magantanulo td.nev { + background-color: rgb(140,40,90); + } + + table.hianyzas tbody td.nev a { + color: white; + text-decoration: none; + } + + table.hianyzas tbody td.nev a:hover { + color: white; + /* background-color: rgb(180,180,220); */ + text-decoration: underline; + } + + table.hianyzas tbody td.ulezart { + width: 18px; + background-color: rgb(200,200,220); + } + + table.hianyzas tbody td.lezart { + width: 18px; + background-color: rgb(100,100,120); + text-align: center; + } + + table.hianyzas tbody td.uigazolhato { + width: 18px; + background-color: rgb(240,240,260); + } + + table.hianyzas tbody td.igazolhato { + width: 18px; + background-color: rgb(140,140,160); + text-align: center; + } + + table.hianyzas tbody td.uosszes { + width: 18px; + background-color: rgb(220,240,230); + } + + table.hianyzas tbody td.osszes { + width: 18px; + background-color: rgb(120,140,130); + text-align: center; + } + + table.hianyzas tbody td.kreta { + width: 18px; + background-color:cornflowerblue; + text-align: center; + } + table.hianyzas tbody td.kreta.keses { + background-color: ; + } + + table.hianyzas tbody td.ufegyelmi { + width: 18px; + background-color: rgb(220,230,240); + } + + table.hianyzas tbody td.fegyelmi { + width: 18px; + background-color: rgb(130,150,150); + text-align: center; + } + + table.hianyzas tbody td.ufokozat { + width: 18px; + background-color: rgb(220,210,200); + } + + table.hianyzas tbody td.fokozat { background-color: rgb(120,110,100); } + table.hianyzas tbody td.fokozat form { display: inline; } + table.hianyzas tbody td.fokozat form input,select { font-size:11px; } + table.hianyzas tbody td.fokozat form select option.megerdemelt { background-color: rgb(100,100,100); color: rgb(220,255,220); } + table.hianyzas tbody td.fokozat form select option.tiltott { background-color: rgb(100,100,100); color: rgb(250,100,100); font-family: italic } + + table.hianyzas tbody td.oi { text-align: center; } + + /* table.hianyzas tbody */ + td.hianyzas { + border-color: rgb(200,100,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + /* table.hianyzas tbody */ + td.keses { + border-color: rgb(200,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + /* table.hianyzas tbody */ + td.felszereles { + border-color: rgb(100,100,200);; + border-width: 0px 1px 3px 1px; + border-style: solid; + } + td.egyenruha { + border-color: orange; + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + /* table.hianyzas tbody */ + td.felmentes { + border-color: rgb(100,200,100);; + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + /* table.hianyzas tbody */ + td.igazolt { color: rgb(55,255,55); } + /* table.hianyzas tbody */ + td.igazolatlan { color: rgb(255,55,55); } + /* table.hianyzas tbody */ + td.mind { color: white; } + + /* navi */ + + table.navi { + width:95%; + background-color: #666699; + color: #eeeee0; + } + table.navi th, table.navi td { + text-align: center; + border-style: solid none solid none; + border-width: 1px 0px 2px 0px; + border-color: #aabbc0; + } + table.navi input { + margin-left: 16px; + background-color: #778890; + border: solid 1px #aabbc0; + } + table.navi input.aktiv { + color: #aabbc0; + background-color: rgb(90,50,90); + } + table.navi select { border: 1px solid #eeeee0; background-color: #aabbc0; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/osztalyNap.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/osztalyNap.css new file mode 100644 index 00000000..6664faa5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hianyzas/osztalyNap.css @@ -0,0 +1,43 @@ + + table.hianyzas { margin: auto; border-spacing: 1px; background-color:#aaaaaa; } + table.hianyzas thead th { background-color: #440055; padding: 4px 8px; color: white; + } + table.hianyzas tbody th { background-color: rgb(150,140,150); padding: 4px 2px; color: white; } + table.hianyzas tbody th.tk { background-color: #ffffff; color: black; font-weight:normal;font-style: italic; padding-left:10px; padding-right:10px; } + + table.hianyzas tfoot th { background-color: #440055; padding: 1px; color: white; border-bottom: solid 1px white; text-align: right; font-size:xx-small; } + table.hianyzas tbody td { background-color: #ffffff; padding: 4px 8px; } + + + table.hianyzas tbody tr td.d { width:5px; padding:0px; + border-width: 0px 4px 0px 4px; + border-style: solid; + text-align: center; + color: white; + font-weight: bold; + } + + table.hianyzas tbody tr td.d.igazolatlan { + background-color: #cc0000; + } + table.hianyzas tbody tr td.d.igazolt { + background-color: #00cc00; + } + table.hianyzas tbody tr td.d.hianyzas { + border-color: rgb(200,100,100); + } + table.hianyzas tbody tr td.d.keses { + border-color: rgb(200,200,100); + } + table.hianyzas tbody tr td.d.felszereles { + border-color: rgb(100,100,200); + } + table.hianyzas tbody tr td.d.egyenruha { + border-color: orange; + } + + table.hianyzas tbody th a { color: white; text-decoration: none; } + table.hianyzas tbody th.tk a { color: black; text-decoration: none; } + table.hianyzas tbody td a { color: black; text-decoration: none; } + table.hianyzas tbody th a:hover, + table.hianyzas tbody td a:hover { text-decoration: underline; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hibabejelento/admin.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hibabejelento/admin.css new file mode 100644 index 00000000..89eefd3d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hibabejelento/admin.css @@ -0,0 +1,89 @@ + + ol.kerelem { list-style-type: none; margin: 0px; padding:10px;} + ol.kerelem li { background-color: #ddd; margin: 10px 0px 10px 0px; padding: 10px; text-align: left; } + ol.kerelem li div.szoveg { background-color:; padding: 10px; margin: 0px auto; color: white; font-size: 14px;} + ol.kerelem li div.valasz { background-color: rgb(220,200,180); width: 80%; padding: 10px; margin: 5px auto 10px auto; font-style: italic; } + + ol.kerelem fieldset { background-color: #3F51B5;#3c3c64;#2196f3; border-style:hidden; } + ol.kerelem legend { border: 1px solid white; padding: 6px; font-weight: normal; color: white;background-color: #aaa; ; } + ol.kerelem li textarea { width: 90%; margin: 10px auto; border: solid 1px #888888; font-size:14px; height:5em; padding:0.8em; } + + ol.kerelem span.dt { padding: 5px 10px; margin: 5px 20px; border: 1px solid white; font-weight: bold; color: white; background-color: rgb(60,100,60); } + ol.kerelem input { padding: 5px 10px; margin: 5px 20px; border: 1px solid white; font-weight: bold; color: white; background-color: rgb(100,100,60); } + + span.mg { background-color: orange; color: white; padding:7px 20px; margin:20px; border: solid 1px white; } + span.mg2 { background-color: rgb(200,100,100); color: white; padding:7px 20px; margin:20px; border: solid 1px white; } + ol.kerelem select.mg { background-color: orange; color: white; font-weight: bold; border: solid 1px orange; } + ol.kerelem select.telephely { background-color: rgb(200,100,100); color: white; font-weight: bold; border: solid 1px rgb(200,100,100); } + + ol.kerelem input.mg { background-color: rgb(100,100,100); } + + ol.kerelem li.jovahagyott, + ol.kerelem input.jh { background-color: rgb(100,160,100); } + ol.kerelem input.njh { background-color: rgb(200,100,60); } + ol.kerelem input.done { background-color: rgb(100,100,160); } + + ol.kerelem li.jovahagyott { border: solid 1px green; } + + table.kerelemValasz { width:99%; background-color: #efefef; margin:auto;} + table.kerelemValasz tr th { width:80px; font-weight:normal; text-align:right; vertical-align:top; padding:2px 4px;} + table.kerelemValasz tr td.userAccount { border-left: solid 2px white;} + table.kerelemValasz tr.c0 td.userAccount { border-color: #ffeb3b;} + table.kerelemValasz tr.c1 td.userAccount { border-color: #ffc107;} + table.kerelemValasz tr.c2 td.userAccount { border-color: #ff9800;} + table.kerelemValasz tr.c3 td.userAccount { border-color: #ff5722;} + table.kerelemValasz tr.c4 td.userAccount { border-color: #03a9f4;} + + table.kerelemValasz tr td { background-color: white; padding:2px 4px; vertical-align:top;} + table.kerelemValasz tr td.userAccount { width:80px;} + + table.kerelemValasz span.diakNev { height:10px; width:10px; font-size:10px; color:white; background-color: #6495ed; border-radius:50%; padding:2px; border: solid 2px #eee;} + table.kerelemValasz span.diakNev:hover { border: solid 2px #15477b;} + + table.kerelemValasz span.tanarNev { height:10px; width:10px; font-size:10px; color:white; background-color: #db0601; border-radius:50%; padding:2px; border: solid 2px #eee;} + table.kerelemValasz span.tanarNev:hover { border: solid 2px #e91e63;} + + form.hiba { + background-color: cornflowerblue; + margin:10px; + padding-left: 0px; + padding-top: 0em; + padding-bottom: 0.5em; + color: white; + margin-bottom: 2em; + text-align: center; + border-bottom: solid 1px rgb(20,40,60); + } + + form.hiba h1 { font-size: 14pt; border-bottom: solid 1px #eee; background-color: rgb(20,40,60); margin: 4px 0px; padding: 3px} +/* + form.hiba textarea { font-size: 14px; background-color: rgb(250,250,250); width: 99%; height: 100px; border: solid 1px black; padding:2px;} +*/ +form.hiba textarea { + font-size:14px; + margin-top: 10px; + margin-left: 0px; + width: 90%; + height: 100px; + -moz-border-bottom-colors: none; + -moz-border-left-colors: none; + -moz-border-right-colors: none; + -moz-border-top-colors: none; + background: none repeat scroll 0 0 rgba(255, 255, 255, 0.9); + border-color: -moz-use-text-color #FFFFFF #FFFFFF -moz-use-text-color; + border-image: none; + border-radius: 0px; + border-style: none solid solid none; + border-width: medium 1px 1px medium; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12) inset; + color: #555555; + line-height: 1.4em; + padding: 5px 8px; + transition: background-color 0.1s ease 0s; +} + +textarea:focus { + background-color: #fff !important; + background: none repeat scroll 0 0 #FFFFFF; + outline-width: 0; +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hibabejelento/hibabejelento.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hibabejelento/hibabejelento.css new file mode 100644 index 00000000..833b24b6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hibabejelento/hibabejelento.css @@ -0,0 +1,18 @@ + + form.hiba { + background-color: cornflowerblue; + margin-left: 10%; + margin-right: 10%; + padding-left: 0px; + padding-top: 0em; + padding-bottom: 0.5em; + color: white; + margin-bottom: 2em; + text-align: center; + border-bottom: solid 2px rgb(20,40,60); + } + + form.hiba h1 { font-size: 14pt; border-bottom: solid 2px rgb(100,200,160); border-width: 2px 0px; background-color: rgb(20,40,60); margin: 4px 0px; padding: 3px} + form.hiba textarea { font-size: 14px; background-color: white; width: 99%; height: 100px; border: solid 1px black; padding:2px;} + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hirnok/cronFutar.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hirnok/cronFutar.css new file mode 100644 index 00000000..9ddb9010 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hirnok/cronFutar.css @@ -0,0 +1,9 @@ + + div.emailFejlec { + text-align: center; border-bottom: solid 1px cornflowerblue ; + font-size:18px; line-height:30px; margin-bottom:20px; padding:4px; + margin-right:auto; margin-left: auto; + width:200px; + /* background: linear-gradient(90deg, #336, #0aa); */ + color: cornflowerblue; + } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hirnok/hirnok.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hirnok/hirnok.css new file mode 100644 index 00000000..20b9861f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/hirnok/hirnok.css @@ -0,0 +1,108 @@ + + /* flex container */ + div.hirnokDoboz { + width:90%; + max-width: 800px; + background-color: #f8f8f8; + padding:2px; + border: solid 1px #ddd; + border-radius: 2px; + margin-left: auto; margin-right:auto; + margin-bottom:1em; + display:flex; + align-items: center; + } + /* special */ + div.hirnokDoboz.uzeno { + align-items: flex-start; + } + + /* flex item */ + div.hirnokBadgeHolder { + /*height: 30px;*/ + padding: 2px; + margin: 4px; + } + div.hirnokBadgeHolder span { + height:30px; + width:30px; + font-size:30px; + padding:4px; + margin:0px; + color: white; + background-color: cornflowerblue; + border-radius: 2px; + } + div.hirnokBadgeHolder a:hover span { background-color: rgba(255,0,100,0.5); } + div.hirnokBadgeHolder.jegy span { background-color: lightgreen; } + div.hirnokBadgeHolder.haladasiBeiratlan span { background-color: orange; } + div.hirnokBadgeHolder.zaroJegy span { background-color: gold; } + div.hirnokBadgeHolder.uzeno span { background-color: #3f51b5; } + div.hirnokBadgeHolder.bejegyzes span { background-color: #9c27b0; } + div.hirnokBadgeHolder.bejegyzes.bejegyzes_dicseret { background-color: red; } + div.hirnokBadgeHolder.haladasiOra span { background-color: #9c27b0; } + + div.hirnokDoboz.uzeno div.hirnokBadgeHolder, div.hirnokDoboz.uzeno div.hirnokDt { + padding-top:8px; + } + + div.hirnokDt { + font-size:smaller; + padding-right: 2px; + } + div.hirnokDt a { color: black; } + div.hirnokDt a:hover { text-decoration: underline; } + div.hirnokDt span { color: #aaa; } + div.hirnokDt span a { color: #aaa; } + div.hirnokDt span a:hover { text-decoration: underline; } + div.hirnokText { + padding-left:6px; + padding-right:6px; + padding-top: 6px; + padding-bottom:6px; + border-left: solid 1px #aaa; + margin-left:2px; + margin:auto; + flex: 0 1 90%; + } + + div.hirnokRight { + /*border-left: solid 1px #aaa;*/ + } + + div.hirnokFooter {flex-break: after; width:500px; background-color:#ddd; border-top:solid 1px black;} + + + div.hirnokSeparator { + color: #888; + max-width:150px; + margin:auto; + text-align:center; + padding:10px; +/* border-bottom: solid 1px #eee; */ + } + div.hirnokSeparator { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + } + div.hirnokSeparator:before, div.hirnokSeparator:after{ + content: ""; + flex: 1 1; + border-bottom: 1px solid #ddd; + margin: auto; + } + div.hirnokSeparator a { color:inherit; display:block;} + div.hirnokSeparator:hover { background-color: cornflowerblue; color:white; } + + +/* teszt */ + div.hirnokDoboz div.hirnokIkonKontener{ display:inline-flex; padding-left:1em; opacity: 0.2; visibility: hidden} + div.hirnokDoboz div.hirnokIkonKontener span { padding-left:4px; padding-right:4px;} + div.hirnokDoboz:hover div.hirnokIkonKontener{ display:inline-flex; padding-left:1em; opacity: 1; + transition: visibility 0s, opacity 0.5s linear; +visibility: visible; +} + div.hirnokText a { color: #aaa; } + div.hirnokText a:hover { color:#111; cursor: hand } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diak.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diak.css new file mode 100644 index 00000000..6475a4f4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diak.css @@ -0,0 +1,167 @@ + + div.diakStatusz { + position:absolute; + right:28px; + background-color: #dddddd; border: solid 1px black; padding:10px; + font-size:13px; + border-radius:2px; + } + + form.diak #felfuggesztesOk { width: 500px; margin-top: 10px; } + form.diak #lezarasIgazolatlan { width: 50px; } + form.diak #lezaras { margin-top: 10px; } + form.diak label { font-weight: bold; } + + form.diak table tr th label { font-weight: normal; } + + div form.diak fieldset { background-color: #efefef; box-shadow: 1px 1px 1px #cccccc; padding-top:1.5em;} + fieldset.bizonyitvanyTorzslap { background-color: #DD1458 !important; box-shadow: 1px 1px 1px #cccccc; padding-top:1.5em; color: white;} + + form.diak { margin: 5px 30px 50px 20px; font-size:13px; } + form.diak h1 { border: solid rgb(40,60,80); border-width: 0px 0px 1px 0px; background-color: rgb(80,100,120); text-align: center; color: white; margin:0px 0px; font-size:13px; padding:2px;} + + form.diak input, form.diak select { + font-size:13px; + border: solid 1px #777777; + margin-left: 3px; + padding-left: 2px; + } + + form.diak input.diakSubmit { float:right; padding:2px 30px; width:100px; } + +/* lásd alul */ + form.diak:hover input.diakSubmit { border: solid 1px lightgreen; } + form.diak:hover input.diakSubmit:hover { background-color: lightgreen; } + + form.diak input.kiemelt { background-color: rgb(255,255,100); border-width: 1px 1px 0px 1px; } + form.diak label { font-size:13px; } + form.diak label.kotelezo { color:rgb(100,20,20); } + + form.diak input:read-only { background-color: #aaa; } + form.diak input:focus, form.diak select:focus { background-color: orange; } + +/* form.diak input[type="checkbox"] { -moz-appearance: none; }*/ + from.diak input.ajaxRequest { color: black; background-color: red; } + form.diak input.ajaxRequestDone { color: white; background-color: rgb(0,130,0); } + form.diak select.ajaxRequestDone { color: white; background-color: rgb(0,130,0); } + form.diak input.ajaxRequestError { color: white; background-color: rgb(130,0,0); } + form.diak select.ajaxRequestError { color: white; background-color: rgb(130,0,0); } + + form.diak input:hover { outline: solid 1px lightblue; } + + form.diak fieldset { border: solid 1px rgb(140,160,180); } + form.diak fieldset th { text-align: right; } + form.diak fieldset legend { + background-color: rgb(100,120,140); + color: white; + font-size:90%; + text-align: left; + margin-left:20px; + padding-left: 10px; + padding-right: 10px; + border: solid 1px rgb(40,60,80); + } + form.diak fieldset:hover legend { box-shadow: 0px 0px 1px rgb(21, 174, 236); } + form.diak fieldset fieldset:hover legend { box-shadow: 0px 0px 1px orange; } + + form.diak #megjegyzes { width: 90%; } + div.magantanulo form.diak fieldset { background-color: rgb(180,180,100); } + div.magantanulo form.diak fieldset legend { background-color: rgb(80,80,10); } + div.vendegtanulo form.diak fieldset { background-color: rgb(180,180,180); } + div.vendegtanulo form.diak fieldset legend { background-color: rgb(80,80,10); } + + div.jogviszonyLezarva form.diak fieldset { background-color: rgb(210,140,130); } + div.jogviszonyLezarva form.diak fieldset legend { background-color: rgb(110,40,30); } + div.jogviszonyFelfuggesztve form.diak fieldset { background-color: rgb(130,140,210); } + div.jogviszonyFelfuggesztve form.diak fieldset legend { background-color: rgb(30,40,110); } + div.felveteltNyert form.diak fieldset { background-color: lightgreen } + div.felveteltNyert form.diak fieldset legend { background-color: rgb(40,110,30); } +/* + div.magantanulo form.diak fieldset { background-color: rgb(180,180,100); } + div.jogviszonyLezarva form.diak fieldset { background-color: rgb(210,140,130); } + div.jogviszonyFelfuggesztve form.diak fieldset { background-color: rgb(130,140,210); } + div.felveteltNyert form.diak fieldset { background-color: rgb(140,210,130); } +*/ + form.diak input.kiemelt { + background-color: rgb(220,220,255); + border-width: 1px 1px 1px 1px; border-color: #777777 #777777 rgb(220,220,255) #777777; + margin-bottom: 0px; padding-top: 2px; + } + + form.diak table.fiu { border-left: solid 4px cornflowerblue;} + form.diak table.lany { border-left: solid 4px deeppink;} + + form.diak fieldset table.reszletek { width: 100%; background-color: rgb(220,220,255); } + form.diak fieldset table.reszletek th { text-align: right; font-weight: normal; } + form.diak fieldset table.reszletek h1 { + text-align: center; background-color: rgb(100,100,120); font-size: 13px; + border-color: rgb(200,200,200); color: white; + } + form.diak table.reszletek legend { background-color: rgb(100,100,120); font-weight: bold; color: white; } + form.diak td.top { vertical-align: top; } + form.diak fieldset fieldset legend { background-color: white; color: black; } + + form.diak ul li { font-size:13px; list-style-type: square; } + form.diak ul li.volt { background: #aaaaaa; list-style-type: circle; } + + form.updateTable { color: white; width: 80%; background-color: rgb(180,180,200); margin: 20px auto; } + form.updateTable h1 { text-align: center; border: 1px dotted white; border-width: 1px 0px; background-color: rgb(60,60,80); } + form.updateTable label { color: white; padding: 8px; } + form.updateTable table { margin: 20px auto; background-color: rgb(140,140,180); color: red; } + form.updateTable table td { background-color: rgb(255,255,255); } + form.updateTable table th { background-color: rgb(120,120,160); } + + form.megnyitas input { border: 2px solid red; background-color: rgb(120,50,10); color: white; font-size: 13px; font-weight: bold; padding: 4px; } + form.statusz { border: 1px solid rgb(40,60,80); padding: 2px; text-align: center; } + + form.diak span.naploSorszam { background-color: rgb(120,120,160); color: white; padding:0px 10px; font-size:normal; } + + #createAccount { background-color: green; color: white; float: left; margin-left: 200px; } + #deleteAccount { background-color: red; color: white; float: right; margin-right: 200px; } + + +form.diak input.diakSubmit +{ + border:1px solid #15aeec; -webkit-border-radius: 3px; -moz-border-radius: 3px;border-radius: 3px; + text-decoration:none; display:inline-block; + text-shadow: -1px -1px 0 rgba(0,0,0,0.3); + font-weight:bold; color: #FFFFFF; + background-color: #49c0f0; background-image: -webkit-gradient(linear, left top, left bottom, from(#49c0f0), to(#2CAFE3)); + background-image: -webkit-linear-gradient(top, #49c0f0, #2CAFE3); + background-image: -moz-linear-gradient(top, #49c0f0, #2CAFE3); + background-image: -ms-linear-gradient(top, #49c0f0, #2CAFE3); + background-image: -o-linear-gradient(top, #49c0f0, #2CAFE3); + background-image: linear-gradient(to bottom, #49c0f0, #2CAFE3);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#49c0f0, endColorstr=#2CAFE3); +} + + +button:hover, .toolBarTool table.flipper input:hover,form.diak input.diakSubmit:hover +, table.toolBar tr td.szemely:hover + { + border:1px solid #1090c3; + background-color: #1ab0ec; background-image: -webkit-gradient(linear, left top, left bottom, from(#1ab0ec), to(#1a92c2)); + background-image: -webkit-linear-gradient(top, #1ab0ec, #1a92c2); + background-image: -moz-linear-gradient(top, #1ab0ec, #1a92c2); + background-image: -ms-linear-gradient(top, #1ab0ec, #1a92c2); + background-image: -o-linear-gradient(top, #1ab0ec, #1a92c2); + background-image: linear-gradient(to bottom, #1ab0ec, #1a92c2);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#1ab0ec, endColorstr=#1a92c2); +} + + +table.diakNyelvvizsgak { + background-color: white; + padding:10px; + margin:auto; + margin-bottom: 2em; +} +table.diakNyelvvizsgak tr th { + background-color: #e91e63; + color:white; + text-align:center; + padding: 2px 4px; + border-bottom: solid 1px #aaa; +} +table.diakNyelvvizsgak tr td { + border: solid 1px black; border-collapse: collapse; + padding: 4px; +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakExport.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakExport.css new file mode 100644 index 00000000..b07bf0db --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakExport.css @@ -0,0 +1,46 @@ + + form.diak { background-color: white; } + + form.diak { margin: 5px 30px 20px 20px; font-size:10px; } + form.diak h1 { border: dotted white; border-width: 1px 0px; background-color: rgb(80,100,120); font-size: 20px; text-align: center; } + form.diak input, form.diak select { + font-size:10px; border: solid 1px #777777; margin-left: 3px; + padding-left: 2px; + } + form.diak input.kiemelt { background-color: rgb(255,255,100); border-width: 1px 1px 0px 1px; } + form.diak label { font-size:11px; } + form.diak label.kotelezo { color:rgb(100,20,20); } + form.diak input:focus { background-color: orange; } + + form.diak fieldset { border: solid 1px rgb(40,60,80); } + form.diak fieldset th { text-align: right; } + form.diak fieldset legend { + background-color: rgb(140,160,180); + color: white; + font-size:90%; + text-align: left; + margin-left:20px; + padding-left: 10px; + padding-right: 10px; + border: solid 1px rgb(40,60,80); + } + form.diak input.kiemelt { + background-color: rgb(220,220,255); + border-width: 1px 1px 1px 1px; border-color: #777777 #777777 rgb(220,220,255) #777777; + margin-bottom: 0px; padding-top: 2px; + } + form.diak fieldset table.reszletek { width: 100%; background-color: rgb(220,220,255); } + form.diak fieldset table.reszletek th { text-align: right; } + form.diak fieldset table.reszletek h1 { + text-align: center; background-color: rgb(100,100,120); font-size: 12pt; + border-color: rgb(200,200,200); color: white; + } + form.diak table.reszletek legend { background-color: rgb(100,100,120); font-weight: bold; color: white; } + + form.updateTable { color: white; width: 80%; background-color: rgb(180,180,200); margin: 20px auto; } + form.updateTable h1 { text-align: center; border: 1px dotted white; border-width: 1px 0px; background-color: rgb(60,60,80); } + form.updateTable label { color: white; padding: 8px; } + form.updateTable table { margin: 20px auto; background-color: rgb(140,140,180); color: red; } + form.updateTable table td { background-color: rgb(255,255,255); } + form.updateTable table th { background-color: rgb(120,120,160); } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakFelmentes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakFelmentes.css new file mode 100644 index 00000000..e7630da3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakFelmentes.css @@ -0,0 +1,33 @@ +div.FM { + margin:10px auto; + width: 90%; + padding-bottom:2em; + border-bottom: solid 1px rgb(100,120,140); +} + +div.FM h2 { + background-color: rgb(200,240,200); + border-bottom: solid 1px white; +} + +div.FM div { padding: 1em; } +div.FM label { padding:0px 10px 0px 20px; font-weight: bold; font-size:13px; line-height:2em;} + +div.FM.FM1 {background-color:rgb(200,210,220);} +div.FM.FM2 {background-color:rgb(200,210,220);} +div.FM.FM3 {background-color:rgb(200,210,220);} +div.FM.FMZAR, div.FM.FMTAN {background-color:rgb(210,250,210); } + +div.FM div.submit { text-align: center; } + +div.FM div.rejtett { } + +div.FM table { + width:100%; border: solid 1px #787878; + background-color: lightgreen; +} +div.FM table th { background-color: #56765f; color: white; border-bottom: solid 1px white;} +div.FM table td { } + +div.FM input[readonly] { background-color: #dddddd; } +div.FM input { background-color: #ffffff; border: solid 1px #787878;} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakStatusz.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakStatusz.css new file mode 100644 index 00000000..c824ece3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakStatusz.css @@ -0,0 +1,14 @@ + + div.dj { margin: 2px 10px; background-color: rgb(200,220,240); padding: 20px; } + div.dj form { background-color: rgb(240,245,250); padding: 10px; } + div.dj ul { list-style-type: none; margin: 0px; padding: 5px 0px; background-color: rgb(20,40,60); } + div.dj ul li { margin: 5px; padding: 2px 0px; background-color: rgb(140,160,180); } + div.dj ul li form { margin: 4px; } + div.dj ul li span.dt { font-weight: bold; color: red; } + div.dj ul li form.statusz p { padding: 3px; margin: 0px; } + div.dj ul li form.zaradek p { font-style: italic; } + div.dj ul li form.zaradek p span { color: red; } + div.dj ul li h2 { font-size: 12px; border: solid rgb(140,160,180); border-width: 1px 0px; padding: 3px; } + div.dj ul li form input[type=submit] { font-size: 12px; margin: 3px 20px; float:right;} + div.dj ul li form select { font-size: 12px; padding: 5px; } + div.dj ul li table th { text-align: right; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakSzulo.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakSzulo.css new file mode 100644 index 00000000..bd007b93 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakSzulo.css @@ -0,0 +1,49 @@ + +# form.diak { background-color: rgb(40,60,80); color: white; margin: 5px 20px; padding: 4px 10px; } + + form.diak { margin: 5px 30px 20px 20px; font-size:10px; } + form.diak h1 { border: dotted white; border-width: 1px 0px; background-color: rgb(80,100,120); font-size: 20px; text-align: center; } + form.diak input, form.diak select { + font-size:10px; border: solid 1px #777777; margin-left: 3px; + padding-left: 2px; + margin: 2px; + } + form.diak label { font-size:11px; padding: 10px;} + form.diak input:focus, form.diak select:focus { background-color: orange; } + form.diak input[type="checkbox"] { /* -moz-appearance: none; */ } + from.diak input.ajaxRequest { color: black; background-color: red; } + form.diak input.ajaxRequestDone { color: white; background-color: rgb(0,130,0); } + form.diak select.ajaxRequestDone { color: white; background-color: rgb(0,130,0); } + + form.diak fieldset { border: solid 1px rgb(40,60,80); } + form.diak fieldset legend { + background-color: rgb(140,160,180); + color: white; + font-size:90%; + text-align: left; + margin-left:20px; + padding-left: 10px; + padding-right: 10px; + border: solid 1px rgb(40,60,80); + } + form.diak input.kiemelt { + background-color: rgb(220,220,255); + border-width: 1px 1px 1px 1px; border-color: #777777 #777777 rgb(220,220,255) #777777; + margin-bottom: 0px; padding-top: 2px; + } + form.diak fieldset table.reszletek { width: 100%; background-color: rgb(220,220,255); } + form.diak fieldset table.reszletek th { text-align: right; } + form.diak fieldset table.reszletek h1 { + text-align: center; background-color: rgb(100,100,120); font-size: 12pt; + border-color: rgb(200,200,200); color: white; + } + form.diak table.reszletek legend { background-color: rgb(100,100,120); font-weight: bold; color: white; } + + form.updateTable { color: white; width: 80%; background-color: rgb(180,180,200); margin: 20px auto; } + form.updateTable h1 { text-align: center; border: 1px dotted white; border-width: 1px 0px; background-color: rgb(60,60,80); } + form.updateTable label { color: white; padding: 8px; } + form.updateTable table { margin: 20px auto; background-color: rgb(140,140,180); color: red; } + form.updateTable table td { background-color: rgb(255,255,255); } + form.updateTable table th { background-color: rgb(120,120,160); } + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakTankor.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakTankor.css new file mode 100644 index 00000000..49310124 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakTankor.css @@ -0,0 +1,70 @@ + +table.tankor { + background-color: rgb(100,100,150); + padding-left: 0px; + padding-top: 0em; + padding-bottom: 1em; + color: white; + margin-bottom: 0px; +} + +table.tankor tr th { + background-color: rgb(50, 50, 110); + border-bottom: solid 1px white; +} +table.tankor tr.benne td { + background-color: rgb(100,150,100); +} + +table.tankor tfoot tr td { + background-color: rgb(150,100,150); + text-align: center; +} + + +h2.tankorTablazat { + width:80%; + padding-top:2px; + padding-left:1em; + margin-left:10%; + margin-right:20%; + background-color: rgb(60,60,80); + color: white; + border: 1px dotted white; border-width: 1px 0px; + padding-bottom:0px; + margin-bottom:0px; +} + +form.tankor { + background-color: rgb(100,100,150); + margin-left: 10%; + margin-right: 10%; + padding-left: 0px; + padding-top: 0em; + padding-bottom: 1em; + color: white; + margin-bottom: 2em; +} + +form.tankor h2 { + padding-top:2px; + padding-left:2px; + background-color: rgb(60,60,80); + color: white; + border: 1px dotted white; border-width: 1px 0px; +} +form.tankor label { + padding-left:2em; +} + +form.tankor input { + border: solid 1px blue; +} + +form.tankor input#targytorolg, form.tankor input#mktorolg { + background-color: #880000; + color: white; + padding:0px; + margin:0px; + border: solid 1px red; +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakTankorJelentkezes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakTankorJelentkezes.css new file mode 100644 index 00000000..36ce800f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/diakTankorJelentkezes.css @@ -0,0 +1,126 @@ + +table.tankor { + background-color: rgb(100,100,150); + padding-left: 0px; + padding-top: 0em; + padding-bottom: 1em; + color: white; + margin-bottom: 0px; + empty-cells:show; +} + +table.tankor thead tr th { + background-color: rgb(50, 50, 110); + border-bottom: solid 1px white; + padding-top:0.8em; + padding-bottom:0.8em; +} +table.tankor thead tr.small th { padding:0.2em; } +table.tankor tbody tr th { + text-align: center; background-color: rgb(150,100,150); + border-bottom: solid 1px white; + border-top: solid 1px; + padding:2px; + font-weight: normal; +} +table.tankor tbody tr td.k { text-align: center; background-color: rgb(160,140,180); } + + +table.tankor tr.benne td { + background-color: rgb(100,150,100); +} + +table.tankor tr.ez td { + border-top: solid rgb(0,0,0); border-width: 1px 0px; + color: black ; + background-color: orange; +} +table.tankor tr.ez td input.felvesz { background-color: green; color:white;} +table.tankor tr.ez td input.lead { background-color: red; color:white;} + +table.tankor tr.utkozik td { + border-top: solid rgb(0,0,0); border-width: 1px 0px; + color: #444444; + background-color: rgb(100,100,100); text-decoration: line-through; +} +table.tankor tr.utkozik td input { + background-color:#555555; + color: #777777; + text-decoration: underline !important; +} + +table.tankor tr td { + border: solid white; + border-width: 1px 0px; + color: #ffffff; + padding-left:0.5em; + padding-right:0.5em; +} +table.tankor tr td.szam { text-align: right; } +table.tankor tr td.lok { background-color: rgb(150,200,100); } +table.tankor tr td.lsok { background-color: rgb(150,100,100); } +table.tankor tr td.lkeves { background-color: rgb(150,150,100); } +table.tankor tr td.loktop { border-right:dotted 2px red; } +table.tankor tr td.lokbottom { border-left:dotted 2px yellow; } + +table.tankor tfoot tr td { + background-color: rgb(150,100,150); + text-align: center; + border-top: solid 1px white; + padding-top:0.5em; + padding-bottom:0.5em; + border-bottom: solid 1px rgb(50,50,110); +} + + +h2.tankorTablazat { + width:80%; + padding-top:2px; + padding-left:1em; + margin-left:10%; + margin-right:20%; + background-color: rgb(60,60,80); + color: white; + border: 1px dotted white; border-width: 1px 0px; + padding-bottom:0px; + margin-bottom:0px; +} + +form.tankor { + background-color: rgb(100,100,150); + margin-left: 10%; + margin-right: 10%; + padding-left: 0px; + padding-top: 0em; + padding-bottom: 1em; + color: white; + margin-bottom: 2em; +} + +form.tankor h2 { + padding-top:2px; + padding-left:2px; + background-color: rgb(60,60,80); + color: white; + border: 1px dotted white; border-width: 1px 0px; +} +form.tankor label { + padding-left:2em; +} + +form.tankor input { + border: solid 1px #444444; +} + +form.tankor input#targytorolg, form.tankor input#mktorolg { + background-color: #880000; + color: white; + padding:0px; + margin:0px; + border: solid 1px red; +} + +table.tankor input { font-size:11px; } +input.felvesz { border: solid 1px #777777;} +input.lead { border: solid 1px #777777;} +input[disabled] { border: none; background-color: #cccccc; color: #aaaaaa; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/felmentes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/felmentes.css new file mode 100644 index 00000000..d47fad84 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/felmentes.css @@ -0,0 +1,36 @@ +div.FM { + margin:10px auto; + width: 90%; + padding-bottom:2em; + border-bottom: solid 1px rgb(100,120,140); +} + +div.FM a { color: #4682B4} +div.FM a:hover { color: #1E90FF} + +div.FM h2 { + background-color: rgb(200,240,200); + border-bottom: solid 1px white; +} + +div.FM div { padding: 1em; } +div.FM label { padding:0px 10px 0px 20px; font-weight: bold; font-size:13px; line-height:2em;} + +div.FM.FM1 {background-color:rgb(200,210,220);} +div.FM.FM2 {background-color:rgb(200,210,220);} +div.FM.FM3 {background-color:rgb(200,210,220);} +div.FM.FMZAR, div.FM.FMTAN {background-color:rgb(210,250,210); } + +div.FM div.submit { text-align: center; } + +div.FM table { + width:100%; border: solid 1px #787878; + background-color: #eee; +} +div.FM table th { background-color: #56765f; color: white; border-bottom: solid 1px white;} +div.FM table td { background-color: #e0e0e0;} + +div.FM table tr:hover td { background-color: #f0f0f0;} + +div.FM input[readonly] { background-color: #dddddd; } +div.FM input { background-color: #ffffff; border: solid 1px #787878;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepesitesek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepesitesek.css new file mode 100644 index 00000000..735d7c9c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepesitesek.css @@ -0,0 +1,14 @@ + + form.kepesites { margin: 20px 30px; background-color: #ddd; padding: 30px; } + form.kepesites input[type=text] { width: 800px; padding: 10px; } + form.kepesites label { margin-left: 20px; margin-right: 10px; } + form.kepesites ul {} + form.kepesites span.delTargy, + form.kepesites span.delTanar { color: #aaa; margin: 0px 4px; cursor: pointer; display:none; } + form.kepesites ul li:hover span.delTargy, + form.kepesites ul li:hover span.delTanar { display: inline;} + + form.kepesites ul li:hover span.delTargy:hover, + form.kepesites ul li:hover span.delTanar:hover { color: #f00;} + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzes.css new file mode 100644 index 00000000..44cfe3fd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzes.css @@ -0,0 +1,25 @@ + + form.kepzes { background-color: rgb(70,70,120); color: white; margin: 30px; text-align: left; padding: 0px 0px 10px 0px; } + form.kepzes h1 { background-color: rgb(0,0,80); text-align: center; border: white solid; border-width: 1px 0px; font-size: 16px; padding: 4px 2px; } + + form.kepzes.eles { background-color: rgb(70,120,70); } + form.kepzes.eles h1 { background-color: rgb(0,80,0); } + + form.kepzes.hibernalt { background-color: rgba(0,0,0,0.6); } + + form.kepzes select.osztalySel { height: 400px; min-width: 200px; } + + form.kepzes div { display:table-cell; padding:20px 0px 10px 120px;} + form.kepzes p { text-align: center; } + + form.kepzes span.minih { + display:block;padding: 2px 15px; background-color: rgb(100, 200, 100); border-top:solid 1px white; + } + + form.kepzes option.jellegUgyanaz { color: green; } + + .hidden { display: none; } + + form.kepzes label { display: inline-block; padding: 10px; width: 100px; text-align: right; } + form.kepzes input[type=text] { width: 500px; } + form.kepzes input[type=submit] { width: 500px; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzesOraterv.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzesOraterv.css new file mode 100644 index 00000000..21fb65e4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzesOraterv.css @@ -0,0 +1,100 @@ + + form.kepzesOraterv table { background-color: rgb(20,40,60); color: white; width:98%;} + form.kepzesOraterv table th { background-color: rgb(40,60,80); } + form.kepzesOraterv table th.lezart { background-color: black; font-style:italic; } + form.kepzesOraterv table th.aktiv { background-color: rgb(80,130,80); } + + + form.kepzesOraterv table tbody tr th.nm { background-color: rgb(80,100,140); } + form.kepzesOraterv table tbody tr td.nn { background-color: rgb(140,170,140); } + + form.kepzesOraterv table tbody tr:hover th { background-color: rgb(80,130,80); } + form.kepzesOraterv table tbody tr:hover td { background-color: rgb(80,130,80); } + + form.kepzesOraterv table thead tr th { height:2.5em; } + form.kepzesOraterv table tfoot tr th { height:2.5em; } +/* form.kepzesOraterv table thead tr.evfolyamJel th { height:3em; }*/ + form.kepzesOraterv table thead td:hover { background-color: orange; } + form.kepzesOraterv table tbody tr td:hover { background-color: lightgreen; } + + form.kepzesOraterv table tfoot tr td.alert { background-color: #880000; color:white } + form.kepzesOraterv table tfoot tr td.ok { background-color: #008800; color:white } + + form.kepzesOraterv table th.bigleft { font-size: larger; border-bottom: solid 1px #667788; } + + form.kepzesOraterv table td { background-color: rgb(60,70,80); text-align: center;} + form.kepzesOraterv table td.lezart { background-color: black;} + form.kepzesOraterv table td.aktiv { background-color: rgb(80,130,80); } +/* + form.kepzesOraterv table td { max-width:100px; font-size:10px; } + form.kepzesOraterv table td div { display: none;} + form.kepzesOraterv table td div { display: none;} + form.kepzesOraterv table td:hover span { display: none;} + form.kepzesOraterv table td:hover div { display: block; background-color: rgba(100,100,100,0.5); } +*/ + +/* + form.kepzesOraterv table td.nn select, form.kepzesOraterv table td.nn input { + border-bottom: solid 1px white; + background-color: rgb(140,170,140); color: white; + } +*/ + form.kepzesOraterv table tbody td { background-color: #222222; } + + form.kepzesOraterv table tfoot tr.ures th, + form.kepzesOraterv table tfoot tr.ures td { background-color: #888888; color:black; padding: 0 8px;} + + form.kepzesOraterv table tbody th { text-align:left; font-weight:normal; padding: 0px 8px; } + + form.kepzesOraterv table td input { +/* background-color: rgb(20,40,60); color: white; + border: solid 1px black; +*/ text-align: right; + + } + form.kepzesOraterv table td select{ +/* background-color: rgb(20,40,60); color: white; + border: solid 1px black; +*/ font-size:10px; + padding:2px; + width:70px; + + } + form.kepzesOraterv table td input:focus, + form.kepzesOraterv table td select:focus { + background-color: rgb(140,160,180); color:white; } + + + form.kepzesOraterv table td select option { font-size:smaller;} + form.kepzesOraterv table td.lezart input { background-color: black } + + form.kepzesOraterv table th a { text-decoration: none; color: white; border: none; } + form.kepzesOraterv table th a:hover { text-decoration: underline; } + + form.kepzesOraterv table th span.tan { color: #aaaaaa; font-weight:normal; font-size:smaller; } + + form.kepzesOraterv table input.torol { background-color: #880000; border: solid 1px red; color: white;} + form.kepzesOraterv table input.felvesz { background-color: #008800; border: solid 1px lightgreen; color: white;} + + form.kepzesOraterv table input:hover,form.kepzesOraterv table select:hover { outline:orange 1px solid; } + form.kepzesOraterv table input.torol:hover { background-color: #FF0000; border: solid 1px lightred; color: white;} + + form.kepzesOraterv tr.rogzitett td select, + form.kepzesOraterv tr.rogzitett td input { display: none; } + form.kepzesOraterv tr span.kovetelmeny { display: none; } + form.kepzesOraterv tr.rogzitett td div.felev1 { ddisplay: none; } + form.kepzesOraterv tr .felev2 { display: none; } + + form.kepzesOraterv thead th > span { padding: 10px 5px; } + form.kepzesOraterv thead span.icon-refresh { color: darkorange; } + form.kepzesOraterv thead span:hover span.icon-refresh { color: yellow; } + form.kepzesOraterv thead span:hover { cursor: pointer; background-color: #88a; } +/* + form.kepzesOraterv tr.rogzitett td div.felev1 { background: red } + form.kepzesOraterv tr.rogzitett td div.felev2 { background: blue; } + form.kepzesOraterv tr.rogzitett td span.oraszam { color: yellow; } + form.kepzesOraterv tr.rogzitett td span.kovetelmeny { color: orange; } +*/ + + form#oratervMasolas { background-color: darkorange; width: 98%; margin: auto; text-align: center; padding-bottom: 5px; } + form#oratervMasolas h1 { border-bottom: 2px yellow solid; font-size: 14px; font-weight: bold; background-color: #a40; color: white; padding: 4px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzesTankor.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzesTankor.css new file mode 100644 index 00000000..b1987009 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/kepzesTankor.css @@ -0,0 +1,13 @@ + + +span.valaszthato { + background-color: #eeeeee; + font-style:italic; +} + +/* + + form.kepzes { background-color: rgb(100,70,120); color: white; margin: 30px; text-align: center; padding-bottom: 10px; } + form.kepzes h1 { background-color: rgb(60,0,80); border: white solid; border-width: 1px 0px; font-size: 16px; padding: 2px; } + +*/ \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/munkakozosseg.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/munkakozosseg.css new file mode 100644 index 00000000..5ae89b85 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/munkakozosseg.css @@ -0,0 +1,47 @@ +form.mk { + background-color: rgb(100,100,150); + margin-left: 10%; + margin-right: 10%; + padding-left: 0px; + padding-top: 0em; + padding-bottom: 1em; + color: white; + margin-bottom: 2em; + border-bottom: solid 1px black; +} + +form.mk h2 { + padding-top:2px; + padding-left:2px; + background-color: rgb(60,60,80); + color: white; + border: 10px solid white; border-width: 0px 0px 1px 0px; + margin-bottom: 10px; +} +form.mk h2 span { color: yellow; font-style: italic; font-weight: normal; } + +form.mk div.leiras { margin: -10px 0 10px 0; padding: 10px; background: rgba(255,255,255,0.5); color: black; } +form.mk label {padding-left:2em;} + +form.mk input {} + +form.mk input#targytorolg, form.mk input#mktorolg { + background-color: #880000; + color: white; + padding:0px; + margin:0px; + border: solid 1px red; +} + +form.mk.uj h2 { border-left: solid 2px #00ff00; } +form.mk.uj:hover h2 { background-color: #005500;} +form.mk.torol h2 { border-left: solid 2px #ff0000; } +form.mk.torol:hover h2 { background-color: #550000;} + +div.tagok { display: inline-block; margin-left:2em; } +div.tagok div.header { background-color: rgba(0,0,0,0.4); margin-top:10px; padding:2px 4px; border-bottom: solid 1px white; } +div.tagok:hover div.header {background-color: rgba(0,255,0,0.4);} +div.tagok div.header label {padding:0px;} +div.submit {display: inline-block; padding-left:2em; vartical-align: middle;} + +div.arckepContainer,div.arckep--container {display: inline-block; margin:2px;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/osztaly.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/osztaly.css new file mode 100644 index 00000000..c13d310c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/osztaly.css @@ -0,0 +1,60 @@ + + form.osztalyForm { padding: 0px; background-color: rgb(100,100,150); margin: 40px auto 10px auto; width: 90%; color: white; } + form.osztalyForm h1 { text-align: left; padding:4px; border-bottom: 1px solid white; border-width: 1px 0px; background-color: rgb(60,60,80); margin-top:0px; margin-bottom:20px; } + form.osztalyForm:hover h1 {border-bottom: solid 1px #6464C8;} + form.osztalyForm li { background-color: rgb(60,60,100); margin-top: 2px; padding: 5px 2px 5px 2px; } + form.osztalyForm table { width: 100%; background-color: #aaaaaa;} + form.osztalyForm table th { background-color: rgb(20,40,60); padding: 4px 8px; } + form.osztalyForm table td { background-color: rgb(60,130,120); width: 33%; padding:0px 4px; height:1.8em; } + + form.osztalyForm hr { background-color: #eeeeee; margin-top: 22px; margin-bottom: 22px; padding: 0px; } + + form.osztalyForm ol li:hover { background-color: rgb(100,100,200); } + form.osztalyForm input[type=submit] { width: 100px; margin:4px; } + form.osztalyForm input[type=submit]:hover { outline: solid 2px cornflowerblue; } + + form.osztalyForm ol li div.kepzes { float: right; background-color: rgb(60,100,60); position: relative; top: -5px; padding: 4px 5px 1px 1px; height: 19px;} + form.osztalyForm ol li:hover div.kepzes { background-color: rgb(200,100,200); } + form.osztalyForm ol li div.hideShowContainer { float: right; background-color: rgb(160,0,0); position: relative; top: -4px; padding: 5px 5px 2px 5px; margin-left: 10px; } + form.osztalyForm ol li div.kepzes input[type=text] { margin: 0; padding: 0; border: none; position: relative; top: -2px; } + form.osztalyForm ol li div.kepzes span.onClickHideShow { font-size: 14px; cursor: pointer; padding: 0; } + form.osztalyForm ol li div.kepzes ul.openable { + background: #ddaaee; list-style-type: none; position: absolute; z-index: 20; width: 600px; right: 0px; top: 25px; padding: 0px 10px 10px 10px; + border: rgb(200,100,200) 2px solid; border-radius: 4px; + } + form.osztalyForm ol li div.kepzes ul.openable li { background: rgb(100,50,100); } + form.osztalyForm ol li div.kepzes ul.openable li:hover { background: rgb(150,75,150); } + form.osztalyForm ol li div.kepzes ul.openable li.uj { background: rgb(100,75,150); padding-right: 175px; } + form.osztalyForm ol li div.kepzes ul.openable li.close { background: transparent; color: red; cursor: pointer; } + form.osztalyForm ol li div.kepzes ul.openable li.close:hover { color: white; } + form.osztalyForm ol li div.kepzes ul.openable span.datum { float: right; } + +/* form.osztalyForm ol li div.kepzes label.chk { background-color: rgb(250,140,60);}*/ + form.osztalyForm ol li div.kepzes span { padding: 2px 4px; position: relative; top: 0px; margin-right: 1px; margin-left:1px; } + form.osztalyForm ol li div.kepzes span.chk { background-color: rgb(250,140,60); } + form.osztalyForm ol li div.kepzes span.mas { background-color: rgb(160,100,60); } + form.osztalyForm div.datum { background: rgb(160,0,0); text-align: center; border: 1px dotted white; } + + form.updateTable { padding: 0px; background-color: rgb(150,100,150); margin: 120px auto 20px auto; width: 90%; color: white; } + form.updateTable h1 { text-align: center; padding:4px; border-bottom: 1px solid white; border-width: 1px 0px; background-color: rgb(60,60,80); margin-top:0px; margin-bottom:20px; } + form.updateTable li { background-color: rgb(60,60,100); margin-top: 2px; padding: 5px 2px 5px 2px; } + form.updateTable table { width: 100%; background-color: #aaaaaa;} + form.updateTable table th { background-color: rgb(20,40,60); padding: 4px 8px; } + form.updateTable table td { background-color: rgb(60,130,120); width: 33%; padding:0px 4px; height:1.8em; } + + form.uj div { padding: 5px 10px; display: none; } + form.uj div#divOsztalyJelleg { display: block; } + form.uj div#divKezdoTanev, form.uj div#divVegzoTanev, form.uj div#divJel { display: inline-block; width: 300px; } + form.uj ul#evfolyamJelek { list-style-type: none; margin: 0; padding: 0; } + form.uj ul#evfolyamJelek li { display: inline-block; height: 40px; vertical-align: top; border-right: 1px solid white; padding: 10px; } + form.uj ul#evfolyamJelek li.kivalasztott { background-color: #2aa; } + + form.uj label { margin-right: 20px; } + form.uj input[type="submit"] { height:2em; margin: 10px 80px; } + + form.osztalyForm span.data { margin: 20px; background-color: white; color: black; padding: 5px; font-size: 12px; font-weight: bold; } + form.osztalyForm ol li span.diakNev { padding-left:0.5em; cursor:pointer; } + form.osztalyForm ol li span.datumok { color: #888; padding-left:1em; } + + span.diakNaploSorszam { padding-left:4px; padding-right:4px; background-color: cornflowerblue; color:white; border-radius: 2px; margin: 0px 4px;} + span.diakJogviszony { padding-left:4px; padding-right:4px; background-color: orange; color:white; border-radius: 2px; margin: 0px 4px;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tanar.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tanar.css new file mode 100644 index 00000000..2f80f013 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tanar.css @@ -0,0 +1,60 @@ + + + form.tanar { background-color: white; } + + form.tanar { margin: 5px 30px 20px 20px; font-size:10px; } + form.tanar h1 { border: dotted white; border-width: 1px 0px; background-color: rgb(80,100,120); font-size: 20px; text-align: center; } + form.tanar input, form.tanar select { + font-size:10px; border: solid 1px #777777; margin-left: 3px; + padding-left: 2px; + } + form.tanar input.kiemelt { background-color: rgb(255,255,100); border-width: 1px 1px 0px 1px; } + form.tanar label { font-size:11px; } + form.tanar label.kotelezo { color:rgb(100,20,20); } + form.tanar input:focus { background-color: orange; } + + form.tanar fieldset { border: solid 1px rgb(40,60,80); } + form.tanar fieldset th { text-align: right; } + form.tanar fieldset legend { + background-color: rgb(140,160,180); + color: white; + font-size:90%; + text-align: left; + margin-left:20px; + padding-left: 10px; + padding-right: 10px; + border: solid 1px rgb(40,60,80); + } + form.tanar fieldset:hover legend { background-color: navy; } + + form.tanar input.kiemelt { + background-color: rgb(220,220,255); + border-width: 1px 1px 1px 1px; border-color: #777777 #777777 rgb(220,220,255) #777777; + margin-bottom: 0px; padding-top: 2px; + } + + form.tanar table#kepesites { border-spacing: 0; margin: 10px 0; width: 800px; } + form.tanar table#kepesites th, + form.tanar table#kepesites td { text-align: left; border-left: 1px dotted black; padding: 0 10px; } + form.tanar table#kepesites th { padding-bottom: 5px; } + form.tanar table#kepesites tbody tr:last-child td { padding-bottom: 10px; } + form.tanar table#kepesites tr#ujKepesites { display: none; } + form.tanar table#kepesites tr#ujKepesites td { padding-top: 10px; } + form.tanar table#kepesites tr#uj td { padding: 6px 10px; cursor: pointer; border-top: 1px none #888; border-bottom: 1px dotted black; } + form.tanar table#kepesites td#kepesitesNev { width: 300px; } + form.tanar table#kepesites tr#ujKepesites input[type=text] { width: 260px; } + form.tanar table#kepesites tr#hozzarendel th { padding: 15px 10px 10px 10px; } + + form.updateTable { color: white; width: 80%; background-color: rgb(180,180,200); margin: 20px auto; } + form.updateTable h1 { text-align: center; border: 1px dotted white; border-width: 1px 0px; background-color: rgb(60,60,80); } + form.updateTable label { color: white; padding: 8px; } + form.updateTable table { margin: 20px auto; background-color: rgb(140,140,180); color: red; } + form.updateTable table td { background-color: rgb(255,255,255); } + form.updateTable table th { background-color: rgb(120,120,160); } + + + from.tanar input.ajaxRequest { color: black; background-color: red; } + form.tanar input.ajaxRequestDone { color: white; background-color: rgb(0,130,0); } + form.tanar select.ajaxRequestDone { color: white; background-color: rgb(0,130,0); } + form.tanar input.ajaxRequestError { color: white; background-color: rgb(130,0,0); } + form.tanar select.ajaxRequestError { color: white; background-color: rgb(130,0,0); } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankor.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankor.css new file mode 100644 index 00000000..f81c35f1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankor.css @@ -0,0 +1,83 @@ +form.tankor { + background-color: rgb(100,100,150); + margin-left: 5%; + margin-right: 5%; + padding-left: 0px; + padding-top: 0em; + padding-bottom: 1em; + color: white; + margin-bottom: 2em; +} +form.tankor:hover { background-color: rgb(120,120,170); } +form.meglevo { background-color: rgb(100,150,100); } +form.meglevo:hover { background-color: rgb(110,160,110); } + +form.tankor h2 { + padding-top:2px; + padding-left:2px; + background-color: rgb(60,60,80); + color: white; + border-bottom: 1px solid white; + border-left: 0.4em solid lightgreen; + margin-bottom: 0em; +} +form.tankor:hover h2 { border-left: solid 0.4em rgb(242,0,86); } + +form.meglevo h2 { + background-color: lightgreen; + color: rgb(60,60,80); +} + +form.tankor label { + padding-left:0.4em; +} + + +form.tankor input:hover, +form.tankor label:hover { + text-decoration: underline; +} + +form.tankor input { + border: solid 1px blue; +} + +form.tankor input.lezart { background-color: #aaaaaa; border: solid 1px black; } + +form.tankor input#torolg { + background-color: #880000; + color: white; + padding:0px 1em; + margin:0px; + border: solid 1px red; +} + +form.tankor table tr th.sz0 { background-color: green; } +form.tankor table tr th.sz1 { background-color: darkgreen; } +form.tankor table tr td.sz0 { background-color: green; text-align: center;} +form.tankor table tr td.sz1 { background-color: darkgreen; text-align:center; } +form.tankor table tr td:hover { outline: solid 1px orange; } + +form.tankor table td.tankorCsoportok div.header{ background-color: #1E90FF; color:white; border-bottom: solid 1px white; width:180px; text-align: center;} + +form.tankor table td.tankorCsoportok { + border: solid 1px white; + background-color: rgba(0,0,0,0.2); + vertical-align: top; +} +form.tankor table td.tankorCsoportok a { color: lightblue; text-decoration:none;} +form.tankor table td.tankorCsoportok a:hover { color: white; text-decoration:underline; } +form.tankor table td.tankorCsoportok ul { list-style-type: circle; margin-left:14px; padding:4px;} + +form.meglevo table tbody tr.vanTag th, form.meglevo table tbody tr.vanTag td { background-color: rgb(60,120,80); } + +span.dob { + background-color: #2799bb !important; + margin-right:5px; +} + +form.tankor div.sel { background-color: lightgreen; color:black; } +form.tankor div:hover { background-color: #2799bb; } + +form.tankor p { padding: 0em 1em; } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorDiak.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorDiak.css new file mode 100644 index 00000000..a70a4b7f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorDiak.css @@ -0,0 +1,128 @@ +@media screen,handheld { +table.tankor { + background-color: rgb(100,100,150); + margin-left: 10%; + margin-right: 10%; + padding-left: 0px; + padding-top: 0em; + color: white; +} + +table.bentlevo thead tr th { background-color: lightgreen; border-bottom: solid 2px green; color: black;} + + +h2.tankorTablazat { + width:90%; + padding-top:2px; + padding-left:1em; + margin-left:10%; + margin-right:20%; + background-color: rgb(60,60,80); + color: white; + border: 1px dotted white; border-width: 1px 0px; + padding-bottom:0px; + margin-bottom:0px; +} + +form.tankor { + background-color: #eeeeee; + margin-left: 3%; + margin-right: 3%; + padding-left: 0px; + padding-top: 0em; + margin-bottom:4em; +} +form.tankor table th { + height:1.8em; + font-weight:normal; + padding:0px 4px; + background-color: rgb(100,120,100); + border-bottom: solid 1px rgb(200,220,200); + color:white; +} +form.tankor table td { +/* background-color: rgb(100,100,110);*/ + padding:1px 4px; +} +form.tankor table tr:nth-child(even) td { background-color: #dddddd; } + +form.tankor table tr.magantanulo td { + background-color: rgb(150,100,150); +} + +form.tankor h2 { + padding-top:2px; + padding-left:2px; + background-color: rgb(60,60,80); + color: white; + border-color: white; + border-width: 1px 0px; + border-style: none none solid none; + margin-bottom: 0px; + margin-top: 10px; +} +form.tankor:hover h2 { border-right: solid 3px lightgreen; } + +form.tankor label { + padding-left:1em; +} + + +form.tankor input[type=checkbox]:checked:after { display:block; content: ""; display:block;height:14px; width:4px; background-color: lightgreen; border-radius:2px; top:-2px; left:-6px; position:relative; border: solid 1px green; } +form.tankor input[type=checkbox].lany:checked:after { background-color: magenta; border: solid 1px #ff3366;} +form.tankor input[type=checkbox].fiu:checked:after { background-color: #1e90ff; border: solid 1px lightblue;} + +form.tankor input#targytorolg, form.tankor input#mktorolg { + background-color: #880000; + color: white; + padding:0px; + margin:0px; + border: solid 1px red; +} + +form#tankorDiak table tbody tr td input { + background-color: green; +} + +table.egyosztaly { + background-color: #eeeeee; +} + +/* neme */ +td.fiu { color:blue; cursor: pointer} +td.lany { color:magenta; cursor:pointer } +/* ---- */ + + +form.tankor span { + font-size: 10px; +} + +form.tankor span.kepzes0 { + color:white; + background-color: #778877; + padding-left: 3px; padding-right:3px; + margin-left:2px; + -moz-border-radius: 1px; + border-radius: 1px; + white-space: nowrap; +} + +form.tankor span.kepzes1 { + color: white; + background-color: #777788; + padding-left: 3px; padding-right:3px; + margin-left:2px; + -moz-border-radius: 1px; + border-radius: 1px; + white-space: nowrap; + +} + +} + +@media print { + + form.tankor { width: 100%; } + form.tankor table { width:100%; } +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorLetszam.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorLetszam.css new file mode 100644 index 00000000..981ac34d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorLetszam.css @@ -0,0 +1,7 @@ + + table.tankorLetszam { background-color: #aaaaff; } + table.tankorLetszam tr th { background-color: #aa7788; color: white; border-bottom: solid 1px white; height:2em;} + table.tankorLetszam tr td { background-color: #eeeeee; } + table.tankorLetszam tr td.letszam { text-align:right; padding-right:4px; } + table.tankorLetszam tr:hover td { background-color: #ffffff; } + table.tankorLetszam tr td a { display: block; color:black; text-decoration: none;} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorSzemeszter.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorSzemeszter.css new file mode 100644 index 00000000..ef113b38 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorSzemeszter.css @@ -0,0 +1,24 @@ + + form.tankorSzemeszter table { background-color: rgb(20,40,60); color: white; width:90%;} + form.tankorSzemeszter table th { background-color: rgb(40,60,80); } + form.tankorSzemeszter table th.aktualis { background-color: rgb(80,60,40); } + form.tankorSzemeszter table th.lezart { background-color: black; font-style:italic; } + form.tankorSzemeszter table th.aktiv { background-color: rgb(80,130,80); } + + form.tankorSzemeszter table th.bigleft { font-size: larger; border-bottom: solid 1px #667788; } + + form.tankorSzemeszter table td { background-color: rgb(60,70,80); text-align: center;} + form.tankorSzemeszter table td.aktualis { background-color: rgb(80,70,60); } + form.tankorSzemeszter table td.lezart { background-color: black;} + form.tankorSzemeszter table td.aktiv { background-color: rgb(80,130,80); } + + form.tankorSzemeszter table td input { + background-color: rgb(20,40,60); color: white; + border: solid 1px black; + } + form.tankorSzemeszter table td.lezart input { background-color: black } + + form.tankorSzemeszter table th a { text-decoration: none; color: white; border: none; } + form.tankorSzemeszter table th a:hover { text-decoration: underline; } + + form.tankorSzemeszter table th span.tan { color: #aaaaaa; font-weight:normal; font-size:smaller; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorTanar.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorTanar.css new file mode 100644 index 00000000..50a9c3e9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorTanar.css @@ -0,0 +1,39 @@ +form.tankor { + margin-left: 20px; + margin-right: 20px; + padding-left: 0px; + padding-top: 0em; + padding-bottom: 1em; + margin-bottom: 2em; +} +form.tankor h2 { + padding-top:2px; + padding-left:2px; + background-color: rgb(60,60,80); + color: white; + border-bottom: solid 1px white; +} +form.tankor label { + padding-left:2em; +} + +form.tankor input { + border: solid 1px blue; +} + +form.tankor select, form.tankor option { + +} + +form.tankor a { color: rgb(100, 149, 237); } +form.tankor a:hover { color: rgb(110, 159, 247); } +form.tankor a span { color: #555555; margin:1px; padding-left:2px; padding-right: 2px; text-decoration: none;} +form.tankor a:hover span { color:red; } + +form.tankor table.felosztas { width:100%; background-color: #eeeeee; border-spacing: 0px; } +form.tankor table.felosztas th { background-color: rgb(100, 149, 237); padding: 5px 2px; border-bottom: solid 2px violet; color:white; } +form.tankor table.felosztas td { background-color: ; padding: 2px 2px 2px 10px; } +form.tankor table.felosztas tr:nth-child(odd) td { background-color: #fafafa; } +form.tankor table.felosztas tr:hover td { } + +select.vantanara { border: solid 1px lime;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorTanarHozzarendeles.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorTanarHozzarendeles.css new file mode 100644 index 00000000..a346f49c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankorTanarHozzarendeles.css @@ -0,0 +1,94 @@ + + + div#statusz { border-radius: 0 0 10px 10px; width:850px; background: rgba(170,170,170); color: white; margin: 0 auto; position:relative; top: -12px; left:-34px; z-index: auto; padding: 0 5px;} + div#statusz #filter { cursor: pointer; background-color: rgba(100,100,100,0.7); padding: 5px; display: inline-block; margin: 0 0 0 10px; height:16px;} + div#statusz #filter:hover { background-color: #4285F4; } + div#statusz #filter:hover span.icon-chevron-right { color: white; } + div#statusz #limit { display: inline-block; background-color: rgba(100,100,100,0.7); padding: 3px 5px; margin: 0 1px; } + div#statusz #limit:hover { background-color: rgba(100,100,100,1); } + div#statusz #limit span#minusz { background-color: rgba(130,160,255,0.7); padding: 4px 5px; margin: 0; cursor: pointer; display: inline-block; position: relative; } + div#statusz #limit span#plusz { background-color: rgba(255,160,130,0.7); padding: 4px 5px; margin: 0; cursor: pointer; display: inline-block; position: relative; } + div#statusz #limit i { background-color: rgba(200,200,200,0.9); color: rgb(100,100,100); padding: 2px 5px; } + div#statusz #limit ul.limit { display: none; position: absolute; top: 22px; left: 0; right: 0; list-style-type: none; margin: 0; padding: 5px 0; text-align: center; background-color: rgba(100,100,100,1); } + div#statusz #limit ul.limit li { margin: 0; padding: 4px; } + div#statusz #limit ul.limit li:hover { background-color: rgb(200,200,200); color: rgb(80,80,80); } + div#statusz #limit ul.limit li.selected { background-color: rgba(250,100,100,0.5); } + div#statusz #stat { background-color: rgba(100,100,100,0.7); display: inline-block; margin: 0 0 0 10px; height: 16px; padding: 5px; } + + #updateWindowSideContent div.slideContainer { border-bottom: 1px dotted #aaa; cursor: pointer; padding: 3px 10px; } + #updateWindowSideContent div.slideContainer span.icon-chevron-up, + #updateWindowSideContent div.slideContainer span.icon-chevron-down { float: right; } + #updateWindowSideContent div.slideContainer ul { display: none; list-style-type: none; margin: 10px 0; cursor: default; padding: 0 10px; } + #updateWindowSideContent div.slideContainer ul li { display: inline-block; } + #updateWindowSideContent div.slideContainer ul li.tanarNelkuli { margin-bottom: 10px; } + #updateWindowSideContent input[type=submit] { width: 100%; } + + #updateWindowSideContent div.slideContainer ul li { width: 98%; } + #updateWindowSideContent div#szOsztaly.slideContainer ul li { width: 100px; } + + #updateWindowSide p.tankorNev { text-align: center; border-bottom: solid 1px #ddd; padding: 8px 0; margin: 0; } + #updateWindowSide div.slideToggleContainer ul { list-style-type: none; margin: 10px 0px; display: none; cursor: default; padding: 0 10px; } + #updateWindowSide div.slideToggleContainer ul li { display: inline-block; width: 100px; } + #updateWindowSide div.slideToggleContainer { cursor: pointer; margin: 0; padding: 3px 10px; border-bottom: 1px dotted #aaa; } + #updateWindowSide div.slideToggleContainer span.icon-chevron-down { float: right; z-index: 0; } + #updateWindowSide div.slideToggleContainer span.changed { color: yellow; } + #updateWindowSide ul#tankorSzemeszter li { width: 120px; } + #updateWindowSide ul#tankorSzemeszter input { width: 40px; text-align: right;} + + #updateWindowSide p.tankorModosit { cursor: pointer; color: yellow; text-align: right; margin: 0; padding: 0 10px 0 0; display: none; background-color: rgba(240,240,220,0.5); border-bottom: 2px solid yellow; color: rgb(70,70,70); color: white; } + #updateWindowSide span.tankorNevExtra { cursor: pointer;} + #updateWindowSide span.tankorNevExtra.changed { color: yellow; } + #updateWindowSide input#tankorNevExtra { width: 50px; display: none; } + + + + /* table-layout:fixed; */ + div.tanarTankor { margin: 40px auto auto 2px;} + div.tanarTankor table { font-size:x-small; background-color: #ababab; } + div.tanarTankor table thead tr th { background-color: white; cursor: pointer; } + div.tanarTankor table thead tr td { border-bottom: solid 1px white; cursor:pointer;} + div.tanarTankor table thead tr td.slctd { border-bottom: solid 1px cornflowerblue; } + div.tanarTankor table thead tr th.targy { height: 30px; } + div.tanarTankor table thead tr td.tankor { text-align: center; height: 30px; border-bottom: red 4px solid; } + div.tanarTankor table thead tr td.tankor.kesz { border-bottom: green 4px solid; } + div.tanarTankor table thead tr td.tankor.tobb { border-bottom: yellow 4px solid; } + div.tanarTankor table thead tr td.tankor.bontasHiba { border-top: red 4px solid; } + div.tanarTankor table thead tr th span#keszTanarDb, + div.tanarTankor table thead tr th span#osszTanarDb, + div.tanarTankor table thead tr th span#keszTankorDb, + div.tanarTankor table thead tr th span#osszTankorDb { color: red; } + + div.tanarTankor table tbody tr.szurt { display: none; } + div.tanarTankor table tbody tr.csukott { display: none; } + div.tanarTankor table tbody tr th { height:20px; background-color: white; } + div.tanarTankor table tbody tr td.lekotott { padding: 0 4px; } + div.tanarTankor table tbody tr.ok td.lekotott { border-right: 4px solid green; border-left: 4px solid green; background-color: #88ffaa; } + div.tanarTankor table tbody tr.plusz td.lekotott { border-right: 4px solid red; border-left: 4px solid #cdcdcd; } + div.tanarTankor table tbody tr.minusz td.lekotott { border-right: 4px solid #cdcdcd; border-left: 4px solid blue; } + div.tanarTankor table tbody tr:hover th { background-color:orange } + + div.tanarTankor table tbody tr td { min-width:20px; text-align:center; background-color: #efefef;} + + div.tanarTankor input[type="checkbox"] { display:none; } + div.tanarTankor input[type="checkbox"]:checked { display:table-cell; } + div.tanarTankor table tbody tr th.slctd { background-color: rgba(0,200,0,0.7); } + div.tanarTankor table tbody tr td:hover input[type="checkbox"] { display:table-cell; } + +pre { text-align: left; } + div.tankorTanar table#tt thead tr th.szurt { display: none; } + div.tankorTanar table#tt thead tr td.szurt { display: none; } + div.tankorTanar table#tt tbody tr td.szurt { display: none; } + + div.tanarTankor table tbody td.disable { background-color: #888; } + + div.rot { + background-color: #eeeeee; + -webkit-transform: rotate(-90deg); + -moz-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + -o-transform: rotate(-90deg); + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); + } + + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/terem.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/terem.css new file mode 100644 index 00000000..cb91e123 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/terem.css @@ -0,0 +1,15 @@ + + div.terem { text-align: center; background-color: #ffffff; } + div.terem table { margin: auto; background-color: #555555; } + div.terem table th { background-color: white; padding: 2px 4px; font-size:large; background-color: #555555; color:white; border-bottom:solid 2px white; padding:1px 10px;} + div.terem table td { background-color: rgb(240,240,240); text-align: left; padding: 2px 4px; } + div.terem table tr:hover td { background-color: #826373; color: white; } + div.terem table tr td a { color: black; } + div.terem table tr:hover td a { color: white; } + + form.terem h1 { background-color: #555555; color:white; margin:0px; padding:0.4em 0.2em; border-bottom: solid 2px lightgreen;} + + form.terem { background-color: ; width: 80%; margin: auto; padding: 20px; text-align: center; } + form.terem label { margin-left: 10px; margin-right:1em; } + form.terem div.tipus { width: 200px; float: right; background-color: #dddddd; border-width: 0px 1px 1px 1px; border-style: solid; border-color: #555555;} +/* form.terem label, form.terem input, form.terem select { vertical-align: top; }*/ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tovabbkepzes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tovabbkepzes.css new file mode 100644 index 00000000..1769eb87 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tovabbkepzes.css @@ -0,0 +1,89 @@ +@charset "utf-8"; + + h1 { margin-left:30px;} + h2 { margin-left:30px;} + + table.tovabbkepzes {background-color: white; width:90%;} + + table.tovabbkepzes thead tr th {background-color: #eeeeee; border-bottom: solid 1px #555555; padding: 5px; } + + table.tovabbkepzes tbody tr th { border-left: solid 2px white; } + table.tovabbkepzes tbody tr:nth-child(even) td { background-color: #F8F8F9;} + table.tovabbkepzes tbody tr:hover th:nth-child(1) { border-left: solid 2px cornflowerblue; } + table.tovabbkepzes tbody tr:hover td { background-color: rgba(230,230,230,0.8); } + + table.tovabbkepzes tbody tr td { padding: 0px 3px; background-color: white; border-bottom: solid 1px #eeeeee;} + table.tovabbkepzes tbody tr th span { color: cornflowerblue;} + + table.tovabbkepzes tbody tr.megszűnt td input.currency, + table.tovabbkepzes tbody tr.elutasított td input.currency { background-color: #aaa; color:white;} + table.tovabbkepzes tbody tr.elutasított td { background-color: red; color:white;} + table.tovabbkepzes tbody tr.jóváhagyott td { background-color: #49A74C; color:white;} + table.tovabbkepzes tbody tr.teljesített td { background-color: #2F6A31; color:white;} + table.tovabbkepzes tbody tr.megszűnt td { text-decoration: line-through;} + table.tovabbkepzes tbody tr.terv td { } + + table.tovabbkepzes tbody tr td select.tovabbkepzesNev { width:220px; } + + table.tovabbkepzes tbody tr td.osszeg, table.tovabbkepzes tbody tr th.osszeg { white-space: nowrap; } + + table.tovabbkepzes input.currency { text-align:right; width:60px;} + table.tovabbkepzes input.sumCurrency { text-align:right; width:60px;} + table.tovabbkepzes input.hiba { outline: solid 1px red; } + table.tovabbkepzes td.oraszam { text-align:right; white-space: nowrap; } + table.tovabbkepzes td.oraszam input { width:50px; text-align:right;} + + table.tovabbkepzes input.date { width:70px; text-align:center;} + + table.tovabbkepzes tfoot tr td,table.tovabbkepzes tfoot tr th + { padding: 3px 3px; background-color: #eeeeee; + border-top: solid 1px #888888; + } + + #ujTovabbkepzes form { margin:30px 50px; padding:30px; border: solid 1px #ddd; +background: rgb(255,255,255); +background: -moz-linear-gradient(-45deg, rgba(255,255,255,1) 0%, rgba(246,246,246,1) 47%, rgba(237,237,237,1) 100%); +background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(47%,rgba(246,246,246,1)), color-stop(100%,rgba(237,237,237,1))); +background: -webkit-linear-gradient(-45deg, rgba(255,255,255,1) 0%,rgba(246,246,246,1) 47%,rgba(237,237,237,1) 100%); +background: -o-linear-gradient(-45deg, rgba(255,255,255,1) 0%,rgba(246,246,246,1) 47%,rgba(237,237,237,1) 100%); +background: -ms-linear-gradient(-45deg, rgba(255,255,255,1) 0%,rgba(246,246,246,1) 47%,rgba(237,237,237,1) 100%); +background: linear-gradient(135deg, rgba(255,255,255,1) 0%,rgba(246,246,246,1) 47%,rgba(237,237,237,1) 100%); + + } + form#ujTovabbkepzes span.ujIntezmeny { color: #eeeeee; } + form#ujTovabbkepzes span.ujIntezmeny:hover { color: cornflowerblue; } + + form#ujTovabbkepzes table tbody tr th { text-align: right; } + form#ujTovabbkepzes table tbody tr th:after { content: ":" } + + div.separator { + height:1px; width: 80%; + margin:40px auto; + background-color: #eeeeee; + } + + #tanarAdatok input.ajaxDone { background-color:lightgreen; } + #tanarAdatok input.ajaxError { background-color:red; } + + th.tovabbkepzesCiklus div { margin:0px auto; border: solid 1px #888; height:10px; display:block; width:120px; background-color:#ddd; color:white; font-weight:normal; font-size:7px;} + th.tovabbkepzesCiklus div span { display:table-cell;height:8px; color: white !important;} + th.tovabbkepzesCiklus div span.terv { background-color: #03A9F4;} + th.tovabbkepzesCiklus div span.teljesitett { background-color: green; } + th.tovabbkepzesCiklus div span.jovahagyott {background-color: #49A74C;} + + th.tovabbkepzesCiklus span.forduloEv { font-size:6px; color: cornflowerblue; } + th.tovabbkepzesCiklus span.forduloEv.left { float:left; margin-left:8px; } + th.tovabbkepzesCiklus span.forduloEv.right { float:right; margin-right:8px; } + + th.tovabbkepzesCiklus.alert span.forduloEv { color:#E91E63; } + + #tanarTovabbkepzesForduloDt span[class*='icon'].alert2 { color: #FFEB3B;} + #tanarTovabbkepzesForduloDt span[class*='icon'].alert1 { color: orange;} + #tanarTovabbkepzesForduloDt span[class*='icon'].alert0 { color: red;} + #tanarTovabbkepzesForduloDt span[class*='icon'].alert { color: #e91E63;} + #tanarTovabbkepzesForduloDt span[class*='icon'].kesz { color: green;} + #tanarTovabbkepzesForduloDt span[class*='icon'].folyamatban { color: lightgreen;} + #tanarTovabbkepzesForduloDt span[class*='icon'].varakozik { color: #888;} + + #tovabbkepzesNavi { text-align:center; width:;} + input.datum {width:70px;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/valtas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/valtas.css new file mode 100644 index 00000000..ed56aa1e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/valtas.css @@ -0,0 +1,2 @@ +table.tanarLista {} +table.tanarLista div.titulus { font-size:smaller; color:#aaa;} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/zaradek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/zaradek.css new file mode 100644 index 00000000..2e3b0fc0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/zaradek.css @@ -0,0 +1,16 @@ + + form.zaradek { margin: 10px 40px; padding: 10px; border: rgb(100,125,150) solid; border-width: 3px 1px; background-color: rgb(200,220,240); } + form.zaradek p { border: rgb(20,40,80) solid 1px; padding: 8px; text-align: center; background-color: white; } + form.zaradek p span { color: red; } + form.zaradek table { margin-left: 100px; } + form.zaradek th { padding: 4px; background-color: rgb(20,40,80); color: white; } + form.zaradek div { text-align: center; } + form.zaradek div input { padding: 4px; background-color: rgb(20,40,80); color: white; } + + form.diakZaradek { margin: 10px; } + form.diakZaradek table { background-color: rgb(20,40,80); } + form.diakZaradek table th { background-color: rgb(100,100,200); color: white; } + form.diakZaradek table td { background-color: rgb(230,230,255); } + form.diakZaradek table td.jobbra { text-align: right; } + + form.diakZaradek input.delZaradek { background-color: red; border: none; color: white; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/esemenyAdmin.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/esemenyAdmin.css new file mode 100644 index 00000000..abd310c3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/esemenyAdmin.css @@ -0,0 +1,39 @@ +/* +$color1="#CAE0F7"; +$color2="#9FBFD6"; +$color3="#2E5282"; +$color4="#434037"; +$color="#929493"; +*/ + +h2 { margin:30pt 60pt 0pt 60pt; + background-color: #2e5282; + color: white; + border-bottom: solid 1px #9FBFD6; +} +div.kosziline { + height:1pt; + margin: 0em 60pt; + border-bottom: solid 1px #434037; +} + +fieldset.koszi { margin: 1em 60pt; border: solid 1px #888;} +fieldset.koszi legend { + border: solid 1px #888; + background-color: #eee; + color: ; + padding: 0.1em 0.5em; + border-radius:5px; + text-align: right; + outline: +} + +fieldset.koszi:hover legend { background-color: #9FBFD6; } + +fieldset.koszi input[type="submit"] { outline: 1px solid #2E5282; background-color: #2E5282; padding:1px 1em; margin: 1px; border: solid 1px white; color: white; } +fieldset.koszi input[type="submit"]:hover { outline: 1px solid #CAE0F7; background-color: #9FBFD6; padding:1px 1em; margin: 1px; border: solid 1px white; color: white; } + +fieldset.koszi select option { outline: 1px solid #CAE0F7; } + +fieldset.koszi table {background-color: #dddddd;} +fieldset.koszi table tr th {background-color: #eeeeee; padding: 1px 8px; border-bottom: solid 1px #2e5282;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/koszi.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/koszi.css new file mode 100644 index 00000000..8636b27e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/koszi.css @@ -0,0 +1,39 @@ + +fieldset.koszi { margin: 4em 10em; border: solid 0px #888;} +fieldset.koszi legend { + border: solid 1px #888; + background-color: #eee; + color: ; + padding: 0.1em 0.5em; + border-radius:5px; + text-align: right; +} + +fieldset.koszi:hover legend { background-color: #9fbfd6; } + +fieldset.koszi table { width: 100%; background-color: #eee; } +fieldset.koszi table tr.head th { background-color: #2e5282; color: white; border-bottom: solid 2px #434037; height:2em; } + +fieldset.koszi table tr.foot th { background-color: #aa0066; color: white;border-bottom: solid 1px black; border-top: solid 1px #434037; height:2em; } +fieldset.koszi table tr.foot th.r { text-align: right ; padding-right:2em;} + +fieldset.koszi table tr td { } +fieldset.koszi table tr td.r { text-align: right; padding-right: 2em; } +fieldset.koszi table tr:nth-child(even) td { background-color: white; } +fieldset.koszi table tr.jovahagyva td { background-color: #92ff93; } + +fieldset.koszi table tr td span.tag { padding: 0.1em 2em; border-radius:5px; } +fieldset.koszi table tr td:hover span.tag { opacity: 0.9; } +fieldset.koszi table tr td span.tag1 { background-color: #CAE0F7; } +fieldset.koszi table tr td span.tag2 { background-color: #9FBFD6; } +fieldset.koszi table tr td span.tag0 { background-color: #2E5282; color: white; } +fieldset.koszi table tr td span.tag4 { background-color: #434037; color: white; } +fieldset.koszi table tr td span.tag5 { background-color: #929493; } +fieldset.koszi table tr td span.tag3 { background-color: #EEEEEE; } + +div.koszi { padding-top: 1em; width:80%; padding-bottom: 1em; margin-left:auto; margin-right:auto; text-align: center; } + +div.koszi form select { font-size: normal; height:2.3em; } +div.koszi form select option { color: black; } +div.koszi form select option.placeholder:selected { background-color: red; } +div.koszi form input { height:2.3em; padding: 0.1em 3em;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/kosziAdmin.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/kosziAdmin.css new file mode 100644 index 00000000..0a36cd66 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/koszi/kosziAdmin.css @@ -0,0 +1,47 @@ + + +form input.accept { outline: solid 1px #009900; background-color: green; border: solid 1px white; color: white; padding: 0.1em 1em; } +form input.accept:hover { outline: solid 1px #00aa00; background-color: lightgreen; border: solid 1px white; color: white; padding: 0.1em 1em; } + +form input.decline { outline: solid 1px #990000; background-color: red; border: solid 1px white; color: white; padding: 0.1em 1em; } +form input.decline:hover { outline: solid 1px #aa0000; background-color: #aa0000; border: solid 1px white; color: white; padding: 0.1em 1em; } + + +fieldset.koszi { margin: 4em 10em; border: solid 0px #888;} +fieldset.koszi legend { + border: solid 1px #888; + background-color: #eee; + color: ; + padding: 0.1em 0.5em; + border-radius:5px; + text-align: right; +} + +fieldset.koszi:hover legend { background-color: #55ff55; } + +fieldset.koszi table { width: 100%; background-color: #eee; } +fieldset.koszi table tr.head th { background-color: #2e5282; color: white; border-bottom: solid 2px #9fbfd6; height:2em; } + +fieldset.koszi table tr.foot th { background-color: #aaa; border-bottom: solid 1px black; border-top: solid 1px #9fbfd6; height:2em; } +fieldset.koszi table tr.foot th.r { text-align: right ; padding-right:2em;} + +fieldset.koszi table tr td { } +fieldset.koszi table tr td.r { text-align: right; padding-right: 2em; } +fieldset.koszi table tr:nth-child(even) td { background-color: white; } +fieldset.koszi table tr.jovahagyva td { background-color: lightgreen; } + +fieldset.koszi table tr td span.tag { padding: 0.1em 2em; border-radius:5px; } +fieldset.koszi table tr td:hover span.tag { opacity: 0.9; } +fieldset.koszi table tr td span.tag1 { background-color: #CAE0F7; } +fieldset.koszi table tr td span.tag2 { background-color: #9FBFD6; } +fieldset.koszi table tr td span.tag0 { background-color: #2E5282; color: white; } +fieldset.koszi table tr td span.tag4 { background-color: #434037; } +fieldset.koszi table tr td span.tag5 { background-color: #929493; } +fieldset.koszi table tr td span.tag3 { background-color: #EEEEEE; } + +div.koszi { padding-top: 1em; width:80%; padding-bottom: 1em; margin-left:auto; margin-right:auto; text-align: center; } + +div.koszi form select { font-size: normal; height:2.3em; } +div.koszi form select option { color: black; } +div.koszi form select option.placeholder:selected { background-color: red; } +div.koszi form input { height:2.3em; padding: 0.1em 3em;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/naplo.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/naplo.css new file mode 100644 index 00000000..ddf0da7d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/naplo.css @@ -0,0 +1,319 @@ +@charset "UTF-8"; + + #toolBarIntezmeny { + color: #1E90FF; + border: solid #eeeeee; + border-width: 0px 0px 0px 0px; + font-size: 10px; + } + #toolBarHelpButton { margin-left:5px;font-size:8px; border-radius: 50%; border: solid 1px #dddddd; padding:0px 3px; color: #aaaaaa; font-weight:normal;} + #toolBarHelpButton:hover { background-color:#1e90ff; color: white; border-color: navy;} + img#mayorBuggie { height:34px; } + img#mayorBuggie:hover { animation-name: spin; + animation-duration: 1000ms; + animation-iteration-count: 1; + animation-timing-function: ease; + } + #diakSelectIcon { + vertical-align: middle; + color: #aaaaaa; + padding: 0px 2px; + cursor: pointer; + margin-right:2px; + border: solid 0px #eeeeee; + } + #diakSelectIcon:hover {color:white;} + + + table.toolBar { width: 95%; max-width: 95%; border-spacing: 0px; margin: 1em auto; overflow: auto; border-collapse: collapse;} + table.toolBar tr.first td.toolBarTitle { border-bottom: solid 1px #333; padding-left:4px; } + table.toolBar tr.first td.toolBarTool { border-style: solid; border-width: 1px 1px 1px 1px; border-color: #333333; } + + table.toolBar form { margin: 0px; padding: 0px;} + +/* TH */ + + table.toolBar th { + background-color: rgb(90,133,184); + text-align: center; + color: white; + font-size:10px; + padding: 0px 4px 0px 4px; + font-weight: 600; + letter-spacing: 0.2px; + border-color: rgb(21,71,123); + border-width: 1px 1px 1px 1px; + border-style: solid; + } + table.toolBar th button.toolBarClear { float:right; border: none; background-color: #5A85B8; height:10px;font-size:9px; color:inherit; padding:0px 2px; color: rgba(255,255,255,0.5);} + table.toolBar th button.toolBarClear:hover { color: rgba(255,255,255,1);} + + table.toolBar th button.toolBarLeft {height: 100%; + line-height: 2em;background-color: rgba(100,100,100,0); + color: #fff; border: solid 0px #fff; + border-radius: 2px;padding: 4px 10px; } + table.toolBar th button.toolBarLeft:hover { color: rgba(255,255,255,0.5);} + + table.toolBar tr td.szemely { background-color: #5A85B8; color:white; border: solid 1px #558; padding:2px 10px; color: rgba(255,255,255,0.5);} + table.toolBar tr td.szemely:hover { color: rgba(255,255,255,1);} + + +/* TD */ + table.toolBar td {padding: 0px;} + table.toolBar td form td {padding: 1px;} + table.toolBar td.gap { width: 50%; border-spacing: 0px; } + table.toolBar td.help { + background-color: rgb(11,51,103); + color: white; + border-width: 0px 1px 1px 1px; + border-color: black; + border-style: none solid solid solid; + font-size:smaller; + } + table.toolBar td.toolBarTitle { + background-color: white; + font-size: 18px; + font-weight: bold; + width: 100%; + } + table.toolBar td.toolBarTool { + border: solid 1px #666699; + background-color: #666699; + margin: 0px; + padding: 0px; + } + table.toolBar td.toolBarTool table { border-spacing: 0px; width: 100%; } + table.toolBar td.toolBarTool table th { + background-color: rgb(90,133,184); + text-align: left; + color: white; + font-size:10px; + padding: 0px 0px 0px 4px; + border-color: rgb(21,71,123); + border-width: 1px 0px; + border-style: solid; + } + +/* Submit */ + + table.toolBar input.toolSubmit, + table.toolBar button.toolSubmit { + vertical-align: middle; border: 0px none; + padding:0px; + margin:0px; + color: #aaaaaa; + background-color: inherit; + font-size:8px; + } + table.toolBar form:hover input.toolSubmit, + table.toolBar form:hover button.toolSubmit { + outline: solid 0px; + color:#dddddd; + } + + table.toolBar form input.toolSubmit:hover { + outline: solid 0px; + color: lightgreen; + } + table.toolBar td.toolBarTool.cella select { max-width:180px; min-width:60px;} + table.toolBar td.toolBarTool.sor select { max-width:320px; min-width:60px;} + + table.toolBar img { border: none; } + +/* spec */ + + table.toolBar table.hianyzasOsszegzo { width:100%; font-size:10px; } + table.toolBar table.hianyzasOsszegzo th { + text-align: center !important; + border-style: none none solid none; + border-color: #888888; + border-width: 0px 0px 1px 0px; + } + table.toolBar table.hianyzasOsszegzo td { width: 18%; border-bottom: solid 1px rgb(60,80,100); background-color: #dddddd; text-align: center; } + + form.lapozo input { font-size: 10px; border: solid 1px #555555; } + form button.lapozo { font-size:10px; } + form span.lapozo { color:white; background-color: rgb(90,133,184); padding:1px 5px; border: solid 1px rgb(21,71,123);} + + table.flipper input {height: 30px; color: white; + border-right: solid 1px #15477B; + border-bottom: solid 1px #15477B; + border-top: solid 1px #37699D; + border-left: solid 1px #37699D; + background-color: rgb(90,133,184); + padding:0px 10px; + } + table.flipper input:hover {background-color: rgba(90,133,184,0.6);border: solid 1px #15477B;} + table.flipper input.step { background-color: rgb(100,100,60); } + table.gomb button { height:30px; background-color: rgb(90,133,184); + border-right: solid 1px rgb(21, 71, 123); + border-bottom: solid 1px rgb(21, 71, 123); + border-top: solid 1px rgb(55, 105, 157); + border-left: solid 1px rgb(55, 105, 157); + } + table.gomb button:hover { background-color: rgba(21, 71, 123,0.7); } + div.beirasAdatok { text-align: center; } + div.beirasAdatok span { font-weight: bold; font-size: 20pt; vertical-align: middle; } + div.beirasAdatok img { vertical-align: middle; } + + table.toolBar input { font-size: 10px; } + + table.toolBar #toolBarHamburgerVezerlo { color:rgb(170, 170, 170); } + table.toolBar #toolBarHamburgerVezerlo:hover { color:white; } + + #toolBarHamburgerLista ul { list-style-type:none; } + #toolBarHamburgerLista li { text-align:right; } + #toolBarHamburgerLista button.hamburgerIkon { + height: 30px; + color: rgb(255, 255, 255); + border-radius: 2px 0px 0px 2px; + border-right: solid 0px rgb(21, 71, 123); + border-bottom: solid 1px rgb(21, 71, 123); + border-top: solid 1px rgb(55, 105, 157); + border-left: solid 1px rgb(55, 105, 157); + background-color: rgb(90, 133, 184); + padding: 0px 10px; + margin-bottom:4px; + } + #toolBarHamburgerLista button.hamburgerIkon:hover {background-color: rgba(90,133,184,0.6);border: solid 1px #15477B;} + + .diakNev:hover, .szuloNev:hover, .tankorAdat:hover, .tanarNev:hover, .zaroJegyAdat:hover, .jegyAdat:hover, .oraAdat:hover, .jegyzetAdat:hover, .dolgozatAdat:hover { cursor: pointer; } + .activeElement { outline: solid 2px orange; background-color: rgba(255,255,255,0.9); } + + #mayorSearch a.diakNev:before, #mayorSearch a.diakNev:hover:before { content:'\e0ca'; font-family: 'Elusive-Icons'; padding-right:2px; color: rgba(100,149,237,0.4);} + #mayorSearch a.diakNev.aktiv:before, #mayorSearch a.diakNev:hover:before { content:'\e0ca'; font-family: 'Elusive-Icons'; color: rgba(100,149,237,1);} + + #mayorSearch a.tanarNev{ color: rgb(219,6,161); } + #mayorSearch a.tanarNev:before, #mayorSearch a.tanarNev:hover:before { content:'\e0da'; font-family: 'Elusive-Icons'; padding-right:2px; color: rgba(219,6,161,0.4);} + #mayorSearch a.tanarNev.aktiv:before, #mayorSearch a.tanarNev:hover:before { content:'\e0da'; font-family: 'Elusive-Icons'; color: rgb(219,6,161)} + + #mayorSearch a.szuloNev { color: rgb(76,175,80); } + #mayorSearch a.szuloNev:before, #mayorSearch a.szuloNev:hover:before { content:'\e091'; font-family: 'Elusive-Icons'; padding-right:2px; color: rgba(76,175,80,0.4);} + #mayorSearch a.szuloNev.aktiv:before, #mayorSearch a.szuloNev:hover:before { content:'\e091'; font-family: 'Elusive-Icons'; color: rgb(76,175,80)} + + #updateWindowSide div.ora { } + + #updateWindowSideContent .diakNev:after { font-family: 'Elusive-Icons'; content: "\e0f3"; color:cornflowerblue !important; } + #updateWindowSideContent .diakNev:hover:after { font-family: 'Elusive-Icons'; content: "\e0f4"; color:cornflowerblue !important; } + #updateWindowSideContent .diakNev:hover { color:#999 } + + #updateWindowSide ul li,#updateWindowSideSub ul li { padding-top:2px; } + #updateWindowSideContent h3, #updateWindowSideSubContent h3 { border-bottom: solid 0px #aaa; margin: 18px 16px 8px 16px;} + #updateWindowSideContent h3 a:hover,#updateWindowSideSubContent h3 a:hover { color:#999 } + #updateWindowSideContent ul li a:hover,#updateWindowSideSubContent ul li a:hover { color:#999 } + #updateWindowSideTitle a:hover, #updateWindowSideSubTitle a:hover { color:#999 } + +/* #updateWindowSide h3:before { font-family: 'Elusive-Icons'; font-size:10px; content: "\e0a4"; padding-right:8px;font-weight:100; }*/ + + .updateWindowSide button.mentes, .updateWindowSide button.torles { margin: 4px 18px; height:2em; border-radius:2px; border: solid 1px white; color:white; background-color: #ddd;} + .updateWindowSide button.mentes:hover { background-color: lightgreen; } + .updateWindowSide button.torles:hover { background-color: red; } + + .updateWindowSide i {line-height:1.5em; background-color: rgba(255,255,255,0.4); padding-left:2px; padding-right:4px; } + + span.diakEletkor {font-size:; border: solid 1px white; border-radius: 4px; padding:2px;background-color:white; color:black;} + span.diakEletkor:hover:after { content: " éves"; } + + table.toolBar button.toolBarBtn { + background: inherit; + border: none; + color: white; + padding: 2px; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 14px; + margin: 0px 0px; + cursor: pointer; + color: rgba(255,255,255,0.5); + } + table.toolBar button.toolBarBtn:hover { color:white; } + table.toolBar button.toolBarBtn:active { color:#f06 ; background-color: cornflowerblue;} + table.toolBar button.toolBarBtn.loved { color: #f06; } + table.toolBar button.toolBarBtn.loved:active { color:red ; background-color: cornflowerblue;} + + table.toolBar button.toolBarBtn.mobileOnly { display: none;} + + div.arckepContainer.tanar span {background-color: #db06a1; } + div.arckepContainer.szulo span {background-color: #40e0d0; } + div.arckepContainer.diak span {background-color: #6495ed; } + +@media (max-width: 764px) { + + #toolBarTitle {display:;} + #toolBarKerelem { display:none; } + .toolBarClear {display:none;} + table.toolBar table, + table.toolBar thead, + table.toolBar tbody, + table.toolBar th, + table.toolBar td, + table.toolBar tr { + display: block; + text-align:left; + } + + table.toolBar table tbody { background-color: white; } + table.toolBar thead tr { + position: absolute; + top: -9999px; + left: -9999px; + } + table.toolBar tr { border: 0px solid #fff; margin-bottom:0px; } + table.toolBar td { + border: none; + border-bottom: 0px solid #eee; + position: relative; + padding-left: 0px; + background-color: #eee; color:black; + } + table.toolBar td.toolBarTitle { width: inherit; } + table.toolBar td.sbmt { display:none } + + table.toolBar button.toolBarBtn { + border: none; + color: white; + padding: 2px; + text-align: center; + text-decoration: none; + display: inline-block; + font-size: 20px; + margin: 0px 0px; + cursor: pointer; + color: cornflowerblue; + } + table.toolBar button.toolBarBtn:hover { color: lightgreen ; } + table.toolBar button.toolBarBtn:active { color: lightgreen ; } + table.toolBar td.szemely { font-size: 24px; } + + table.toolBar button.toolBarBtn.mobileOnly { display:inline-block;} + table.toolBar th button.toolBarLeft { background-color: #5a85b8;border: solid 0px white; } + + .updateWindowSide {font-size:16px;} + .updateWindowSide button.mentes, .updateWindowSide button.torles { + font-size: 16px; + } + .updateWindowSide button.mentes { background-color: lightgreen; } + .updateWindowSide button.torles { background-color: red; } + +} + +@media print { + table.toolBar tr th { border: none;} + table.toolBar tr td { border: none;} + input[type=submit] {display:none;} + input[type=button] {display:none;} + button[type=submit] {display:none;} + a {text-decoration: none; color:black;} +} + +@keyframes spin { + from { + transform: rotate(0deg); + } to { + transform: rotate(360deg); + } +} + +/* Tipso Bubble Styles */ +.tipso_bubble,.tipso_bubble > .tipso_arrow{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.tipso_bubble{position:absolute;text-align:center;border-radius:6px;z-index:9999}.tipso_style{cursor:help;border-bottom:1px dotted}.tipso_title{border-radius:6px 6px 0 0}.tipso_content{word-wrap:break-word;padding:0.5em}.tipso_bubble.tiny{font-size:0.6rem}.tipso_bubble.small{font-size:0.8rem}.tipso_bubble.default{font-size:1rem}.tipso_bubble.large{font-size:1.2rem;width:100%}.tipso_bubble > .tipso_arrow{position:absolute;width:0;height:0;border:8px solid;pointer-events:none}.tipso_bubble.top > .tipso_arrow{border-top-color:#000;border-right-color:transparent;border-left-color:transparent;border-bottom-color:transparent;top:100%;left:50%;margin-left:-8px}.tipso_bubble.bottom > .tipso_arrow{border-bottom-color:#000;border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;bottom:100%;left:50%;margin-left:-8px}.tipso_bubble.left > .tipso_arrow{border-left-color:#000;border-top-color:transparent;border-bottom-color:transparent;border-right-color:transparent;top:50%;left:100%;margin-top:-8px}.tipso_bubble.right > .tipso_arrow{border-right-color:#000;border-top-color:transparent;border-bottom-color:transparent;border-left-color:transparent;top:50%;right:100%;margin-top:-8px}.tipso_bubble .top_right_corner,.tipso_bubble.top_right_corner{border-bottom-left-radius:0}.tipso_bubble .bottom_right_corner,.tipso_bubble.bottom_right_corner{border-top-left-radius:0}.tipso_bubble .top_left_corner,.tipso_bubble.top_left_corner{border-bottom-right-radius:0}.tipso_bubble .bottom_left_corner,.tipso_bubble.bottom_left_corner{border-top-right-radius:0} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/diakTankorJelentkezes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/diakTankorJelentkezes.css new file mode 100644 index 00000000..4c5ba967 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/diakTankorJelentkezes.css @@ -0,0 +1,4 @@ + + form.nyomtat { text-align: center; border: 1px black; border-style: solid none; padding: 10px; margin: 10px 80px;} + form.nyomtat h3 { border: 1px black; border-style: solid none; background-color: rgb(200,200,200); } + form.nyomtat label { margin: 10px 10px 2px 2px; background-color: rgb(255,255,255); } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/helyettesitesinaplo.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/helyettesitesinaplo.css new file mode 100644 index 00000000..035db08d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/helyettesitesinaplo.css @@ -0,0 +1,7 @@ + + form.letolt { + text-align: center; + background-color: white; + + + } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/osztalyozonaplo.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/osztalyozonaplo.css new file mode 100644 index 00000000..6c3b52ec --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/osztalyozonaplo.css @@ -0,0 +1,2 @@ + + a.letoltes { display: block; border: solid green 1px; color: green; padding: 5px; text-align: center; width: 200px; margin: auto; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/tankorNaplohozRendeles.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/tankorNaplohozRendeles.css new file mode 100644 index 00000000..adf96ba5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/nyomtatas/tankorNaplohozRendeles.css @@ -0,0 +1,9 @@ + + table.tankorBealliras { background-color: rgb(220,220,220); margin-top: 20px; } + table.tankorBealliras th { padding: 2px 10px; } + table.tankorBealliras thead th { background-color: rgb(20,40,80); color: white; } + table.tankorBealliras tfoot th { background-color: rgb(20,40,80); color: white; } + table.tankorBealliras tfoot td { background-color: rgb(20,40,80); color: white; text-align: center; } + table.tankorBealliras tbody th { background-color: rgb(120,140,180); color: white; } + table.tankorBealliras tbody td { background-color: rgb(230,240,250); color: black; text-align: center; } + div.torlesForm { text-align: center; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/ascExport.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/ascExport.css new file mode 100644 index 00000000..86f90082 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/ascExport.css @@ -0,0 +1,18 @@ + + form.export { text-align: center; margin: 1px; background-color: rgb(140,140,220); float-left; } + form.export h1 { text-align: center; border: solid rgb(140,160,180); border-width: 1px 0px; font-size: 12px; margin: 0px 0px 5px 0px; background-color: rgb(60,80,100); color: rgb(220,250,250); } + fieldset { width: 300px; margin: 0px auto; } + + form.blokk { margin: 0px 5px; float: left; width: 310px; } + form.blokk ul { background-color: rgb(140,160,180); width: 300px; list-style-type: none; padding: 0px; margin: 0px; } + form.blokk ul li { background-color: rgb(180,200,220); padding: 6px; margin: 1px; height: 16px; font-size: 10px; text-align: left; } + form.blokk ul li select { height: 16px; font-size: 10px; } + + form.tobbszoros { width: 400px; float: left; } + form.ok { width: 400px; float: left; } + + form.export img { border: none; position: relative; top: 10px; } + form.export a { text-decoration: none; display: block; padding-bottom: 14px; background-color: rgb(20,40,60); color: white; margin-top: 40px; } + form.export a:hover { color: rgb(255,200,100); } + + a#loadUrl { background: green; color: white; padding: 20px; fonr-weight: bold; margin: 30px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/helyettesites.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/helyettesites.css new file mode 100644 index 00000000..33132c5c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/helyettesites.css @@ -0,0 +1,44 @@ +@media screen { + + table.helyettesitesek { + background-color: #555555; width:95% + } + table.helyettesitesek tr { + background-color: #dddddd; + } + table.helyettesitesek tbody tr td { + background-color: white; + } + table.helyettesitesek tr.plusz td { + background-color: #334450; color: white; + font-style: italic; + } + table.helyettesitesek tfoot tr th { + background-color: white; + font-size: 8px; + text-align: right; + } + + +} +@media print { + table.helyettesitesek { + width: 100%; + } + table.helyettesitesek thead tr th { + border: solid 1px black; + } + table.helyettesitesek tbody tr td { + border-style: solid; + border-width: 0px 1px 1px 0px; + } + table.helyettesitesek tr.plusz td { + font-style: italic; + font-weight: bold; + } + table.helyettesitesek tfoot tr th { + background-color: white; + font-size: 8px; + text-align: right; + } +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarend.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarend.css new file mode 100644 index 00000000..0cfda59b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarend.css @@ -0,0 +1,297 @@ +@media screen { + +h2 { text-align: center; color: red;} +h2.toPrint { display: none; } + +table.toolBar tr td select, table.toolBar tr td option { + font-size:11px; +} + +table.orarend { + width: 95%; + background-color: #333333; + max-width: 1000px; +} +table.orarend tr th { + background-color: #889988; + color: white; +/* border-width: 0px 1px 2px 0px !important; */ + width:2%; + height:30px; +} + +table.orarend tbody tr th { + border-right: solid 2px #889988; + border-left: solid 2px #889988; +} +table.orarend tbody tr th.most { background-color: #99aa99; border-right: solid 2px #1e90ff; + + -webkit-transition: all 0.5s ease; + -moz-transition: all 0.5s ease; + -o-transition: all 0.5s ease; + transition: all 0.5s ease; + +} + +/* THEAD */ + +table.orarend thead tr th { + background-color: #889999; + color: white; + border-bottom: solid 1px white; + font-weight: 100; + letter-spacing:0.2px; +} +table.orarend thead tr th.ma { border-bottom: solid 1px #1E90FF; background-color: #9aa; } +table.orarend thead tr th.het { background-color: #6495ED} + +table.orarend thead tr th.spec { background-color: #f06; } +table.orarend thead tr th.spec.roviditett { background-color: lightgreen; } + +table.orarend thead tr th.hover { background-color: rgba(200,150,200,0.5); } +table.orarend tbody tr th.hover { background-color: rgba(100,150,200,0.5); border-color: rgb(100,150,200); } +table.orarend tbody tr th.most.hover { background-color: rgba(200,150,200,0.5); border-color: rgb(100,150,200); } + +/* TFOOT */ + +table.orarend tfoot.publikus tr th { + background-color: lightgreen; + color: white; +} +table.orarend tfoot.nempublikus tr th { + background-color: #f06; + color: white; +} +table.orarend tfoot:hover tr th { + background-color: #8f8; +} + +table.orarend tbody tr td div.oraMostVan { + border-style: solid; + border-color: lightgreen; border-width: 0px 4px 0px 4px; border-radius:2px; +} + +table.orarend tbody tr td div.dolgozat { + background-color: orange; color:white; + border-radius:2px; padding:2px; + border: solid 1px white; + margin:2px; + font-size: x-small; +} +table.orarend tbody tr td div.jegyzet { + background-color: lightgreen; color:white; + border-radius:2px; padding:2px; + border: solid 1px white; + margin:2px; + font-size: x-small; +} +table.orarend tbody tr td div.jegyzet.publikus0 { } +table.orarend tbody tr td div.jegyzet.publikus1 { border: dashed 1px white; } +table.orarend tbody tr td div.jegyzet.publikus2 { border: dotted 1px white; } +table.orarend tbody tr td div.jegyzet.mase.publikus1 { background-color: #4caf50;} +table.orarend tbody tr td div.jegyzet.mase.publikus2 { background-color: #4caf50;} + +table.orarend tbody tr.orarendJegyzetSor th { background-color: orange; border-color: orange; font-weight:normal; font-size: x-small; cursor: pointer} +table.orarend tbody tr.orarendJegyzetSor td.jegyzetContainer { background-color: cornflowerblue; } +table.orarend tbody tr.orarendJegyzetSor td.jegyzetContainer div:hover { border-color: #bbb; transition : border 50ms ease-out;} + +table.orarend tr td { + text-align: center; + background-color: #efefef; +/* border-width: 0px 1px 2px 0px;*/ + width:18%; +} + +table.orarend tbody tr td.eppTart { + outline: solid 2px #1e90ff; + background-color: rgba(255,255,255,1); +} + + +table.orarend tr td select { + font-size: 10px; + background-color:#000011; + color: white +} + +div.unfinished { + background-color: yellow; +} + table.orarend tbody tr td hr { width: 80% } + div.normál {} + div.plusz { + background-color: #eeccee; + } + div.elmarad { + color: white; + background-color: black; + } + div.elmarad_máskor { + color: white; + background-color: #555555; + } + div.normál_máskor { + color: white; + background-color: #776699; + } + div.felügyelet { + background-color: #FF69B4; /* #bbaac0 */ + } + div.helyettesítés { + background-color: #ccffcc; + } + div.összevonás { + background-color: #B0C4DE /*#aabbc0;*/ + } + div.friss { } + + div.nemVoltBent { color: #bbb; } + + span.hianyzasTicker { + float:left; + width: 12px; + line-height: 12px; + border-radius: 50%; + text-align: center; + border: 2px solid #aaa; + font-size:12px; + margin-left:2px; + padding:2px; + background-color: white; + color:#333; + font-weight: bold; + } + span.hianyzasTicker.igazolatlan { border-color: #e91e63; } + span.hianyzasTicker.igazolt { border-color: green; } + span.hianyzasTicker.hianyzas { } + span.hianyzasTicker.keses { border-color: orange; font-size:8px;} + span.hianyzasTicker.felszereles { color:cornflowerblue; font-size:8px; } + span.hianyzasTicker.felmentes { color:cornflowerblue; font-size:8px; } + + div.osztályfüggetlen { color: #eeeeee; background-color: rgba(52, 150, 185, 1); } + table.osztalyOrarend div.osztályfüggetlen { display:none; } + table.diakOrarend div.osztályfüggetlen { display:none; } + + span.helyett { + color: gray; + text-decoration: line-through; + } + + table.orarend tr td span.t0 { + padding:0px 2px; + background-color: mediumvioletred; color:white; + } + table.orarend tr td span.t1 { + } + + table.orarend tbody tr th div { + color: #dddddd; + white-space:nowrap;font-size:xx-small; font-weight:normal; width:100%; text-align: center; + /* text-shadow: 0px 1px black;*/ + } + + table.orarend thead tr th:hover span.napLeiras { display:none; } + + table.orarend div.orarendTools { display:none; padding: 0px; } + table.orarend thead tr th:hover div.orarendTools { display: block; } + table.orarend div.orarendTools span { padding: 4px; font-size:20px; } + table.orarend div.orarendTools a span { color:white; } + table.orarend div.orarendTools span:hover { text-shadow: -1px 0 white, 0 1px white, 1px 0 white, 0 -1px white;} + table.orarend div.orarendTools span.icon-info-sign:hover { color: cornflowerblue;} + table.orarend div.orarendTools span.jegyzet:hover { color: lightgreen;} + table.orarend div.orarendTools span.dolgozat:hover { color: orange;} + table.orarend div.orarendTools span.bezar:hover { color: #f06; } + + h2.mayorSocialEdition { + text-align: center; + background-color: #f06; + width: 220px; + margin: auto; + color: #fff; + margin-bottom: 8px; + border-radius: 4px; + padding: 2px; + } + + .animated { + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + } + + @-webkit-keyframes shake { + 0%, 100% {-webkit-transform: translateX(0);} + 10%, 30%, 50%, 70%, 90% {-webkit-transform: translateX(-2px);} + 20%, 40%, 60%, 80% {-webkit-transform: translateX(2px);} + } + @keyframes shake { + 0%, 100% {transform: translateX(0);} + 10%, 30%, 50%, 70%, 90% {transform: translateX(-2px);} + 20%, 40%, 60%, 80% {transform: translateX(2px);} + } + .shake { + -webkit-animation-name: shake; + animation-name: shake; + } +} +@media (max-width: 764px) { + +/* + table.orarend thead tr th div.orarendTools { display: block; border-top: solid 1px white; padding-top:4px; background-color: cornflowerblue;} + table.orarend thead tr th div.orarendTools span { color: #eee;} + table.orarend thead tr th span.napLeiras { display:block; } + table.orarend thead tr th:hover span.napLeiras { display:block; } +*/ +} +@media print { + table.toolBar, #nav, #nav1, #nav2, #poz, #head { + display: none; + } + table.orarend { + width: 100%; + } + table.orarend thead tr th { + color: black; + border-color: black; + border-style: solid; + border-width: 1px 1px 2px 1px; + width:2%; + height:30px; + } + table.orarend tbody tr th { + color: black; + border-color: black; + border-style: solid; + border-width: 0px 1px 2px 1px; + width:2%; + height:30px; + } + + table.orarend tr td { + text-align: center; + border-color: black; + border-style: solid; + border-width: 0px 1px 2px 0px; + width:18%; + font-size:10px; + page-break-inside: avoid; + } + hr { width: 80% } + h2.toPrint { color: black; text-align: center; margin-top:0px; margin-bottom: 0px; padding-top:0px; padding-bottom:0px; } + + table.orarend tbody tr th div { + color: #dddddd; text-shadow: 0px 1px black;white-space:nowrap;font-size:xx-small; font-weight:normal; width:100%; text-align: center; + } + + table.orarend div.orarendTools { display:none; } + h2.mayorSocialEdition { display:none; } + +} + +sup, sub { + vertical-align: baseline; + position: relative; + top: -0.4em; + padding-left: 1px; +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendBetolto.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendBetolto.css new file mode 100644 index 00000000..9dd7e321 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendBetolto.css @@ -0,0 +1,6 @@ + + form.file { background-color: rgb(200,200,240); margin: 10px auto; padding: 20px 5px 5px 5px; width: 500px; text-align: center; border: rgb(40,80,120) solid; border-width: 3px 0px; } + form.file img { border: none; position: relative; top: 10px; } + form.file a { text-decoration: none; display: block; padding-bottom: 14px; background-color: rgb(20,40,60); color: white; margin-top: 40px; } + form.file a:hover { color: rgb(255,200,100); } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendEllenorzes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendEllenorzes.css new file mode 100644 index 00000000..3a72f844 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendEllenorzes.css @@ -0,0 +1,3 @@ + + form.orarend { background-color: rgb(140,160,180); } + form.orarend ol.kritikus li { background: red; margin-right: 20px; padding: 4px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendModosito.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendModosito.css new file mode 100644 index 00000000..1d9f527b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendModosito.css @@ -0,0 +1,157 @@ +@media screen { +h2 { text-align: center; color: red;} +h2.toPrint { display: none; } + +table.toolBar tr td select, table.toolBar tr td option { +font-size:10px; +} + +table.orarend { + width: 85%; + background-color: #888; +} +table.orarend tr th { + background-color: #889988; + color: white; + border-width: 0px 1px 2px 0px; + width:2%; + height:30px; +} +table.orarend thead tr th { + background-color: rgba(52, 150, 185, 1); + color: white; + border-bottom: solid 1px white; + width:2%; + height:2em; + font-weight: normal; +} +table.orarend thead tr th.spec { + background-color: #2196F3; +} + +table.orarend tbody tr th { font-weight: normal; padding:0px 1em; } + + +table.orarend tr td { + text-align: center; + background-color: #efefef; + border-width: 0px 1px 2px 0px; + width:18%; +} + +table.orarend tr td:hover { outline: solid 1px orange; } + +table.orarend tr td select { + font-size: 10px; + background-color:#000011; + color: white; + max-width:140px; +} + +div.unfinished { + background-color: yellow; +} + table.orarend tbody tr td hr { width: 80% } + div.normál { background-color: lightgreen !important;} + div.plusz { background-color: #eeccee !important;} + div.elmarad { background-color: black !important;} + div.elmarad_máskor { background-color: #555555 !important; } + div.normál_máskor { background-color: #776699 !important; } + div.felügyelet { background-color: #FF69B4 !important; } + div.helyettesítés { background-color: #ccffcc !important; } + div.összevonás { background-color: #B0C4DE !important; } + + span.helyett { + color: gray; + text-decoration: line-through; + } + + table.orarend tr td span.t0 { + background-color: #880000; color:white; + } + table.orarend tr td span.t1 { + } + + table.orarend tr td select, table.orarend tr td select option { background-color: black; color: white; } + table.orarend tr td select.terem , + table.orarend tr td select.terem option { background-color: white; color: black; } + table.orarend tr td select.nincs option { background-color: orange; color: black; } + + table.orarend tr td select.terem option.orig { font-style: italic; color: #aaaaaa;} + + table.orarend tbody tr td { background-color: #cccccc; } + table.orarend tbody tr td div { background-color: rgb(130,200,130); } + table.orarend tbody tr td div.nincsTerem { background-color: rgb(200,130,130); } + table.orarend tbody tr td div.moved { background-color: rgb(200,130,230) !important; } + + table.orarend tbody tr:hover th { background-color: #aabbcd; } + + table.orarend tbody tr td input { background-color: red; } + + div#hibasOrak { + width:100%; + margin: 0px auto; + border-top: #F3F3F3 solid 4px; + border-bottom: #F3F3F3 solid 4px; + } + div.hibas { overflow: hidden; margin:1px;height:100px; width:189px; border: solid 1px black; display:inline-block; background-color: orange; } + div.details { font-size: x-small; padding-left:1em; } + + div.button { + width:200px; + margin:20px auto; + } + div.button input { + width:100%; + background-color: #82C882; color: white; + padding:0.4em 0.4em; + border: solid 1px rgb(52, 150, 185); + border-radius: 2px; + } + div.button input:hover { + background-color:#3496B9; + border: solid 1px rgb(52, 150, 185); + color: white; + } + div.haladasi { background-color: #F44336; border: solid 1px #ccc; padding:0.5em; color:white; } + div.haladasi.haladasiModositando { background-color: #4CAF50; } + table.orarend tbody tr td div.haladasiOra { color:white; cursor: pointer; } + div.torlesreJelolve { background-color: #888 !important; text-decoration: line-through; outline: solid 1px red; } +} +@media print { + table.toolBar { + display: none; + } + table.orarend { + width: 100%; + } + table.orarend thead tr th { + color: black; + border-color: black; + border-style: solid; + border-width: 1px 1px 2px 1px; + width:2%; + height:30px; + } + table.orarend tbody tr th { + color: black; + border-color: black; + border-style: solid; + border-width: 0px 1px 2px 1px; + width:2%; + height:30px; + } + + table.orarend tr td { + text-align: center; + border-color: black; + border-style: solid; + border-width: 0px 1px 2px 0px; + width:18%; + font-size:10px; + page-break-inside: avoid; + } + hr { width: 80% } + h2.toPrint { color: black; text-align: center; margin-top:0px; margin-bottom: 0px; padding-top:0px; padding-bottom:0px; } +} + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendTankor.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendTankor.css new file mode 100644 index 00000000..ed5bb002 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendTankor.css @@ -0,0 +1,29 @@ +h2 { text-align: center; } + +table.orarend { + width: 85%; + background-color: black; +} +table.orarend tr th { + background-color: #889988; + color: white; + border-width: 0px 1px 2px 0px; +} + +table.orarend tr td { + text-align: center; + background-color: #eeeeff; + border-width: 0px 1px 2px 0px; +} + +table.orarend tr td select { + font-size: 10px; + background-color:#000011; + color: white; +} +table.orarend tr td select option { background: #000011; } +form input.sub { + color: white; + background-color: blue; + border: solid 1px #000088; +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendTeremModositas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendTeremModositas.css new file mode 100644 index 00000000..fb0172cc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendTeremModositas.css @@ -0,0 +1,8 @@ + + form.terem { background-color: rgb(100,50,100); color: white; margin: 5px auto; text-align: center; width: 640px; } + form.terem h1 { text-align: center; font-size: 16px; background-color: rgb(80,40,80); padding: 2px; } + form.terem select { margin: 2px; } + form.terem select option.foglalt { color: red; } + form.terem select option.szabad { color: green; } + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/szabadTerem.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/szabadTerem.css new file mode 100644 index 00000000..f6652b54 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/szabadTerem.css @@ -0,0 +1,118 @@ +@media screen { +h2 { text-align: center; color: red;} +h2.toPrint { display: none; } + +form.teremKereso { width:100%; margin-left: auto; margin-right:auto; text-align: center; margin-bottom:10px;} +table.orarend tr td { } +table.orarend span, form.teremKereso span { padding: 2px; border-radius: 4px; border: #ddd 1px solid; line-height:1.8em; white-space: nowrap; background-color:white; } + +table.orarend span.xlarge, form.teremKereso span.xlarge { background-color: #4caf50;} +table.orarend span.large, form.teremKereso span.large { background-color: lightgreen;} +table.orarend span.normal, form.teremKereso span.normal { background-color: lightblue;} +table.orarend span.small, form.teremKereso span.small { background-color: yellow;} +table.orarend span.xsmall, form.teremKereso span.xsmall { background-color: #ff5722;} + +table.orarend span:hover, form.teremKereso span:hover { border-color: white; cursor:pointer;} + +form.teremKereso span.clk { + color: #aaa; + -webkit-filter: grayscale(90%); + filter: grayscale(90%); +} + +table.orarend { + width: 90%; + background-color: black; +} +table.orarend tr th { + background-color: #bbb; + color: white; + border-width: 0px 1px 2px 0px; + width:2%; + height:30px; + font-weight:normal; +} +table.orarend thead tr th { + background-color: #889999; + color: white; + border-width: 0px 1px 2px 0px; + width:2%; + height:1em; +} +table.orarend thead tr th.spec { + background-color: red; +} + +table.orarend tr td { + text-align: center; + background-color: #eeeeff; + border-width: 0px 1px 2px 0px; + width:18%; +} + +table.orarend tr td select { + font-size: 10px; + background-color:#000011; + color: white +} + +div.unfinished { + background-color: yellow; +} + table.orarend tbody tr td hr { width: 80% } + div.normál {} + div.elmarad { + color: white; + background-color: black; + } + div.felügyelet { + background-color: #bbaac0; + } + div.helyettesítés { + background-color: #ccffcc; + } + div.összevonás { + background-color: #aabbc0; + } + span.helyett { + color: gray; + text-decoration: line-through; + } + +} +@media print { + table.toolBar { + display: none; + } + table.orarend { + width: 100%; + } + table.orarend thead tr th { + color: black; + border-color: black; + border-style: solid; + border-width: 1px 1px 2px 1px; + width:2%; + height:30px; + } + table.orarend tbody tr th { + color: black; + border-color: black; + border-style: solid; + border-width: 0px 1px 2px 1px; + width:2%; + height:30px; + } + + table.orarend tr td { + text-align: center; + border-color: black; + border-style: solid; + border-width: 0px 1px 2px 0px; + width:18%; + font-size:10px; + page-break-inside: avoid; + } + hr { width: 80% } + h2.toPrint { color: black; text-align: center; margin-top:0px; margin-bottom: 0px; padding-top:0px; padding-bottom:0px; } +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/tanarOrarend.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/tanarOrarend.css new file mode 100644 index 00000000..b17b3fce --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/tanarOrarend.css @@ -0,0 +1,2 @@ + + form.orarend { text-align: center; margin: 40px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/termez.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/termez.css new file mode 100644 index 00000000..bc3197c4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/termez.css @@ -0,0 +1,13 @@ + + table.teremPreferencia { background-color: #eeeeee; margin: 4px 8px; width:95%; max-width:95%;} + table.teremPreferencia tr th { ; border-bottom: solid 1px white;} + table.teremPreferencia tr td { background-color: white;} + + + table.teremPreferencia tr td.terem { font-size:smaller; } + table.teremPreferencia tr td a { color: #dddddd;} + table.teremPreferencia tr td a.del:hover { color: #880000;} + + table.teremPreferencia tr td a.run:hover { color: green;} + + table.teremPreferencia tr:hover td { outline: solid 1px orange;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/bizelomenetel.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/bizelomenetel.css new file mode 100644 index 00000000..001470fc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/bizelomenetel.css @@ -0,0 +1,71 @@ +@media screen { + + /* TanuloBizonyitvany */ + table.tanuloBizonyitvany { background-color: #555555; margin-bottom: 5px;} + table.tanuloBizonyitvany thead th { background-color: rgb(100,140,130); + color: white; text-align: center; padding: 5px 8px 5px 8px; font-weight: normal; + } + table.tanuloBizonyitvany thead tr th.cim { } + table.tanuloBizonyitvany thead tr th.nev { } + table.tanuloBizonyitvany thead a { color: white; text-decoration: none; } + table.tanuloBizonyitvany thead a:hover { text-decoration: underline; } + table.tanuloBizonyitvany textarea { width: 100%; } + table.tanuloBizonyitvany tbody.jegyzet td { padding: 16px; font-size: 10px; background-color: rgb(200,200,200); } + table.tanuloBizonyitvany thead tr.evf th { height:25px; width:50px; padding-right:10px; padding-left: 10px; + background-color: rgb(100,110,120); color: white; font-weight: normal; + border-right: solid 1px #eeeeee; + } + table.tanuloBizonyitvany tbody th { height:25px; padding-right:10px; padding-left: 10px; + background-color: rgb(130,140,150); color: white; font-weight: normal; + } + table.tanuloBizonyitvany tbody th,table.tanuloBizonyitvany tbody td { + border-color: rgb(220,220,220); border-style: solid; border-width: 1px 1px 0px 0px; + } + table.tanuloBizonyitvany tbody tr.fejlec th { background-color: rgb(100,110,120); font-weight: bold; } + table.tanuloBizonyitvany tbody td.vanjegy { color: white; text-align: center; } + table.tanuloBizonyitvany tbody td.nbiz {background-color: rgb(180,100,140); text-align: center; color: white; padding-left:5px; padding-right:5px; } + table.tanuloBizonyitvany tbody td.biz {background-color: rgb(100,180,140); text-align: center; color: white; padding-left:5px; padding-right:5px; } + table.tanuloBizonyitvany tbody td.avg {background-color: #f1f1f1; text-align: center; padding-left:5px; padding-right:5px; } + table.tanuloBizonyitvany tbody td.oraszam { text-align: center; } + table.tanuloBizonyitvany tfoot tr th { background-color: rgb(120,100,100); color: white; height:1.5em; } + table.tanuloBizonyitvany span.megj { font-size: 8px; font-style: italic; } + + table.tanuloBizonyitvany tbody tr td span.szem1 { background-color: rgb(220,140,255); display: block; padding-left: 2px; } + + table.tanuloBizonyitvany tbody tr th input { background-color: rgb(160,170,180); border: solid 1px rgb(180,100,140); } + + table.sign { width: 100%; margin-top: 25px;} + table.sign td { text-align: center; border-style: none} + table.sign td.vonal { + width: 40%; + border-color: black; + border-width: 0px 0px 1px 0px; + border-style: dotted; + } + +} +@media print { + + .mayorhead, .toolBar, form.modosit, .nemNyomtatando { display: none; } + + table.tanuloBizonyitvany { border-width: 2px 2px 3px 3px; border-style: solid; border-color: black; } + table.tanuloBizonyitvany a { color: black; text-decoration: none; } + table.tanuloBizonyitvany td, table.tanuloBizonyitvany th { padding: 0px 10px 0px 10px; } + table.tanuloBizonyitvany thead th { border-width: 0px 1px 1px 0px; border-style: solid; border-color: black; + padding: 4px 10px 3px 10px; font-weight: normal; + } + table.tanuloBizonyitvany thead th.nev { border-width: 1px 1px 0px 0px; border-style: solid; border-color: black; font-size: 16px; } + table.tanuloBizonyitvany thead th.cim { border-width: 0px 1px 0px 0px; font-size: 20px; } + table.tanuloBizonyitvany tfoot > tr > td { border-width: 0px 1px 0px 0px; border-style: solid; border-color: black; } + table.tanuloBizonyitvany > tbody th, table.tanuloBizonyitvany > tbody td { border-width: 1px 1px 0px 0px; border-style: solid; border-color: black; } + table.tanuloBizonyitvany > tbody th { text-align: left; font-weight: normal; } + table.tanuloBizonyitvany > tbody tr.fejlec th { border-width: 2px 1px 1px 0px; text-align: center; font-weight: bold; padding: 3px 10px 3px 10px; } + table.tanuloBizonyitvany tbody.jegyzet td { padding: 10px; } + table.tanuloBizonyitvany .info { display: none } + table.tanuloBizonyitvany td.biz { font-style: italic; } + + table.sign { width: 100%; margin-top: 40px; margin-bottom: 25px;} + table.sign td { text-align: center; border-style: none} + table.sign td.vonal { width: 40%; border-color: black; border-width: 0px 0px 1px 0px; border-style: dotted; } + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/bizonyitvany.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/bizonyitvany.css new file mode 100644 index 00000000..c44bd632 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/bizonyitvany.css @@ -0,0 +1,70 @@ +@media screen { + + /* TanuloBizonyitvany */ + table.tanuloBizonyitvany { background-color: #ffffff; } + table.tanuloBizonyitvany thead th { background-color: rgb(100,140,130); + color: white; text-align: center; padding: 5px 8px 5px 8px; font-weight: normal; + } + table.tanuloBizonyitvany thead th.cim { font-size: 20px; font-weight: bold; } + table.tanuloBizonyitvany thead th.nev { font-size: 16px; font-weight: bold;} + table.tanuloBizonyitvany thead a { color: white; text-decoration: none; } + table.tanuloBizonyitvany thead a:hover { text-decoration: underline; } + table.tanuloBizonyitvany textarea { width: 100%; } + table.tanuloBizonyitvany tbody.jegyzet td { padding: 16px; font-size: 10px; background-color: rgb(200,200,200); } + table.tanuloBizonyitvany tbody th { height:25px; padding-right:10px; padding-left: 10px; + background-color: rgb(130,140,150); color: white; font-weight: normal; + } + table.tanuloBizonyitvany tbody th,table.tanuloBizonyitvany tbody td { + border-color: rgb(220,220,220); border-style: solid; border-width: 1px 1px 0px 0px; + } + table.tanuloBizonyitvany tbody tr.fejlec th { background-color: rgb(100,110,120); font-weight: bold; } + table.tanuloBizonyitvany tbody td.biz {background-color: rgb(180,100,140); text-align: center; color: white; padding-left:5px; padding-right:5px; } + table.tanuloBizonyitvany tbody td.avg {background-color: #f1f1f1; text-align: center; padding-left:5px; padding-right:5px; } + table.tanuloBizonyitvany tbody td.oraszam { text-align: center; } + table.tanuloBizonyitvany tfoot td { border-style: none; } + table.tanuloBizonyitvany span.megj { font-size: 8px; font-style: italic; } + + table.sign { width: 100%; margin-top: 25px;} + table.sign td { text-align: center; border-style: none} + table.sign td.vonal { + width: 40%; + border-color: black; + border-width: 0px 0px 1px 0px; + border-style: dotted; + } + + form.modosit { margin: 50px auto 0px auto; padding: 0px; width: 500px; background-color: rgb(180,100,140); } + form.modosit h1 { text-align: center; color: white; font-size: 14px; background-color: rgb(100,110,120); + padding: 3px; margin:1px; + border-bottom: solid 1px white; + } + form.modosit table.jegy { width:100%; background-color: #eeeeee; } + form.modosit table.jegy tbody tr th { background-color: #888888; color: white; font-weight: normal; } + form.modosit table.jegy tbody tr td { background-color: rgb(180,100,140); color: white; font-weight: normal; } + form.modosit table.jegy tfoot tr th { background-color: #554455; color: white; font-weight: normal; } +} +@media print { + + .mayorhead, .toolBar, form.modosit, .nemNyomtatando { display: none; } + + table.tanuloBizonyitvany { border-width: 2px 2px 3px 3px; border-style: solid; border-color: black; } + table.tanuloBizonyitvany a { color: black; text-decoration: none; } + table.tanuloBizonyitvany td, table.tanuloBizonyitvany th { padding: 0px 10px 0px 10px; } + table.tanuloBizonyitvany thead th { border-width: 0px 1px 1px 0px; border-style: solid; border-color: black; + padding: 4px 10px 3px 10px; font-weight: normal; + } + table.tanuloBizonyitvany thead th.nev { border-width: 1px 1px 0px 0px; border-style: solid; border-color: black; font-size: 16px; } + table.tanuloBizonyitvany thead th.cim { border-width: 0px 1px 0px 0px; font-size: 20px; } + table.tanuloBizonyitvany tfoot > tr > td { border-width: 0px 1px 0px 0px; border-style: solid; border-color: black; } + table.tanuloBizonyitvany > tbody th, table.tanuloBizonyitvany > tbody td { border-width: 1px 1px 0px 0px; border-style: solid; border-color: black; } + table.tanuloBizonyitvany > tbody th { text-align: left; font-weight: normal; } + table.tanuloBizonyitvany > tbody tr.fejlec th { border-width: 2px 1px 1px 0px; text-align: center; font-weight: bold; padding: 3px 10px 3px 10px; } + table.tanuloBizonyitvany tbody.jegyzet td { padding: 10px; } + table.tanuloBizonyitvany .info { display: none } + table.tanuloBizonyitvany td.biz { font-style: italic; } + + table.sign { width: 100%; margin-top: 40px; margin-bottom: 25px;} + table.sign td { text-align: center; border-style: none} + table.sign td.vonal { width: 40%; border-color: black; border-width: 0px 0px 1px 0px; border-style: dotted; } + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/diak.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/diak.css new file mode 100644 index 00000000..ea8f30e5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/diak.css @@ -0,0 +1,58 @@ +@media screen { + table.osztalyozo { background-color: rgb(220,220,220); color: white; } + table.osztalyozo a { color: white; text-decoration:none } + table.osztalyozo a:hover { color: white; text-decoration:underline } + table.osztalyozo thead th { background-color: #660077; padding: 2px 4px 2px 4px; } + table.osztalyozo thead th.nev { background-color: #660077; height:30px; font-size: 16px; } + table.osztalyozo thead td { background-color: #440055; text-align: center; padding: 0px 4px 0px 4px; } + table.osztalyozo thead th.biz { background-color: #224433; } + table.osztalyozo thead th.defaultSulyozas { background-color: lightgreen; } + + table.osztalyozo tfoot th { background-color: rgb(100,120,120); padding: 2px; vertical-align: center; } + table.osztalyozo tfoot th span { padding: 1px 10px; font-weight: normal; background-color: rgb(220,220,220); } + + table.osztalyozo tbody th { background-color: rgb(130,140,150); font-weight: normal; padding: 4px 4px 4px 4px; } + table.osztalyozo tbody th a { color: white; text-decoration: none; } + table.osztalyozo tbody th.atlag { background-color: rgb(100,100,130); padding: 0px 4px 0px 4px; } + table.osztalyozo tbody th.t { text-align: left; padding-left: 0.5em; padding-right:0.5em; } + table.osztalyozo tbody td { background-color: #eeeeee; } + table.osztalyozo tbody td.biz { background-color: #446655; text-align: center; padding-right:3px; padding-left:3px; } + table.osztalyozo tbody td a { text-decoration: none; } + + table.osztalyozo tbody td a.jegy0, table.osztalyozo tfoot th span.jegy0 { color: grey; } + table.osztalyozo tbody td a.jegy1, table.osztalyozo tfoot th span.jegy1 { color: blue; } + table.osztalyozo tbody td a.jegy2, table.osztalyozo tfoot th span.jegy2 { color: black; } + table.osztalyozo tbody td a.jegy3, table.osztalyozo tfoot th span.jegy3 { color: green; } + table.osztalyozo tbody td a.jegy4, table.osztalyozo tfoot th span.jegy4 { color: red; } + table.osztalyozo tbody td a.jegy5, table.osztalyozo tfoot th span.jegy5 { color: purple; background-color: gold; } + + table.osztalyozo tbody td.biz span.sikertelen {background-color:black; padding:0px 4px;} + + table.osztalyozo tfoot th span {cursor: pointer} + + .jegyKiemel { outline: solid 1px orange; } + + table.osztalyozo thead td.ho span.literal {display: table-cell} + table.osztalyozo thead td.ho span.roman {display: none;} + + table.osztalyozo tbody tr:hover th { background-color: rgba(100,100,100,0.5);} + span.addVirtualJegy {cursor: pointer; padding-left:4px;} + a.virtual { border: dotted 1px lightgreen; } +} +@media (max-width: 764px) { + table.osztalyozo { width:95%;} + table.osztalyozo thead td.ho span.literal {display: none;} + table.osztalyozo thead td.ho span.roman {display: table-cell;} +} + +@media print { + input, select, .toolBar { display: none; } + .biz select { display: inline; } + a { text-decoration: none; color: black; } + table { background-color: rgb(200,200,200); border-spacing: 0px; border: 1px black solid; font-size: 10px; border-collapse:collapse; } + td { border: solid 1px black; padding: 4px 4px; } + th { border: solid 1px black; padding: 6px 4px 2px 4px; vertical-align: middle; } + table.osztalyozo tbody td { text-align: right; } + table.osztalyozo tfoot {display:none;} + table.osztalyozo tbody th.t { text-align: left; padding-left: 0.5em; padding-right:0.5em; } +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/dolgozat.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/dolgozat.css new file mode 100644 index 00000000..957f833c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/dolgozat.css @@ -0,0 +1,172 @@ + + table.dolgozatLista { + background-color: rgb(220,220,250); + margin-top: 20px; + width: 90%; + empty-cells: show; + margin-bottom:4em; + border-bottom: solid 1px rgb(40,40,100) ; + } + + table.dolgozatLista th { + background-color: rgb(40,40,100); + color: white; + padding: 3px; + } + + table.dolgozatLista th.kuszob { + background-color: rgb(0,100,100); + height:3px; + max-height:3px; + } + + table.dolgozatLista td { + background-color: rgb(100,100,140); + color: white; + padding: 3px 10px; + } + + table.dolgozatLista td a { + color: rgb(255,255,255); + text-decoration: none; + } + + table.dolgozatLista td a:hover { + color: rgb(155,155,255); + } + table.dolgozatLista td.nincsdolgozat {background-color: rgb(100,100,100); text-align:center; } + table.dolgozatLista tbody tr:hover th {background-color: rgb(80,180,120); } + table.dolgozatLista tbody tr:hover td {background-color: rgb(80,80,120); } + + /* ------- Adatok ------- */ + + table.dolgozatAdatok { + min-width:300px; + background-color: rgb(220,220,250); + margin-top: 10px; + } + + table.dolgozatAdatok thead th { + background-color: rgb(60,60,110); + color: white; + padding: 4px 0px; + } + + table.dolgozatAdatok tfoot th { + background-color: rgb(100,100,140); + padding: 4px; + } + + table.dolgozatAdatok tfoot input { +/* border-color: rgb(220,220,250); + border-width: 1px; + border-style: solid; + background-color: rgb(40,40,100); + color: rgb(255,255,255); +*/ + } + + table.dolgozatAdatok tbody th { + background-color: rgb(140,140,200); + color: white; + padding: 2px 6px; + } + + table.dolgozatAdatok tbody td { + background-color: rgb(100,100,160); + color: white; + padding: 2px 6px; + } + + table.dolgozatAdatok tbody td select.multiple { + height: 150px; + width: 100%; + } + + table.dolgozatAdatok td input.hosszu { + width: 95%; + } + + table.dolgozatAdatok tbody td span.onClickHideShow { + background-color: rgb(70,70,100); + color: white; + padding: 2px 4px; + border: 1px solid rgb(140,140,200); + cursor: pointer; + } + + table.dolgozatAdatok tbody td span.openable { + background-color: rgb(70,70,100); + color: white; + padding: 2px 4px; + border: 1px solid rgb(140,140,200); + } + + table.dolgozatAdatok tbody td ul { padding: 0px; margin: 0px; } + table.dolgozatAdatok tbody td ul li { list-style-type: none; background-color: rgb(70,70,100); margin: 1px 0px; padding: 4px 12px; } + table.dolgozatAdatok tbody td ul li a { color: white; text-decoration: none; } + + /* ------- jegyek -------- */ + + table.dolgozatJegyek { + min-width:300px; + background-color: rgb(220,220,250); + margin-top: 10px; + } + + table.dolgozatJegyek th { + background-color: rgb(60,60,110); + color: white; + padding: 2px 10px; + } + + table.dolgozatJegyek tbody th { + background-color: rgb(100,100,160); + font-weight: normal; + text-align:left; + } + + table.dolgozatJegyek th a { + text-decoration: none; + color: white; + } + + table.dolgozatJegyek th a:hover { + text-decoration: underline; + } + + table.dolgozatJegyek thead td { + background-color: rgb(100,100,140); + color: white; + text-align: center; + } + + table.dolgozatJegyek td { + background-color: rgb(200,200,240); + color: rgb(60,60,110); + text-align: center; + } + + table.dolgozatJegyek td a { + text-decoration: none; + } + + table.dolgozatJegyek td a:hover { + text-decoration: underline; + } + + table.dolgozatJegyek td a.jegy3 { + color: green; + } + + table.dolgozatJegyek td a.jegy4 { + color: red; + } + + form.dolgozat { margin-left:5%; margin-right:5%; width:90%; color: white; text-align: center; } + form.dolgozat input { + margin: 10px; background-color: rgb(0,100,100); border: 2px solid rgb(40,40,100); color: white; font-size: large; padding:2px 4px 2px 4px; + } + + table.dolgozatJegyek tr.atlag th { text-align:right; background-color: #9C64A0; } + table.dolgozatJegyek tr.atlag th:after { padding-left:4px; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/jegy.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/jegy.css new file mode 100644 index 00000000..20ccb4c4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/jegy.css @@ -0,0 +1,39 @@ +@media screen { + table.jegyInfo { + background-color: rgb(200,200,200); + color: white; + } + + table.jegyInfo thead th { + background-color: rgb(100,120,100); + height:30px; + } + + table.jegyInfo tfoot th { + background-color: rgb(100,120,100); + padding:5px; + } + + table.jegyInfo tbody select { max-width:300px; } + table.jegyInfo tbody th { + background-color: rgb(140,160,150); + padding: 0px 4px 0px 4px; + } + + table.jegyInfo tbody td { + background-color: rgb(140,160,150); + padding: 2px 4px 2px 4px; + } + + table.jegyInfo tr td a {color: white;text-decoration: none;} + table.jegyInfo tr td a:hover {color: white;text-decoration: underline;} + table.jegyInfo tr th a {color: white;text-decoration: none;} + table.jegyInfo tr th a:hover {color: white;text-decoration: underline;} + table.jegyInfo tr th a:visited {color: white;text-decoration: underline;} + + table.jegyInfo tbody td input { + width: 99%; + } + + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/stat.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/stat.css new file mode 100644 index 00000000..725adee6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/stat.css @@ -0,0 +1,339 @@ +@media screen { + + table.osztalyozo thead tr td { cursor: pointer; } + table.osztalyozo thead tr td.szuk { overflow:hidden; width:5px; max-width:5px;} + table.osztalyozo thead tr td.szuk { background-color: rgba(0,100,0,0.5);} + table.osztalyozo thead tr td.foTargy { background-color: #3F51B5;} + table.osztalyozo thead tr td.alTargy { border-bottom: solid 2px #3F51b5; background-color:#03A9F4;} + + table.osztalyozo tbody tr td.szuk { background-color: rgba(100,100,100,0.75);} + + table.osztalyozo { + background-color: rgb(220,220,220); + color: white; + width:98%; + } + + table.osztalyozo a { color: white; text-decoration:none } + table.osztalyozo a:hover { color: white; text-decoration:underline } + + table.osztalyozo thead th { + background-color: rgb(100,120,120); + } + table.osztalyozo thead th.nev { height:30px; } + table.osztalyozo thead th.beallitasok { text-align:left; font-weight:normal; font-size:x-small; color: rgba(255,255,255,0.7); } + table.osztalyozo thead th.beallitasok span { color: rgba(255,255,255,0.1); } + table.osztalyozo thead th.beallitasok label:hover { color: #ffffff;} + table.osztalyozo thead th.beallitasok span:hover { color: rgba(255,255,255,1); } + table.osztalyozo thead td { + background-color: rgb(100,140,130); + text-align: center; + padding: 0px 4px 0px 4px; + } + + table.osztalyozo tfoot th { + background-color: rgb(100,120,120); + padding: 0px; + vertical-align: center; + } + + table.osztalyozo tfoot th select { + width: 200px; + } + table.osztalyozo tfoot th input { + width: 100px; + } + + table.osztalyozo tfoot th input.jegy1 { + color: blue; + } + + table.osztalyozo tfoot th input.jegy2 { + color: black; + } + + table.osztalyozo tfoot th input.jegy3 { + color: green; + } + + table.osztalyozo tfoot th input.jegy4 { + color: red; + } + + table.osztalyozo tfoot td { + font-size:10px; + background-color: rgb(100,140,130); + text-align: center; + + } + + table.osztalyozo tbody th { background-color: rgb(130,140,150); font-weight: normal; } + table.osztalyozo tbody tr.elment th { background-color: rgb(65,70,75); } + table.osztalyozo tbody tr.elment th.jogviszonyafelfuggesztve { background-color: rgb(30,140,150); } + table.osztalyozo tbody tr.elment td.jegyek { background-color: #aaaaaa; } + table.osztalyozo tbody td span.masikFelev { font-style: italic; color: #555} + table.osztalyozo tbody td span.masikFelev:after { font-size: 6pt; position: relative; top: -2pt; content: "*"; } + + table.osztalyozo tbody th.jogviszonyalezarva { background-color: rgb(30,40,50); } + table.osztalyozo tbody th.jogviszonyafelfuggesztve { background-color: rgb(30,140,150); } + table.osztalyozo tbody th.magantanulo { background-color: rgb(130,40,150); } + table.osztalyozo tbody th.vendegtanulo { background-color: rgb(130,140,50); } + table.osztalyozo tbody th a { display: block; } + + table.osztalyozo tbody th.atlag { + background-color: rgb(100,100,130); + padding: 0px 4px 0px 4px; + } + table.osztalyozo tbody th.kituno { background-color: #ff0000; } + table.osztalyozo tbody th.jeles { background-color: #883333; } + table.osztalyozo tbody th.bukott { background-color: black; } + table.osztalyozo tbody th.i { background-color: #f1f1f1; color: green; } + table.osztalyozo tbody th.ni {background-color: #f1f1f1; color: red; } + + table.osztalyozo tbody th div.naploSorszam {background-color: #777777; border-right: solid 1px white; vertical-align: middle; display:table-cell; min-width:20px;} + + + table.osztalyozo tbody td.jegyek { + background-color: #eeeeee; + color: black; + text-align: center; + } + + table.osztalyozo tbody td.biz { + background-color: rgb(180,100,140); + text-align: center; + } + table.osztalyozo tbody td.bizZaradek select { + width:400px; + } + table.osztalyozo thead td.bizZaradek span { color: rgba(255,255,255,0.1); } + table.osztalyozo thead td.bizZaradek span:hover { color: white; } + + table.osztalyozo tbody td.biz select { background-color: rgb(180,100,140);} + table.osztalyozo tbody td.biz select:hover {background-color: rgb(250,250,250); } + + table.osztalyozo tbody tr td.targyEloszlas { background-color: #ccddcc; text-align: center; color: black; } + + table.osztalyozo tbody tr td div.osz { display:none; font-size:smaller; color:#666666;} + + table.bizstat { margin-left:60px; border: solid 1px orange; margin-right:20px; } + table.bizstat th { background-color: #eeeeee; font-weight: normal; text-align: right; } + table.bizstat td { background-color: #f7f7f7; text-align: right; padding-right:5px; padding-left: 5px;} + table.bizstat tr.ossz th { background-color: #dddddd; font-weight:bold; } + table.bizstat tr.ossz td { background-color: #dddddd; font-weight:bold; } + table.bizstat caption { + margin-left: 0px; + margin-top: 2em; + caption-side: top; + font-size:12px; + background-color: #778877; + color: white; + padding:2px; + } + + table.floatleft { float:left } + + /* TanuloBizonyitvany */ + table.tanuloBizonyitvany { background-color: #ffffff; } + table.tanuloBizonyitvany thead th { + background-color: rgb(100,140,130); + color: white; + text-align: center; + padding: 5px 8px 5px 8px; + font-weight: normal; + font-family: Times; + } + table.tanuloBizonyitvany thead th.cim { font-size: 20px; font-weight: bold; } + table.tanuloBizonyitvany thead th.nev { font-size: 16px; font-weight: bold; } + + + + table.tanuloBizonyitvany thead a { + color: white; + text-decoration: none; + } + table.tanuloBizonyitvany thead a:hover { + text-decoration: underline; + } + + table.tanuloBizonyitvany textarea { + width: 100%; + } + + table.tanuloBizonyitvany tbody.jegyzet td { + padding: 16px; + font-size: 10px; + background-color: rgb(200,200,200); + } + + table.tanuloBizonyitvany tbody th { + height:25px; + padding-right:10px; padding-left: 10px; + background-color: rgb(130,140,150); + color: white; + font-weight: normal; + } + + table.tanuloBizonyitvany tbody th,table.tanuloBizonyitvany tbody td { + border-color: rgb(220,220,220); + border-style: solid; + border-width: 1px 1px 0px 0px; + } + + + table.tanuloBizonyitvany tbody tr.fejlec th { + background-color: rgb(100,110,120); + font-weight: bold; + } + table.tanuloBizonyitvany tbody td.biz {background-color: rgb(180,100,140); text-align: center; color: white; padding-left:5px; padding-right:5px; } + table.tanuloBizonyitvany tbody td.avg {background-color: #f1f1f1; text-align: center; padding-left:5px; padding-right:5px; } + + table.tanuloBizonyitvany tfoot td { + border-style: none; + } + + table.sign { width: 100%; margin-top: 25px;} + table.sign td { text-align: center; border-style: none} + table.sign td.vonal { + width: 40%; + border-color: black; + border-width: 0px 0px 1px 0px; + border-style: dotted; + } + + /* iskolaStatisztika */ + table.iskolaStatisztika { background-color: #eeeeee; empty-cells: show;} + table.iskolaStatisztika thead th { + background-color: rgb(100,140,130); + color: white; + text-align: center; + padding: 2px; + font-weight: normal; + } + table.iskolaStatisztika tfoot { } + table.iskolaStatisztika tbody td { text-align: right; } + table.iskolaStatisztika tbody th { background-color: rgb(190,210,200); } + table.iskolaStatisztika tbody td { background-color: rgb(210,230,220); } + table.iskolaStatisztika tbody.hianyzas th { background-color: rgb(180,180,150); } + table.iskolaStatisztika tbody.hianyzas td { background-color: #ccccc0; } + table.iskolaStatisztika tbody.atlag th { background-color: rgb(220,220,220); text-align: left; padding: 0px 6px 0px 6px; font-weight: normal;} + table.iskolaStatisztika tbody.atlag th.ossz { background-color: rgb(220,220,220); text-align: center; } + table.iskolaStatisztika tbody.atlag td { background-color: white; } + table.iskolaStatisztika tbody.atlag tr:hover td, table.iskolaStatisztika tbody.atlag tr:hover th { background-color: #cccccc; } + table.iskolaStatisztika tbody.atlag tr.ossz th { background-color: rgb(200,200,210); text-align: center; font-weight: bold;} + table.iskolaStatisztika tbody.atlag tr.ossz td { background-color: rgb(220,220,230); } + +} +@media print { + + .mayorhead, .toolBar, img { display: none; } + + table.osztalyozo { border: solid 1px black; width:100%} + table.osztalyozo td { border-style: none solid solid none; border-width: 1px; text-align: center } + table.osztalyozo th { border: solid 1px black; } + table.osztalyozo a { text-decoration: none; color: black } + table.osztalyozo tbody th div.naploSorszam { display:none; } + + table.tanuloBizonyitvany { + border-width: 2px 2px 3px 3px; + border-style: solid; + border-color: black; + } + table.tanuloBizonyitvany a { + color: black; + text-decoration: none; + } + table.tanuloBizonyitvany td, table.tanuloBizonyitvany th { + padding: 0px 10px 0px 10px; + + } + table.tanuloBizonyitvany thead th { + border-width: 0px 1px 1px 0px; + border-style: solid; + border-color: black; + padding: 4px 10px 3px 10px; + font-weight: normal; + font-family: Times; + } + table.tanuloBizonyitvany thead th.nev { + border-width: 1px 1px 0px 0px; + border-style: solid; + border-color: black; + font-size: 16px; + } + table.tanuloBizonyitvany thead th.cim { + border-width: 0px 1px 0px 0px; + font-size: 20px; + } + table.tanuloBizonyitvany tfoot > tr > td { + border-width: 0px 1px 0px 0px; + border-style: solid; + border-color: black; + } + + table.tanuloBizonyitvany > tbody th, table.tanuloBizonyitvany > tbody td { + border-width: 1px 1px 0px 0px; + border-style: solid; + border-color: black; + } + table.tanuloBizonyitvany > tbody th { + text-align: left; + font-weight: normal; + } + table.tanuloBizonyitvany > tbody tr.fejlec th { + border-width: 2px 1px 1px 0px; + text-align: center; + font-weight: bold; + padding: 3px 10px 3px 10px; + } + table.tanuloBizonyitvany tbody.jegyzet td { + padding: 10px; + } + table.tanuloBizonyitvany .info { display: none } + table.tanuloBizonyitvany td.biz { font-style: italic; } + + table.sign { width: 100%; margin-top: 40px; margin-bottom: 25px;} + table.sign td { text-align: center; border-style: none} + table.sign td.vonal { + width: 40%; + border-color: black; + border-width: 0px 0px 1px 0px; + border-style: dotted; + } + + /* ------- */ + table.iskolaStatisztika { empty-cells: show;} + table.iskolaStatisztika thead th { + font-size: 12px; + text-align: center; + padding: 2px; + font-weight: bold; + border-style: none none solid none; border-color: #777777; border-width:2px; + } + table.iskolaStatisztika th { border-style: none solid solid solid; border-color: #777777; border-width:1px; } + table.iskolaStatisztika td { border-style: none solid solid none; border-color: #777777; border-width:1px; } + table.iskolaStatisztika th.ossz { border-style: none solid solid none; border-color: #777777; border-width:1px; } + + table.iskolaStatisztika tbody td { text-align: right; } + + table.iskolaStatisztika tbody.atlag th { text-align: left; padding-left: 6px; padding-right: 6px; font-weight: normal;} + table.iskolaStatisztika tbody.atlag th.ossz { text-align: center; } + table.iskolaStatisztika tbody.atlag tr.ossz th { height:25px; border-width: 0px 1px 2px 1px;text-align: center; font-weight: bold;} + table.iskolaStatisztika tbody.atlag tr.ossz td { border-width: 1px 1px 2px 1px; font-weight: bold} + + table.bizstat { margin-left:60px; border: solid 1px black; margin-right:20px; } + table.bizstat th { font-weight: normal; text-align: right; } + table.bizstat td { text-align: right; padding-right:5px; padding-left: 5px;} + table.bizstat tr.ossz th { background-color: #dddddd; font-weight:bold; } + table.bizstat tr.ossz td { background-color: #dddddd; font-weight:bold; } + table.bizstat caption { + margin-left: 0px; + margin-top: 2em; + caption-side: top; + font-size:12px; + color: white; + padding:2px; + } + + table.floatleft { float:left } +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/szempontRendszer.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/szempontRendszer.css new file mode 100644 index 00000000..3b44ffb0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/szempontRendszer.css @@ -0,0 +1,10 @@ + + form.szr { background-color: rgb(200,200,240); margin: 20px; text-align: center; padding: 20px; } + form.szr textarea { width: 80%; height: 300px; margin: auto; } + form.szr ol { text-align: left; font-weight: bold; margin: 0px 20px; } + form.szr ol ul { font-weight: normal; font-style: italic; margin-bottom: 10px; } + + table.lista { background-color: rgb(20,40,60); margin: auto; border-spacing: 1px; } + table.lista th { background-color: rgb(200,200,200); } + table.lista td { background-color: rgb(230,230,230); } + table.lista th, table.lista td { padding: 4px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/szovegesErtekeles.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/szovegesErtekeles.css new file mode 100644 index 00000000..1cf46b55 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/szovegesErtekeles.css @@ -0,0 +1,10 @@ + + form.ertekeles { background-color: rgb(255,255,255); margin: 4px 20px; padding: 10px 20px; border: solid black; border-width: 2px 0px 0px 0px; } + form.ertekeles h1 { font-size: 16px; text-align: center; color: white; background-color: rgb(40,60,80); margin: 0px 0px 2px 0px; padding: 2px; } + form.zaro h1 { background-color: rgb(120,60,40); } + form.ertekeles h2 { font-size: 14px; text-align: center; border: black solid; border-width: 1px 0px; margin: 0px; padding: 0px; } + form.ertekeles span.egyediMinosites { font-style: italic; } + form.ertekeles ol li { margin-top: 26px; } + form.ertekeles ol ul li { margin-top: 4px; } + form.ertekeles ol ul li input[type=text] { width: 95%; background-color: rgb(220,220,200); } + form.ertekeles input[type=submit] { width: 100%; background-color: #4a8; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/tankor.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/tankor.css new file mode 100644 index 00000000..ad0d51a0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/tankor.css @@ -0,0 +1,152 @@ +@media screen { + table.osztalyozo { + background-color: rgb(220,220,220); + color: white; + } + + table.osztalyozo a { color: white; text-decoration:none } + table.osztalyozo a:hover { color: white; text-decoration:underline } + + table.osztalyozo thead th { background-color: rgb(100,120,120); } + table.osztalyozo thead th select { background-color: rgb(100,120,120); color: white; border: 1px solid rgb(120,140,140); } + table.osztalyozo thead th.nev { height:30px } + table.osztalyozo thead th.defaultSulyozas { background-color:lightgreen; } + table.osztalyozo thead th select.sulyozas { width:44px; } + + table.osztalyozo thead td { + background-color: rgb(100,140,130); + text-align: center; + padding: 0px 4px 0px 4px; + } + + table.osztalyozo tfoot th { + background-color: rgb(100,120,120); + padding: 0px; + vertical-align: middle; + } + + table.osztalyozo tfoot th select { + width: 200px; + } + table.osztalyozo tfoot th input { + width: 100px; + } + + table.osztalyozo tfoot th input.jegy1 { color: blue; } + table.osztalyozo tfoot th input.jegy2 { color: black; } + table.osztalyozo tfoot th input.jegy3 { color: green; } + table.osztalyozo tfoot th input.jegy4 { color: red; } + table.osztalyozo tfoot th input.jegy5 { color: purple; /*background-color: gold; font-weight: bold;*/ } + + table.osztalyozo tbody th { + background-color: rgb(130,140,150); + font-weight: normal; + } + table.osztalyozo tbody tr.magantanulo th { background-color: purple; } + + table.osztalyozo tbody th.diakNev { text-align:left; padding-left:4px; } + table.osztalyozo tbody th.diakNevTxt { width:120px;} + table.osztalyozo tbody th.face { } +/* + table.osztalyozo tbody th.diakNev.c { text-align:center; padding-left:2px; padding-right:2px; } +*/ + table.osztalyozo tbody th.atlag { + background-color: rgb(100,100,130); + padding: 0px 4px 0px 4px; + } + + table.osztalyozo tbody th.dolgozat { + background-color: rgb(100,120,120); + } + + table.osztalyozo tbody td.jegyek { background-color: #eeeeee; white-space: nowraps; } + .ujSzemeszter { border: rgb(220,220,220) solid; border-width: 0px 0px 0px 6px; } + table.osztalyozo tbody tr:hover th { background-color: #44a; } + table.osztalyozo tbody tr:hover td, + table.osztalyozo tbody tr:hover td a { background-color: #aaf; } + table.osztalyozo tbody tr:hover td.dolgozat, + table.osztalyozo tbody tr:hover td.dolgozat a { background-color: #aca; } + table.osztalyozo tbody tr:hover td.biz { background-color: rgb(100,40,45); } + + table.osztalyozo tbody td { text-align: right; } + table.osztalyozo tbody td.dolgozat { background-color: rgb(160,180,160); } + table.osztalyozo tbody td.dolgozatMase { background-color: rgb(200,200,160); } + + table.osztalyozo tbody td a { + text-decoration: none; + } + + table.osztalyozo tbody td a.jegy1 { color: blue; } + table.osztalyozo tbody td a.jegy2 { color: black; } + table.osztalyozo tbody td a.jegy3 { color: green; } + table.osztalyozo tbody td a.jegy4 { color: red; } + table.osztalyozo tbody td a.jegy5 { color:purple; /*background-color: gold; font-weight: bold;*/ } + + table.osztalyozo tbody td a.jegy1mase { color: rgb(55,55,160); background-color: rgb(200,200,160); font-size: 0.8em; padding: 0.2em; } + table.osztalyozo tbody td a.jegy2mase { color: rgb(80,80,80); background-color: rgb(200,200,160); font-size: 0.8em; padding: 0.2em; } + table.osztalyozo tbody td a.jegy3mase { color: rgb(55,160,55); background-color: rgb(200,200,160); font-size: 0.8em; padding: 0.2em; } + table.osztalyozo tbody td a.jegy4mase { color: rgb(160,55,55); background-color: rgb(200,200,160); font-size: 0.8em; padding: 0.2em; } + table.osztalyozo tbody td a.jegy5mase { color: rgb(160,160,55); background-color: rgb(200,200,160); font-size: 0.8em; padding: 0.2em; } + + table.osztalyozo #megjegyzes { width: 50%; min-width: 200px; background: #eee; border: solid 1px rgb(100,120,120); margin: 1px 0px;} + table.osztalyozo #megjegyzes:focus { background: #ffa; color: black; border: 1px outset #eee; } + +/* table.osztalyozo tbody td a.masodikFelev { background-color: rgb(200, 250, 200); padding: 2px; } */ + + table.osztalyozo tbody td.biz { + background-color: rgb(180,120,140); + text-align: center; + } + table.osztalyozo tbody td.biz select { width:95px; } + + table.osztalyozo tbody tr th.c:hover span { display: none; } + table.osztalyozo tbody tr th.c:hover:after { content: "\e0ca"; font-family: "Elusive-Icons";} + + table.osztalyozo tbody td.biz select { background-color: rgb(180,120,140); } + table.osztalyozo tbody td.biz select option { color: black; } + + + /* jegyInfo */ + table.jegyInfo a { color: black; text-decoration: none; width: 800px; } + table.jegyInfo thead th { font-size:large; margin-bottom:2px; padding-bottom: 2px; border-bottom: solid 1px #eeeeee; } + table.jegyInfo tbody input { width: 99%; border: solid 1px #eeeeee;} + table.jegyInfo tbody th { padding-right:1em; text-align: left;} + table.jegyInfo tbody select { width: 99%; } + table.jegyInfo tfoot input { width: 50px; + color: white; + padding: 0.4em 0.4em; + border: solid 1px #3496B9; + border-radius: 2px; + } + table.jegyInfo tfoot input.modosit { background-color: #82C882; } + table.jegyInfo tfoot input.modosit:hover { background-color: #82fa82; } + table.jegyInfo tfoot input.torol { background-color: #f06; } + table.jegyInfo tfoot input.torol:hover { background-color: #a06; } + + #updateWindow { width: 800px; top: 200px; left: 50%; margin-left: -400px; min-height: 100px; height: 800px; mmax-height: 90%; } + #updateWindow form { padding: 20px; } + #updateWindow form h1 { text-align: center; margin-bottom: 0px; } + #updateWindow form h2 { text-align: center; } + #updateForm { max-height: 80%; overflow: auto; } + + #updateWindow form input.szoveges[type=submit] { width: 100%; background-color: #82c882; color: white; padding: 0.4em; border: solid 1px #3496B9; border-radius: 2px; } + #updateWindow form input.szoveges[type=submit]:hover { background-color: #82fa82; } + + table.osztalyozo thead td.ho span.literal {display:;} + table.osztalyozo thead td.ho span.roman {display: none;} + +} +@media (max-width: 764px) { + table.osztalyozo { width:95%;} + table.osztalyozo thead td.ho span.literal {display: none;} + table.osztalyozo thead td.ho span.roman {display: inline-block;} +} +@media print { + input, select, .toolBar { display: none; } + .biz select { display: inline; width: 80px; } + a { text-decoration: none; color: black; } + table { background-color: rgb(200,200,200); border-spacing: 0px; border: 0px black solid; font-size: 10px; } + td { border: 1px #888 solid; padding: 4px 4px; } + th { border: 1px #888 solid; padding: 6px 4px 2px 4px; vertical-align: middle; } + table.osztalyozo tbody th.diakNev { text-align:left; } +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/targySorrend.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/targySorrend.css new file mode 100644 index 00000000..611a544d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/targySorrend.css @@ -0,0 +1,10 @@ + + form.sorrend { width: 300px; margin: 10px auto; padding: 5px; text-align: center; background-color: rgb(100,120,140); } + form.sorrend h1 { font-size: 14px; padding: 2px; margin: 0px; background-color: rgb(160,100,100); color: white; } + form.sorrend select { margin: 5px; } + + #targyUl { list-style-image:none; list-style-type:none; margin-top:5px; margin:0px; padding:0px; text-align: left;} + #targyUl li { padding: 2px; margin:0px; background-color: white; margin-top: 1px; } + #targyUl li span.handle { padding: 2px; margin: 0px 10px 0px 2px; background-color: #E8A400; color: white; cursor: move; } + + #submit { margin: 2px; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/vizsga.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/vizsga.css new file mode 100644 index 00000000..80c452a0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/vizsga.css @@ -0,0 +1,30 @@ + + form.jelentkezes { margin: 10px 30px; padding: 10px; background-color: rgb(40,80,80); color: white; text-align: center; border: solid rgb(20,60,60); border-width: 3px 0px; } + form.jelentkezes h1 { border: solid white; border-width: 1px 0px; margin-top: 0px; font-size: 12pt; background-color: rgb(20,60,60); } + + form.lista { margin: 0px 30px; padding: 0px; background-color: rgb(40,80,90); color: white; text-align: center; border: solid rgb(20,60,70); border-width: 3px 0px; } + form.lista h1 { border: solid white; border-width: 1px 0px; margin-top: 0px; font-size: 12pt; background-color: rgb(20,60,70);} + form.lista table { margin: 0px auto; background-color: rgb(40,50,60); } + form.lista th { background-color: rgb(10,30,50); padding: 2px 4px; } + form.lista td { background-color: rgb(20,30,30); padding: 2px 4px; } + form.lista table tbody tr td { text-align:left; padding-left:4px; } + form.lista table tbody tr:hover td { outline: solid 1px #888;} + + form.lista table tbody tr.javitovizsga td { background-color: rgb(60,70,80);} + form.lista table tbody tr.beszamoltatovizsga td { background-color: rgb(80,70,60);} + + form.lista td.kiemelt { background-color: rgb(240,150,0); } + form.lista td.hideShowContainer label { color: black; font-weight: bold; padding: 0px 10px 0px 4px; } + form.lista td.szoveg { text-align: left; width: 400px; font-style: italic; } + form.lista td.jegy { text-align: left; } + form.lista td.jegy span { float: left; } + form.lista td.jegy span.jegy { float: right; color: yellow; padding-left: 10px;} + form.lista input[type="text"] { width: 100px; } + form.lista span.onClickHideShow { + color: red; float: right; font-size: 12px; font-weight: bold; + border: red 1px dotted; + padding: 2px 10px; + } + form.lista td a { color: white; text-decoration: none; display: block; background-color: red; padding: 2px 4px; font-weight: bold; } + form.lista td a:hover { color: red; background-color: white; } + form.lista span.onClickHideShow:hover { background-color: rgb(20,60,60); cursor: pointer; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/vizsgaJelentkezes.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/vizsgaJelentkezes.css new file mode 100644 index 00000000..b0dac656 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/vizsgaJelentkezes.css @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/zaroJegyCheck.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/zaroJegyCheck.css new file mode 100644 index 00000000..e69de29b diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/diakAllapot.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/diakAllapot.css new file mode 100644 index 00000000..3c6e15fb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/diakAllapot.css @@ -0,0 +1,27 @@ + + div.sni { padding: 10px; } + +/* + div.mentor form.sniAdat { } + div.mentor form.sni { } + div.mentor form.sni:hover, div.mentor form.sniAdat:hover { } +*/ + form.sni:hover, form.sniAdat:hover { } + + form.sniAdat { margin: 1px auto; padding: 10px; } + + form.sniAdat table { margin: auto; } + form.sniAdat td { text-align: left; padding: 20px; vertical-align: top; } + + form.sni { padding: 10px; margin: 1px; } + form.sni fieldset { border: solid 1px #aaaaaa; margin-bottom:4em;} + form.sni fieldset.utolso { } + form.sni fieldset legend { background-color: lightgreen; border: solid 1px lime; padding:2px 4px; } + + form.sni h2 { text-align: center; border: solid black; border-width: 1px 0px; padding:10px; } + form.sni input { font-size: 12px; } + form.sni ul { margin-top: 0px; list-style-type: none; } + form.sni li { background-color: rgb(150,200,150); margin-top: 1px; } + form.sni:hover li { background-color: rgb(150,250,150); } + + form.sni label { font-weight:bold;} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/fejlesztesiTerv.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/fejlesztesiTerv.css new file mode 100644 index 00000000..13d04475 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/fejlesztesiTerv.css @@ -0,0 +1,21 @@ + + + + div.sni { text-align: center; padding: 2px; } + div.sni h1 { text-align: center; } + + div.sni form { text-align: center; background-color: ; padding: 10px; margin: 2px auto; } + div.sni form:hover { background-color: ; } + div.mentor form { background-color: ; } + div.mentor form:hover { background-color:; } + div.sni form table { margin: auto; } + div.sni form td { text-align: left; padding: 20px; vertical-align: top; } + div.sni form h2 { text-align: center; border: solid black; border-width: 1px 0px; } + div.sni form label { } + div.sni form input { font-size: 12px; } + div.sni form option { font-size: 12px; padding: 2px; text-align: right; } + div.sni form select.multi option { text-align: left; } + + div.sni form fieldset { } + div.sni form fieldset.utolso { } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/tantargyiFeljegyzesek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/tantargyiFeljegyzesek.css new file mode 100644 index 00000000..a881aede --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/sni/tantargyiFeljegyzesek.css @@ -0,0 +1,15 @@ + + h2.sni { text-align: center; border: solid black; border-width: 1px 0px; font-size: 14px; font-weight: bold; width: 800px; margin: auto;} + ul.sni { text-align: center; padding: 2px; list-style-type: none; width: 800px; margin: 0px auto; } + + ul.sni form { text-align: center; background-color: rgb(220,200,200); width: 97%; padding: 10px; margin: 2px auto; } + ul.sni form:hover { background-color: rgb(250,200,200); } + ul.sni li.mod form { background-color: rgb(200,220,200); } + ul.sni li.mod form:hover { background-color: rgb(200,250,200); } + ul.sni input[type=submit] { vertical-align: top; padding: 34px 5px; } + ul.sni li p { width: 700px; height: 80px; background-color: rgb(225,210,210); margin: 5px auto; border: 1px solid rgb(200,200,200); text-align: left; } + + + + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/lemorzsolodas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/lemorzsolodas.css new file mode 100644 index 00000000..71919e09 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/lemorzsolodas.css @@ -0,0 +1,3 @@ + + div.mayorbody {padding:20px;} + table.lemorzsolodas { background-color: #f9f9f9; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/letszam.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/letszam.css new file mode 100644 index 00000000..c5d01202 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/letszam.css @@ -0,0 +1,11 @@ + + + table.letszamStat { + background-color: #eeeeee; + } + table.letszamStat thead tr th { background-color: #555555; color: white; } + table.letszamStat tfoot tr th { background-color: #555555; color: white; font-size:smaller;} + + table.letszamStat tbody tr th { background-color: #888888; color: white; } + table.letszamStat tbody tr td { background-color: #dddddd; color: black; text-align: center; width:2em; } + table.letszamStat tbody tr td.l { color: #555555; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/tantargyFelosztas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/tantargyFelosztas.css new file mode 100644 index 00000000..f1b65851 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/stat/tantargyFelosztas.css @@ -0,0 +1,36 @@ +@media screen { + + table#tfStat tr.hide { display: none; } + + table#tfStat th { background-color: #ddd; padding: 2px 6px; } + table#tfStat td { background-color: #eee; padding: 2px 6px; } + table#tfStat td.gap { background-color: #fff; } + table#tfStat td.number { text-align: right; min-width: 30px; } + table#tfStat td.alert, + table#tfStat td span.alert { color: red; } + + table#tfStat th.slide { cursor: pointer; min-width: 180px; } + + table#tfStat span.icon-chevron-up, + table#tfStat span.icon-chevron-down { float: right; margin: 4px 0 0 10px; } +} +@media print { + + table.toolBar, span.icon-lock, span.icon-remove-circle, div.icon-lock { display: none; } + table#tfStat span.icon-chevron-up, + table#tfStat span.icon-chevron-down { display: none; } + + table#tfStat { border-spacing: 0; border-collapse: collapse; line-height: 24px; } + table#tfStat, table#tfStat td, table#tfStat th { border: 1px solid black; } + + table#tfStat th { background-color: #fff; padding: 2px 6px; } + table#tfStat td { background-color: #fff; padding: 2px 6px; } + table#tfStat td.gap { background-color: #fff; } + table#tfStat td.number { text-align: right; min-width: 30px; } + table#tfStat td.alert, + table#tfStat td span.alert { color: red; } + + table#tfStat th.slide { min-width: 180px; } + + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/diakTanarai.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/diakTanarai.css new file mode 100644 index 00000000..b92fccf6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/diakTanarai.css @@ -0,0 +1,9 @@ + + table.lista { background-color: rgb(160,0,0); margin: 0px auto; padding: 4px; width: 500px; } + table.lista td.nev { text-align: left; background-color: rgb(240,240,100); margin: 1px 0px; padding: 4px; } + table.lista td.osztaly { text-align: left; background-color: rgb(240,240,100); margin: 1px 0px; text-align: center; padding: 4px; } + table.lista td.tanar { text-align: right; background-color: rgb(240,240,100); margin: 1px 0px; font-style: italic; padding: 4px; } + table.lista th { background-color: rgb(170,170,60); font-weight: bold; font-style: normal; padding: 4px; } + + form.osztaly { text-align: center; border: 1px dotted rgb(20,60,100); margin: 10px; } + form.osztaly label { background-color: rgb(200,220,240); padding: 4px; margin: 0px 4px 0px 0px; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/fogadoOra.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/fogadoOra.css new file mode 100644 index 00000000..786ffc78 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/fogadoOra.css @@ -0,0 +1,46 @@ + +@media screen { + form.fogado { margin: 10px 20px; } + form.fogado table { background-color: rgb(130,160,130); margin: 0px auto; } + form.fogado table td { background-color: rgb(250,250,200); } + form.fogado table th { background-color: rgb(150,20,20); color: white; padding: 4px; } + form.fogado table thead td { background-color: rgb(180,30,30); color: white; text-align: center; } + form.fogado table thead th { } + form.fogado table thead th.cim { border-bottom: solid 1px white; height:3em; } + form.fogado table tfoot th { } + form.fogado table tbody td { text-align: center; } + form.fogado table tbody td.ok { background-color: lightgreen; } + form.fogado table tbody td.foglalt { background-color: #666666; } + form.fogado table tbody td.torol { background-color: rgb(130,180,130); } + form.fogado table tbody th { text-align: left; background-color: rgb(180,30,30); color: white; } + form.fogado h1 { text-align: center; border: dotted white; border-width: 1px 0px; font-size: 12pt; background-color: rgb(150,20,20); color: white; margin: 0px; } + form.fogado div { text-align: center; background-color: rgb(250,250,200); } + form.fogado a { text-decoration: none; color: rgb(250,250,200); display: block; } + form.fogado a:hover { text-decoration: underlined; color: rgb(250,250,100); } + form.fogado div.diak { + display: table-cell; border: solid 1px white; padding-right:20px; padding-left:20px; vertical-align:baseline;">'; + } + form.fogado div.diak span.diakNev { background-color: #eeeee0; padding-left:1em; padding-right:1em; } +} + +@media print { + + .mayorhead, .toolBar { display: none; } + + form.fogado { margin: 0px 20px; } + form.fogado table { width: 600px; background-color: white; margin: 20px auto; border: 1px black solid; border-spacing: 0px; page-break-after: always; page-break-inside: avoid; } + form.fogado table td { background-color: white; border: 1px black solid; padding: 10px; } + form.fogado table th { background-color: white; color: black; padding: 4px; border: 1px black solid; padding: 10px; } + form.fogado table thead td { background-color: white; color: blck; text-align: center; } + form.fogado table thead th { } + form.fogado table tbody td { text-align: center; } + form.fogado table tbody th { text-align: left; background-color: white; color: black; } + form.fogado h1 { text-align: center; border: dotted white; border-width: 1px 0px; font-size: 12pt; background-color: white; color: black; margin: 0px; } + form.fogado div { text-align: center; background-color: white; } + form.fogado a { text-decoration: none; color: black; display: block; } + form.fogado a:hover { text-decoration: underlined; color: black; } + form.fogado table tfoot { display: none; } + form.fogado div.diak img { display:none; } + form.fogado div.diak span.diakNev { background-color: white; padding-left:1em; padding-right:1em;} + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/munkaterv.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/munkaterv.css new file mode 100644 index 00000000..3cbd9748 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/munkaterv.css @@ -0,0 +1,149 @@ +@media screen { + /* összesités */ + + table.osszesites { + margin: 20px auto; + background-color: rgb(200,200,200); + } + table.osszesites td { + padding: 2px 10px; + background-color: rgb(210,210,240); + font-style: italic; + } + table.osszesites td.osszesMunkanap { + background-color: rgb(240,210,210); + color: red; + } + table.osszesites th { + padding: 2px 10px; + background-color: rgb(100,100,120); + color: white; + } + + /* munkaterv - naptár */ + + form.munkaterv h2 { width: 60%; margin: 10px auto; text-align: center; border: 1px dotted; border-width: 1px 0px; font-size: 12px; } + + table.munkaterv { + background-color: rgb(220,230,240); + color: white; + width: 70%; + font-size: 12px; + } + + table.munkaterv tfoot th {background-color: rgb(120,130,140);} + table.munkaterv tfoot th input {border: none;} + + table.munkaterv thead th { + background-color: rgb(120,140,130); + vertical-align: center; + } + table.munkaterv thead th input { + background-color: rgb(120,140,130); + border-style: none; + padding: 0px; + margin: 0px; + float: right; + color: white; + font-size: 10px; + } + + table.munkaterv td { + width: 12%; + vertical-align: top; + text-align: center; + background-color: rgb(160,160,160); + } + table.munkaterv td input { width: 100%; } + table.munkaterv td.tanitasinap { background-color: rgb(200,100,100); border: none; } + table.munkaterv td.tanitasinap input { background-color: rgb(250,150,150); border: none; } + table.munkaterv td.tanitasinap select { background-color: rgb(250,150,150); border: 1px solid rgb(200,100,100); } + + table.munkaterv td.specialistanitasinap { background-color: rgb(180,130,70); } + table.munkaterv td.specialistanitasinap input { background-color: rgb(220,180,120); border: none; } + table.munkaterv td.specialistanitasinap select { background-color: rgb(220,180,120); border: 1px solid rgb(180,130,70); } + + table.munkaterv td.tanitasnelkulimunkanap { background-color: rgb(200,200,100); } + table.munkaterv td.tanitasnelkulimunkanap input { background-color: rgb(250,250,150); border: none; } + table.munkaterv td.tanitasnelkulimunkanap select { background-color: rgb(250,250,150); border: 1px solid rgb(200,200,100); } + + table.munkaterv td.tanitasiszunet { background-color: rgb(70,140,70); } + table.munkaterv td.tanitasiszunet input { background-color: rgb(120,190,120); border: none; } + table.munkaterv td.tanitasiszunet select { background-color: rgb(120,190,120); border: 1px solid rgb(70,140,70); } + + table.munkaterv td.szorgalmiidoszakonkivulimunkanap { background-color: rgb(240,130,60); } + table.munkaterv td.szorgalmiidoszakonkivulimunkanap input { background-color: rgb(250,175,100); border: none; } + table.munkaterv td.szorgalmiidoszakonkivulimunkanap select { background-color: rgb(250,175,100); border: 1px solid rgb(240,130,60); } + + table.munkaterv td.felevZarasDt { border: red solid; border-width: 4px 0px 0px 4px; } + table.munkaterv td.felevZaras { border: red solid; border-width: 4px 0px 0px 0px; } + + table.munkaterv td span { color:#ddd; margin:2px; font-size: 10px; } + + table.munkaterv td span.orarendiHet1 { background-color: rgba(0,0,0,0.2); } + table.munkaterv td span.orarendiHet2 { background-color: rgba(255,0,0,0.2); } + table.munkaterv td span.orarendiHet3 { background-color: rgba(255,255,0,0.2); } + table.munkaterv td span.orarendiHet4 { background-color: rgba(255,255,255,0.2); } + + table.munkaterv td select { + width: 100pt; + } + + table.munkaterv a { + color: white; + text-decoration: none; + } + + /* ------------------- */ + + form.init { background: #d6e0e6; margin: 0; padding: 20px; text-align: center; } + form.init h2, #napokSzama h2 { text-align: center; margin: 10px; border: 1px dotted; border-width: 1px 0px; font-size: 12px; } + form.init p { background-color: rgb(180,180,210); padding: 10px; } + form.init label { background-color: rgb(200,200,250); padding: 10px; } + form.init input[type=submit] { background-color: rgb(200,200,200); margin: 10px 5px; } + + /* admin form */ + div.admin { width: 95%;max-width: 95%;margin: 2em auto 0px auto; } + div.admin .onClickShow { float: left; text-align: center; min-width: 100px; margin: 0 2px 0 0; color: white; + background: rgba(52, 150, 185, 0.6); padding: 4px 10px; cursor: pointer; + border-radius: 4px 4px 0 0; + border-bottom: solid 1px rgb(52, 150, 185); + } + div.admin .onClickShow:hover { + background: rgba(52, 150, 185, 1); + border-bottom: solid 1px orange; + } + div.admin .openable { clear: both; } + div.admin .selected { background: #d6e0e6; color: black; border-bottom: solid 1px orange; } + div.admin #napokSzama { background: #d6e0e6; margin: 0; padding: 20px; } + + div.admin ul { list-style: none; text-align: left; margin: 0; padding: 0; } + div.admin ul li { margin: 0px auto 1px auto; background: #abcdef; padding: 10px; width: 500px; } + div.admin ul li:hover { background: rgb(100,100,200); color: white; } + div.admin ul li select { float: right; margin-top: -3px; } + div.admin ul li input[type=submit] { float: right; margin-top: -3px; } + +} +@media print { + + table.osszesites { width:100%; font-size:10px; + background-color: #eeeeee; + } + table.osszesites th { text-align: center; background-color: #ffffff; } + table.osszesites td { text-align: center; background-color: #ffffff; } + a { font-size:10px; text-decoration: none; color: black } + select { font-size:10px; border: none; } + + table.munkaterv td.specialisTanitasiNap { + border: dotted 1px black; + } + + table.munkaterv td.tanitasiSzunet { + background-color: #eeeeee; + } + + table.munkaterv td.tanitasNelkuliMunkanap { + border: dotted 1px black; + } + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/tankorBlokk.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/tankorBlokk.css new file mode 100644 index 00000000..205296b3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/tankorBlokk.css @@ -0,0 +1,11 @@ + + table.modosit { margin: 20px auto; } + table.modosit th { padding: 2px; color: white; border: 1px solid #223340; background-color: #445560; } + + form.csoport table { margin: 2px auto; color: white; background-color: #aabbc0; } + form.csoport table th { background-color: #445560; padding: 2px 14px; } + form.csoport table td { text-align: center; } + form.csoport table td input { background-color: #ccdde0; margin: 2px 0px; border: 1px solid #667780; } + form.csoport table td select { background-color: #ccdde0; font-size:10px; } + + form.szuro { width: 200px; background-color: white; float: right; margin-right: 20px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/tankorCsoport.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/tankorCsoport.css new file mode 100644 index 00000000..4ac3bcac --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/tankorCsoport.css @@ -0,0 +1,16 @@ + + table.modosit { margin: 20px auto; } + table.modosit th { padding: 4px; color: white; border: 3px solid rgb(20,80,40); background-color: rgb(30,120,60); } + + form.csoport table { margin: 0px auto; color: white; background-color: rgb(20,80,40); } + form.csoport table th { background-color: rgb(30,120,60); } + form.csoport table td { text-align: center; } + form.csoport table td input { background-color: rgb(160,250,160); margin: 2px 0px; border: 1px solid rgb(30,120,60); } + form.csoport table td select { background-color: rgb(160,250,160); } + form.csoport input.torol { border: solid 1px red; background-color: rgb(120,50,10); color: white; float: right; margin: -3px; padding: 0px;} + + form.csoportKereses table { margin: 10px auto; color: white; background-color: rgb(20,40,80); } + form.csoportKereses table th { background-color: rgb(30,60,120); } + form.csoportKereses table td { text-align: center; } + form.csoportKereses table td input { background-color: rgb(160,160,250); margin: 2px 0px; border: 1px solid rgb(30,60,120); } + form.csoportKereses table td select { background-color: rgb(160,160,250); } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/targyBontas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/targyBontas.css new file mode 100644 index 00000000..dc02bb8d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/targyBontas.css @@ -0,0 +1,121 @@ + + #mayorbody { position: relative; } + + table.bontas { border-spacing: 0 15px; margin: 70px 20px;} + + + table.bontas tbody tr th { -moz-box-shadow: 0px -15px #3ca; -webkit-box-shadow: 0px -15px #3ca; box-shadow: 0px -15px #3ca; } + table.bontas tbody tr th.targyTipus { background-color: #ddd; color: #a55; } + table.bontas tbody:nth-child(odd) tr th { -moz-box-shadow: 0px -15px #3ac; -webkit-box-shadow: 0px -15px #3ac; box-shadow: 0px -15px #3ac; } + table.bontas tbody tr:first-child th { -moz-box-shadow: 0px 0px; -webkit-box-shadow: 0px 0px; box-shadow: 0px 0px; } + table.bontas tbody tr.kesz:first-child th { -moz-box-shadow: 0px 3px #0f0 inset; -webkit-box-shadow: 0px 3px #0f0 inset; box-shadow: 0px 3px #0f0 inset; } + + table.bontas td, table.bontas th { position: relative; background: #cba; background: #0a7; padding: 5px 8px; height: 50px; border: solid white; border-width: 2px 1px; color: white; } + table.bontas th { text-align: left; } + table.bontas tbody:nth-child(odd) td, table.bontas tbody:nth-child(odd) th { background: #abc; background: #3facc7; background: #07a; } + + table.bontas tr.shadow1 td { -moz-box-shadow: 5px 5px #888; -webkit-box-shadow: 5px 5px #888; box-shadow: 5px 5px #888; } + table.bontas tr.shadow2 td { -moz-box-shadow: 5px 5px #888, 10px 10px #999; -webkit-box-shadow: 5px 5px #888, 10px 10px #999; box-shadow: 5px 5px #888, 10px 10px #999; } + table.bontas tr.shadow3 td { -moz-box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa; -webkit-box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa; box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa; } + table.bontas tr.shadow4 td { -moz-box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa, 20px 20px #bbb; -webkit-box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa, 20px 20px #bbb; box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa, 20px 20px #bbb; } + table.bontas tr.shadow5 td { -moz-box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa, 20px 20px #bbb, 25px 25px #ccc; -webkit-box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa, 20px 20px #bbb, 25px 25px #ccc; box-shadow: 5px 5px #888, 10px 10px #999, 15px 15px #aaa, 20px 20px #bbb, 25px 25px #ccc; } + + table.bontas tr.aktiv td { opacity: 1; } /* ha <1-re állítom, akkor olyan, mintha z-index-e a targyak div fölé nőne... */ + + table.bontas div.bontas { background: white; color: #333; padding: 2px 4px; margin: 2px 0px; cursor: pointer; } + table.bontas div.bontas ul.tankor-oraszam { list-style-type: none; margin: 0 0 0 6px; padding: 0; display: inline-block; float: right; color: #fff; } + table.bontas div.bontas ul.tankor-oraszam li { margin: 0 1px 0 0; padding: 0px 4px; display: inline-block; background-color: #f60; } + table.bontas div.bontas ul.tankor-oraszam li:nth-child(even) { background-color: #fa0; } + table.bontas div.bontas ul.tankor-oraszam li.marad { margin: 0; padding: 0px 4px; display: inline-block; background-color: #888; } + table.bontas div.bontas.ok ul.tankor-oraszam li.marad { background-color: green; } + table.bontas div.bontas.fail ul.tankor-oraszam li.marad { background-color: red; } + + table.bontas td span.felev1, table.bontas td span.felev2 { + background-color: yellow; color: black; margin:0; padding:0; position: absolute; border: solid yellow; font-size: 8pt; + } + table.bontas td span.felev1 { top: 0; left: 0; border-width: 0px 10px 2px 0px; border-radius: 0 0 10px 0; } + table.bontas td span.felev2 { bottom: 0; right: 0; border-width: 2px 0px 0px 10px; border-radius: 10px 0 0 0;} + table.bontas span { cursor: pointer; padding: 5px; } + table.bontas span:hover { color: orange; } + table.bontas span.delBontas { float: right; color: #800; margin-right: -5px; margin-top: -2px;} + table.bontas span.addBontas, table.bontas span.addBontasTargy { padding: 20px 10px; } + table.bontas tr.aktiv span.addBontasTargy { color: orange; } + table.bontas span.slideDown { padding: 20px 5px; } + table.bontas span.slideUp { padding: 20px 5px; } + table.bontas span.slideUpAll { padding: 20px 5px; } + + + div#targyak { z-index: 79; position: fixed; top: 200px; overflow: auto; height: 60%; background-color: rgba(73,71,71,0.92); border: black 1px solid; color: white; padding: 0px 2px; display: none; } +/* + div#targyak { overflow: auto; padding: 0px 2px; display: none; } +*/ + div#targyak h1 { font-size: 16px; text-align: center; border-bottom: 1px solid #ddd; padding: 4px 8px; margin: 2px; } + div#targyak h1 span { position:relative; z-index: 100; } + div#targyak span.icon-remove-circle { float: left; font-size: 18px; cursor: pointer; } + ul#targyakUl { list-style-type: none; padding: 0px 6px 20px 6px; } + ul#targyakUl li { padding: 3px; } + ul#targyakUl li:hover { background-color: rgba(255,255,255,0.9); color: rgb(71,71,71); cursor: pointer; } + div#targyakUp, div#targyakDown { z-index: 80; position: fixed; text-align: center; background-color: rgba(170,70,70,0.6); height: 21px; padding-top: 10px; width: auto; display: none; } + + #updateWindowSide p.bontasAdat, + #updateWindowSide p.tankorNev { text-align: center; border-bottom: solid 1px #ddd; padding: 8px 0; margin: 0; } + #updateWindowSide ul.tankorLista { list-style-type: none; color: rgba(255,255,255,1); margin:30px 10px; padding:0; } + #updateWindowSide ul.tankorLista li { padding:0; cursor: pointer; margin-right: 40px; } + #updateWindowSide ul.tankorLista li:hover { background-color: rgba(200,200,200,1); color: #000; } + #updateWindowSide ul.tankorLista li.hozzarendelt { border-right: 0px orange solid; } + #updateWindowSide ul.tankorLista li.tiltott { color: rgba(255,255,255,0.5); cursor: not-allowed; } + #updateWindowSide ul.tankorLista li.osszevonasTilt { color: rgba(255,255,255,0.5); } + #updateWindowSide ul.tankorLista li.tiltott:hover { background-color: rgba(200,200,200,1); color: #fff; } + #updateWindowSide ul.tankorLista li div.jobbra { float: right; margin-right: -40px; color: white; min-width: 40px; text-align: right; } + #updateWindowSide ul.tankorLista li:hover div.jobbra { background-color: rgb(200,150,150); } + #updateWindowSide ul.tankorLista li div.jobbra span.plusz { display: none; position: absolute; margin-top: -18px; margin-left: -3px; border-bottom: 1px solid white} + #updateWindowSide ul.tankorLista li div.jobbra span.minusz { display: none; position: absolute; margin-top: 26px; margin-left: -3px; padding-top: 1px; border-top: 1px solid white} + #updateWindowSide ul.tankorLista li div.jobbra:hover strong { position: absolute; display: inline-block; padding: 20px 20px 23px 20px; right: 5px; font-size: 20px; background: rgb(200,150,150); color: yellow; } + #updateWindowSide ul.tankorLista li div.jobbra:hover span.plusz, + #updateWindowSide ul.tankorLista li div.jobbra:hover span.minusz { display: inline-block; color: white; } + #updateWindowSide ul.tankorLista li strong { color: white; } + #updateWindowSide ul.tankorLista li.tiltott strong { color: #eee; } + #updateWindowSide ul.tankorLista li.tiltott.hozzarendelt div.jobbra::before { content: "✔"; float:right; color: #4f4; width: 10px; margin-right: -11px; text-align: center; } /* ✕ ☑ ☒ ⊗ ×✖ ❌ ☠" */ + #updateWindowSide ul.tankorLista li.tiltott div.jobbra::before { content: "❌"; float: right; color: red; width: 10px; margin-right: -11px; text-align: center; } + #updateWindowSide ul.tankorLista li.osszevonasTilt div.jobbra::before { content: "▚"; float: right; color: darkorange; width: 10px; margin-right: -11px; text-align: center; font-weigth: bold; } + #updateWindowSide ul.tankorLista li.osszevonasEnged div.jobbra::before { content: "▐"; float: right; color: yellow; width: 10px; margin-right: -11px; text-align: center; font-weigth: bold; } + + #updateWindowSide div#addTankor { background: rgba(70,70,70,0.9); position: absolute; width: 330px; margin: 0; padding: 3px 10px; border-bottom: 1px dotted #aaa; text-align: right; } + #updateWindowSide div#addTankor, #updateWindowSide div#addTankor span { cursor: pointer; } + #updateWindowSide div#disableAddTankor, #updateWindowSide div#disableAddTankor span { cursor: not-allowed; } + #updateWindowSide div#disableAddTankor { color: #888; background: rgba(70,70,70,0.9); position: absolute; width: 330px; margin: 0; padding: 3px 10px; border-bottom: 1px dotted #aaa; text-align: right; } + + #updateWindowSide div.slideToggleContainer ul { list-style-type: none; margin: 10px 0px; display: none; cursor: default; padding: 0 10px; } + #updateWindowSide div.slideToggleContainer ul li { display: inline-block; width: 100px; } + #updateWindowSide div.slideToggleContainer { cursor: pointer; margin: 0; padding: 3px 10px; border-bottom: 1px dotted #aaa; } + #updateWindowSide div.slideToggleContainer span.icon-chevron-down { float: right; z-index: 0; } + #updateWindowSide div.slideToggleContainer span.changed { color: yellow; } + #updateWindowSide ul#tankorSzemeszter li { width: 120px; } + #updateWindowSide ul#tankorSzemeszter input { width: 40px; text-align: right;} + + #updateWindowSide p.tankorModosit { cursor: pointer; color: yellow; text-align: right; margin: 0; padding: 0 10px 0 0; display: none; background-color: rgba(240,240,220,0.5); border-bottom: 2px solid yellow; color: rgb(70,70,70); color: white;} + #updateWindowSide span.tankorNevExtra { cursor: pointer;} + #updateWindowSide span.tankorNevExtra.changed { color: yellow; } + #updateWindowSide input#tankorNevExtra { width: 50px; display: none; } + + form#szures { border-radius: 0 0 10px 10px; background: rgba(170,170,170,0.9); color: white; margin: 0px auto; position: absolute; left: 35px; top: 63px; right: 240px; z-index: 1; } + form#szures div#osztaly div.evfolyamJel { display: inline-block; cursor: pointer; background-color: rgb(70,70,70); width: 50px; height; text-align: center; padding: 5px 0; margin-bottom: 1px;} + form#szures div#osztaly div.evfolyamJel.checked { background-color: #820; } + form#szures div#osztaly span.selectOsztaly { display: inline-block; cursor: pointer; background-color: #888; margin: 0px 0px 1px 1px; border: none #888; border-width: 0px 1px 1px 0px; padding: 5px; } + form#szures div#osztaly span.selectOsztaly.checked { background-color: orange; } + form#szures div#osztaly span.selectOsztaly.checked.bontasOk { background-color: darkorange; } + form#szures div#osztaly span.selectOsztaly.bontasOk { background-color: green; } + form#szures div.kSelect { float: left; } + form#szures input#filterOk { float: right; padding: 10px; margin-right: 15px; margin-top: 1px; } + + div#stat { background: black; position: absolute; top: 63px; right: 20px; z-index: 2; border-radius: 0 0 0px 0px; } + div#stat table { width: 230px; } + div#stat table td { background-color: #ddd; text-align: center; } + div#stat table #oratervenKivuli { cursor: pointer; } + div#stat table #oratervenKivuli span { cursor: pointer; margin-left: 8px; color: #666; } + div#stat table #oratervenKivuli ul { display: none; list-style-type: none; margin: 0; padding: 4px 0 0 0; text-align: left; font-weight: normal; position: absolute; left: -50px; right: 0px; background-color: #888; } + div#stat table #oratervenKivuli ul li { margin: 1px 0; padding: 4px; background: #ddd; } + div#stat table #oratervenKivuli ul li span.diff { float: right; } + + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/targyOraszam.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/targyOraszam.css new file mode 100644 index 00000000..14d9bd0c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/targyOraszam.css @@ -0,0 +1,7 @@ + + table.targyOraszam { + background-color:#eeeeee; + } + + table.targyOraszam tr th { background-color: rgb(100,100,150); color: white; border-bottom: solid 2px white; padding:3px; } + table.targyOraszam tr td.oraszam { text-align: right } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/vegzosOrarendLezaras.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/vegzosOrarendLezaras.css new file mode 100644 index 00000000..717a9b66 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/vegzosOrarendLezaras.css @@ -0,0 +1,5 @@ + + form.vegzos { background-color: rgb(200,200,100); margin: 20px 15%; text-align: center; padding: 10px; } + form.vegzos h1 { font-size: 12px; color: white; background-color: rgb(60,20,10); border: dotted white; border-width: 1px 0px; } + form.vegzos ul { list-style-type: none; margin: auto; padding: 10px 0%; width: 40%; text-align: left; background-color: rgb(100,40,10); } + form ul li { background-color: rgb(150,150,100); margin: 1px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/vegzosTankorLezaras.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/vegzosTankorLezaras.css new file mode 100644 index 00000000..1e377952 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanev/vegzosTankorLezaras.css @@ -0,0 +1,5 @@ + + form.vegzos { background-color: rgb(200,200,100); margin: 20px 15%; text-align: center; padding: 10px; border: solid 1px black; } + form.vegzos h1 { font-size: 12px; color: white; background-color: rgb(60,20,10); border: dotted white; border-width: 1px 0px; } + form.vegzos ul { list-style-type: none; margin: auto; padding: 10px 0%; width: 40%; text-align: left; background-color: rgb(100,40,10); } + form ul li { background-color: rgb(150,150,100); margin: 1px; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetInfo.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetInfo.css new file mode 100644 index 00000000..ca1dc18b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetInfo.css @@ -0,0 +1,11 @@ + + fieldset { margin: 20px; } + fieldset.alapadatok p { text-align: center; font-style: italic; } + fieldset.alapadatok p span { color: rgb(100,50,25); font-weight: bold; font-style: normal; } + + #temakor { list-style-type: none; } + #temakor li { margin-top: 10px; } + #temakor span.oraszam { display: block; float: left; width: 120px; text-align: right; color: rgb(160,80,40); margin-right: 6px; } + #temakor div.megnevezes { display: inline-block; color: #000; font-weight: normal; font-style: normal; } + + fieldset.tankor ul li span { color: rgb(100,50,25); font-weight: bold; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetJovahagyas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetJovahagyas.css new file mode 100644 index 00000000..1a7814d1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetJovahagyas.css @@ -0,0 +1,23 @@ + + #tanmenet { margin: auto; border-spacing: 0px; border: #888888 solid 3px; border-collapse: collapse; } + #tanmenet th { text-align: left; } + #tanmenet td, #tanmenet th { height: 34px; vertical-align: middle; padding: 0px 10px; border: #888888 solid 1px; } + #tanmenet tr { background-color: #eeeeee; } + #tanmenet tr.uj { background-color: orange; } + #tanmenet tr.kesz { background-color: yellow; } + #tanmenet tr.jovahagyott { background-color: lightgreen; } + #tanmenet tr.publikus { background-color: cornflowerblue; } + #tanmenet tr.uj:hover { background-color: #eeaaaa; } + #tanmenet tr.kesz:hover { background-color: #eeeeaa; } + #tanmenet tr.jovahagyott:hover { background-color: #aaeeaa; } + #tanmenet tr.publikus:hover { background-color: #aaaaee; } + #tanmenet a { color: black; text-decoration: none; display: block; padding: 10px; } + + #tanmenet tr.aktiv td, #tanmenet tr.aktiv th { border-top: 10px red solid; border-bottom: 10px red solid; } + #tanmenet tr.aktiv th { border-left: 10px red solid; } + #tanmenet tr.aktiv td:last-child { border-right: 10px red solid; } +/* #updateWindow { width: 80%; top: 10%; margin-top: auto; margin-bottom: auto; height: 80%; left: 50%; margin-left: -40%; }*/ + #updateWindow { width: 40%; top: 10px; margin-top: auto; margin-bottom: auto; height: 100%; left: 0%; margin-left: 0%; } + #updateForm { max-height: 95%; overflow: auto; } + #updateHeader { cursor: pointer; } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetLeadas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetLeadas.css new file mode 100644 index 00000000..d98cf5ac --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetLeadas.css @@ -0,0 +1,11 @@ + + table.tanmenet { margin: auto; background-color: black; border-spacing: 1px; } + table.tanmenet th { background-color: rgb(40, 70, 100); color: white; padding: 4px 10px; } + table.tanmenet th.tanarNev { padding: 0px; } + table.tanmenet th.tanarNev a { background-color: rgb(140,170,200); color: white; display: block; text-decoration: none; padding: 4px 10px; margin: 0px; } + table.tanmenet th.tanarNev a:hover { background-color: rgb(100,130,170); } + table.tanmenet td { padding: 4px; text-align: right; background-color: rgb(200,200,200); } + table.tanmenet td.jovahagyott { background-color: rgb(200,250,200); } + table.tanmenet td.nincsJovahagyva { background-color: rgb(255,255,200); } + table.tanmenet td.felkesz { background-color: rgb(255, 225, 175); } + table.tanmenet td.hianyzik { background-color: rgb(255,200,200); } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetModositas.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetModositas.css new file mode 100644 index 00000000..93e8e3f7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetModositas.css @@ -0,0 +1,54 @@ + + + fieldset.alapadatokfieldset { + margin:auto; + border: solid 1px darkblue; + border-bottom: solid 5px; + width:500px; + } + fieldset.alapadatokfieldset.uj { background: orange; border-color: #afa; } + fieldset.alapadatokfieldset.kesz { background: yellow; border-color: #aaf; } + fieldset.alapadatokfieldset.jovahagyott { background: lightgreen; border-color: #faa; } + fieldset.alapadatokfieldset.publikus { background: cornflowerblue; border-color: #ffa; } + fieldset.alapadatokfieldset.elavult { background: gray; border-color: #ccc; } + + fieldset.alapadatokfieldset legend { background-color: yellow; margin:0px 10px; padding: 2px 10px; border: solid 1px rgb(40,60,80);} + + fieldset.temakorokfieldset legend { + background-color: yellow; margin:0px 10px; padding: 2px 10px; border: solid 1px rgb(40,60,80); + } + + form.alapadatok { padding: 20px 20px; text-align: center; } + form.alapadatok label { } + form.alapadatok input[type=text] { width: 400px; } + + + #temakor { list-style-type: none; + padding: 5px; + margin: 20px; } + #temakor li { background-color: #ddddaa; margin: 15px 0px; padding: 4px 10px; border: 1px solid;} + #temakor li textarea { width: 80%; } + #temakor li select { width: 50px; text-align: right; vertical-align: top; margin-top: 6px; } + #temakor li:nth-child(even) select.temakorOraszam { background-color: #eee;} + #temakor li:nth-child(odd) select.temakorOraszam { background-color: #aaa;} + #temakor li.sortable:nth-child(even) { background-color: #aaaaaa; border-color: #222277; } + #temakor li.sortable:nth-child(odd) { background-color: #eeeeee; border-color: #227722; } + #temakor li img.close { float: right; width: 25px; cursor: pointer; display: none; } + #temakor li.sortable img.close { display: inline; } + #temakor li span.handle { border: 1px solid; height: 32px; cursor: move; + width: 40px; display: block; float: left; text-align: center; padding: 4px 8px; + position: relative; top: 5px; margin-right: 2px; background-color: #ddddaa; + } + #temakor li span.oraszam { border: solid 1px; + height: 28px; width: 50px; display: block; float: left; text-align: center; padding: 12px 6px 0px 6px; + position: relative; top: 5px; background-color: red; margin-right: 2px; + } + #temakor li.sortable:nth-child(even) span.handle { background-color: #eee; border-color: #222277; } + #temakor li.sortable:nth-child(odd) span.handle { background-color: #aaa; border-color: #227722; } + #temakor li.sortable:nth-child(even) span.oraszam { background-color: #eee; border-color: #222277; } + #temakor li.sortable:nth-child(odd) span.oraszam { background-color: #aaa; border-color: #227722; } + #temakor li.sortable:nth-child(even) span.nagy { background-color: red; } + #temakor li.sortable:nth-child(odd) span.nagy { background-color: red; } + + form.tanmenet input[type=submit] { width: 80%; margin: 10px 10%; text-align: center; } + form.tanmenet input[type=submit]:hover { background-color: rgb(20,40,60); color: white; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetTankor.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetTankor.css new file mode 100644 index 00000000..77d2c031 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/tanmenetTankor.css @@ -0,0 +1,76 @@ + + + + table.tanmenet { margin: 10px auto; background-color: rgb(25,50,100); border-spacing: 1px; } + table.tanmenet td, table.tanmenet th { padding: 4px; } + table.tanmenet th { background-color: #336; color: white; } + table.tanmenet tr td { background-color: rgb(210,220,230); } + table.tanmenet tr:nth-child(even) td { background: #eee; } + table.tanmenet tr:nth-child(odd) td { background: white; } + table.tanmenet td.nev { font-weight: bold; } + table.tanmenet td.tanmenet { text-align: left; } + table.tanmenet td.tanmenet div { text-align: right; padding:4px; } + + table.tanmenet td.tanmenet select { max-width:800px; } + + table.tanmenet tr.uj td { background-color: orange; } + table.tanmenet tr.kesz td.tanmenet { background-color: yellow; } + table.tanmenet tr.jovahagyott td { background-color: lightgreen; } + table.tanmenet tr.publikus td.tanmenet { background-color: cornflowerblue; } + table.tanmenet tr.elavult td.tanmenet { background-color: lightgray; } + +/* + table.tanmenet td.tanmenet select.uj { background-color: #8f8; } + table.tanmenet td.tanmenet select.kesz { background-color: #88f; } + table.tanmenet td.tanmenet select.jovahagyott { background-color: #f88; } + table.tanmenet td.tanmenet select.publikus { background-color: #ff8; } + table.tanmenet td.tanmenet select.elavult { background-color: lightgray; } + + table.tanmenet td.tanmenet select option { background-color: white; } + table.tanmenet td.tanmenet select option.uj { color: green; } + table.tanmenet td.tanmenet select option.kesz { color: blue; } + table.tanmenet td.tanmenet select option.jovahagyott { color: red; } + table.tanmenet td.tanmenet select option.publikus { color: yellow; } + table.tanmenet td.tanmenet select option.elavult { color: gray; } +*/ + table.tanmenet td.tanmenet input.info { } + table.tanmenet td.tanmenet input { } + table.tanmenet td.tanmenet input:hover { } + + #infodiv { + padding: 0px; margin: 0px 10%; width: 80%; height: 500px; position: absolute; top: 80px; + opacity: 1; background-color: #eeeeee; + z-index: 200; + border: solid 1px #999999; + background-color: #eeeeee; + } + + #infodivheader { + + padding:5px; + margin-bottom:4px; + background-color: #5a85b8; + border-bottom: solid 1px #15477B ; + color: white; + font-weight: bold; + cursor: pointer; + } + #infodivclose { + margin-right: 10px; + cursor: pointer; border: #822 solid 1px; padding: 2px 5px; background: #822; color: white; font-weight: bold; + box-shadow: inset 0px -3px 1px rgba(0, 0, 0, 0.45), 0px 2px 2px rgba(0, 0, 0, 0.25); border-radius: 3px; text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.5); + } + #infodiv fieldset { margin-top:2px; background-color: #eeeeee; border: solid 1px rgb(50,60,70);} + #infodiv fieldset legend { text-align: right; background-color: yellow; margin:0px 10px; padding: 2px 10px; border: solid 1px rgb(40,60,80); } + + #inform { overflow: scroll; height: 460px;} +/* border-color: rgb(130,30,20) rgb(110,20,15) rgb(90,10,10) rgb(150,40,25); outset*/ + #inform fieldset.alapadatok p { text-align: center; font-style: italic; } + #inform fieldset.alapadatok p span { color: rgb(100,50,25); font-weight: bold; font-style: normal; } + + #inform #temakor { list-style-type: none; } + #inform #temakor li { margin-top: 10px; } + #inform #temakor span.oraszam { display: block; float: left; width: 120px; text-align: right; color: rgb(160,80,40); margin-right: 6px; } + #inform #temakor div.megnevezes { display: inline-block; font-style: normal; } + + #inform p.kiemelt { text-align: center; margin-top: 100px; font-size: 20px; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/ujTanmenet.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/ujTanmenet.css new file mode 100644 index 00000000..c8a4f5dc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/tanmenet/ujTanmenet.css @@ -0,0 +1,19 @@ + + + div#ujTanmenet { + width:90%; + margin:auto; + } + + div.tanmenetHeader { +padding:5px; +margin-bottom:0px; +background-color: #5a85b8; +border-bottom: solid 1px #15477B ; +color: white; +font-weight: bold; + } + + form.tanmenet { background: #ddd; padding: 10px;margin:0px; border-width: 0px 1px 1px 1px; border-style: solid ; border-color:#366; } + form.tanmenet input[type=text] { width: 100%; } + form.tanmenet input[type=submit] { width: 80%; margin: 5px 10%; } \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/uzeno/uzeno.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/uzeno/uzeno.css new file mode 100644 index 00000000..04d5ea37 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/uzeno/uzeno.css @@ -0,0 +1,139 @@ + + table.uzeno, table.ujUzenet, table.egyUzenet { + width:90%; + background-color: #fff; + margin-top:1em; + margin-bottom:1em; + } + table.uzeno thead tr th, table.ujUzenet tr th { + color: white; border-bottom: solid 0px white; + background-color: #3f51b5; + padding:0.5em; font-weight: normal; + } + table.uzeno thead tr th a, table.ujUzenet tr th a { color:white; } + + table.uzeno a { text-decoration: none; font-style:normal;} + table.uzeno a:hover { } + + table.ujUzenet select { } + table.ujUzenet tr td { text-align: center } + table.ujUzenet textarea { width:98%; height: 100px; border: solid 1px rgb(100,100,90); background-color:#eeeeee; margin-bottom:10px;} + table.ujUzenet tr.admin td textarea { background-color: green; color: white; } + + table.uzeno thead tr th.dt { width:30em; } + table.uzeno thead tr th.cimzett { width:30em; } + + table.uzeno tfoot tr th, table.uzeno tfoot tr th a { color:white; } + table.uzeno tbody tr td { padding:0px 4px; background-color: #eee;} + table.uzeno tbody tr td div.nev--container { display:table-cell; vertical-align:middle; padding-left:2px; } + + table.uzeno tbody tr td.felado { min-width:120px;} + table.uzeno tbody tr td.cimzett { min-width:120px;} + table.uzeno tbody tr td.uzenet { width:70%; padding:10px; } + + table.uzeno tbody tr th { padding:0px 4px; text-align:left; font-weight: normal; } + table.uzeno tbody tr td.content { padding:10px; background-color:#eeeeee; } + table.uzeno tbody tr.uj td { background-color: #eeeeee; } + table.uzeno tbody tr.olvasott td { background-color: #dddddd;} + table.uzeno tbody tr td a { color: black; } + table.uzeno tbody tr td a:hover { color: rgb(100, 149, 237); } + table.uzeno tbody tr td.uzenet a { color: black; } + table.uzeno tbody tr td.uzenet:hover a { color: rgb(100,149,237); } + + tr.diak th, select optgroup.diak { background-color: rgb(255, 140, 0);} + tr.tanar th, select optgroup.tanar { background-color: #88ccff;} + tr.szulo th, select optgroup.szulo { background-color: rgb(64, 224, 208);} + + tr.diak.asterix th { background-color: #aaaaff;} + tr.tanar.asterix th { background-color: #aaaaff;} + tr.szulo.asterix th { background-color: #aaaaff;} + + tr.munkakozosseg th, select optgroup.munkakozosseg { background-color: #99aacc;} + tr.tankor th, select optgroup.tankor { background-color: #aaccaa; } + tr.tankorSzulo th, select optgroup.tankorSzulo { background-color: #aacccc; } + + tr.osztaly th, select optgroup.osztaly { background-color: #bbcc99; } + tr.osztalySzulo th, select optgroup.osztalySzulo { background-color: #bbcccc; } + tr.osztalyTanar th, select optgroup.osztalyTanar { background-color: rgb(140,200,100); } + + span.dt { font-size: smaller; color: #888888; white-space:nowrap; } + a.more { + text-decoration: none; + margin:1px; + padding:1px; + } + a.more:hover { color:rgb(170, 204, 170); } + +/* + a.more.uj { background-color: #ffeeaa; } + a.more.olvasott { background-color: #bbcc99; } +*/ + + table.uzeno tbody tr td.uzenoEszkozok { min-width: 40px; text-align:center; font-size:16px} + table.uzeno tbody tr td.uzenoEszkozok a { color:#aaa; text-decoration: none;} + table.uzeno tbody tr td.uzenoEszkozok a:hover { color: cornflowerblue; } + table.uzeno tbody tr td.uzenoEszkozok a.del:hover {color: red !important;} + + table.lapozo { width: 80%; } + table.lapozo table { background-color: #cccccc; border: solid 1px #778890; font-size:14px;} + table.lapozo table th.title { background-color: navy; color: white; padding-left: 4px; padding-right:4px;} + table.lapozo table td { text-align: center; background-color: #eeeeee; } + table.lapozo table td.aktiv { background-color: #ffffff; font-weight: bold; } + table.lapozo table td.nav { background-color: #aaaaaa; } + table.lapozo a {color:black; text-decoration: none; } + + form#uzenoKereso { + margin-bottom:100px; + } + + + form#uzenoKereso table tr td { color:;} + table.uzenetSzal { width:90%; background-color: rgb(50, 50, 100);} + table.uzenetSzal thead tr th { background-color: rgb(100, 149, 237); color:white; height:2em; border-bottom: solid 1px white; } + + table.uzenetSzal tbody tr td { background-color: #eeeeee;} + table.uzenetSzal tbody tr td.uzenetDt { width:150px; font-weight:normal; text-align:center; } + table.uzenetSzal tbody tr td.uzenetSzerep { width:150px; font-weight: normal; text-align:left;} + table.uzenetSzal tbody tr td.uzenetSzerep a { color: black; } + table.uzenetSzal tbody tr td.uzenetSzerep a:hover { color: rgb(100,149,237); } + table.uzenetSzal tbody tr th.uzenet { width:80%; font-weight: normal;} + + table.uzenetSzal tbody tr.uzenetSajat th { border-left:solid 2px rgb(100,149,237); border-right:solid 2px #dddddd;} + table.uzenetSzal tbody tr.uzenetPartner th { border-left: solid 2px #dddddd; border-right:solid 2px rgb(100,149,237);} + + table.uzenetSzal tbody tr td.uzenet div {display: table-cell; padding:4px; border: solid 1px #aaaaaa;border-radius:2px; background-color: #f9f9f9; } + table.uzenetSzal tbody tr td.uzenet div:hover { background-color: #ffffff;} + table.uzenetSzal tbody tr td.uzenet div a { color: black; } + table.uzenetSzal tbody tr td.uzenet div a:hover { color: rgb(100,149,237); } + + table.uzenetSzal tbody tr.uzenetPartner td.uzenet div { background-color: white; } + +/* + table.uzenetSzal tr td.uzenet div:before { + width: 0; + height: 0; + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + border-right: 5px solid blue; + content:""; + position:absolute; + display:block; + } +*/ + + table.uzeno tbody tr td.uzenet a { + display: inline-block; overflow: hidden; max-width:200px; text-overflow: ellipsis; line-height: 1em; + } + + a span.icon-network { color: #aaa; } + a:hover span.icon-network { color: cornflowerblue; } + +@media (max-width: 764px) { + + table.uzeno tbody tr td.felado { min-width:80px;} + table.uzeno tbody tr td.cimzett { min-width:80px;} + table.uzeno tbody tr td.uzenet { width:90%; padding:4px; word-break:break-word;} + + table.uzeno tbody tr td.uzenoEszkozok { min-width:50px; text-align:center; font-size:20px} + +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/azonositok.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/azonositok.phtml new file mode 100644 index 00000000..b529f995 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/azonositok.phtml @@ -0,0 +1,95 @@ +'azonosito')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''."\n"; + + $CONTAINERS = $AUTH['private'][ $AUTH['private']['backend'].'Containers']; + if (isset($CONTAINERS) and is_array($CONTAINERS) and count($CONTAINERS) > 0) { + echo ''."\n"; + } + + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; +// for ($i = 0; $i < count($ldapTagok['oIdNelkuli']); $i++) { +// echo ''; +// echo ''; +// echo ''; +// echo ''; +// echo ''."\n"; +// } + for ($i = 0; $i < count($osztalyTagok); $i++) { + echo ''; + echo ''; + echo ''; + + echo ''; + + if (is_array($osztalyTagok[$i]['studyIds'])) { + for ($j = 0; $j < count($osztalyTagok[$i]['userAccounts']); $j++) + $L[] = $osztalyTagok[$i]['userAccounts'][$j].' ('.$osztalyTagok[$i]['studyIds'][$j].')'; + echo ''."\n"; + } elseif (count($osztalyTagok[$i]['userAccounts']) > 0) { + echo ''."\n"; + } else { + echo ''."\n"; + } + + echo ''."\n"; + } + echo ''; + echo ''; + echo ''; + echo '
    '; + echo _JELSZO; + echo ' '."\n"; + echo '
    '; + echo _CONTAINER; + echo ''; + echo '
    '._NEV.''._OID.''._AZONOSITO.''._HASONLO_FELHASZNALOK.'
    '; +// echo $ldapTagok['oIdNelkuli'][$i]['oId']; +// echo ''; +// echo $ldapTagok['oIdNelkuli'][$i]['dn']; +// echo '
    '; + echo $osztalyTagok[$i]['diakNev']; + echo ''; + echo $osztalyTagok[$i]['oId']; + echo ''; + if (!isset($osztalyTagok[$i]['userAccount'])) { + if ($osztalyTagok[$i]['oId'] != '') { + echo ''."\n"; + echo ''."\n"; + } else { + echo _NINCS_OID; + } + } else { + echo $osztalyTagok[$i]['userAccount']; + if (__JELSZOGENERALAS === true && isset($Tagok[ $osztalyTagok[$i]['oId'] ]['userPassword'])) + echo ' ('.$Tagok[ $osztalyTagok[$i]['oId'] ]['userPassword'].')'; + } + echo ''.implode(',', $L).''.implode(',', $osztalyTagok[$i]['userAccounts']).'
    '; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/csoportok.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/csoportok.phtml new file mode 100644 index 00000000..61c2d123 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/csoportok.phtml @@ -0,0 +1,87 @@ +'csoport')); + echo ''."\n"; + + if ($csoportId != '') echo ''."\n"; + echo ''."\n"; + $SEL = array($csoportId => ' selected="selected" '); + for ($i = 0; $i < count($Csoportok); $i++) { + echo ''."\n"; + } + echo ''."\n"; + echo ''."\n"; + + formEnd(); + + } + + function putUjCsoportForm($osztalyId, $Tankorok) { + + formBegin(array('class'=>'csoport')); + + echo '

    '._UJ_CSOPORT.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + + } + + function putCsoportModositoForm($csoportAdatok, $Tankorok, $osztalyId) { + + formBegin(array('class'=>'csoport')); + + echo '

    '._CSOPORT_MODOSITAS.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + formEnd(); + + } + + function putCsoportTorlesForm($csoportId, $osztalyId) { + + formBegin(array('class'=>'csoport')); + + echo '

    '._CSOPORT_TORLESE.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/fillhaladasi.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/fillhaladasi.phtml new file mode 100644 index 00000000..cc97974a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/fillhaladasi.phtml @@ -0,0 +1,12 @@ +'; + echo ''; + echo ''; + formEnd(); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/import.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/import.phtml new file mode 100644 index 00000000..4aa1f88c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/import.phtml @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/intezmenyek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/intezmenyek.phtml new file mode 100644 index 00000000..f70e7739 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/intezmenyek.phtml @@ -0,0 +1,142 @@ +'intezmeny')); + + echo '

    '._INTEZMENY_MODOSITAS.'

    '."\n"; + + echo ''."\n"; + + echo _OMKOD . ': '."\n"; + echo _ROVIDNEV .': '."\n"; + echo _NEV.': '."\n"; + echo _FENNTARTO.': '; + echo ''; + if ($Intezmeny['alapertelmezett']) + echo '' . _ALAPERTELMEZETT; + else + echo '' . _ALAPERTELMEZETT; + echo ''."\n"; + formEnd(); + + if (is_array($Intezmeny['telephely']) && count($Intezmeny['telephely']) > 0) { + for ($i = 0; $i < count($Intezmeny['telephely']); $i++) { + + formBegin(array('class'=>'telephely')); + + echo '

    '.($i+1).'. '._TELEPHELY_MODOSITAS.'

    '."\n"; + echo ''."\n"; + echo ''."\n"; + + echo _TELEPHELYROVIDNEV .': '."\n"; + echo _TELEPHELYNEV.': '."\n"; + if ($Intezmeny['telephely'][$i]['alapertelmezett']) + echo '' . _ALAPERTELMEZETT; + else + echo '' . _ALAPERTELMEZETT; + echo '
    '; + echo _IRSZ . ': '."\n"; + echo _HELYSEG . ': '."\n"; + echo '
    '."\n"; + echo _KOZTERULETNEV . ': '."\n"; + echo _KOZTERULETJELLEG . ': '."\n"; + echo _HAZSZAM . ': '."\n"; + echo '
    '; + echo _TELEFON . ': '."\n"; + echo _FAX . ': '."\n"; + echo _EMAIL . ': '."\n"; + echo _HONLAP . ': '."\n"; + + + echo ''."\n"; + + formEnd(); + } + } + + formBegin(array('class'=>'ujTelephely')); + + echo '

    '._UJ_TELEPHELY.'

    '."\n"; + + echo ''."\n"; + + echo _TELEPHELYROVIDNEV .': '."\n"; + echo _TELEPHELYNEV.': '."\n"; + echo '' . _ALAPERTELMEZETT; + echo '
    '; + echo _IRSZ . ': '."\n"; + echo _HELYSEG . ': '."\n"; + echo '
    '."\n"; + echo _KOZTERULETNEV . ': '."\n"; + echo _KOZTERULETJELLEG . ': '."\n"; + echo _HAZSZAM . ': '."\n"; + echo '
    '; + echo _TELEFON . ': '."\n"; + echo _FAX . ': '."\n"; + echo _EMAIL . ': '."\n"; + echo _HONLAP . ': '."\n"; + + echo ''."\n"; + + formEnd(); + + } + + function putIntezmenyTorlesForm($ADAT) { + + $Intezmeny = $ADAT['intezmenyAdat']; + + formBegin(array('class'=>'intezmeny')); + + echo '

    '._INTEZMENY_TORLES.'

    '."\n"; + + echo ''."\n"; + + echo '

    Az adatbázisok törlése csak egy esetleges későbbi fejlesztés lesz. Egyelőre csak az + intézmények listájából törlünk. Az adatbázisokat kézzel kell törölni.

    '; + echo '' . _ADATBAZISOK_TORLESE; + + echo '
    '."\n"; + + echo 'rootUser: '."\n"; + echo 'rootPassword: '."\n"; + + echo ''."\n"; + + formEnd(); + } + + function putUjIntezmenyForm() { + + formBegin(array('class'=>'intezmeny')); + + echo '

    '._UJ_INTEZMENY.'

    '."\n"; + + echo ''."\n"; + + + echo _OMKOD . ': '."\n"; + echo _ROVIDNEV .': '."\n"; + echo _NEV.': '."\n"; + + echo '
    '."\n"; + + echo 'rootUser: '."\n"; + echo 'rootPassword: '."\n"; + + echo ''."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/rpcPrivilege.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/rpcPrivilege.phtml new file mode 100644 index 00000000..e9ffde6d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/rpcPrivilege.phtml @@ -0,0 +1,72 @@ +'addNode')); + echo '

    '._UJ_VEGPONT.'

    '; + echo ''; + echo '

    '; + echo ''; + echo '
    '; + echo ''; + echo ''; + echo '
    '; + echo ''; + echo '

    '; + echo ''; + formEnd(); + } + + function putPrivilegesForm($ADAT) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + foreach ($ADAT['privs'] as $index => $pAdat) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + echo '
    '._NODE.''._NODEID.''._INTEZMENY.''._OMKOD.''._ACCOUNT.''._PRIVS.'
    '.$ADAT['nodes'][ $pAdat['nodeId'] ][0]['nev'].''.$pAdat['nodeId'].''.$ADAT['intezmenyek'][ $pAdat['OMKod'] ][0]['nev'].''.$pAdat['OMKod'].''.$pAdat['userAccount'].''; + formBegin(array('id'=>'priv')); + echo ''; + echo ''; + echo ''; + echo ''; + $nPriv = explode(',',$pAdat['priv']); + foreach ($ADAT['privileges'] as $index => $priv) { + if (in_array($priv, $nPriv)) $CHK=' checked="checked" '; + else $CHK = ''; + $id = 'n'.$pAdat['nodeId'].ekezettelen($pAdat['userAccount']).$pAdat['OMKod'].$index; + echo ''; + echo ''; + } + echo ''; + formEnd(); + echo '
    '; + + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/szemeszterek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/szemeszterek.phtml new file mode 100644 index 00000000..f7cff27b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/szemeszterek.phtml @@ -0,0 +1,61 @@ +'szemeszter')); + echo ''."\n"; + echo ''."\n"; + + +// echo '

    '.$Sz['tanev'].'/'.$Sz['szemeszter'].'('.$Sz['szemeszterId'].')

    '."\n"; +// echo '

    '.$Sz['kezdesDt'].' - '.$Sz['zarasDt'].' ('.$Sz['statusz'].')

    '."\n"; + echo '

    '._IDOSZAKOK.'

    '; + echo ''; + for ($i = 0; $i < count($Sz['idoszak']); $i++) { + + echo ''; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + } + echo '
    '."\n"; + echo '
    '."\n"; + + echo ''."\n"; + + formEnd(); + } + + function putUjIdoszak($szemeszterId, $idoszakTipusok) { + + formBegin(array('class'=>'szemeszter')); + + echo ''."\n"; + echo ''."\n"; + + echo '

    '._UJ_IDOSZAK.'

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/szuloiAzonositok.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/szuloiAzonositok.phtml new file mode 100644 index 00000000..650afce6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/szuloiAzonositok.phtml @@ -0,0 +1,113 @@ +'azonosito')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''."\n"; + + $CONTAINERS = $AUTH['parent'][ $AUTH['private']['backend'].'Containers']; + if (isset($CONTAINERS) and is_array($CONTAINERS) and count($CONTAINERS) > 0) { + echo ''."\n"; + } + + echo ''; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + for ($i = 0; $i < count($osztalyTagok); $i++) { + echo ''; + + echo ''; + foreach (array('anya','apa') as $szulo) { + if ($osztalyTagok[$i][$szulo]['szuloNev'] == '') { + echo ''; + continue; + } + echo ''; + echo ''; + + echo ''; + + if (is_array($osztalyTagok[$i][$szulo.'Cns'])) { + $L = array(); + for ($j = 0; $j < count($osztalyTagok[$i][$szulo.'Cns']); $j++) + $L[] = $osztalyTagok[$i][$szulo.'Cns'][$j].' ('.$osztalyTagok[$i][$szulo.'Accounts'][$j].')'; + echo ''."\n"; + } else { + echo ''."\n"; + } + } // anya / apa + echo ''."\n"; + } + echo ''; + echo ''; + echo ''; + echo '
    '; + echo _JELSZO; + echo ' '."\n"; + echo '
    '; + echo _CONTAINER; + echo ''; + echo '
    '._NEV.''._ANYANEV.''._ANYAAZONOSITO.''._ANYA_FELHASZNALO.''._ANYA_HASONLO_NEV.''._APANEV.''._APAAZONOSITO.''._APA_FELHASZNALO.''._APA_HASONLO_NEV.'
    '; + echo $osztalyTagok[$i]['diakNev']; + echo ''; + echo $osztalyTagok[$i][$szulo]['szuloNev']; + + echo ''; + if ($osztalyTagok[$i][$szulo]['statusz'] == 'elhunyt') { // elhunyt státuszú a szülő + echo ''._ELHUNYT.''; + } elseif (!isset($osztalyTagok[$i][$szulo.'Account'])) { // Ha nem találtunk létező $szulo.Account-ot + // ez kellene, hogy a szulő táblát módosítsuk... + echo ''."\n"; + if ($osztalyTagok[$i][$szulo]['userAccount'] != '') { // de a szulő táblában be van írva + echo ''."\n"; + } else { + echo ''."\n"; + } + // generált jelszó + echo '
    ('.$osztalyTagok[$i][$szulo]['userPassword'].')'; + } else { + if (false && $osztalyTagok[$i][$szulo]['email'] != '') { // nem megvalósított funkció... + echo '
    '; + echo '✉'; + echo ''; + echo '
    '; + } + echo $osztalyTagok[$i][$szulo]['userAccount']; + // generált jelszó + echo '
    ('.$osztalyTagok[$i][$szulo]['userPassword'].')'; + } + echo '
    '; + if (isset($osztalyTagok[$i][$szulo.'Account'])) { // Ha találtunk létező $szulo.Account-ot + echo $osztalyTagok[$i][$szulo.'UserCn']; + } + echo ''.implode(',
    ', $L).'
    '; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tanevek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tanevek.phtml new file mode 100644 index 00000000..ba77f647 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tanevek.phtml @@ -0,0 +1,165 @@ +'intezmeny')); + + echo '

    '._UJ_TANEV.'

    '."\n"; + + echo '
    '; + + echo ''."\n"; + + //szemeszter: tanev, sorszám, status (aktív, lezárt, új, tervezett), kezdete, vége + + echo _TANEV_JELE . ': '."\n"; + echo '
    '."\n"; + + for ( $i = 1; $i <= 2; $i++ ) { + echo $i .'. ' . _SZEMESZTER . ":"; + echo ''."\n"; + echo ' - '."\n"; + echo ''."\n"; + echo ' ('._TERVEZETT.')'; + echo '
    '; + +// echo ''; + } + + echo '
    '."\n"; + +// echo 'rootUser: '."\n"; +// echo 'rootPassword: '."\n"; + + echo ''."\n"; + + echo '
    '; + formEnd(); + + } + + function putTanevSzemeszterekForm($Szemeszterek) { + + global $tanev; + + formBegin(array('class'=>'intezmeny')); + + echo ''."\n"; + echo ''."\n"; + + echo '

    '._TANEV_SZEMESZTEREI.'

    '."\n"; + + echo '
    '."\n"; + + for ($i = 0; $i < count($Szemeszterek); $i++) { + $Sz = $Szemeszterek[$i]; + echo ''; + echo $Sz['szemeszter'].'. '._SZEMESZTER.': '; + echo ''."\n"; + echo ' - '; + echo ''."\n"; + echo ' ('.$Sz['statusz'].')
    '."\n"; + } + echo ''."\n"; + + echo '
    '."\n"; + formEnd(); + + } + + function putTanevAktivalForm( $tanev ) { + + if ($tanev=='') return false; + formBegin(array('class'=>'intezmeny')); + + echo ''."\n"; + + echo '

    '._TANEV_AKTIVALAS.'

    '."\n"; + + echo '
    '."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo '
    '; + formEnd(); + } + + function putTanevLezarasForm( $ADAT ) { + + formBegin(array('class'=>'intezmeny')); + + echo ''."\n"; + + echo '

    '._TANEV_LEZARAS.'

    '."\n"; + + echo '
    '."\n"; + echo ''; + + echo '

    '._TAJEKOZTATO.'

    '; + + echo ''."\n"; + echo ''."\n"; + + echo '
    '; + echo '

    '; + echo ' '; + echo ''."\n"; + echo '

    '; + echo '

    '; + for ($i = 0; $i < count($ADAT['vegzoOsztalyok']); $i++) { + echo ''; + echo ''."\n"; + } + echo '

    '; + echo '
    '; + + echo '
    '; + echo '

    '; + echo ' '; + echo ''."\n"; + echo '

    '; + echo '
    '; + + echo '
    '; + echo '

    '; + echo ' '; + echo ''."\n"; + echo '

    '; + echo '
    '; + + echo '
    '; + echo '

    '; + echo ' '; + echo ''."\n"; + echo '

    '; + echo '
    '; + + echo '
    '; + echo '

    '; + echo ' '; + echo ''."\n"; + echo '

    '; + echo '
    '; + + echo '

    '; + echo ''."\n"; + echo ''."\n"; + echo '

    '."\n"; + + echo ''."\n"; + echo '
    '; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tankorok.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tankorok.phtml new file mode 100644 index 00000000..4aa1f88c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tankorok.phtml @@ -0,0 +1,5 @@ + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/base.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/base.phtml new file mode 100644 index 00000000..4753fbf4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/base.phtml @@ -0,0 +1,1273 @@ + + + _OMKOD(max7): + _ROVIDNEV(sql): + _NEV: + + + '; + formEnd(); + + } + + function putEszkozSor() { + + global $TOOL,$policy; + + if (__NOPAGEHELP!==true && (defined('__PAGEHELP') || isset($TOOL['pageHelp']) && defined('__'.$TOOL['pageHelp']))) $showHelp = true; + else $showHelp=false; + + $colspan=3; + + $_diakId = readVariable($_POST['diakId'],'id',readVariable($_GET['diakId'],'id',(defined('__USERDIAKID')?__USERDIAKID:null))); + $_tanarId = readVariable($_POST['tanarId'],'id',readVariable($_GET['tanarId'],'id',(defined('__USERTANARID')?__USERTANARID:null))); + $_tankorId = readVariable($_POST['tankorId'],'id',readVariable($_GET['tankorId'],'id',(null))); + + echo ''; + if (is_array($TOOL['vissza'])) { + echo ''; + $colspan++; + } + + echo ''."\n"; + reset($TOOL); + foreach ( $TOOL as $tool => $params ) { +// if ( function_exists( $func = "put$tool" ) && $params['tipus']=='cella') { + if ( isset($params['tipus']) && $params['tipus']=='cella') { + if (isset($params['title'])) $title = '__'.$params['title']; + else $title = '__'.nagybetus($tool).'TITLE'; + + echo ''."\n"; + $colspan++; + } elseif (isset($params['tipus']) && $params['tipus'] == 'sor') { $sorDb++; } + } + + if (__PAGE_PRESET===true) { + echo ''; + } + if ($_diakId>0 && _POLICY=='private') { + echo ''."\n"; + } elseif ($_tanarId>0 && _POLICY=='private') { + echo ''."\n"; + } + if ($_tankorId>0 && _POLICY=='private') { //--TODO css class szemely->csoport + echo ''."\n"; + } + echo ''."\n"; + echo ''."\n"; + + if (__NOPAGEHELP!==true) { + if (isset($TOOL['pageHelp']) && defined('__'.$TOOL['pageHelp'])) + echo ''."\n"; + elseif (defined('__PAGEHELP')) + echo ''."\n"; + } + + reset($TOOL); + foreach ( $TOOL as $tool => $params ) { + if ( function_exists( $func = "put$tool" ) && $params['tipus']=='sor') { + echo ''; + } + } + echo '
    '; + putToolFormStart('vissza', ''); + echo ''; + putToolFormStop(false, ""); + + echo ''; + if (defined('__PAGETITLE')) echo __PAGETITLE.'
    '; + else echo 'MaYoR eleketronikus napló'.'
    '; + echo ''; + if (defined('__TELEPHELYID')) echo ''.__INTEZMENY .', ' . __TANEV.'/'.(__TANEV+1).''; + else echo ''.__INTEZMENY . '/' . __TANEV.''; + echo ''; + if ($showHelp) echo '?'; + echo '
    '; + echo ''."\n"; + if (defined($title)) { + echo ''."\n"; + } + echo ''."\n"; + echo '
    '; + echo constant($title); + echo ''; + if ($GLOBALS['skin'] != 'vakbarat') echo ''; + echo '
    '."\n"; + $func = "put$tool"; + if (function_exists( $func )) { $func(); } + else { putGeneralSelect($tool); } + echo '
    '."\n"; + + echo '
    '; + + putToolFormStart('preSetSave', ''); + echo ''; + echo ''; + putPostParams($TOOL['general']['post']); + putToolFormStop(false, ""); + + putToolFormStart('preSetLoad', ''); + echo ''; + echo ''; + // putPostParams($TOOL['general']['post']); + putToolFormStop(false, ""); + + echo ''; + echo ''; // itt is kell a data... + echo ''; + echo ''; // itt is kell a data... + echo ''; + echo ''; + echo ''; + //echo '
    '; + // echo ''; + //echo '
    '; + if ($policy!='public') { + $href = href('index.php?page=naplo&sub=hibabejelento&f=hibabejelento'); + echo ''; + //echo ''._HIBABEJELENTES.''; + echo ''._HIBABEJELENTES.''; + echo ''; + } + echo '
    '; + + echo ''; + if (isset($params['title'])) $title = '__'.$params['title']; + else $title = '__'.nagybetus($tool).'TITLE'; + if (defined($title)) echo ''."\n"; + + echo '
    '.constant($title).''; + $func(); + echo '
    '; + echo '
    '; + + } + + function putPostParams($postParams, $postOverride=array()) { + + if (is_array($postParams)) + for ($i = 0; $i < count($postParams); $i++) { + $postParam = $postParams[$i]; + if (is_array($_POST[$postParam])) { + for ($j = 0; $j < count($_POST[$postParam]); $j++) { + echo ''."\n"; + } + } else { + echo ''."\n"; + } + } + if (is_array($postOverride) && count($postOverride)>=1) { + foreach($postOverride as $_k => $_v) + echo ''."\n"; + } + } + + function setParam($toolName, $paramName) { + + global $TOOL; + + if (isset($TOOL[$toolName]['paramName'])) $paramName = $TOOL[$toolName]['paramName']; + else $TOOL[$toolName]['paramName'] = $paramName; + global $$paramName; + + $TOOL[$toolName]['paramValue'] = ($$paramName != '' || $$paramName === 0) ? $$paramName : $TOOL[$toolName][$paramName]; + + } + + function putToolFormStart($toolName, $paramName, $_action='') { + + global $TOOL; + //if (!isset($_action)) + $_action = href('index.php',array('page','sub','f','lang','skin','sessionID','policy')); + setParam($toolName, $paramName); + formBegin(array('id' => $toolName.'Tool', 'method' => 'post', 'action'=> $_action)); + if (isset($TOOL[$toolName]['action'])) + echo ''."\n"; + putPostParams($TOOL[$toolName]['post'],$TOOL[$toolName]['postOverride']); + echo ''; + if ($putSubmitButton===true) { + echo ''; + } + if ($putTextButton!='') { + echo ''; + } + echo '
    '."\n"; + + } + + function putToolFormStop($putSubmitButton=true, $putTextButton="") { + + echo ''."\n"; +// echo ''."\n"; + if ($GLOBALS['skin'] != 'vakbarat') + echo ''; + else echo ''; + echo ''."\n"; + echo ''."\n"; + echo '
    '."\n"; + formEnd(); + } + + /* Toolok */ + + function putGeneralSelect($tool) { + + global $TOOL; + + putToolFormStart($tool, $TOOL[$tool]['paramName']); + + echo ''; + putToolFormStop(); + + } + + function putSzamSelect() { + + global $TOOL; + putToolFormStart('szamSelect', 'szam'); + echo ''; + putToolFormStop(); + + } + + function putForrasSelect() { + + global $TOOL; + putToolFormStart('forrasSelect'); + echo ''; + putToolFormStop(); + + } + + function putIntezmenySelect() { + + global $TOOL; + + putToolFormStart('intezmenySelect', 'intezmeny'); + echo ''; + putToolFormStop(); + + } + + function putTelephelySelect() { + + global $TOOL; + + putToolFormStart('telephelySelect', 'telephelyId'); + echo ''; + putToolFormStop(); + + } + + function putTanevSelect() { + + global $TOOL; + + putToolFormStart('tanevSelect', 'tanev'); + echo ''; + putToolFormStop(); + + } + + function putSzemeszterSelect() { + + global $TOOL; + + putToolFormStart('szemeszterSelect', 'szemeszterId'); + echo ''; + putToolFormStop(); + + } + + function putFelevSelect() { + + global $TOOL; + + putToolFormStart('felevSelect', 'szemeszter'); + echo ''; + putToolFormStop(); + + } + + function putTargySorrendSelect() { + + global $TOOL; + + putToolFormStart('targySorrendSelect', 'sorrendNev'); + echo ''; + putToolFormStop(); + + } + + function putMunkakozossegSelect() { + + global $TOOL; + + putToolFormStart('munkakozossegSelect', 'mkId'); + echo ''; + putToolFormStop(); + + } + + function putTargySelect() { + + global $TOOL; + + putToolFormStart('targySelect', 'targyId'); + echo ''; + putToolFormStop(); + + } + + function putMunkatervSelect() { + + global $TOOL; + + putToolFormStart('munkatervSelect', 'munkatervId'); + echo ''; + putToolFormStop(); + + } + + function putTanarSelect() { + + global $TOOL; + $StatuszJel = array( + 'jogviszonya lezárva' => ' [-]', + 'tartósan távol' => ' [t]', + 'külső óraadó' => ' [k]' + ); + + putToolFormStart('tanarSelect', 'tanarId'); + echo ''; + putToolFormStop(); + + } + + function putDiakSelect() { + + global $TOOL; + + putToolFormStart('diakSelect', 'diakId'); + + if ($TOOL['diakSelect']['searchable']==true && $TOOL['diakSelect']['paramValue']=='' && count($TOOL['diakSelect']['diakok'])>100) { + echo ''; + echo ''; + echo ''; + } else { + echo ''; //ዖ + echo ''; + echo ''; + } // <100 + putToolFormStop(); + + } + + function putDiakLapozo() { + + global $TOOL; + + putToolFormStart('diakLapozo', 'diakId'); + + for ($i = 0; $i < count($TOOL['diakLapozo']['diakok']); $i++) { + if ($TOOL['diakLapozo']['diakok'][$i]['diakId'] == $TOOL['diakLapozo']['paramValue']) { + $M[0] = $TOOL['diakLapozo']['diakok'][$i-1]; + $M[1] = $TOOL['diakLapozo']['diakok'][$i]; + $M[2] = $TOOL['diakLapozo']['diakok'][$i+1]; + break; + } + } + if (is_array($M[0])) echo ''; + + if ($TOOL['diakLapozo']['withSelect'] === true) { + echo ''; + } else { + echo ''.htmlspecialchars($M[1]['diakNev']).''; + } + if (is_array($M[2])) echo ''; + + putToolFormStop(false); + + } + + function putTableSelect() { + + global $TOOL; + + putToolFormStart('tableSelect', 'table'); + echo ''; + putToolFormStop(); + } + + function putOsztalySelect() { + + global $TOOL; + + putToolFormStart('osztalySelect', 'osztalyId'); + echo ''; + putToolFormStop(); + } + + function putTanmenetSelect() { + + global $TOOL; + putToolFormStart('tanmenetSelect', 'tanmenetId'); + echo ''; + putToolFormStop(); + } + + function putTankorSelect() { + + global $TOOL; + + if (count($TOOL['tankorSelect']['tankorok'])>0) { + if ($TOOL['tankorSelect']['tankorIdsDt']!='') $_info = true; else $_info=false; + putToolFormStart('tankorSelect', 'tankorId'); + echo ''; + putToolFormStop(); + } + + } + + function putTanevLapozo() { + global $TOOL; + + putToolFormStart('tanevLapozo', 'tanev'); + echo '←'; + echo ''; + echo ''; + echo ''.$TOOL['tanevLapozo']['tanev'].''; + echo ''; + echo ''; + echo '→'; + echo ''; + formEnd(); + } + + function putDatumSelect() { + global $TOOL; + $paramName = $TOOL['datumSelect']['paramName']; + global $$paramName; + + $aHetNapjai = json_decode(AHETNAPJAI); + + if ($TOOL['datumSelect']['lapozo']) { + // Előző és következő dátum meghatározása + $elozo = $kovetkezo = ''; + if (is_array($TOOL['datumSelect']['napok'])) { + for ($i = 0; $i < count($TOOL['datumSelect']['napok']); $i++) { + if ($TOOL['datumSelect']['napok'][$i] == $$paramName) { + $kovetkezo = $TOOL['datumSelect']['napok'][$i+1]; + $elozo = $TOOL['datumSelect']['napok'][$i-1]; + break; + } + } + } else { + $tolTime = strtotime($TOOL['datumSelect']['tolDt']); + $igTime = strtotime($TOOL['datumSelect']['igDt']); + $count = $TOOL['datumSelect']['hanyNaponta']; + for ($t = $tolTime; $t <= $igTime; $t = strtotime("$count days", $t)) { + $d = date('Y-m-d', $t); + if ($d == $$paramName) { + if (strtotime("$count days", $t) <= $igTime) $kovetkezo = date('Y-m-d', strtotime("$count days", $t)); + break; + } + $elozo = $d; + } + } + echo ''; + if ($elozo!='') { + echo ''; + } + echo ''."\n"; + else echo ''."\n"; + $tanitasiNap = true; + } elseif (in_array('tanítás nélküli munkanap', $tipus)) { + echo ''."\n"; + } elseif (in_array('szorgalmi időszakon kívüli munkanap', $tipus)) { + echo ''."\n"; + } else { + echo ''."\n"; + } + echo ''; + echo ''."\n"; + // Az első cella a dátum/nap + echo ''; + echo ''; + putHaladasiDolgozat($dt,$doga); + + $o=0; // MINORA + if ($count > 0) { + for ($i=0; $i<$count; $i++) { + if (__PLUSZBEIRHAT===true && intval($dNap[$i]['ora'])>=$o) { + while ($o < intval($dNap[$i]['ora'])) { +// if (__PLUSZBEIRHAT===true) { + putUjOra(array('dt'=>$dt, 'ora'=>$o++)); +// } + } + } + if ($dNap[$i]['ki']!=$ADAT['tanarId'] && __PLUSZBEIRHAT===true) putUjOra(array('dt'=>$dt, 'ora'=>$o, 'class')); + putOra($dNap[$i]); + $o=intval($dNap[$i]['ora'])+1; + } // órák kiírása + for($j=intval($dNap[$i-1]['ora'])+1; $j<=$ADAT['maxOra']; $j++) { + if (__PLUSZBEIRHAT===true) putUjOra(array('dt'=>$dt, 'ora'=>$j)); + } + } else { + echo ''; +// if ($tanitasiNap && strtotime(date('Y-m-d'))>=strtotime($dt)) { +// if ( +// (strtotime(date('Y-m-d'))>=strtotime($dt) +// || ((__NAPLOADMIN===true || __VEZETOSEG===true)) +// )) { + for($j=1; $j<=$ADAT['maxOra']; $j++) { + if (__PLUSZBEIRHAT===true) putUjOra(array('dt'=>$dt, 'ora'=>$j)); + } + +// } + } + + echo ''."\n"; + + } + + + function putTankorNap($dt, $dNap, $doga, $order) { + + $time = strtotime($dt); + $count = count($dNap); + + if (date('w',$time) % 2 == 0) echo ''."\n"; + else echo ''."\n"; + + putHaladasiDolgozat($dt,$doga); + + for ($i=0; $i<$count; $i++) { + if ($order == 'DESC') putTankorOra($dNap[$count-$i-1]); + else putTankorOra($dNap[$i]); + } // órák kiírása + + echo ''."\n"; + + } + + + function putHaladasiDolgozat($dt,$doga) { + + for ($i=0;$i'; + echo ''; + echo ''."\n"; + } + + } + + function putUjOra($dOra) { + + global $ADAT; // --FIXME + + if (__TANAR !==true && __VEZETOSEG!==true && __NAPLOADMIN !== true) return false; + if (__NAPLOADMIN ===true || __VEZETOSEG===true) { + $_eredet='órarend'; + if (__PLUSZBEIRHAT!==true + || strtotime($dOra['dt'])>strtotime("+1week") + || (strtotime(_ZARAS_HATARIDO)>strtotime($dOra['dt'])) + // Ha már a haladási naplót írhatja, akkor a plusz órát is engedjük meg... + // || (__TANAR ===true && strtotime(_HALADASI_HATARIDO)>strtotime($dOra['dt'])) + ) return false; + } else { + $_eredet='plusz'; + if (__PLUSZBEIRHAT!==true + || strtotime($dOra['dt'])>time() + || (__TANAR ===true && strtotime(_HALADASI_HATARIDO)>strtotime($dOra['dt'])) + ) { + return false; + } + } + + $_tipus='egyéb'; + + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + // ----- Tanár(ok) ------------------------------- + echo ''."\n"; + echo ''."\n"; + // ----- Leírás --------------------------------- + echo ''."\n"; + + // ----- Hiányzók ------------------------------- + echo ''."\n"; + + echo ''."\n"; + + + } + + + + function putOra($dOra) { + + global $ADAT,$SZLO; + if ( $ADAT['tankorTipusok'][$dOra['tankorTipusId']]['jelleg']=='osztályfüggetlen' && ($ADAT['haladasiTipus']=='osztalyHaladasi' || $ADAT['haladasiTipus']=='diakHaladasi')) return false; + $modosithatoOra = modosithatoOra($dOra); +// $torolhetoOra = torolhetoOra($dOra); + if (!in_array($dOra['tipus'],array('normál','normál máskor'))) { + if ($dOra['tipus'] == 'összevonás') $tipus = 'Ö'; + else $tipus = nagybetus(substr($dOra['tipus'],0,1)); + if ($dOra['tipus'] == 'egyéb') $tr_class = ' class="egyeb '.$dOra['eredet'].'"'; + else $tr_class = ' class="helyettesit"'; + } else { + $tipus = ''; + $tr_class = ''; + } + $tr_id = (intval($dOra['oraId'])>0 ? ' id="ORAID_'.$dOra['oraId'].'"':''); + + echo ''; + + // ----- óra ---------------------------------- + echo ''."\n"; + + // ----- Tankör ------------------------------- + echo ''."\n"; + echo ''; + echo ''."\n"; + + + // ----- Tanár(ok) ------------------------------- + echo ''."\n"; + + echo ''."\n"; + + // ----- Leírás --------------------------------- + if ($modosithatoOra) { + echo ''."\n"; + + // ----- Hiányzók ------------------------------- + echo ''."\n"; + + echo ''."\n"; + + if ( // helyettesített kolléga írhasson be plusz órát (saját óráját helyettesítették, hogy ő felvételi dolgozatokat mutogathasson pl.) + __PLUSZBEIRHAT===true + && in_array($dOra['tipus'], array('helyettesítés','felügyelet')) + && $dOra['ki'] != $ADAT['tanarId'] + ) + putUjOra(array('dt'=>$dOra['dt'], 'ora'=>$dOra['ora'])); + + } + + + function putTankorOra($dOra) { + + global $aHetNapjai; + $modosithatoOra = modosithatoOra($dOra); + if (!in_array($dOra['tipus'],array('normál','normál máskor'))) { +// if (substr($dOra['tipus'],0,6) != 'normál') { + $tipus = nagybetus(substr($dOra['tipus'],0,1)); + $tr_class = ' class="helyettesit"'; + } else { + $tipus = ''; + $tr_class = ''; + } + + echo ''; + // ----- óra ---------------------------------- + echo ''."\n"; + + // ----- Tankör ------------------------------- + echo ''."\n"; + + //echo ''."\n"; + echo ''."\n"; + + + // ----- Tanör(ok) ------------------------------- + echo ''."\n"; + + echo ''."\n"; + + // ----- Leíráás --------------------------------- + if ($modosithatoOra) { + echo ''."\n"; + // ----- Hiányzók ------------------------------- + echo ''."\n"; + echo ''."\n"; + } + + function putHetesForm($ADAT) { + + formBegin(array('class'=>'hetes')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; +// echo ''."\n"; + echo ''."\n"; + + echo ''._HETESEK.''; + for ($k = 1; $k < 3; $k++) { + $SEL = array($ADAT['hetesek'][$k]['diakId'] => ' selected="selected" '); + echo ''."\n"; + } + + echo ''."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/helyettesites.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/helyettesites.phtml new file mode 100644 index 00000000..808316e3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/helyettesites.phtml @@ -0,0 +1,698 @@ +'helyettesites')); + echo ''."\n"; + echo ''."\n"; + + echo '
    '; + formBegin(array('method'=>'post', 'action'=>href('index.php',array('page','sub','f','lang','skin','sessionID','policy')))); + echo '
    '; + if (isset($TOOL['datumSelect']['action'])) + echo ''."\n"; + putPostParams($TOOL['datumSelect']['post']); + echo ''; + echo '
    '; + formEnd(); + echo '
    '; + + } + + formBegin(array('method'=>'post', 'action'=>href('index.php',array('page','sub','f','lang','skin','sessionID','policy')))); + echo ''; + if ($kovetkezo!='') { + echo ''; + } + echo '
    '; + if (isset($TOOL['datumSelect']['action'])) + echo ''."\n"; + putPostParams($TOOL['datumSelect']['post']); + $SEL = array($$paramName => ' selected="selected" '); + echo ''; + echo ''; + echo ''; + putToolFormStop(); + + if ($TOOL['datumSelect']['lapozo']) { + echo ''; + + formBegin(array('method'=>'post', 'action'=>href('index.php',array('page','sub','f','lang','skin','sessionID','policy')))); + echo '
    '; + if (isset($TOOL['datumSelect']['action'])) + echo ''."\n"; + putPostParams($TOOL['datumSelect']['post']); + echo ''; + echo '
    '; + formEnd(); + + echo '
    '; + } + + + + } + +//-- + function putDatumTolIgSelect() { + + global $TOOL, $aHetNapjai; + + $tolParamName = $TOOL['datumTolIgSelect']['tolParamName']; + global $$tolParamName; + $igParamName = $TOOL['datumTolIgSelect']['igParamName']; + global $$igParamName; + + formBegin(array('method'=>'post', 'action'=>href('index.php',array('page','sub','f','lang','skin','sessionID','policy')))); + putPostParams($TOOL['datumTolIgSelect']['post']); + if (isset($TOOL['datumTolIgSelect']['action'])) + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + for ($i = 0; $i < count($Elmaradas['lezart']); $i++) { + + echo ''; + $tanarId = $Elmaradas['lezart'][$i]['ki']; + $tanarNev = $Tanarok[$tanarId]['tanarNev']; + $Tanarok[$tanarId]['volt'] = true; + $lezartDb = $Elmaradas['lezart'][$i]['db']; + $beirandoDb = $Elmaradas['beirando'][$tanarId]['db']; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + foreach ($Elmaradas['beirando'] as $tanarId => $beirandoAdat) { + if (!$Tanarok[$tanarId]['volt']) { + $tanarNev = $Tanarok[$tanarId]['tanarNev']; + $lezartDb = ''; + $beirandoDb = $Elmaradas['beirando'][$tanarId]['db']; + $Tanarok[$tanarId]['volt'] = true; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + } + // Ha nagyon akarjuk, akkor kirakhatjuk a többi nevet is - de nem akarjuk... + echo ''; + echo '
    '."\n"; + echo ''; + + echo ' - '; + + echo ''; + putToolFormStop(); + + } + + + function putOraSelect() { + + global $TOOL; + + putToolFormStart('oraSelect', 'ora'); + echo ''; + putToolFormStop(); + + } + + function putTeremSelect() { + + global $TOOL; + + // telephely szerint szétválogatás: + $numt=0; + if (is_array($TOOL['teremSelect']['termek'])) { + for ($i = 0; $i < count($TOOL['teremSelect']['termek']); $i++) { + $I = $TOOL['teremSelect']['termek'][$i]; + $T[$I['telephelyId']][] = $I; + $numt++; + } + } + + putToolFormStart('teremSelect', 'teremId'); + echo ''; + putToolFormStop(); + + } + + + function putOrarendiHetSelect() { + + global $TOOL; + + putToolFormStart('orarendiHetSelect', 'orarendiHet'); + echo ''; + putToolFormStop(); + + } + + function putKepzesSelect() { + + global $TOOL; + + putToolFormStart('kepzesSelect', 'kepzesId'); + echo ''; + putToolFormStop(); + + } + + function putSzuloSelect() { + + global $TOOL; + + putToolFormStart('szuloSelect', 'szuloId'); + echo ''; + putToolFormStop(); + + } + + + function putKerdoivSelect() { + + global $TOOL; + + putToolFormStart('kerdoivSelect', 'kerdoivId'); + echo ''; + putToolFormStop(); + + } + + + function putZaradekSelect() { + + global $TOOL; + + putToolFormStart('zaradekSelect', 'zaradekIndex'); + $mit = array('bizonyítvány','törzslap','osztálynapló','beírási napló'); + $mire = array('Bi.','Tl.','On.','Bn.'); + echo ''; + putToolFormStop(); + + } + + + function putTanarOraLapozo() { + + global $TOOL; + + $paramName = $TOOL['tanarOraLapozo']['paramName']; + global $$paramName; // most oraId + if ((is_array($TOOL['tanarOraLapozo']['elozo'])) || (is_array($TOOL['tanarOraLapozo']['kovetkezo']))) { + formBegin(array('class'=>'lapozo','method'=>'post', 'action'=>href('index.php',array('page','sub','f','lang','skin','sessionID','policy')))); + putPostParams($TOOL['tanarOraLapozo']['post']); + echo ''; + echo ''; + echo '
    '; + if (is_array($TOOL['tanarOraLapozo']['elozo'])) { + $_leiras = '←'.($TOOL['tanarOraLapozo']['elozo']['ora']).'. '._ORA; + if ($TOOL['tanarOraLapozo']['elozo']['leiras']!='') $_leiras .= ' ('.$TOOL['tanarOraLapozo']['elozo']['leiras'].')'; + echo ''; + } + echo ''; + echo $TOOL['tanarOraLapozo']['oraAdat']['ora'].'. '._ORA.' '; + if ($TOOL['tanarOraLapozo']['oraAdat']['leiras'] != '') echo '('.$TOOL['tanarOraLapozo']['oraAdat']['leiras'].') '; + echo ''; + if (is_array($TOOL['tanarOraLapozo']['kovetkezo'])) { + $_leiras = ($TOOL['tanarOraLapozo']['kovetkezo']['ora']).'. '._ORA; + if ($TOOL['tanarOraLapozo']['kovetkezo']['leiras']!='') $_leiras .= ' ('.$TOOL['tanarOraLapozo']['kovetkezo']['leiras'].')'; + $_leiras .=' →'; + echo ''; + } + echo '
    '; + formEnd(); + echo "\n"; + } + } + + function putHonapLapozo() { + + global $TOOL,$Honapok; + + $paramName = $TOOL['honapLapozo']['paramName']; + global $$paramName; + formBegin(array('class' => 'lapozo', 'method' => 'post', 'action' => href('index.php',array('page','sub','f','lang','skin','sessionID','policy')))); + putPostParams($TOOL['honapLapozo']['post']); + echo ''; + echo ''; + echo '
    '; + echo '←'; + echo ''; + echo ''.$Honapok[$$paramName-1].''; + echo ''; + echo '→'; + echo '
    '; + + // ideiglenes megoldás!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +// echo ''."\n"; + + formEnd(); + + } + +//-- INSECURE + function putOldalFlipper() { + + global $TOOL; + $paramName = $TOOL['oldalFlipper']['paramName']; + global $$paramName; + + $stepCount = count($TOOL['oldalFlipper']['url']); + if (isset($TOOL['oldalFlipper']['step'])) $step = $TOOL['oldalFlipper']['step']; + for ($i = 0; $i < count($TOOL['oldalFlipper']['titleConst']); $i++) { + if (defined($TOOL['oldalFlipper']['titleConst'][$i])) + $TOOL['oldalFlipper']['title'][$i] = constant($TOOL['oldalFlipper']['titleConst'][$i]); + else + $TOOL['oldalFlipper']['title'][$i] = ''; + } + + + + + echo ''; + if ($stepCount > 1 && isset($step) && $step > 0) { + echo ''; + } + if ($stepCount > 1) + for ($j = 0; $j < $stepCount; $j++) { + echo ''; + } + if ($stepCount == 1 || (isset($step) && $step < $stepCount-1)) { + if (!isset($step)) $step = 0; else $step++; + echo ''; + } + echo '
    '; + formBegin(array('action'=>href($TOOL['oldalFlipper']['url'][$step-1]))); + putPostParams($TOOL['oldalFlipper']['post']); + if (isset($TOOL['oldalFlipper']['action'])) + echo ''."\n"; + if (isset($TOOL['oldalFlipper']['paramName'])) + echo ''."\n"; + echo ''."\n"; + formEnd(); + echo ''; + formBegin(array('action'=>href($TOOL['oldalFlipper']['url'][$j]))); + putPostParams($TOOL['oldalFlipper']['post']); + if (isset($TOOL['oldalFlipper']['action'])) + echo ''."\n"; + if (isset($TOOL['oldalFlipper']['paramName'])) + echo ''."\n"; + + if (isset($step) && $step == $j) + echo ''."\n"; + else + echo ''."\n"; + formEnd(); + echo ''; + formBegin(array('action'=>href($TOOL['oldalFlipper']['url'][$step]))); + putPostParams($TOOL['oldalFlipper']['post']); + if (isset($TOOL['oldalFlipper']['action'])) + echo ''."\n"; + if (isset($TOOL['oldalFlipper']['paramName'])) + echo ''."\n"; + + echo ''."\n"; + formEnd(); + echo '
    '."\n"; + + } + + function putNyomtatasGomb() { + + global $TOOL; + $paramName = $TOOL['nyomtatasGomb']['paramName']; + global $$paramName; + + if (defined($TOOL['nyomtatasGomb']['titleConst'])) + $TOOL['nyomtatasGomb']['title'] = constant($TOOL['nyomtatasGomb']['titleConst']); + else + $TOOL['nyomtatasGomb']['title'] = ''; + + echo ''; + echo ''; + echo '
    '; + formBegin(array('method'=>'post', 'action'=>href($TOOL['nyomtatasGomb']['url']))); + putPostParams($TOOL['nyomtatasGomb']['post']); + if (isset($TOOL['nyomtatasGomb']['action'])) + echo ''."\n"; + if (isset($TOOL['nyomtatasGomb']['paramName'])) + echo ''."\n"; +// echo ''."\n"; + echo ''."\n"; + formEnd(); + echo '
    '."\n"; + + } + + + function putIgazolasOsszegzo() { + + global $TOOL; + + $H = $TOOL['igazolasOsszegzo']['igazolasok']; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; // igazolatlan, kesesPercOsszeg + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo '
    '._ORVOSI.''._SZULOI.''._OSZTALYFONOKI.''._TANULMANYI_VERSENY.''._VIZSGA.''._IGAZGATOI.''._HATOSAGI.''._PALYAVALASZTAS.'
    '.intval($H['napok']['osszesen']['orvosi']).' nap'; + if (__SZULOI_IGAZOLAS_EVRE != 0) echo (int)$H['napok']['osszesen']['szülői'].'/'.__SZULOI_IGAZOLAS_EVRE.' '._NAP.'/'._EV.' '; + if (__SZULOI_IGAZOLAS_FELEVRE != 0) foreach ($H['szemeszterek'] as $i => $szemeszter) { + echo decimal_to_roman($szemeszter).': '.(int)$H['napok'][ $szemeszter ]['szülői'].'/'.__SZULOI_IGAZOLAS_FELEVRE.' '._NAP.', '; + } + echo ''.(int)$H['napok']['osszesen']['osztályfőnöki'].'/'.__OSZTALYFONOKI_IGAZOLAS_EVRE. ' '._NAP.''.(int)$H['napok']['osszesen']['verseny'].' '._NAP.''.(int)$H['napok']['osszesen']['vizsga'].' '._NAP.''.(int)$H['napok']['osszesen']['igazgatói'].' '._NAP.''.(int)$H['napok']['osszesen']['hatósági'].' '._NAP.''.(int)$H['napok']['osszesen']['pályaválasztás'].' '._NAP.'
    '; + echo ''.intval($TOOL['igazolasOsszegzo']['hianyzasok']['igazolt']).''; + echo ''.intval($TOOL['igazolasOsszegzo']['hianyzasok']['igazolatlan']).''; + echo ''.intval($TOOL['igazolasOsszegzo']['hianyzasok']['kesesPercOsszeg']).'\''; + echo '/'.intval($TOOL['igazolasOsszegzo']['hianyzasok']['kesesDb']).''; + echo ''; + echo ''.(int)$H['orak']['osszesen']['orvosi'].' '._ORA.''; + if (__SZULOI_ORA_IGAZOLAS_EVRE != 0) echo (int)$H['orak']['osszesen']['szülői'].'/'.__SZULOI_ORA_IGAZOLAS_EVRE.' '._ORA.'/'._EV.' '; + if (__SZULOI_ORA_IGAZOLAS_FELEVRE != 0) foreach ($H['szemeszterek'] as $i => $szemeszter) { + echo decimal_to_roman($szemeszter).': '.(int)$H['orak'][ $szemeszter ]['szülői'].'/'.__SZULOI_ORA_IGAZOLAS_FELEVRE.' '._ORA.', '; + } + echo ''.(int)$H['orak']['osszesen']['osztályfőnöki'].'/'.__OSZTALYFONOKI_ORA_IGAZOLAS_EVRE.' '._ORA.''.(int)$H['orak']['osszesen']['verseny'].' '._ORA.''.(int)$H['orak']['osszesen']['vizsga'].' '._ORA.''.(int)$H['orak']['osszesen']['igazgatói'].' '._ORA.''.(int)$H['orak']['osszesen']['hatósági'].' '._ORA.''.(int)$H['orak']['osszesen']['pályaválasztás'].' '._ORA.'
    '."\n"; + // --- + if (is_array($TOOL['kretaIgazolasOsszegzo'])) { // az adattömb tartalmazza, de nem jeleníti meg a késéseket is + $K = $TOOL['kretaIgazolasOsszegzo']; + $IGTIPUSOK = array_keys($K); + if (count($IGTIPUSOK)==0) return; + echo ''; + echo ''; + foreach($IGTIPUSOK as $k => $v) + echo ''; + echo ''."\n"; + echo ''; + foreach($IGTIPUSOK as $k => $v) { + echo ''; + } + echo ''."\n"; + echo ''; + foreach($IGTIPUSOK as $k => $v) { + echo ''; + } + echo ''."\n"; + echo '
    '.$v.'
    '.intval($K[$v]['hiányzás'][0]['db']).' '._NAP.'
    '.intval($K[$v]['hiányzás'][0]['dbBejegyzes']).' '._ORA.'
    '."\n"; + + } + + } + + function putKerelemStat() { + + global $TOOL; + echo ''.$TOOL['kerelemStat']['stat']['n'].''; + echo ''.$TOOL['kerelemStat']['stat']['nofdone'].''; + echo ''.$TOOL['kerelemStat']['stat']['avgTime'].''; + + } + + function putToolBarHamburger() { + global $TOOL; + echo '
    '; + echo '
      '; + for ($j = 0; $j < count($TOOL['toolBarHamburger']['url']); $j++) { + echo '
    • '; + formBegin(array('action'=>href($TOOL['toolBarHamburger']['url'][$j]))); + putPostParams($TOOL['toolBarHamburger']['post']); + if (isset($TOOL['toolBarHamburger']['action'])) + echo ''."\n"; + if (isset($TOOL['toolBarHamburger']['paramName'])) + echo ''."\n"; + //echo ''."\n"; + echo ''."\n"; + formEnd(); + echo '
    • '; + } + echo '
    '; + echo '
    '; + } + + + + // CONTRIB! + include('skin/classic/module-naplo/html/share/face.phtml'); + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/bejegyzesTipus.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/bejegyzesTipus.phtml new file mode 100644 index 00000000..d216ade0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/bejegyzesTipus.phtml @@ -0,0 +1,52 @@ +'', 'method'=>'post', 'class'=>'bejegyzes')); + + echo ''; + echo ''; + + foreach ($ADAT['bejegyzesTipusok'] as $tipus => $tAdat) { + echo '
      '; + echo ''.$tipus.''; + for ($i = 0; $i < count($tAdat); $i++) { + $btId = $tAdat[$i]['bejegyzesTipusId']; + echo '
    • '; + echo ''; + if ($tAdat[$i]['fokozat'] < 10) echo ' '; + echo $tAdat[$i]['fokozat'].'. '._FOKOZAT.'('.$btId.') - '; + echo ''; + if ($tipus == 'fegyelmi') { + $SEL = array($tAdat[$i]['hianyzasDb'] => ' selected="selected" '); + echo ''._DARAB_IGAZOLATLAN_HIANYZAS_ESETEN; + } +// echo ' ('.$tAdat[$i]['jogosult'].')'; + echo ''; + foreach ($ADAT['jogosult'] as $jogosult) { + if (strpos($tAdat[$i]['jogosult'], $jogosult) !== false) + echo ''; + else + echo ''; + echo ''; + } + echo ''; + echo '
    • '; + } + echo '
    • '; + echo ''; + echo ''; + echo ''; + echo '
    • '; + echo '
    '; + } + formEnd(); + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/bejegyzesek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/bejegyzesek.phtml new file mode 100644 index 00000000..b46a9d3e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/bejegyzesek.phtml @@ -0,0 +1,97 @@ +'."\n"; + + echo '
      '; + for ($i = 0; $i < count($BEJEGYZESEK); $i++) { + + echo $DIAKOK[$BEJEGYZESEK[$i]['diakId']]['diakNev']; + + echo '
    • '; + echo '
      '; + echo $BEJEGYZESEK[$i]['bejegyzesTipusNev']; + echo '
      '; + echo '
      '; + echo $BEJEGYZESEK[$i]['szoveg']; + echo '
      '; + echo '
      '; + echo ''; + echo $BEJEGYZESEK[$i]['tanarNev']; + echo ''; + echo $BEJEGYZESEK[$i]['beirasDt']; + if (!in_array($BEJEGYZESEK[$i]['referenciaDt'],array('',0,'0000-00-00'))) echo ' / '.$BEJEGYZESEK[$i]['referenciaDt']; + echo '
      '; + + if ( + __NAPLOADMIN || + ($BEJEGYZESEK[$i]['tanarId'] == __USERTANARID && $BEJEGYZESEK[$i]['beirasDt'] == date('Y-m-d')) + ) { + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + formEnd(); + } + + echo '
    • '."\n"; + + } + echo '
    '; + + echo ''."\n"; + + } + + function putOsztalyBejegyzesek($Bejegyzesek, $Diakok) { + + global $osztalyId; + + for ($j = 0; $j < count($Diakok); $j++) { + + $diakId = $Diakok[$j]['diakId']; + $diakNev = $Diakok[$j]['diakNev']; + $B = $Bejegyzesek[$diakId]; + if (count($B) == 0) continue; + + echo '
    '."\n"; + + formBegin(array('class'=>'nev')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + formEnd(); + + echo '
      '; + for ($i = 0; $i < count($B); $i++) { + + echo '
    • '; + echo '
      '; + echo ''; + echo $B[$i]['tanarNev']; + echo ''; + echo ''; + echo $B[$i]['beirasDt']; + if (!in_array($BEJEGYZESEK[$i]['referenciaDt'],array('',0,'0000-00-00'))) echo ' / '.$BEJEGYZESEK[$i]['referenciaDt']; + echo ''; + echo $B[$i]['bejegyzesTipusNev']; + echo '
      '; + + } + echo '
    '; + + echo '
    '."\n"; + + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/info.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/info.phtml new file mode 100644 index 00000000..bbbe2c4c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/info.phtml @@ -0,0 +1,9 @@ +'; + echo _AKTUALIS_BEJEGYZESEK_SZAMA.' '.$ADAT['db']; + echo ''; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/ujBejegyzes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/ujBejegyzes.phtml new file mode 100644 index 00000000..22759d38 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/bejegyzesek/ujBejegyzes.phtml @@ -0,0 +1,47 @@ +'bejegyzes')); + + echo ''; + echo ''; + echo ''; + + $tipus = ''; + echo ''; + + echo ''."\n"; + echo ''."\n"; + _inlineHelp(_SUGO_EVVEGI); + + echo '
    '."\n"; + + + + echo '
    '."\n"; + echo '
    '."\n"; + + echo ''."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/diakValaszto.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/diakValaszto.phtml new file mode 100644 index 00000000..4b925da8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/diakValaszto.phtml @@ -0,0 +1,22 @@ +'valaszto')); + echo ''."\n"; + + $SEL = array(__PARENTDIAKID => ' selected="selected" '); + echo ''."\n"; + + echo ''."\n"; + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/ertekeles/ertekeles.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/ertekeles/ertekeles.phtml new file mode 100644 index 00000000..74c0143c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/ertekeles/ertekeles.phtml @@ -0,0 +1,77 @@ + 'negativ', 0 => 'semleges', 1 => 'pozitiv'); + + formBegin(array('class'=>'kerdoiv')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '

    '.$ADAT['kerdoivAdat']['cim'].'
    '.$ADAT['cimzettLeiras'].'

    '."\n"; + if ($ADAT['kerdoivAdat']['megjegyzes'] != '') echo '

    '.$ADAT['kerdoivAdat']['megjegyzes'].'

    '."\n"; + echo '
      '; + for ($i = 0; $i < count($ADAT['kerdoivAdat']['kerdes']); $i++) { + $kerdesId = $ADAT['kerdoivAdat']['kerdes'][$i]['kerdesId']; + $valaszok = $ADAT['kerdoivAdat']['kerdes'][$i]['valasz']; + echo '
    1. '; + echo $ADAT['kerdoivAdat']['kerdes'][$i]['kerdes']; + if ( + ($valaszok[0]['pont'] == 0 && $valaszok[ count($valaszok)-1 ]['pont'] == 0) + || in_array($kerdesId, $ADAT['megvalaszoltKerdes']) + ) { + echo '
        '; $sgn = 0; + } else { + echo '-0+'; + echo ''; + echo ''."\n"; + + echo ''."\n"; + } + echo '
      '."\n"; + + echo ''."\n"; + + formEnd(); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/ertekeles/kerdoivBetoltes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/ertekeles/kerdoivBetoltes.phtml new file mode 100644 index 00000000..f019f1d5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/ertekeles/kerdoivBetoltes.phtml @@ -0,0 +1,90 @@ +'kerdoiv')); + echo ''."\n"; + + echo '

      '; + echo ''."\n"; + echo '

      '; + + echo '

      '."\n"; + echo ' - '; + echo '

      '; + +/* + echo '

      '; + echo ''."\n"; +*/ + echo ''; + echo ''."\n"; + echo '

      '; + + echo '
      '."\n"; + + echo '

      '._KERDESEK_VALASZOK.''."\n"; + echo '
      '."\n"; + echo '

      '; + + echo ''."\n"; + + formEnd(); + + } + + function putCimzettForm($ADAT) { + + formBegin(array('class'=>'kerdoivCimzett')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '

      '.$ADAT['cim'].' ('.$ADAT['kerdoivId'].')

      '; + + // Akit fel akarunk venni + echo '
      '; + echo '
      '; + echo ''."\n"; + echo '
      '; + echo '
      '; + echo '
      '; + echo ''."\n"; + echo '
      '; + + echo ''."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/esemenyDiak.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/esemenyDiak.phtml new file mode 100644 index 00000000..cb6062d4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/esemenyDiak.phtml @@ -0,0 +1,102 @@ +'post','action'=>'','class'=>'nevsor','id'=>'nevsorForm')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '

      Jelentkezők

      '; + + echo ''."\n"; + echo ''."\n"; + echo ''; + if (__MODOSITHAT) { + echo ''."\n"; + echo ''."\n"; + } + echo ''; + echo ''."\n"; + + if (__MODOSITHAT) { + echo ''; + } + + if (__MODOSITHAT) { + echo ''; + } + foreach ($ADAT['esemenyAdat']['osztalyIds'] as $osztalyId) { + echo ''; + } + echo '
      '._NEVSOR.' '; if (__MODOSITHAT) _inlineHelp(_SUGO_NEVSOR); echo ''._OSZTALYOK.' '; _inlineHelp(_SUGO_OSZTALYOK); echo ''._DIAKOK.' '; _inlineHelp(_SUGO_DIAKOK); echo '
      '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + + echo ''."\n"; + foreach ($ADAT['esemenyAdat']['diakok'] as $dAdat) { + $_osztalyJel = $ADAT['osztalyId2osztalyJel'][ $ADAT['diak2osztaly'][ $dAdat['diakId'] ]]; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + if ($dAdat['jovahagyasDt'] != '0000-00-00 00:00:00') { + echo ''."\n"; + echo ''."\n"; + } else { + echo ''."\n"; + echo ''."\n"; + } + echo ''."\n"; + } + echo ''."\n"; + + if (__MODOSITHAT === true) { + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + } + + echo '
      '._NEV.''._JELENTKEZES.''._JOVAHAGYAS.'
      '.(++$i).'.'.$dAdat['diakNev'].' ('.$dAdat['diakId'].')'.$_osztalyJel.''.$dAdat['jelentkezesDt'].''.$dAdat['jovahagyasDt'].'
      '."\n"; + echo ''."\n"; + echo '
      '."\n"; + + echo '
      '; + foreach ($ADAT['osztalyok'] as $oAdat) { + if (in_array($oAdat['osztalyId'], $ADAT['esemenyAdat']['osztalyIds'])) { + echo '
      '; + } + } + echo '
      '; + echo ''; + echo '
      '; + + formEnd(); + + } + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/jelentkezes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/jelentkezes.phtml new file mode 100644 index 00000000..1169390a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/jelentkezes.phtml @@ -0,0 +1,87 @@ +'post', 'action'=>'', 'class'=>'esemeny')); + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + foreach ($ADAT['esemenyek'] as $eAdat) { + $valasztott = (is_array($ADAT['valasztottEsemenyek']) && in_array($eAdat['esemenyId'], $ADAT['valasztottEsemenyek'])); + $jovahagyott = (is_array($ADAT['jovahagyottEsemenyek']) && in_array($eAdat['esemenyId'], $ADAT['jovahagyottEsemenyek'])); + $aktualis = (strtotime($eAdat['jelentkezesTolDt']) <= time() && time() <= strtotime($eAdat['jelentkezesIgDt'])); + $maxLetszam = (($eAdat['max'] != 0) && ($eAdat['letszam'] >= $eAdat['max'])); + $minLetszam = $eAdat['min'] >= $eAdat['letszam']; + $jelentkezhet = ( + $aktualis // határidőn belül vagyunk + && (($eAdat['max'] == 0) || ($eAdat['letszam'] < $eAdat['max'])) // van még hely + ); + $leadhat = ( + $aktualis // határidőn belül vagyunk + && $eAdat['min'] < $eAdat['letszam'] // nem túl kicsi a létszám + && !$jovahagyott // jóváhagyott eseményt már ne adjon le + ); + $minmaxClass="minmax"; + if ($valasztott) $trClass='valasztott'; + else $trClass='jelentkezes'; + if ($aktualis) { + $trClass .= ' aktualis'; + $trStyle = ''; + } else { + $trStyle = ' style="display: none;" '; + }; + if ($minLetszam) $minmaxClass .= " min"; + if ($maxLetszam) $minmaxClass .= " max"; + echo ''."\n"; + if ($valasztott) { + echo ''."\n"; + echo ''."\n"; + } else { + echo ''."\n"; + echo ''."\n"; + } + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + } + + echo '
      '._JELENTKEZES.''._ESEMENYNEV.''._KATEGORIA.''._LETSZAM.''._MINMAX.''._JOVAHAGYAS.'
      '; + if ($leadhat) { + echo ''; + } else { + echo ''; + } + echo ''; + if ($jelentkezhet) { + echo ''; + } else { + echo ''; + } + echo ''.$eAdat['esemenyRovidnev'].''; + _inlineHelp($eAdat['esemenyNev']."\n\n".$eAdat['esemenyLeiras']); + echo ''.$eAdat['esemenyKategoria'].''.$eAdat['letszam'].''.$eAdat['min'].'-'.$eAdat['max'].''; + if ($jovahagyott) echo ''; + else echo ''; + echo '
      '."\n"; + + formEnd(); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/ujEsemeny.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/ujEsemeny.phtml new file mode 100644 index 00000000..604b5c9c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/esemeny/ujEsemeny.phtml @@ -0,0 +1,171 @@ +'','method'=>'post','class'=>'esemeny')); + + if ($ADAT['esemenyId'] == '') { + echo ''."\n"; + } else { + echo ''."\n"; + echo ''."\n"; + } + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + + if ($ADAT['esemenyId'] != '') { + + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + } + + if (__MODOSITHAT) { + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + } + + echo '
      '."\n"; + echo ''."\n"; + _inlineHelp(_SUGO_ROVIDNEV); + echo '
      '."\n"; + echo ''."\n"; + _inlineHelp(_SUGO_ESEMENYNEV); + echo '

      '."\n"; + echo '
      '."\n"; + echo ''."\n"; + echo '  '."\n"; + _inlineHelp(_SUGO_LEIRAS); + echo '
      '; + echo ''."\n"; + echo '
      '."\n"; + echo ' + - '."\n"; + _inlineHelp(_SUGO_JELENTKEZES); + echo '
      '."\n"; + echo ' - '."\n"; + $count = count($ADAT['esemenyAdat']['diakIds']); + echo ''."\n"; + _inlineHelp(_SUGO_LETSZAM_KORLAT); + echo '

      '."\n"; + + echo '
      '."\n"; + echo ''._OSZTALYOK.'  '."\n"; + _inlineHelp(_SUGO_OSZTALYOK); + + echo '
        '."\n"; + foreach ($ADAT['osztalyok'] as $oAdat) { + if (__MODOSITHAT) { + echo '
      • '; + echo ''."\n"; + $CHK = (in_array($oAdat['osztalyId'], $ADAT['esemenyAdat']['osztalyIds']))?' checked="checked" ':''; + echo ''."\n"; + echo ''."\n"; + echo '
      • '; + } elseif (in_array($oAdat['osztalyId'], $ADAT['esemenyAdat']['osztalyIds'])) { + echo '
      • '; + echo ''."\n"; + echo ''."\n"; + echo '
      • '; + } + } + echo '
      '."\n"; + echo ''._ESEMENYJELENTKEZOK.'...'."\n"; + echo '
      '."\n"; + + echo '
      '."\n"; + echo '
      '."\n"; + + if (__MODOSITHAT) { + echo '
      '."\n"; + echo ''."\n"; + echo ''."\n"; + _inlineHelp(_SUGO_TANAROK); + echo ''."\n"; + } + echo '
      '."\n"; + echo ''."\n"; + echo '
      '."\n"; + formEnd(); + + if ($ADAT['esemenyId'] != '' && __MODOSITHAT) { + formBegin(array('method'=>'post','action'=>'','class'=>'esemenyTorles')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + formEnd(); + } + } +/* + function esemenyLista($ADAT) { + echo '

      Ez még csúny, tudom... :)

      '; + if (is_array($ADAT['esemenyek'])) { + echo '
        '; + foreach ($ADAT['esemenyek'] as $eAdat) { + echo '
      • '; + formBegin(array('method'=>'post','action'=>'')); + echo ''."\n"; + echo ''."\n"; + formEnd(); + echo '
      • '; + } + echo '
      '; + } + + } +*/ +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/bizonyitvany.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/bizonyitvany.phtml new file mode 100644 index 00000000..2d357aa1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/bizonyitvany.phtml @@ -0,0 +1,47 @@ +href('index.php?page=naplo&sub=export&f=bizonyitvany'), 'class'=>"export")); + echo ''."\n"; + + if (isset($ADAT['osztalyId'])) echo ''."\n"; + if (isset($ADAT['szemeszterAdat']['szemeszterId'])) + echo ''."\n"; + + echo '
      '._EXPORT.''."\n"; + echo ''."\n"; + + $CHK = array('ods' => ' checked="checked" '); + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + + echo '
      '._FORMATUM.''; + echo ''."\n"; + echo '
      '."\n"; + echo '
      '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo '
      '; + echo ''."\n"; + echo '
      '."\n"; + echo '
      '; + if ($skin != 'ajax') formEnd(); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/diakExport.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/diakExport.phtml new file mode 100644 index 00000000..f3f8a8f2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/export/diakExport.phtml @@ -0,0 +1,153 @@ +'; + + $i = 0; + foreach ($ADAT['mezok'] as $attr => $attrNev) { + if ($ADAT['types'][$attr] == 'int') $sortType[] = 'Number'; + elseif ($ADAT['types'][$attr] == 'date') $sortType[] = 'Date'; + else $sortType[] = 'String'; + if (in_array($attr, array('szuletesiHely','lakhelyHelyseg','nem','lakohelyiJellemzo'))) $selIndex[] = $i; + $i++; + } +echo ''; + echo ''."\n"; + + echo ''."\n"; + echo ''; + foreach ($ADAT['mezok'] as $attr => $attrNev) { + echo ''; + } + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''; + foreach ($ADAT['mezok'] as $attr => $attrNev) { + echo ''; + } + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + foreach ($ADAT['export'] as $i => $dAdat) { + echo ''; + foreach ($ADAT['mezok'] as $attr => $attrNev) { + echo ''."\n"; + } + echo ''; + echo ''."\n"; + } + echo ''."\n"; + + echo '
      '; + echo $attrNev; + echo '
      '; + echo $attrNev; + echo '
      '; + echo $dAdat[$attr]; + echo ''; + formBegin(array('action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'))); + echo ''; + echo ''; + formEnd(); + echo '
      '."\n"; + echo ''; + } + + function putDiakExportForm($ADAT) { + + global $skin, $exportFormatum; + + if ($skin != 'ajax') formBegin(array('action'=>href('index.php?page=naplo&sub=export&f=diakExport'), 'class'=>"diak hideShowContainer", 'id'=>"exportOptions")); + + echo ''."\n"; + if (isset($ADAT['osztalyId'])) echo ''."\n"; + if (isset($ADAT['dt'])) echo ''."\n"; + + + echo '
      '; + echo ''; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
      '; + + + if (is_array($ADAT['export']) && count($ADAT['export']) > 0) { + echo '
    '._TANAR.''._LEZART.''._BEIRANDO.'
    '._HATARIDO.':'._HALADASI_HATARIDO.'; '._MAIDATUM.': '.date('Y-m-d').'
    '; + echo ($i+1).'. '; + echo ''; + echo $tanarNev; + echo ''; + echo $lezartDb; + echo ''; + echo $beirandoDb; + echo '
    '; + echo (++$i).'.'; + echo ''; + echo $tanarNev; + echo ''; + echo $lezartDb; + echo ''; + echo $beirandoDb; + echo '
    '; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/elszamolas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/elszamolas.phtml new file mode 100644 index 00000000..7d9adb23 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/elszamolas.phtml @@ -0,0 +1,284 @@ + array('normál','normál máskor','helyettesítés'), + 'fennmaradó' => array('helyettesítés','felügyelet','előírt egyéb','egyéb') // 'összevonás' + ); + + $Munkaido = array_keys($T); + $SumTipus = array('normál','normál máskor','helyettesítés','felügyelet','egyéb'); + + /* Munkaterv */ + echo ''."\n"; + echo ''; + echo ''; + foreach ($ADAT['napTipusok'] as $tipus) { + echo ''; + } + echo ''."\n"; + echo ''; + echo ''; + foreach ($ADAT['napok'] as $munkatervId => $mAdat) { + echo ''; + foreach ($ADAT['napTipusok'] as $tipus) { + echo ''; + } + echo ''; + } + echo ''; + echo '
    '._MUNKATERV.''.$tipus.'
    '.$ADAT['munkaterv'][$munkatervId]['munkatervNev'].' ('.$munkatervId.')'.$mAdat[$tipus].'
    '."\n"; + + /* Elszámolás, órastatisztika */ + echo ''."\n"; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''."\n"; + echo ''; + echo ''; + //echo ''; + echo ''; +// echo ''; // összevonás + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + foreach ($T as $_munkaido => $Tipus) { + for ($i = 0; $i < count($Tipus); $i++) { + echo ''; + } + } + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''."\n"; + + echo ''; + for ($t = 0; $t < count($ADAT['tanarok']); $t++) { + $_O = $ADAT['tanarok'][$t]; + $tanarId = $ADAT['tanarok'][$t]['tanarId']; + if (!__VEZETOSEG && !__NAPLOADMIN && $tanarId!=__USERTANARID) continue; + $tanarNev = $ADAT['tanarok'][$t]['tanarNev']; + + // Elavult + //$tanarHetiMunkaora = $ADAT['tanarok'][$t]['hetiMunkaora']; + //$_THM = ($tanarHetiMunkaora / 5) * $napszam ; // Tanári Heti Munkaóra a vizsgált időszakra vetítve (tanítási napok + + $_THM = $_heti = ($_O['hetiMunkaora']>0) ? ($_O['hetiMunkaora']):40; + $_kotottMax= ($_O['hetiKotottMaxOraszam']>0) ? ($_O['hetiKotottMaxOraszam']) : (($_O['hetiMunkaora']>0) ? ($_O['hetiMunkaora']*0.8):32); + $_lekotottMax = ($_O['hetiLekotottMaxOraszam']>0) ? ($_O['hetiLekotottMaxOraszam']) : (($_O['hetiMunkaora']>0) ? ($_O['hetiMunkaora']*0.65):26); + $_lekotottMin = ($_O['hetiLekotottMinOraszam']>0) ? ($_O['hetiLekotottMinOraszam']) : (($_O['hetiMunkaora']>0) ? ($_O['hetiMunkaora']*0.55):22); + + $_korrekciosSzam = $napszam/5; // HETI öt nap + + $sum = 0; + for ($i=0; $i'; + echo ''; + foreach ($T as $_munkaido => $Tipus) { + for ($i = 0; $i < count($Tipus); $i++) { + echo ''; + $SUM[$_munkaido] += $_c; + } + } + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + } + + echo '
    '._TANAR.''._KOTOTT_MUNKAIDO.'Σ'; + echo _ELOIRT_HETI_MUNKAORA.' '.$napszam.' '._NAPRA_VETITVE; + echo '
    '; + echo '
    '._HETI_ORASZAM.'
    lekötöttlekötött+fennmaradófennmaradónem számoltlekötöttfennmaradó+
    '.$Tipus[$i].'55%65%80%100%'._TANTARGYFELOSZTASBOL.''._ORARENDBOL.'
    '.$tanarNev.''; + if ($Tipus[$i]=='helyettesítés') { + echo $_c = ($ADAT['detailed'][$tanarId][$Tipus[$i]][$_munkaido]); + } elseif (in_array($Tipus[$i],array('előírt egyéb','egyéb'))) { + if ($Tipus[$i]=='előírt egyéb') echo $_c = ($ADAT['detailed_ki_tipus_munkaido_eredet'][$tanarId]['egyéb'][$_munkaido]['órarend']); + else echo $_c = ($ADAT['detailed_ki_tipus_munkaido_eredet'][$tanarId]['egyéb'][$_munkaido]['plusz']); + } else { + echo $_c = $ADAT[$tanarId][$Tipus[$i]]; + } + echo ''.$SUM['lekötött'].''.$SUM['fennmaradó'].''.($SUM['lekötött']+$SUM['fennmaradó']).''.($_lekotottMin*$_korrekciosSzam).''.($_lekotottMax*$_korrekciosSzam).''.($_kotottMax*$_korrekciosSzam).''.($_heti*$_korrekciosSzam).''; + + echo ''.number_format($_O['hetiKotelezoOraszam'],1).''.number_format($ADAT[$tanarId]['oraszam'],1).'
    '."\n"; + + } + + +/* + function putElszamolas_old($ADAT) { + + if (!is_array($ADAT['napok']) || count($ADAT['napok'])==0) return false; + + $napszam = ($ADAT['napok'][1]['tanítási nap']+$ADAT['napok'][1]['speciális tanítási nap']); + $napTipus = array('tanítási nap','speciális tanítási nap','tanítás nélküli munkanap','tanítási szünet'); + $T = array( + 'lekötött' => array('normál','normál máskor','helyettesítés'), + 'fennmaradó' => array('helyettesítés','felügyelet','egyéb') // 'összevonás' + ); + $Munkaido = array('lekötött','fennmaradó'); + $Tipus = array('normál','normál máskor','helyettesítés','felügyelet','egyéb'); // 'összevonás' + $SumTipus = array('normál','normál máskor','helyettesítés','felügyelet','egyéb'); + + echo ''."\n"; + echo ''; + echo ''; + foreach ($ADAT['napTipusok'] as $tipus) { + echo ''; + } + echo ''."\n"; + echo ''; + echo ''; + foreach ($ADAT['napok'] as $munkatervId => $mAdat) { + echo ''; + foreach ($ADAT['napTipusok'] as $tipus) { + echo ''; + } + echo ''; + } + echo ''; + echo '
    '._MUNKATERV.''.$tipus.'
    '.$ADAT['munkaterv'][$munkatervId]['munkatervNev'].' ('.$munkatervId.')'.$mAdat[$tipus].'
    '."\n"; + + echo ''."\n"; + echo ''; + + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''."\n"; + echo ''; + echo ''; + //echo ''; + echo ''; +// echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + foreach ($T as $_munkaido => $Tipus) { + for ($i = 0; $i < count($Tipus); $i++) { + echo ''; + } + } + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''."\n"; + + echo ''; + for ($t = 0; $t < count($ADAT['tanarok']); $t++) { + $_O = $ADAT['tanarok'][$t]; + + $tanarId = $ADAT['tanarok'][$t]['tanarId']; + if (!__VEZETOSEG && !__NAPLOADMIN && $tanarId!=__USERTANARID) continue; + $tanarNev = $ADAT['tanarok'][$t]['tanarNev']; + + // Elavult + //$tanarHetiMunkaora = $ADAT['tanarok'][$t]['hetiMunkaora']; + //$_THM = ($tanarHetiMunkaora / 5) * $napszam ; // Tanári Heti Munkaóra a vizsgált időszakra vetítve (tanítási napok + + $_THM = $_heti = ($_O['hetiMunkaora']>0) ? ($_O['hetiMunkaora']):40; + $_kotottMax= ($_O['hetiKotottMaxOraszam']>0) ? ($_O['hetiKotottMaxOraszam']) : (($_O['hetiMunkaora']>0) ? ($_O['hetiMunkaora']*0.8):32); + $_lekotottMax = ($_O['hetiLekotottMaxOraszam']>0) ? ($_O['hetiLekotottMaxOraszam']) : (($_O['hetiMunkaora']>0) ? ($_O['hetiMunkaora']*0.65):26); + $_lekotottMin = ($_O['hetiLekotottMinOraszam']>0) ? ($_O['hetiLekotottMinOraszam']) : (($_O['hetiMunkaora']>0) ? ($_O['hetiMunkaora']*0.55):22); + + $_korrekciosSzam = $napszam/5; // HETI öt nap + + $sum = 0; + $SUM = array(); + echo ''; + echo ''; + foreach ($T as $_munkaido => $Tipus) { + for ($i = 0; $i < count($Tipus); $i++) { + echo ''; + $SUM[$_munkaido] += $_c; + } + } + for ($i=0; $i'.$SUM['lekötött'].''; + echo ''; + echo ''; + + + if ($_THM>0) $eff = @ceil(100*$sum/$_THM); + else $eff = 100; + + if ($eff<=55) $_style = ' class="e1" '; + elseif ($eff<=65) $_style = ' class="e2" '; + elseif ($eff<=80) $_style = ' class="e3" '; + else $_style = ' class="e4" '; + //echo ''; + //echo ''; + //echo ''; + //echo ''; + echo ''; + echo ''; + echo ''; + + echo ''."\n"; + + } + + echo '
    '._TANAR.''._KOTOTT_MUNKAIDO.'Σ'._ELOIRT_HETI_MUNKAORA.' '.$napszam.' '._NAPRA_VETITVE.''._HETI_ORASZAM.'
    lekötöttlekötött+fennmaradófennmaradónem számoltlekötöttfennmaradó+
    '.$Tipus[$i].'55%65%80%100%
    '.$tanarNev.''; + + + echo ''; + if ($Tipus[$i]=='helyettesítés') { + echo $_c = ($ADAT['detailed'][$tanarId][$Tipus[$i]][$_munkaido]); + } elseif ($Tipus[$i]=='egyéb') { + dump($ADAT['detailed_ki_tipus_munkaido_eredet'][$tanarId]); + } else { + echo $_c = $ADAT[$tanarId][$Tipus[$i]]; + } + echo '';//ezt mégsem így kéne + echo ''.$SUM['fennmaradó'].''.($SUM['lekötött']+$SUM['fennmaradó']).''.$_THM*0.55.''.$_THM*0.65.''.$_THM*0.80.''.$_THM.''; + echo ''.($_lekotottMin*$_korrekciosSzam).''.($_lekotottMax*$_korrekciosSzam).''.($_kotottMax*$_korrekciosSzam).''.($_heti*$_korrekciosSzam).''; + + echo ''.number_format($ADAT[$tanarId]['oraszam'],1).'
    '."\n"; + + } +*/ +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/haladasi.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/haladasi.phtml new file mode 100644 index 00000000..11c42ede --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/haladasi.phtml @@ -0,0 +1,676 @@ +href('index.php?page=naplo&sub=haladasi&f=haladasi'), 'name'=>'haladasiOrabeiras', 'class'=>'onChangeRequest'); + formBegin($FORM); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + if ($tankorId != '') echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; +/* + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; +*/ + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + + // ------------------------------- + $toTime = strtotime(_SHOW_DAYS_TO); + $fromTime = strtotime(_SHOW_DAYS_FROM); + + if ($order == 'ASC') { + + for ($time = $fromTime; $time <= $toTime; $time = strtotime('1 day',$time)) { + + $dt = date('Y-m-d',$time); + $count = count($data[$dt]); + if ($tankorId == '') { + putNap($dt, $data[$dt], $data['napok'][$dt], $data['dolgozatok'], $ADAT['tanitasiNap'][$dt]); + } elseif ($count > 0) { + putTankorNap($dt, $data[$dt], $data['dolgozatok'], $order); + } // kirakjuk-e a napot + + } // for $dt + } else { + + for ($time = $toTime; $time >= $fromTime; $time = strtotime('-1 day',$time)) { + + $dt = date('Y-m-d',$time); + $count = count($data[$dt]); + + if ($tankorId == '') { + putNap($dt, $data[$dt], $data['napok'][$dt], $data['dolgozatok'], $ADAT['tanitasiNap'][$dt]); + } elseif ($count > 0) { + putTankorNap($dt, $data[$dt], $data['dolgozatok'], $order); + } // kirakjuk-e a napot + + } // for $dt + } + // --------------------------------- + + echo '
    '; + if ($ADAT['oraTerheles'][$ADAT['tanarId']]['ossz']['heti']>0) { + echo ''; + echo ($ADAT['oraTerheles'][$ADAT['tanarId']]['ossz']['heti']); + } + echo ''; + if ($tanarId!='') { + echo ''.$title.''; + if ($ADAT['csakUres']==true) { + $_CHK = ' checked="checked" '; + $_ACTIVE = ' class="on" '; + $AKTIV_TH['tananyag'] = true; + } + echo ' '; + echo ''; + $AKTIV_TH['tanar'] = true; + } else { + echo $title; + } + echo '
    '; + // ENTER esetén az első submit érvényes - ne a dátum gomb legyen + echo ''."\n"; //⨁⍟☉ + echo _ORA; + //echo ''."\n"; + //if ($order=='DESC') echo '^'."\n"; + //else echo 'v'."\n"; + echo ''; + echo _TANKOR; + if ($AKTIV_TH['tankor']) echo ''; + echo ''; + echo _TANAR; + if ($AKTIV_TH['tanar']) echo ''; + echo ''.''; + echo _TANANYAG; + if ($AKTIV_TH['tananyag']) echo ''; + echo ''; + //if (_SHOW_DAYS_FROM > $_TANEV['kezdesDt']) echo ''; + //if (_SHOW_DAYS_TO < date('Y-m-d')) echo ''; + if (_SHOW_DAYS_FROM > $_TANEV['kezdesDt']) echo ''; + if (_SHOW_DAYS_TO < date('Y-m-d')) echo ''; + echo '
    '; + if ($ADAT['oraTerheles'][$ADAT['tanarId']]['ossz']['heti']>0) { + echo ''; + echo ($ADAT['oraTerheles'][$ADAT['tanarId']]['ossz']['heti']); + } + echo ''; + // if (_SHOW_DAYS_FROM > $_TANEV['kezdesDt']) echo ''."\n"; + if (_SHOW_DAYS_FROM > $_TANEV['kezdesDt']) echo ''; + + echo ' '._IDOSZAK.': '.str_replace('-','.',_SHOW_DAYS_FROM) . '. - '. str_replace('-','.', _SHOW_DAYS_TO) .'. '."\n"; + // if (_SHOW_DAYS_TO < date('Y-m-d')) echo ''."\n"; + if (_SHOW_DAYS_TO < date('Y-m-d')) echo ''; + + echo '
    '."\n"; + + formEnd(); + + } + + + function putNap($dt, $dNap, $napInfos, $doga, $napInfo2) { + + global $ADAT; + global $aHetNapjai; + + $time = strtotime($dt); + $count = count($dNap); + + $tipus = $orarendiHet = $megjegyzes = array(); + if (is_array($napInfos)) foreach ($napInfos as $ni) { + if (!in_array($ni['tipus'], $tipus)) $tipus[] = $ni['tipus']; + if ($ni['orarendiHet'] != 0 && !in_array($ni['orarendiHet'], $orarendiHet)) $orarendiHet[] = $ni['orarendiHet']; + if ($ni['megjegyzes'] != '' && !in_array($ni['megjegyzes'], $megjegyzes)) $megjegyzes[] = $ni['megjegyzes']; + } + $tanitasiNap = false; + if (in_array('tanítási nap', $tipus) || in_array('speciális tanítási nap', $tipus)) { + if (date('w',$time) % 2 == 0) echo '
    '; + if (__PLUSZBEIRHAT===true) echo '
    '; + echo '
    '; + echo str_replace('-','.',$dt) .'. '; + echo ''.$aHetNapjai[(date('w',$time)+6)%7].''; + if ($napInfo2['napszam']!='' || $napInfo['orarendiHet'] != 0) { + echo ' ('; + // if ($napInfo2['napszam']!='') { + if ($tanitasiNap) { + echo $napInfo2['napszam'] . '. ' . _TANITASI_NAP; + if ($napInfo['orarendiHet'] != 0) echo '/'; + } + // if ($napInfo['orarendiHet'] != 0) echo $napInfo['orarendiHet'] . '. '. _HET; + if (count($orarendiHet) > 0) echo ' - '.implode('./',$orarendiHet).'. '._HET; + // if ($napInfo['megjegyzes'] != '') echo ' - '.$napInfo['megjegyzes']; + if (count($megjegyzes) > 0) echo ' - '.implode('/', $megjegyzes); + echo ')'; + } else { + echo '
    '.implode(' ',$tipus); + } + echo '
    '._NINCS_ORAJA.'
    '; + $href = href('index.php?page=naplo&sub=osztalyozo&f=dolgozat&dolgozatId='.$did); + echo ''; + echo _BEJELENTETT_DOLGOZAT . ': '. $doga[$did]['dolgozatNev']; + echo ' (' ; + for ($j=0;$j'; + echo '
    '; + echo $dOra['ora'].'.'; +/* if ( __NAPLOADMIN===true) { + echo ''; + echo '≡'; //≡☰ + echo ''; + } +*/ if ( __NAPLOADMIN===true || __DIAK === true ) { +// echo ''; +// //echo ; //≡☰ +// echo ''; + +// echo ''; + } + + if ($dOra['tolTime']!='') + echo '
    '.substr($dOra['tolTime'],0,5).'–'.substr($dOra['igTime'],0,5).'
    '; + + echo '
    '; + // ------------------------------------------------------------------------- + // Csoportok kezelése - Váltható tankörök (egy csoportba és egy tanárhoz tartozó tankörök + // FeladatTípus kezelése + // ------------------------------------------------------------------------- + if ( + in_array($dOra['tipus'],array('normál','normál máskor')) // helyettesített óra esetén ne lehessen váltani - bár kirakná a selectet jól... + && is_array($dOra['csoport']) && count($dOra['csoport'])>1 + && $modosithatoOra + ) { + + echo ''; + // ugyanakkor js-ből meg kellene változtatni a tankorId paramétert... + echo ''; + echo '☰'; //≡ + echo ''; + + } elseif ($dOra['tipus']=='egyéb') { + /*for ($t = 0; $t'; + echo $dOra['tankorNev']; + echo ''; + } + echo ''."\n"; + echo ''."\n"; + // ------------------------------------------------------------------------- + echo ''; + if ($dOra['tipus']=='egyéb' && (__VEZETOSEG===true || __NAPLOADMIN === true)) { + echo ''; + } else { + echo ''; + echo $ADAT['terem'][$dOra['teremId']]['leiras']; + echo ''; + } + echo ''; + echo $tipus; + if (isset($ADAT['oraLatogatasok'][$dOra['oraId']])) { + echo 'L'; + } + echo ''; + // Ha egy normál órának több tanára is van, és módosítható az óra, akkor lehet választani a tanárok közül + if (count($dOra['tanar']) > 1 && in_array($dOra['tipus'],array('normál','normál máskor')) && $modosithatoOra) { + $_SEL = array($dOra['ki'] => 'selected="selected" '); + if ($dOra['ki']!=$tanarId) $_masTartja=true; + echo ''; + } else { + echo $dOra['kiCn']; + } + echo ''; + if ($dOra['tipus']!='egyéb') { + echo ''; + echo $dOra['oraszam']; + echo ''; + } else { // itt kiírhatjuk a heti terhelését + //echo 'eheti:'.($ADAT['oraTerheles'][$dOra['feladatTipusId']]['db']-$SZLO[$dOra['feladatTipusId']])."/".($ADAT['oraTerheles'][$dOra['feladatTipusId']]['db']).''; + //echo 'eheti:'.($SZLO['sum']-$SZLO['sum_c'])."/".($SZLO['sum']).''; + $SZLO[$dOra['feladatTipusId']]++; + $SZLO['sum_c']++; + } + echo ''; + if ($dOra['leiras']!='') { // beírva + echo ''; + echo ''; + echo ''; + } else { + echo ''; + echo ''; + echo ''; + } + echo ''; + //echo ''; + } else { + if ($dOra['leiras']!='') { + echo ''.$dOra['leiras']; + } else { + echo ''._NINCS_BEIRVA; + } + } + echo ''; + if ($dOra['tipus']=='egyéb') { + if ($modosithatoOra === true) { + echo '
    '; + echo ''; + echo ''._TOROL.''; + echo '
    '; + } + } else { + if ( __DIAK) { + $href = href('index.php?page=naplo&sub=hianyzas&f=diak&dt='.$dOra['dt'].'&diakId='.$diakId); + } else { + $href = href('index.php?page=naplo&sub=hianyzas&f=ora&oraId='.$dOra['oraId']); + } + //2014? echo ''; + echo ''; + echo _HIANYZOK; + echo ''; + } + echo '
    '; + echo str_replace('-','.',$dOra['dt']) .'. '. $aHetNapjai[(date('w',strtotime($dOra['dt']))+6)%7].' '; + echo $dOra['ora'].'.'; + echo ''; + // ------------------------------------------------------------------------- + // Csoportok kezelése - Váltható tankörök (egy csoportba és egy tanárhoz tartozó tankörök + // ------------------------------------------------------------------------- + if ( + in_array($dOra['tipus'],array('normál','normál máskor')) // helyettesített óra esetén ne lehessen váltani - bár kirakná a selectet jól... + && is_array($dOra['csoport']) && count($dOra['csoport']) > 1 + && $modosithatoOra + ) { + echo ''; + // Ha egy másik tanár helyettesít, akinek vannak órái ugyanabból a tankör csoportból - akkor a jelenlegi tankorId nincs a select-ben még! + // !?! A másik függvényben a csoportId-t is átadjuk - nem hiba??? + if ($__SEL == '') echo ''; + } else { // nincs választási lehetőség, vagy a módosítási határidő lejárt + echo ''.$dOra['tankorNev'].''; + } + // ------------------------------------------------------------------------- + echo ''; + //echo $ADAT['terem'][$dOra['teremId']]['leiras']; + //echo ''; + echo $tipus; + echo ''; + // Ha egy normál órának több tanára is van, és módosítható az óra, akkor lehet választani a tanárok közül + if (count($dOra['tanár']['id']) > 1 and $modosithatoOra) { + $_SEL = array($dOra['kiId'] => 'selected="selected" '); + echo ''; + } else { + echo ''.$dOra['kiCn'].''; + } + echo ''; + echo $dOra['oraszam']; + echo ''; + if ($dOra['leiras']!='') { // beírva + echo ''; + echo ''; + } else { + echo ''; + echo ''; + } + echo ''; + } else { + if ($dOra['leiras']!='') { + echo ''.$dOra['leiras']; + } else { + echo ''._NINCS_BEIRVA; + } + } + echo ''; + if ( __DIAK) { + $href = href('index.php?page=naplo&sub=hianyzas&f=diak&dt='.$dOra['dt'].'&diakId='.$diakId); + } else { + $href = href('index.php?page=naplo&sub=hianyzas&f=ora&oraId='.$dOra['oraId']); + } + echo ''; + echo _HIANYZOK; + echo ''; + echo '
    '."\n"; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + + echo '
    '._JELENLEVO_TANAROK.''._HIANYZO_TANAROK.'
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '; + echo ''; +// Ez ugye nem kell? // echo ''; + echo '
    '."\n"; + formEnd(); + flush(); + } + + + + function putHianyzoOrak($HELYETTESITES, $dt) { + for ($i = 0; $i < count($HELYETTESITES['helyettesites']['tanarIds']);$i++) { + $tanarId = $HELYETTESITES['helyettesites']['tanarIds'][$i]; + $tanarNev = $HELYETTESITES['tanarok'][$tanarId]['tanarNev']; + $tanarOrak = $HELYETTESITES['helyettesites'][$tanarId]['orak']; + putTanarHianyzoOrak($tanarId, $tanarNev, $tanarOrak, $HELYETTESITES['tanarok'], $dt, $HELYETTESITES); + flush(); + } + } + + function putTanarHianyzoOrak($tanarId, $tanarNev, $tanarOrak, $Tanarok, $dt, $ADAT=array()) { // az ADAT az általános...(2013) + + formBegin(); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + for ($i = 0; $i < count($tanarOrak); $i++) { + + $SELECT = sulyKiszamitas($tanarOrak[$i], $Tanarok); + + if (substr($tanarOrak[$i]['tipus'],0,7) == 'elmarad') echo ''."\n"; + else echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n\n"; + } + echo ''."\n"; + + echo '
    '.$tanarNev.'
    '."\n"; + echo ''."\n"; + echo '
    '."\n"; + echo $_ora = $tanarOrak[$i]['ora'].'. '._ORA; + echo ''; + echo $tanarOrak[$i]['tankorNev']; + echo ''; + if ($ADAT['termek'][$tanarOrak[$i]['teremId']]['leiras']!='') { + echo $ADAT['termek'][$tanarOrak[$i]['teremId']]['leiras']; + echo ' ('.$tanarOrak[$i]['teremId'].')'; + } + echo ''; + if ($tanarOrak[$i]['ki']!='') { + $_ki_txt = ' terhelés:'; + $_ki_txt .= ' '.$ADAT['tanarTerheles'][ $tanarOrak[$i]['ki'] ]['lekotott']['heti']; + $_ki_txt .= ' '.$ADAT['tanarTerheles'][ $tanarOrak[$i]['ki'] ]['kotottEloirt']['heti']; + $_ki_txt .= ' '.$ADAT['tanarTerheles'][ $tanarOrak[$i]['ki']]['kotott']['heti']; + } else $_ki_txt = ''; + echo ''; + + echo ''; + + /* itt célszerű lenne infóval ellátni a kiírót, ha korlátozás van érvényben! */ + // ⚠ ♺ ⦷ + $__ki = $tanarOrak[$i]['ki']; + if ($__ki>0) { + if ( $ADAT['tanarTerheles'][ $__ki ]['munkaido']['lekotott']<$ADAT['tanarTerheles'][ $__ki]['lekotott']['heti'] +// && ($ADAT['tanarTerheles'][ $__ki ]['over']['napi']>=2 +// || $ADAT['tanarTerheles'][ $__ki ]['over']['ora']>=6 +// || $ADAT['tanarTerheles'][ $__ki ]['over']['eves']>=30) + ) { + echo ''; + echo " ⚠ "; + echo ''; + } + if ($ADAT['tanarTerheles'][ $__ki ]['kotottEloirt']['heti']>=$ADAT['tanarTerheles'][ $__ki ]['munkaido']['kotott']) { + echo ''; + echo " ⚠ "; + echo ''; + } + // echo ($ADAT['tanarTerheles'][$__ki]['over']['napi']); + // echo ($ADAT['tanarTerheles'][$__ki]['over']['heti']); + echo ''.($tanarOrak[$i]['munkaido'][0]).''; + } + /* ----------- */ + + echo ''; + if ($tanarOrak[$i]['tipus'] != 'elmarad máskor') { + echo ' '."\n"; + echo ' '."\n"; + echo ' '."\n"; + + //echo ' '."\n"; + //echo ' '."\n"; + //echo ' '."\n"; + } + if (substr($tanarOrak[$i]['tipus'],-7) == 'máskor') { + echo '!! '."\n"; + } + if ($tanarOrak[$i]['ki']!='') { + // Órarend clock/clock3 + //echo ''."\n"; + echo 'O'."\n"; + } + echo ''."\n"; + echo '
    '."\n"; + + formEnd(); + } + + + function sulyKiszamitas($tanarOra, $Tanarok) { + + for ($j = 0; $j < count($tanarOra['osszevono']); $j++) { + $osszevonoId = $tanarOra['osszevono'][$j]; + $Tanarok[$osszevonoId]['osszevon'] = true; + } + for ($j = 0; $j < count($tanarOra['foglalt']); $j++) { + $foglaltId = $tanarOra['foglalt'][$j]; + $Tanarok[$foglaltId]['foglalt'] = true; + } + unset($Tanarok['tanarIds']); + + // súly kiszámítása + foreach ($Tanarok as $tId => $tAdatok) { +// if (!$tAdatok['osszevon'] and $tAdatok['orak'][$tanarOra['ora']]) { + if ($tAdatok['foglalt']) { + // ütközés - tanít, de nem tud összevonni, mert nem szakos + $suly = 0; + $Tanarok[$tId]['txt'] = '[X]'; + + } elseif ($tAdatok['osszevon']) { + // össze tud vonni + //[2013.09.20.ig volt érvényben az ősidőktől :( RIP]$suly = 9; // az <- -> szakos/nem szakos között + $suly = 1; + $Tanarok[$tId]['txt'] = '[Ö]'; + $Tanarok[$tId]['tipus'] = 'összevonás'; + + } else { + $Tanarok[$tId]['tipus'] = 'felügyelet'; + $Tanarok[$tId]['txt'] = '['; + $suly = 2; + if (isset($tAdatok['elso ora']) && ($tAdatok['elso ora'] < $tanarOra['ora'])) { + // Van elötte órája + $Tanarok[$tId]['txt'] .= '<- '; + $suly += 3; + if ($tAdatok['utolso ora'] > $tanarOra['ora']) { + // Van utána is órája + $suly += 3; + $Tanarok[$tId]['txt'] .= '-> '; + } + } else { + if ($tAdatok['utolso ora'] > $tanarOra['ora']) { + // Csak utána van órája + $suly += 1; + $Tanarok[$tId]['txt'] .= '-> '; + } + } + if ($tAdatok['targyak'][$tanarOra['targyId']]) { + // Taníthatja az adott tárgyat + $suly += 2; + $Tanarok[$tId]['txt'] .= 'SZ '; + $Tanarok[$tId]['tipus'] = 'helyettesítés'; + } + if ($tAdatok['db'] > 4) { + // Már van legalább 5 órája + $suly = floor($suly/2); + $Tanarok[$tId]['txt'] .= '!6!'; + } + if (strlen($Tanarok[$tId]['txt']) == 1) $Tanarok[$tId]['txt'] .= ']'; + else $Tanarok[$tId]['txt'] = substr($Tanarok[$tId]['txt'], 0, -1) . ']'; + } + $Tanarok[$tId]['súly'] = $suly; + } + + if (__HELYETTESITES_RENDEZES != 'ABC') uasort($Tanarok,'cmp'); + + return $Tanarok; + } + + function putKeziBeallitas($oraAdat, $Termek, $Tanarok) { + + global $aHetNapjai; + + formBegin(); + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''; + + echo ''; + + echo ''; + + echo ''; + + echo ''; + + echo ''; + + echo ''; + echo ''; + + echo '
    '._KEZI_BEALLITAS.'
    '; + echo $oraAdat['dt'].' ('.$aHetNapjai[(date('w',strtotime($oraAdat['dt']))+6) % 7].')'; + echo ''; + echo $oraAdat['ora'].'. '._ORA; + echo ''; + echo $oraAdat['tankorNev']; + echo ''; + $SEL = array($oraAdat['ki'] => ' selected="selected" '); + echo ''; + echo ''; + $SEL = array($oraAdat['tipus'] => ' selected="selected" '); + $Tipus = array('helyettesítés','felügyelet','összevonás'); + if (!in_array($oraAdat['tipus'], $Tipus)) $Tipus[] = $oraAdat['tipus']; + echo ''; + echo ''; + $SEL = array($oraAdat['teremId'] => ' selected="selected" '); + echo ''; + echo '
    '; + echo '
    '; + formEnd(); + + } + + function putMozgatas($tanarId, $oraAdat, $TANAR_DT_NAPI_ORAK, $ujDt, $TANAR_UJDT_NAPI_ORAK) { + + global $aHetNapjai, $_TANEV, $napiMinOra, $napiMaxOra; + + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; +// echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + // órarend + for ($i = $napiMinOra; $i <= $napiMaxOra; $i++) { + + if (isset($_POST['ora']) && $_POST['ora'] == $i) $CHK = ' checked="checked" '; + else $CHK = ''; + + if (is_array($TANAR_DT_NAPI_ORAK[$i])&&count($TANAR_DT_NAPI_ORAK[$i])>0) { + $txt1 = ''; + for ($j=0; $j0) { + $txt2=''; + for ($j=0; $j'.$txt2; + for ($j=0; $j'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + } + echo ''."\n"; + echo '
    '._ORA_MOZGATAS.'
    '._MOZGATANDO.''._UJ_IDOPONT.'
    '; + echo ''; + echo '
    '; + echo $oraAdat['dt'].' ('.$aHetNapjai[(date('w',strtotime($oraAdat['dt']))+6) % 7].')'; + echo ''; + echo ''; + + echo '
    '.$i.'.'; + echo $txt1; + echo ''; + echo $txt2ext; + echo ''.$i.'.
    '; + + formEnd(); + } + + function putCsere($tanarId, $oraAdat, $TANAR_DT_NAPI_ORAK, $csTanarId, $csDt, $CSTANAR_CSDT_NAPI_ORAK, $Tanarok) { + + global $aHetNapjai, $_TANEV, $napiMinOra, $napiMaxOra; + + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; +// echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''; + + echo ''; + echo ''; + + // órarend + for ($i = $napiMinOra; $i <= $napiMaxOra; $i++) { + + if (is_array($TANAR_DT_NAPI_ORAK[$i])&&count($TANAR_DT_NAPI_ORAK[$i])>0) { + $txt1 = ''; + for ($j=0; $j0) { + $txt2=''; + for ($j=0; $j'; + echo ''; + if ($TANAR_DT_NAPI_ORAK[$i][0]['oraId'] == $oraAdat['oraId']) $class = 'mozgatando'; + else $class=''; + echo ''; + if ($CSTANAR_CSDT_NAPI_ORAK[$i][0]['oraId'] == $oraAdat['oraId']) { + // A mozgatandó óra... + echo ''; + } elseif ($CSTANAR_CSDT_NAPI_ORAK[$i][0]['ki'] == $csTanarId) { + // órája van + echo ''; + } elseif ($CSTANAR_CSDT_NAPI_ORAK[$i][0]['kit'] == $csTanarId) { + // nem megtartott óra: helyettesítik, elmarad + echo ''; + } else { + // Lukas óra + echo ''; + } + echo ''; + echo ''; + + } + echo ''; + echo ''; + echo ''; + echo '
    '._ORA_CSERE.'
    '._CSERELENDO.''._UJ_IDOPONT.'
    '; + echo $oraAdat['dt'].' ('.$aHetNapjai[(date('w',strtotime($oraAdat['dt']))+6) % 7].') '; + for ($i = 0; ($i < count($Tanarok) && $Tanarok[$i]['tanarId'] != $tanarId); $i++); + echo $Tanarok[$i]['tanarNev']; + echo ''; + echo ''; + + echo ''; + + echo '
    '.$i.'.'; + echo $txt1; + echo ''; + echo $txt2; + echo ''; + echo ' '; + echo $txt2; + echo ''; + echo ' '; + echo $txt2; + echo ''; + echo $txt2; + echo ''.$i.'.
    '; + echo ''; + echo '
    '; + + formEnd(); + + } + + function putCsereAttekintes($oraId, $Orak) { + + global $aHetNapjai; + + echo '

    '._CSERE_ATTEKINTES.'

    '."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + foreach ($Orak['plusz'] as $tankorId => $pluszAdat) { + + // felhasználjuk, hogy minden alapórának pontosan egy plusz óra felel meg + $oraAdat = $Orak['alap'][$tankorId]; + for ($i = 0; $i < count($pluszAdat); $i++) { + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''; + if (substr($pluszAdat[$i]['tipus'],0,7) == 'normál') + echo ''."\n"; + else + echo ''."\n"; + + echo ''."\n"; + + } + + } + + echo '
    '._MIT.''._HONNAN.''._HOVA.'
    '.$oraAdat[$i]['tankorNev'].''.$oraAdat[$i]['dt'].' ('.$aHetNapjai[(date('w',strtotime($oraAdat[$i]['dt']))+6) % 7].') '.$oraAdat[$i]['ora'].'. '._ORA.' --> '.$pluszAdat[$i]['dt'].' ('.$aHetNapjai[(date('w',strtotime($pluszAdat[$i]['dt']))+6) % 7].') '.$pluszAdat[$i]['ora'].'. '._ORA.''.$pluszAdat[$i]['dt'].' ('.$aHetNapjai[(date('w',strtotime($pluszAdat[$i]['dt']))+6) % 7].') '.$pluszAdat[$i]['ora'].'. '._ORA.' ('.$pluszAdat[$i]['tipus'].')
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/hetes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/hetes.phtml new file mode 100644 index 00000000..0609ed37 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/hetes.phtml @@ -0,0 +1,37 @@ +'hetes')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + if (is_array($ADAT['hetesek'])) foreach (($ADAT['hetesek']) as $osztalyId=>$D) { + echo ''; + for ($k = 0; $k < count($D); $k++) { +/* + $SEL = array($D[$k]['diakId'] => ' selected="selected" '); + echo ''."\n"; +*/ + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + } + echo '
    '.$ADAT['osztalyok'][$osztalyId]['osztalyJel'].' '.$ADAT['osztalyok'][$osztalyId]['osztalyfonokNev'].'
    '.str_replace('-','.',$D[$k]['dt']).'.'.$D[$k]['sorszam'].''.$ADAT['diakok'][$D[$k]['diakId']]['diakNev'].'
    '; +// echo ''."\n"; + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/minuszora.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/minuszora.phtml new file mode 100644 index 00000000..61a91533 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/minuszora.phtml @@ -0,0 +1,55 @@ +'minuszora')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
      '."\n"; + for ($i = $ADAT['napiMinOra']; $i <= $ADAT['napiMaxOra']; $i++) { + + echo '
    • '; + echo $i . '. ' . _ORA; + if (is_array($ADAT['orak'][$i]) && count($ADAT['orak'][$i]) > 0) { + echo '
        '."\n"; + for ($j = 0; $j < count($ADAT['orak'][$i]); $j++) { + if (!in_array($ADAT['orak'][$i][$j]['tipus'], array('elmarad','elmarad máskor'))) { + $D = $ADAT['orak'][$i][$j]; + echo '
      • '; + echo ''."\n"; + if (is_null($D['tankorId'])) echo $D['tipus']; + else echo $D['tankorNev']; + if ($D['teremId']!='') + echo ' ('.$D['teremLeiras'].')'; + echo ' '; + echo $D['leiras']; + if ($D['oralatogatasId']!='') { + echo 'L'; + echo $D['megjegyzes']; + } + echo ' {'.$D['munkaido'].'}'; + echo '
      • '."\n"; + } + } + echo '
      '."\n"; +// } else { +// echo ' - '; + } + + echo '
    • '."\n"; + + } + echo '
    '."\n"; + + echo ''."\n"; + + formEnd(); + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/ora.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/ora.phtml new file mode 100644 index 00000000..ef21f763 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/ora.phtml @@ -0,0 +1,51 @@ + + .modGomb { + background-color: #eeeeee; + padding:4px 1em; margin:1em; background-color: #eeeeee; border-radius: 2px; border-style: solid solid solid none; border-width: 1px 1px 1px 1px; border-color: #aaa; + } + .oraElmarad {background-color: red; color:white;} + .oraMegtartva {background-color: green; color:white;} + '; + + echo '
    '; + if (is_array($O)) { + foreach($ADAT['oraAdat'] as $k => $v) { + echo '
    '; + echo $k; + echo '
    '; + echo '
    '; + echo $v; + echo '
    '; + } + } + echo '
    '; +echo '

    Ez a funkció még nem működik!

    '; + echo ''; + echo ''; + echo ''; + +/* + echo 'Mit lehet csinálni egy órával? + +
    +Haladási:
    +- elmarad
    +- helyettesítk/felügyelik stb
    +- összevonjuk másikkal (lásd előbb)
    +- terme megváltozik ideiglenesen
    +
    +Órarend:
    +- terme megváltozik véglegesen
    +
    +'; +*/ + echo '
    '; + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/oralatogatas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/oralatogatas.phtml new file mode 100644 index 00000000..008544b4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/oralatogatas.phtml @@ -0,0 +1,56 @@ +'."\n"; + foreach ($ADAT['orak'] as $ora => $oAdat) { + foreach ($oAdat as $key => $oraAdat) { + $_OK = is_array($ADAT['oralatogatas'][ $oraAdat['oraId'] ]['tanarIds']); + $_class = ($_OK) ? 'latogatva' : ''; + echo '
  • '; + + formBegin(array('class'=>$_class)); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '

    '; + echo ''."\n"; + echo ''."\n"; + echo ''.$ora.'. '._ORA.''; + echo $oraAdat['tankorNev']; + echo '

    '; + + echo '
    '; + echo ''."
    \n"; + echo ''."\n"; + echo '
    '; + + echo '
    '; + echo ''."
    \n"; + echo ''."\n"; + echo '
    '; + formEnd(); + + echo '
  • '."\n"; + } + } + echo ''."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/osszevonas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/osszevonas.phtml new file mode 100644 index 00000000..b0e38c08 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/osszevonas.phtml @@ -0,0 +1,51 @@ +'pluszora')); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo '

    '._TORLENDOK.'

    '; + echo '
      '; + for ($i=0; $i'.$ADAT['tankorok'][$T['tankorId']][0]['tankorNev'].' ('.$T['oraId'].')'; + } + echo '
    '; + + echo ''; + formEnd(); + } + + function putOrak($Orak, $title) { + + global $napiMinOra, $napiMaxOra; + + echo '

    '.$title.' '._ORAI.'

    '; + echo '
      '; + + for ($i = $napiMinOra; $i <= $napiMaxOra; $i++) { + echo '
    • '; + echo '' . $i . '. ' . _ORA . ' '; + if (is_array($Orak[$i])) { + if (is_array($Orak[$i][0])) { + for ($j = 0; $j < count($Orak[$i]); $j++) { + echo '' . $Orak[$i][$j]['tankorNev'] . ' '; + } + } else { + echo 'AJJAJJ'; + } + } + echo '
    • '; + } + + echo '
    '; + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/pluszora.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/pluszora.phtml new file mode 100644 index 00000000..af74fcb5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/pluszora.phtml @@ -0,0 +1,95 @@ +'pluszora')); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + if ($ADAT['tipus'] != 'normál') echo ' '.$ADAT['tipus'].' '; + + echo ''; + formEnd(); + } + + function putOrak($Orak, $title, $ADAT) { + + echo '

    '.ucfirst($title).' '._ORAI.'

    '; + echo '
      '; + + for ($i = $ADAT['napiMinOra']; $i <= $ADAT['napiMaxOra']; $i++) { + echo '
    • '; + echo '' . $i . '. ' . _ORA . ' '; + if (is_array($Orak[$i])) { + if (is_array($Orak[$i][0])) { + for ($j = 0; $j < count($Orak[$i]); $j++) { + echo '' . $Orak[$i][$j]['tankorNev'] . ' '; + } + } else { + echo '' . $Orak[$i]['tankorNev'] . ''; + } + } + echo '
    • '; + } + + echo '
    '; + } + + function putLila($ADAT) { + + echo '

    '._CSOPORTOS_PLUSZORA.'

    '; + + formBegin(array('class'=>'pluszLila')); + + echo ''; + + echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''; +// echo ''; +// echo ''; +// echo ''; +// echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '; + echo ''; + echo ''; + echo ' '; + echo ''; + echo ''; + echo ' '; + _inlineHelp('A gomb megnyomásával a kijelölt tanároknak előírt pluszfeladatot rögzítünk az adott nap ('.($ADAT['dt']).') adott órájára ('.$ADAT['ora'].')'); + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/specialis.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/specialis.phtml new file mode 100644 index 00000000..74f47c4e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/specialis.phtml @@ -0,0 +1,181 @@ +'; + echo ''.$napAdat[0]['dt'].''; + echo ''; + for ($i = 0; $i < count($napAdat); $i++) { + echo ''; + echo '

    '._MUNKATERV.': '.$munkatervek[$napAdat[$i]['munkatervId']]['munkatervNev'].' ('.$napAdat[$i]['munkatervId'].')

    '; + echo '

    '._TIPUS.': '.$napAdat[$i]['tipus'].'

    '; + echo '

    '._ORARENDIHET.': '.$napAdat[$i]['orarendiHet'].'

    '; + echo '

    '._MEGJEGYZES.': '.$napAdat[$i]['megjegyzes'].'

    '; + echo ''; + } + echo ''; + echo ''; + + } + + function napiOrakTorleseForm($napAdat, $napTipusok) { + + $dt = $napAdat[0]['dt']; + $tipus = array(); + for ($i = 0; $i < count($napAdat); $i++) if (!in_array($napAdat[$i]['tipus'], $tipus)) $tipus[] = $napAdat[$i]['tipus']; + // Ha egyféle típus van rendelve a naphoz az összes munkatervben... + if (count($tipus) == 1) $SEL = array($tipus[0] => ' selected="selected" '); + formBegin(array('class'=>'specialis')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + formEnd(); + } + + function orakBetolteseForm($napAdat, $Hetek) { + + $dt = $napAdat[0]['dt']; + $orarendiHet = array(); + for ($i = 0; $i < count($napAdat); $i++) if (!in_array($napAdat[$i]['orarendiHet'], $orarendiHet)) $orarendiHet[] = $napAdat[$i]['orarendiHet']; + // Ha egyetlen órarendi héthez van rendelve a nap az összes munkatervben... + if (count($orarendiHet) == 1) $SEL = array($orarendiHet[0] => ' selected="selected" '); + formBegin(array('class'=>'specialis')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + formEnd(); + } + + function specialisNapForm($dt, $szabadOrak, $Hetek) { + + global $aHetNapjai, $napiMinOra, $napiMaxOra; + + formBegin(array('class'=>'specialis')); + + echo ''; + echo ''; + + echo ''."\n"; + + echo ''."\n"; + echo '\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + for ($j = 0; $j < count($szabadOrak); $j++) { + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + } + echo ''."\n"; + + echo '
    '._ORAREND_OSSZEALLITASA.": $dt
    '._SZABAD_ORA.''._HET.''._NAP.''._ORA.'
    '.$szabadOrak[$j].''."\n"; + echo ''."\n"; + echo ''; + $dow = date('w',strtotime($dt)); + if ($dow == 0 ) $dow = 7; + $SEL = array($dow => ' selected="selected" '); + echo ''; + echo ''; + echo ''; + echo '
    '."\n"; + + formEnd(); + + } + + function orakTorleseForm($dt, $szabadOrak) { + + global $napiMinOra, $napiMaxOra; + + formBegin(array('class'=>'specialis')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + + for ($i = $napiMinOra; $i <= $napiMaxOra; $i++) { + if (!in_array($i, $szabadOrak)) { + echo ''; + echo ''; + echo ''."\n"; + echo ''; + } + } + echo '
    '._FOGLALT_SAVOK_TORLESE.': '.$dt.'
    '._FOGLALT_ORA.''._TORLENDO.'
    '.$i.'
    '."\n"; + + formEnd(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/stat.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/stat.phtml new file mode 100644 index 00000000..a8b908c2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/stat.phtml @@ -0,0 +1,84 @@ +'."\n"; + echo ''."\n"; + echo ''._TANKORNEV.''."\n"; + echo ''._MEGTARTOTT_ORASZAM.''."\n"; + echo ''._BECSULT_HATRALEVO_ORASZAM.''."\n"; + echo ''._BECSULT_OSSZES_ORASZAM.''."\n"; + echo ''._TERVEZETT_ORASZAM.''."\n"; + if ($mutatHianyzasStat) echo ''._HIANYZAS_ARANY.''."\n"; + echo ''._TANKOR_JEGYEK_SZAMA.''."\n"; + echo ''."\n"; + echo ''."\n"; + + if (is_array($tankorStat['tervezett'])) + foreach ($tankorStat['tervezett'] as $tankorId => $tervezettAdat) { + echo ''; + echo ''."\n"; + + echo ''; + echo $tervezettAdat[0]['tankorNev']; + echo ''."\n"; + echo ''; + echo $_megtartott=$tankorStat['megtartott'][$tankorId]['oraSzam']; + echo ''."\n"; + echo ''; + echo $tankorStat['becsult'][$tankorId]['oraSzam']; + echo ''."\n"; + echo ''; + echo $_tmp = $tankorStat['becsult'][$tankorId]['oraSzam']+$tankorStat['megtartott'][$tankorId]['oraSzam']; + echo ''."\n"; + $_terv_szazalek = number_format(($_tmp*100/$tervezettAdat['evesOraszam']),2); + if ($_terv_szazalek<70) $_style=' style="background-color: red" '; + elseif ($_terv_szazalek<80) $_style=' style="background-color: orange" '; + elseif ($_terv_szazalek<90) $_style=' style="background-color: yellow" '; + elseif ($_terv_szazalek<100) $_style=' style="background-color: lightgreen" '; + elseif ($_terv_szazalek>=100) $_style=' style="background-color: cornflowerblue" '; + echo ''; + echo $_terv_szazalek."%"; + echo ''; + echo ''; + echo $_tervezett=$tervezettAdat['evesOraszam']; + echo ''."\n"; + if ($mutatHianyzasStat) { + $_db = $tankorStat['hianyzasStat'][$tankorId]['db']; + if (is_numeric($_db) && $_db>0 && intval($_megtartott)>0 && $_tervezett>0) { + $_sz1 = number_format($_db*100/$_megtartott,1); + $_sz2 = number_format($_db*100/$_tervezett,1); + if ($_sz1>30) $_class = ' class="ertesitendo" '; + else $_class = ''; + } else { + $_class = ''; + } + echo ""; + if (is_numeric($_db) && $_db>0) { + echo $_db . ' ' . _DB ; + if ($_megtartott>0&&$_tervezett>0) echo " ($_sz1% | $_sz2%)"; + } + echo ''."\n"; + } + + echo ''; + echo ''.intval($tankorStat['jegyekSzama'][$tankorId]).' db / '; + echo ''.intval($tankorStat['letszam'][$tankorId]).' fő / '; + echo ''.$tankorStat['tervezett'][$tankorId]['hetiOraszam'].' óra = '; + echo ''.((intval($tankorStat['letszam'][$tankorId])!=0)?number_format($tankorStat['jegyekSzama'][$tankorId]/$tankorStat['letszam'][$tankorId],2):'-').' db/fő / '; + echo ''.$tankorStat['tervezett'][$tankorId]['hetiOraszam'].' óra = '; + echo ''.((intval($tankorStat['letszam'][$tankorId])!=0 && intval($tankorStat['tervezett'][$tankorId]['hetiOraszam'])!=0)?number_format($tankorStat['jegyekSzama'][$tankorId]/$tankorStat['letszam'][$tankorId]/$tankorStat['tervezett'][$tankorId]['hetiOraszam'],2):'- - . -').''; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + } + + + echo ''."\n"; + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/tankor.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/tankor.phtml new file mode 100644 index 00000000..c5b62199 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/tankor.phtml @@ -0,0 +1,54 @@ +Az órák '.$sum*100/($sum+$n).'%-a volt megtartva.'; + echo '

    '.$n.' óra maradt el.

    '; + //dump($ADAT); + return; + + $O = $ADAT['oraAdat']; + + echo ''; + + echo '
    '; + if (is_array($O)) { + foreach($ADAT['oraAdat'] as $k => $v) { + echo '
    '; + echo $k; + echo '
    '; + echo '
    '; + echo $v; + echo '
    '; + } + } + echo '
    '; +echo '

    Ez a funkció még nem működik!

    '; + echo ''; + echo ''; + echo ''; + + echo '
    '; + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/teremModositas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/teremModositas.phtml new file mode 100644 index 00000000..deaaab15 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/teremModositas.phtml @@ -0,0 +1,49 @@ +'; + } + unset($key); + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '; + _putOraAdat($ADAT['oraAdat']); + echo '
    '; + echo ''; + echo ''; + echo ''; + echo '
    '; + + formEnd(); + } + + function _putOraAdat($OA) { + /* Példa + array(13) { ["oraId"]=> string(5) "36513" ["dt"]=> string(10) "2010-03-25" ["ora"]=> string(1) "6" ["ki"]=> string(2) "81" ["kit"]=> NULL ["tankorId"]=> string(4) "1267" ["teremId"]=> NULL ["leiras"]=> NULL ["tipus"]=> string(7) "normál" ["eredet"]=> string(8) "órarend" ["kiCn"]=> string(16) "Ábrám László" ["kitCn"]=> string(0) "" ["tankorNev"]=> string(25) "7-8. fizika szakkör ALAP" } + */ + echo ''; + foreach(array('oraId','dt','ora','tankorNev','kiCn','kitCn','teremId') as $key) { + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '.constant('_'.strtoupper($key)).''.$OA[$key].'
    '; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diak.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diak.phtml new file mode 100644 index 00000000..6f6256dd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diak.phtml @@ -0,0 +1,228 @@ +'."\n"; + + echo ''."\n"; + echo ''; + echo ''; + //echo ''; + echo $ADAT['diak']['nev']; + if (is_array($ADAT['diak']['kepzes'])) { + echo ' '; + for ($j=0; $j'; + echo $ADAT['diak']['kepzes'][$ADAT['diakId']][$j]['kepzesNev']; + echo ''; + } + } + //echo ''; + echo ' '; + echo ''; + echo $ADAT['osztaly']['osztalyJel']; + echo ' '.$ADAT['osztaly']['leiras']; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''."\n"; + //echo ''; + // echo ''; + // echo $NAPOK[0]['dt'].' '.$NAPOK[count($NAPOK)-1]['dt']; + // echo ''; + //echo ''; + if (defined('__STATUS_HATARIDO')) { + echo ''; + echo ''; + echo _MARNEMIGAZOLHATO.': '.__STATUS_HATARIDO.', '; + echo _BEIRHATO.': '. __BEIRAS_HATARIDO; + echo ''; + echo ''; + } + // igazolás típusának váltása + if ( defined('__STATUS_HATARIDO') && (__NAPLOADMIN || __OFO || __VEZETOSEG) ) { + echo ''; + echo ''; + formBegin(); + echo ''; + echo ''; +// #echo ''; + echo ''; + echo ''; + formEnd(); + echo ''; + echo ''; + } + echo ''."\n"; + + + ## első hó fejléce + $dow = date('w',strtotime($NAPOK[0]['dt'])); + $ho = date('m',strtotime($NAPOK[0]['dt'])); + if ($dow==0) $dow=7; + echo ''."\n"; + echo ''.$Honapok[($ho-1)].''."\n"; + echo ''; + for($nap=0; $nap<7; $nap++) { + echo ''.$aHetNapjai[$nap].''; + } + echo ''."\n"; + echo ''; + for($nap=1; $nap<$dow; $nap++) { + echo ''; + } + + for($i=0; $itime()) $future = true; + + // Hónapváltás + if ($_ho!=$ho) { + $ho=$_ho; + if ($dow!=7) { + for($nap=$dow; $nap<=7; $nap++) { + echo ''; + } + echo ''; + } + echo ''."\n"; + echo ''."\n"; + echo ''.$Honapok[($ho-1)].''."\n"; + echo ''; + for($nap=0; $nap<7; $nap++) { + echo ''.$aHetNapjai[$nap].''; + } + echo ''."\n"; + echo ''; + for($nap=1; $nap<$dow; $nap++) { + echo ''; + } + } // hónapváltás vége + + if ($dow==1) echo ''; + + // Egy nap + echo ''; + { + if (in_array($NAPOK[$i]['tipus'], array('tanítási nap','speciális tanítási nap'))) { + _putHianyzasNap($ADAT,array('dt'=>$NAPOK[$i]['dt']),$ADAT['igazolas'],$future); + } else { + //if ($NAPOK[$i]['megjegyzes']!='') + echo '
    '.$NAPOK[$i]['megjegyzes'].'
    '; + } + } + echo ''."\n"; + // ------------------------------------------------- + + if ($dow==7) echo ''; + + } // kirakandó dátumok vége + + if ($dow!=7) { + for($nap=$dow+1; $nap<=7; $nap++) { + echo ''; + } + echo ''."\n"; + } + echo ''."\n"; + + + echo ''; + + } + + + function _putHianyzasNap($ADAT,$NAPADAT,$igazolas,$future) { + + global $napiMinOra, $napiMaxOra; + + $diakId = $ADAT['diakId']; + $dt = $NAPADAT['dt']; + $KRETAHIANYZAS = $ADAT['hianyzasKreta'][$ADAT['diakId']][$dt]; + echo ''; + echo ''; + if (defined('__STATUS_HATARIDO') && (__OFO || __VEZETOSEG || __NAPLOADMIN) && strtotime(__STATUS_HATARIDO) < strtotime($dt) && !$future) { + echo ''."\n"; + echo ''; + } else { // nincs joga igazolni + echo ''."\n"; + } + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '; + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + formEnd(); + echo ''; + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + formEnd(); + echo ''; + echo ' '.date('j',strtotime($NAPADAT['dt'])).' '; + echo ''; + if (!$future) { + formBegin(array('action'=>href('index.php?page=naplo&sub=hianyzas&f=nap'))); + echo ''; + echo ''; + echo ''; + echo ''; + formEnd(); + } + echo '
    '; + + if ((__OFO || __NAPLOADMIN || __VEZETOSEG)) { + $allowed=true; + } else $allowed = false; + $href= 'index.php?diakId='.$diakId.'&igazolas='.$igazolas.'&page=naplo&sub=hianyzas&f=diak&action=statusModositas'; + + if (!$future) _putHianyzasKistabla( + $ADAT['hianyzasok'][$ADAT['diakId']], + array('dt' => $dt), + array('href' => $href, 'allowed' => $allowed, 'napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra), + $KRETAHIANYZAS + ); + + echo '
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diakIgazolatlan.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diakIgazolatlan.phtml new file mode 100644 index 00000000..c2343043 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diakIgazolatlan.phtml @@ -0,0 +1,42 @@ +'."\n"; +// echo ''."\n"; + echo ''; + echo ''._DATUM.''; + echo ''._ORA.''; + echo ''._TIPUS.''; + echo ''._PERC.''; + echo ''."\n"; +// echo ''."\n"; +// echo ''."\n"; + + $hDb = $perc = 0; + foreach ($ADAT['igazolatlan'] as $iAdat) { + + if ($iAdat['tipus'] == 'késés') $perc += $iAdat['perc']; + else $hDb++; + echo ''; + echo ''.str_replace('-','.',$iAdat['dt']).'.'; + echo ''.$iAdat['ora'].''; + echo ''.$iAdat['tipus'].''; + echo ''.($iAdat['tipus'] == 'késés'?$iAdat['perc']:'').''; + echo ''; + + } +// echo ''."\n"; +// echo ''."\n"; + echo ''; + echo ''._HIANZASOK_SZAMA.':'; + echo ''.$hDb.''; + echo ''._KESESEK_OSSZESEN.':'; + echo ''.$perc.''; + echo ''."\n"; +// echo ''."\n"; + echo ''."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diakLista.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diakLista.phtml new file mode 100644 index 00000000..4335f38c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/diakLista.phtml @@ -0,0 +1,50 @@ +'; + echo ''.$ADAT['diak']['nev'].''; + foreach ($ADAT['hianyzasok'][$ADAT['diakId']] as $dt => $T) { + echo ''; + echo ''; + echo str_replace('-','.',$dt) .'. '. $aHetNapjai[date('w',strtotime($dt))-1]; + echo ' '.$NAPOK[$dt]['megjegyzes'].' ('.$NAPOK[$dt]['orarendiHet'].'. '.__HET.')'; // tipus, megjegyzes, orarendiHet + formBegin(array('class'=>'nyil','action'=>href('index.php?page=naplo&sub=hianyzas&f=nap'))); + echo ''; + echo ''; + echo ''; + echo ''; + formEnd(); + echo ''; + echo ''; + foreach($T as $ora => $D) { + for ($i=0; $i'; + echo ''.$D[$i]['ora'].'.'; + echo ''.$D[$i]['tipus'].($D[$i]['tipus'] == 'késés'?' ('.$D[$i]['perc'].' '._PERC.')':'').''; + echo ''.$D[$i]['igazolas'].''; + echo ''.$ORAADAT['kiCn'].''; + echo ''.$ORAADAT['leiras'].''; + echo ''.$ORAADAT['tipus'].''; + echo ''.$ORAADAT['tankorNev'].''; + echo ''."\n"; + } + } + } + echo ''; + } + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/info.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/info.phtml new file mode 100644 index 00000000..14b7acec --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/info.phtml @@ -0,0 +1,96 @@ +\n\n"; + reset($ADAT); + $i=0; + foreach($ADAT as $dt => $D) { + $d = $D['hianyzokSulyozva']; + if ($d!=-1) $Goo_Data[] = $d; + if ($d!=-1) $Goo_Data2[] = $D['hianyzokTanulmanyin']; + if ($d!=-1) $Goo_Data3[] = $d - $D['hianyzokTanulmanyin']; + if ($mx<$d) $mx = $d; + } + $Goo_Data = array_reverse($Goo_Data,false); + $Goo_Data2 = array_reverse($Goo_Data2,false); + $Goo_Data3 = array_reverse($Goo_Data3,false); + echo '
    '; +# echo 'Google Chart'; + echo 'Google Chart'; + echo '
    '; + +echo ' +
    +'; + + } + reset($ADAT); + echo ''; + echo ''; + echo ' + + + '."\n"; + echo ''; + echo ''; + echo ''; + foreach($ADAT as $dt => $D) { + list($y,$m,$d) = explode('-',$dt); + $w = date('w',strtotime($dt)); + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + } + echo ''; + echo '
    NapHány diák hiányzott? (Becslés)Az órák hány százalékán volt hiányzó?Tanulmányi verseny miatt igazolt
    (db diák) - pontos érték
    A statisztika '.date('Y-m-d H:i:s').'-kor készült'.'
    '.$y.'.'.intval($m).'.'.intval($d).'.'.$D['hianyzokSulyozva'].''.$D['oranHianyzasSzazalek'].'%'.$D['hianyzokTanulmanyin'].'
    '."\n\n"; + + } + + +/** + * Encode an array of integers according to Google's Extended Encoding + * Scales to largest value in array if $max is not set, truncates lower bound if $min is set + * Does NOT set the 'e:' prefix so it can be called when creating multiple data series + * @link http://code.google.com/apis/chart/formats.html#extended + * @param array $values + * @param integer $max + * @param integer $min + * @return string + * @author Marcus Bointon + */ +function googEE($values, $max = -1, $min = 0) { + $encoding = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-.'; + $rangemax = 4095; + $chartdata = ''; + if ($max < 0) { + $max = max($values); + } + //If max is smaller than the largest value, it will go beyond range allowed by the encoding (0..4095) + if ($max < max($values)) { + $max = max($values); + } + $range = $max - $min; + $scale = $rangemax / $range; + foreach ($values as $k => $v){ + if ($v >= $min && $v <= $max) { + $scaledvalue = ($v - $min) * $scale; + $chartdata .= $encoding[floor($scaledvalue / 64)].$encoding[$scaledvalue % 64]; + } else { + $chartdata .= '__'; // Value out of max range; + } + } + return($chartdata); +} + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/nap.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/nap.phtml new file mode 100644 index 00000000..32bc0c07 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/nap.phtml @@ -0,0 +1,253 @@ + $_DN) + foreach ($_DN as $_dt => $_DO) + foreach($_DO as $ora => $_D) + for ($i=0; $i'."\n"; + echo ''; + echo ''; + echo ''; + echo $ADAT['diak']['nev']; + echo ''; + if (!__DIAK) { + echo ' '; + echo ''; + echo $ADAT['osztaly']['osztalyJel']; + echo ' '.$ADAT['osztaly']['leiras']; + echo ''; + } + echo ''; + _putHianyzasKistabla($ADAT['hianyzasok'][$_diakId], array('dt'=>$dt), array('napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra), $ADAT['hianyzasKreta'][$diakId][$dt]); + echo ''; + echo ''._TANKOR.''._J.''._K.''._H.''.EH.''._F.''._FM.''._IGAZOLT.''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + + for ($ora = __MIN_ORA; $ora <= __MAX_ORA; $ora++) { + $JOG = $JOGOSULTSAG[$diakId]['orak'][$ora]; + if (!is_array($ADAT['orak'][$dt][$ora])) + { + $tankorId=''; + $OA = false; + } else { + + while ( + list($tankorId,$OA) = each($ADAT['orak'][$dt][$ora]) + ) { + $_tankorTipusId = $ADAT['tankorok'][$tankorId][0]['tankorTipusId']; + $_TT = $ADAT['tankorTipus'][$_tankorTipusId]; + $_class = str_replace(' ','_',ekezettelen( $_TT['rovidNev'] )).' '.ekezettelen(str_replace(' ','',$ADAT['diakJogviszony'])); + $_oraId = $OA['oraId']; + echo ''; + echo ''; + echo $ora.'.'; + echo ''; + echo ''; + echo ''; + echo $ADAT['tankorok'][$tankorId][0]['tankorNev']; + echo ' '.$_TT['rovidNev']; + echo ''; + echo ''; + + if (in_array($OA['tipus'],array('elmarad','elmarad máskor'))) { + echo ''.$OA['tipus'].''; + } else { + $oraAlolFelmentve = false; + if (in_array($tankorId,array_keys($ADAT['felmentett']))) { + for ($i = 0; $i < count($ADAT['felmentett'][$tankorId]); $i++) { + if ( + $ADAT['felmentett'][$tankorId][$i]['felmentesTipus']=='óralátogatás alól' + && ($ora == $ADAT['felmentett'][$tankorId][$i]['ora'] + || is_null($ADAT['felmentett'][$tankorId][$i]['ora']) + ) + ) $oraAlolFelmentve = true; + } + } + if ($_TT['regisztralando'] == 'igen' + && !$oraAlolFelmentve + && (in_array($ADAT['diakJogviszony'], array('jogviszonyban van','vendégtanuló')) + || ($ADAT['diakJogviszony']=='magántanuló' && $_TT['jelleg']=='gyakorlat') + ) + ) { + $_igtipus=''; + /* prepare data */ + reset($HTIPUSOK1); + $__jelen=true; + foreach ($HTIPUSOK1 as $j => $_tipus) { + if ($UJHADAT[$_oraId][$_diakId][$_tipus]['hianyzasId']!='') $__jelen=false; + } + /* -- */ + reset($HTIPUSOK1); + foreach ($HTIPUSOK1 as $j => $_tipus) { + $_disp=''; + //$_hid = $HADAT[$ora][$_diakId][$_tipus]['hianyzasId']; + $_hid = $UJHADAT[$_oraId][$_diakId][$_tipus]['hianyzasId']; + if ($_hid!='') $_igtipus = $_tipus; + if ($_tipus=='') $_csstipus='jelen'; else $_csstipus=$_tipus; + $_radio = ($_hid!='' || ($_tipus=='' && $__jelen)) ?'checked="checked"' : ''; + $_csstipus .= ($JOG['beirhato'] && ($_hid!='' || ($_tipus=='' && $__jelen))) ?' checked ' : ''; + echo ''; + if ($JOG['beirhato']==true) { + if ($_tipus=='késés') { + $_perc = intval(($UJHADAT[$_oraId][$_diakId][$_tipus]['perc'])); + $_kesett = ($_perc>0) ? ' kesett':''; + echo ''; + $_disp = 'style="display:none"'; + } + echo ''; + } else { + if (($__jelen && $_tipus=='') || $_hid!='') { + if ($_hid!='') echo ''; + if ($_tipus=='késés' && ($_perc = intval(($UJHADAT[$_oraId][$_diakId][$_tipus]['perc']))) != 0) { + echo ''.$_perc.''; + } else { + _putImg($_tipus,$__jelen); + } + } + } + echo ''; + } + if ($JOG['fbeirhato']==true) { +/* + echo ''; + echo ''; + echo ''; +*/ + foreach ($HTIPUSOK2 as $j => $_tipus) { + echo ''; + + //$_hid = $HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['hianyzasId']; + $_hid = $UJHADAT[$_oraId][$_diakId][$_tipus]['hianyzasId']; + if ($_tipus != '') { + if ($_hid != '') $chk = ' checked="checked" '; else $chk = ''; + echo ''; + } + echo ''; + } + + + } else { + echo ''; + foreach ($HTIPUSOK2 as $j => $_tipus) { + $_hid = $UJHADAT[$_oraId][$_diakId][$_tipus]['hianyzasId']; + if ($_hid!='') { + echo ''; + echo ' '.$_tipus.' '; + } + } + echo ''; + } + echo ''; + _putIgazolasSelect($UJHADAT[$_oraId][$_diakId][$_igtipus], $ITIPUSOK,$JOG,$JOGADAT,array('diakId'=>$_diakId,'oraId'=>$ORAADAT['oraId'],'hianyzasId'=>$_hid)); + echo ''; + } else { // nem kötelező bejárnia + if ($ADAT['diakJogviszony'] == 'magántanuló') { + echo ''; + echo $ADAT['diakJogviszony']; + echo ''."\n"; + } else { + echo ''; + if ($tankorId!='') echo _NEM_REGISZTRALANDO; + echo ''."\n"; + } + } // bejárnia kell-e + } //oratipusa normál, helyettesites, felugyelet + echo ''; + } // r516 óta + } + //$i++; + } + echo ''; + echo ''; + + formEnd(); + + } + + function _putIgazolasSelect($ADAT,$TIPUSOK,$JOG,$JOGADAT,$SET) { + //"'.$_diakId.'/'.$dt.'/'.$ora.'/'.$_tipus.'/'.$_hid.'" + if (is_array($ADAT)) { + if ($JOG['igazolhato']===true) { + echo ''; + } else { + echo $ADAT['igazolas']; + } + } + + } + + function _putOraAdat($ORAADAT) { + echo ''; + echo ''; + echo '
    '; + echo $ORAADAT['dt'].', '.$ORAADAT['ora'].'. ('.$ORAADAT['oraId'].')'; + echo ''; + echo $ORAADAT['tankorNev'].' - '.$ORAADAT['kiCn']; + echo '
    '; + echo $ORAADAT['leiras']; + echo '
    '; + } + + function _putImg($tipus,$jelen) { + if ($jelen && $tipus=='') echo ''; + elseif ($tipus=='késés') echo ''; + elseif ($tipus=='hiányzás') echo ''; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/oktstat.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/oktstat.phtml new file mode 100644 index 00000000..373de446 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/oktstat.phtml @@ -0,0 +1,133 @@ +'.$stat.''; + echo 'nem kompatibilis nézet'; //--TODO: a tábláazt pont fordítva van! + + if (is_array($ADAT['osszes'][0])) { + //if (!is_array($ADAT['osszes'][0])) return false; + + $KEYS = array_keys($ADAT['osszes'][0]); + + echo ''; + echo ''; + echo ''."\n"; + echo ''; + for($i=0; $i'.$KEYS[$i].''; + } + echo ''; + echo ''; + echo ''; + echo ''; + for($i=0; $i'.$KEYS[$i].''; + } + echo ''; + echo ''; + echo ''; + for ($j=0;$j'; + for($i=0; $i'.$ADAT['osszes'][$j][$KEYS[$i]].''; + } + echo ''; + } + echo ''; + + echo '
    Összes
    '; + + } + + if (is_array($ADAT['tankoteles'][0])) { + //if (!is_array($ADAT['tankoteles'][0])) return false; + + $KEYS = array_keys($ADAT['tankoteles'][0]); + + echo ''; + echo ''; + echo ''."\n"; + echo ''; + for($i=0; $i'.$KEYS[$i].''; + } + echo ''; + echo ''; + echo ''; + echo ''; + for($i=0; $i'.$KEYS[$i].''; + } + echo ''; + echo ''; + echo ''; + for ($j=0;$j'; + for($i=0; $i'.$ADAT['tankoteles'][$j][$KEYS[$i]].''; + } + echo ''; + } + echo ''; + + echo '
    Tanköteles
    '; + + } + + } + + + function putStat_a04t17($ADAT) { + + $stat = 'a04t17'; + $D = $ADAT[$stat]; + echo '
    '.$stat.'
    '; + + echo 'Iskolába lépő gyermekek'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    összesenlány
    2tanköteles (május 31-ig a 6. életévét betöltötte)'._sum($D[$stat.'_2']).''.$D[$stat.'_2']['lány']['db'].'
    3július 1. és augusztus 31. között töltötte be a 6. életévét'._sum($D[$stat.'_3']).''.$D[$stat.'_3']['lány']['db'].'
    4szeptember 1-jén a 6. életévét még nem töltötte be'._sum($D[$stat.'_4']).''.$D[$stat.'_4']['lány']['db'].'
    '."\n"; + } + + function putStat_a04t83($ADAT) { + $stat = 'a04t83'; + $D = $ADAT[$stat]; + echo '
    '.$stat.'
    '; + // TODO: emelt szintű oktatásban részt vevő tanulók + } + + function _sum($what) { + + return (intval($what['lány']['db']) + intval($what['fiú']['db']) + intval($what['']['db'])); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/ora.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/ora.phtml new file mode 100644 index 00000000..1edac54f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/ora.phtml @@ -0,0 +1,280 @@ +time()); // ezt csak itt tiltjuk le, a pre-ben nem! -- ennél szigorúbb a korlátozás a getHianyzasJogosultsag() -on keresztül + + if (!is_array($NEVEK) || count($NEVEK)==0) + if (!$ADAT['tagokFelvehetok']) + return false; + + + formBegin(array('class'=>"vissza",'action'=>href('index.php?page=naplo&sub=haladasi&f=haladasi'))); + echo ''; + echo ''; + echo ''; + formEnd(); + + if ($ADAT['tankorAdat']['oratervi'] != 'óratervi') $class = 'delutani'; + formBegin(array('method' => 'post', 'action' => '','class' => $class)); + + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''. + ''.''.''.''; + echo ''; + echo ''; + echo ''; + echo ''; + + + /* Ha a tagok felvehetők (módosíthatók) - tipikusan ilyen a tanulószoba */ + if ($ADAT['tagokFelvehetok']===true) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + } + /* -- */ + + + + echo ''; + $i=0; + if (is_array($NEVEK)) + foreach($NEVEK as $_diakId => $DA) { + $JOG = $ADAT['jogosultsag'][$_diakId]['orak'][$ORAADAT['ora']]; + $JOGADAT = $ADAT['jogosultsag'][$_diakId]['igazolas']; + $jogviszony = ekezettelen(str_replace(' ','',$ADAT['diakJogviszony'][$_diakId][$ORAADAT['dt']]['statusz'])); + $felmentett_class = (in_array($ADAT['tankorAdat']['tankorId'], $ADAT['felmentes'][$_diakId])) ? ' felmentett':''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if ( + $ADAT['tankorAdat']['regisztralando']=='igen' + && !in_array($ADAT['tankorAdat']['tankorId'], $ADAT['felmentes'][$_diakId]) + && (in_array($jogviszony, array('jogviszonybanvan','vendegtanulo')) + || ($jogviszony == 'magantanulo' && $ADAT['tankorAdat']['jelleg']=='gyakorlat') + ) + ) { + $_igtipus=''; + /* prepare data */ + reset($HTIPUSOK1); + $__jelen=true; + foreach ($HTIPUSOK1 as $j => $_tipus) { + if ($HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['hianyzasId']!='') $__jelen=false; + } + + /* -- */ + reset($HTIPUSOK1); + foreach ($HTIPUSOK1 as $j => $_tipus) { + $_disp=''; + $_hid = $HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['hianyzasId']; + if ($_hid!='') $_igtipus = $_tipus; + if ($_tipus=='') $_csstipus = 'jelen'; else $_csstipus=$_tipus; + $_radio = ($_hid!='' || ($_tipus=='' && $__jelen)) ?'checked="checked"' : ''; + $_csstipus .= ($JOG['beirhato'] && ($_hid!='' || ($_tipus=='' && $__jelen))) ?' checked ' : ''; + echo ''; + } + /* === */ + if ($JOG['fbeirhato']==true && !$jovobeli) { +/* + echo ' +*/ + foreach ($HTIPUSOK2 as $j => $_tipus) { + echo ''; + } + } else { + echo ''; + } + echo ''; + } else { + echo ''."\n"; + } + + echo ''; + $i++; + } + echo ''; + echo '
    '; + _putOraAdat($ORAADAT); + echo '
    '. + ''.$ADAT['tankorAdat']['oratervi'].', '.$ADAT['tankorAdat']['jelleg'].''; + echo '
    '._ADOTT_NAP.''._NEV_OSZTALY.''._J.''._K.''._H.''._EH.''._FH.''._FM.''._IGAZOLT.'
    '; + echo ''; + echo ''; + echo ''; + echo '
    '; + echo _UJ_TAG; + echo ''; + echo ''; + echo '
    '; + _putHianyzasKistabla($ADAT['napiHianyzasok'][$_diakId], $ORAADAT, array('napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra), $ADAT['hianyzasKreta'][$_diakId][$ORAADAT['dt']]); + echo ''; + putFace($DA['diakId'],'diak','30'); + echo ''; + echo ''; + printf("%02s. ", $i+1); + echo ''; + echo ''; + echo ''; + echo $DA['diakNev']; + echo ''; + echo ''; + if ($JOG['beirhato']==true && !$jovobeli) { + //echo $_diakId.'/'.$_tipus.'/'.$_hid; + if ($_tipus=='késés') { + $_perc = intval(($HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['perc'])); + if ($_perc >0) $_kesett = ' kesett'; else $_kesett = ''; + echo ''; + $_disp = 'style="display:none"'; + } + echo ''; + + } else { + if (($__jelen && $_tipus=='') || $_hid!='') { + if ($_hid!='') echo ''; + if ($_tipus=='késés' && ($_perc = intval(($HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['perc']))) != 0) { + echo ''; + //echo ''.$_perc.''; + } else { + _putImg($_tipus,$__jelen); + } + } + } + echo ''; + echo ''; + echo ''; + + $_hid = $HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['hianyzasId']; + if ($_tipus != '') { + if ($_hid != '') $chk = ' checked="checked" '; else $chk = ''; + echo ''; + } + echo ''; + + foreach ($HTIPUSOK2 as $j => $_tipus) { + $_hid = $HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['hianyzasId']; + if ($_hid!='') { + echo ''; + echo $_tipus; + } + } + echo ''; + _putIgazolasSelect($HADAT[$ORAADAT['oraId']][$_diakId][$_igtipus], $ITIPUSOK,$JOG,$JOGADAT,array('diakId'=>$_diakId,'oraId'=>$ORAADAT['oraId'],'hianyzasId'=>$_hid)); + echo ''; + // echo _ORARA_NEM_KOTELEZO_BEJARNIA; + echo _NEM_REGISZTRALANDO; + echo '
    '; + + formEnd(); + + } + + function _putIgazolasSelect($ADAT,$TIPUSOK,$JOG,$JOGADAT,$SET) { + //"'.$_diakId.'/'.$dt.'/'.$ora.'/'.$_tipus.'/'.$_hid.'" + if (is_array($ADAT)) { + if ($JOG['igazolhato']===true) { + echo ''."\n"; + } else { + echo $ADAT['igazolas']; + } + } + + } + + function _putOraAdat($ORAADAT) { + echo ''; + echo ''; + echo ''; + echo '
    '; + echo ''; + echo $ORAADAT['dt'].', '.$ORAADAT['ora'].'.'._ORA.''; + echo ''; + echo $ORAADAT['tankorNev'].' - '.$ORAADAT['kiCn']; + echo '
    '; + if ($ORAADAT['tankorTipus'] == 'délutáni') echo nagybetus($ORAADAT['tankorTipus']).' '; + echo $ORAADAT['leiras']; + echo '
    '; + } + + + function putOraAdatok($oraAdat) { + + list($evf,$oszt,$targy,$targycsoport,$tipus,$index) = explode('_',$oraAdat['tankor']); + + #echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ""; + echo ''; + echo ''; + echo '
    '.str_replace('-','.',$oraAdat['dt']).'.'.$oraAdat['ora'].'. óra ~ $evf.$oszt $targy, $tipus $targycsoport ~ '.$oraAdat['tanarCn'].'
    '."\n"; + #echo '
    '."\n"; + #echo '
    '; + } + + function _putImg($tipus,$jelen) { + if ($jelen && $tipus=='') echo ''; + elseif ($tipus=='késés') echo ''; + elseif ($tipus=='hiányzás') echo ''; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/osztaly.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/osztaly.phtml new file mode 100644 index 00000000..f07a166d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/osztaly.phtml @@ -0,0 +1,667 @@ +'; + + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ' '; + echo ' '; + echo ' '; + echo ''; + + echo ' '._REFERENCIADT.' '; + echo ''."\n"; + + echo ''; + formEnd(); + + echo ''; + + /* ----------- Fejléc ----------- */ + + echo ''."\n"; + echo ''; + echo ''; + + if (in_array('hozott',$View)) { + echo ''; + $_cols+=7; + } + + if (in_array('lezárt',$View)) { + echo ''; + $_cols+=7; + } + + if (in_array('igazolható',$View)) { + echo ''; + $_cols+=6; + } + + + if (in_array('összes',$View)) { + echo ''; + $_cols+=7; + } + + if (in_array('kreta',$View)) { + echo ''; + $_cols+=6; + } + + if (in_array('fegyelmi utáni',$View)) { + echo ''; + $_cols+=3; + } + + if (in_array('fegyelmi fokozatok',$View)) { + echo ''; + $_cols+=4; + } + + echo ''; + + if (in_array('hozott',$View)) { + echo ''; + } + + if (in_array('lezárt',$View)) { + echo ''; + echo ''; + } + + if (in_array('igazolható',$View)) { + echo ''; + echo ''; + } + + + if (in_array('összes',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + if (in_array('kreta',$View)) { + echo ''; + echo ''; + } + + if (in_array('fegyelmi utáni',$View)) { + echo ''; + echo ''; + echo ''; + } + + if (in_array('fegyelmi fokozatok',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + } + + echo ''; + + + + if (in_array('hozott',$View)) { + echo ''; + echo ''; + echo ''; + } + + + if (in_array('lezárt',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + if (in_array('igazolható',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + + if (in_array('összes',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + if (in_array('kreta',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + if (in_array('fegyelmi utáni',$View)) { + } + + if (in_array('fegyelmi fokozatok',$View)) { + } + + + echo ''; + + + echo ''."\n"; + + /* ----------- Fejléc vége ------------- */ + + echo ''."\n"; + echo ''; + echo ''; + if (in_array('hozott',$View)) { + echo ''; + } + if (in_array('lezárt',$View)) { + echo ''; + } + if (in_array('igazolható',$View)) { + echo ''; + } + if (in_array('összes',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + if (in_array('kreta',$View)) { + echo ''; + } + + if (in_array('fegyelmi utáni',$View)) { + echo ''; + echo ''; + echo ''; + } + if (in_array('fegyelmi fokozatok',$View)) { + echo ''; + echo ''; + } + echo ''; + if ($ADAT['hianyzasmentesNapokSzama'] != 0) { + echo ''; + } + echo ''."\n"; + echo ''."\n"; + + $i = 1; + foreach ($ADAT['stat']['névsor'] as $diakId => $dAdat) { + $DH = $ADAT['stat'][$diakId]; // DH=DiákHiányzás: lezárt|összes|fegyelmi + // kiemelt változók + + $lhigazolatlan = $DH['lezárt']['hiányzás']['igazolatlan']; + $lhigazolt = $DH['lezárt']['hiányzás']['igazolt']; + $lkigazolatlan = $DH['lezárt']['késés']['igazolatlan']['db']; + $lkigazolatlanIdo = $DH['lezárt']['késés']['igazolatlan']['ido']; + // igazolható, igazolatlan hiányzás + $ihigazolatlan = $DH['összes']['hiányzás']['igazolatlan'] - $DH['lezárt']['hiányzás']['igazolatlan']; + $lkigazolt = $DH['lezárt']['késés']['igazolt']['db']; + // igazolható, igazolt hiányzás + $ihigazolt = $DH['összes']['hiányzás']['igazolt'] - $DH['lezárt']['hiányzás']['igazolt']; + $ikigazolatlan = $DH['összes']['késés']['igazolatlan']['db'] - $DH['lezárt']['késés']['igazolatlan']['db']; + $ikigazolatlanIdo = $DH['összes']['késés']['igazolatlan']['ido'] - $DH['lezárt']['késés']['igazolatlan']['ido']; + $ikigazolt = $DH['összes']['késés']['igazolt']['db'] - $DH['lezárt']['késés']['igazolt']['db']; + + $ohigazolatlan = $DH['összes']['hiányzás']['igazolatlan'] + $DH['hozott']['igazolatlan']['db']; + $ohigazolt=$DH['összes']['hiányzás']['igazolt']+ $DH['hozott']['igazolt']['db']; + + $okigazolatlan = $DH['összes']['késés']['igazolatlan']['db']; + $okigazolatlanIdo = $DH['összes']['késés']['igazolatlan']['ido']; + $okigazolt=$DH['összes']['késés']['igazolt']['db']; + $ofelszereles = $DH['összes']['felszerelés hiány']['igazolatlan']; + $ofelmentes = $DH['összes']['felmentés']['igazolatlan']; + $oegyenruha = $DH['összes']['egyenruha hiány']['igazolatlan']; + + $fih = $DH['fegyelmi']['hiányzás']['igazolatlan']; + $fik = $DH['fegyelmi']['késés']['igazolatlan']['db']; + $fikIdo = $DH['fegyelmi']['késés']['igazolatlan']['ido']; + $ff = $DH['fegyelmi']['felszerelés hiány']['igazolatlan']; + $fe = $DH['fegyelmi']['egyenruha hiány']['igazolatlan']; + //---.. + + echo ''; + echo ''; + + echo ''; + + + if (in_array('hozott',$View)) { + # Hozott + // Lezárt igazolatlan hiányzás + if (intval($ADAT['hozottHianyzas'][$diakId]['igazolatlan']['db']) == 0) $class = 'ulezart'; + else $class = 'lezart igazolatlan hianyzas'; + echo ''; + + // Lezárt igazolt hiányzás + if (intval($ADAT['hozottHianyzas'][$diakId]['igazolt']['db']) == 0) $class = 'ulezart'; + else $class = 'lezart igazolt hianyzas'; + echo ''; + + // Lezárt összes hiányzás + $osszeg = intval($ADAT['hozottHianyzas'][$diakId]['igazolatlan']['db']) + intval($ADAT['hozottHianyzas'][$diakId]['igazolt']['db']); + if ($osszeg == 0) { + $osszeg = ''; + $class = 'ulezart'; + } else { + $class = 'lezart mind hianyzas'; + } + echo ''; + ## ------ + } + + + if (in_array('lezárt',$View)) { + # Lezártak + // Lezárt igazolatlan hiányzás + if (intval($lhigazolatlan) == 0) $class = 'ulezart'; + else $class = 'lezart igazolatlan hianyzas'; + echo ''; + + // Lezárt igazolt hiányzás + if (intval($lhigazolt) == 0) $class = 'ulezart'; + else $class = 'lezart igazolt hianyzas'; + echo ''; + + // Lezárt összes hiányzás + $osszeg = intval($lhigazolt) + intval($lhigazolatlan); + if ($osszeg == 0) { + $osszeg = ''; + $class = 'ulezart'; + } else { + $class = 'lezart mind hianyzas'; + } + echo ''; + + // Lezárt igazolatlan késés + if ($lkigazolatlan == 0) $class = 'ulezart'; + else $class = 'lezart igazolatlan keses'; + echo ''; + + // Lezárt igazolt késés + if ($lkigazolt == 0) $class = 'ulezart'; + else $class = 'lezart igazolt keses'; + echo ''; + + // Lezárt igazolatlan késés + $osszeg = intval($lkigazolt) + intval($lkigazolatlan); + if ($osszeg == 0) { + $osszeg = ''; + $class = 'ulezart'; + } else { + $class = 'lezart mind keses'; + } + echo ''; + ## ------ + } + + if (in_array('igazolható',$View)) { + ## Lezárt utáni = Igazolható + + // Igazolható igazolatlan hiányzás + if ($ihigazolatlan == 0) { + $ihigazolatlan = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato igazolatlan hianyzas'; + } + echo ''; + + // Igazolható igazolt hiányzás + if ($ihigazolt == 0) { + $ihigazolt = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato igazolt hianyzas'; + } + echo ''; + + // Igazolható összes hiányzás + $osszeg = $ihigazolt+$ihigazolatlan; + if ($osszeg == 0) { + $osszeg = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato mind hianyzas'; + } + echo ''; + + // Igazolható igazolatlan késés + if ($ikigazolatlan == 0) { + $ikigazolatlan = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato igazolatlan keses'; + } + echo ''; + + // Igazolható igazolt késés + if ($ikigazolt == 0) { + $ikigazolt = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato izagolt keses'; + } + echo ''; + + // Igazolható összes késés + $osszeg = intval($ikigazolt)+intval($ikigazolatlan); + if ($osszeg == 0) { + $osszeg = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato mind keses'; + } + echo ''; + ## ------ + } + + + if (in_array('összes',$View)) { + ## Összes + + // Összes igazolatlan hiányzás + if ($ohigazolatlan == 0) $class = 'uosszes'; + else $class = 'osszes igazolatlan hianyzas'; + echo ''; + + // Összes igazolt hiányzás + if ($ohigazolt == 0) $class = 'uosszes'; + else $class = 'osszes igazolt hianyzas'; + echo ''; + + // Összes hiányzás + $osszeg = intval($ohigazolt)+intval($ohigazolatlan); + if ($osszeg == 0) { + $osszeg = ''; + $class = 'uosszes'; + } else { + $class = 'osszes mind hianyzas'; + } + echo ''; + + // Összes igazolatlan késés + if ($okigazolatlan == 0) $class = 'uosszes'; + else $class = 'osszes igazolatlan keses'; + echo ''; + + // Összes igazolt késés + if ($okigazolt == 0) $class = 'uosszes'; + else $class = 'osszes igazolt keses'; + echo ''; + + // Összes késés + $osszeg = intval($okigazolt) + intval($okigazolatlan); + if ($osszeg == 0) { + $osszeg = ''; + $class = 'uosszes'; + } else { + $class = 'osszes mind keses'; + } + echo ''; + + // Összes felszerelés hiány + if ($ofelszereles == 0) $class = 'uosszes'; + else $class = 'osszes felszereles'; + echo ''; + + // Összes felmentés hiány + if ($ofelmentes == 0) $class = 'uosszes'; + else $class = 'osszes felmentes'; + echo ''; + + // Összes egyenruha hiány + if ($oegyenruha == 0) $class = 'uosszes'; + else $class = 'osszes egyenruha'; + echo ''; + ## ------ + } + + + if (in_array('kreta',$View)) { // Kréta + $_KRETAADAT = $ADAT['hianyzasKreta'][$diakId]; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } // Kréta + + if (in_array('fegyelmi utáni',$View)) { + ## Fegyelmi után + // Fegyelmi utáni igazolatlan hiányzás + if ($fih == 0) $class = 'ufegyelmi'; + else $class = 'fegyelmi igazolatlan hianyzas'; + echo ''; + + // Fegyelmi utáni igazolatlan késés + if ($fik == 0) $class = 'ufegyelmi'; + else $class = 'fegyelmi igazolatlan keses'; + echo ''; + + // Fegyelmi utáni felszerelés hiány + if ($ff == 0) $class = 'ufegyelmi'; + else $class = 'fegyelmi felszereles'; + echo ''; + + // Fegyelmi utáni egyenruha hiány + if ($fe == 0) $class = 'ufegyelmi'; + else $class = 'fegyelmi egyenruha'; + echo ''; + ## ------ + } + if (in_array('fegyelmi fokozatok',$View)) { + ## Fokozatok + + $igazolatlanok_szama = $DH['összes igazolatlan']; + if ($igazolatlanok_szama == 0) { + $igazolatlanok_szama = ''; + $class = 'ufokozat'; + } else { + $class = 'fokozat oi igazolatlan'; + } + echo ''; + + // Jelenlegi fegyelmi fokozat + $aktFokozat = intval($DH['fegyelmi']['fokozat']); + $maxFokozat = intval($DH['fegyelmi']['maxFokozat']); + $hianyzasDb = intval($DH['fegyelmi']['hianyzasDb']); + $diakReferenciaDt = $DH['fegyelmi']['referenciaDt']; + if ($aktFokozat == 0) $class = 'ufokozat'; + else $class = 'fokozat'; + if ($maxFokozat == 0) $_class2 = 'ufokozat'; + else $_class2 = 'fokozat'; + if ($ADAT['fokozat2bejegyzesTipus'][$aktFokozat]['hianyzasDb']!='') + $title = 'Dt: '.$diakReferenciaDt.' (~'.$ADAT['fokozat2bejegyzesTipus'][$aktFokozat]['hianyzasDb'].' db igazolatlan / '.$hianyzasDb.' db rögzített)'; + else + $title = 'Dt: '.$diakReferenciaDt; + echo ''; // kapott már + dt + + echo ''; // kapott már + dt + + + + // Adandó fegyelmi fokozat szempontjából érdekes, már lezárt hiányzások és késésekből, felszerelés hiányokból, egyenruha hiányokból "átváltott" hiányzások + $fegyelmiIgazolatlanDb = $lhigazolatlan; + if (_KESESI_IDOK_OSSZEADODNAK === true) { + $fegyelmiIgazolatlanDb += floor($lkigazolatlanIdo / 45); + } else { + if (intval(_HANY_KESES_IGAZOLATLAN) > 0) + $fegyelmiIgazolatlanDb += floor($lkigazolatlan / intval(_HANY_KESES_IGAZOLATLAN)); + if (intval(_HANY_FSZ_IGAZOLATLAN) > 0) + $fegyelmiIgazolatlanDb += floor($ofelszereles / intval(_HANY_FSZ_IGAZOLATLAN)); + if (intval(_HANY_EH_IGAZOLATLAN) > 0) + $fegyelmiIgazolatlanDb += floor($oegyenruha / intval(_HANY_EH_IGAZOLATLAN)); + } + // keressük visszafele az első adandó fokozatot... + $fegyelmi = 0; + $j = count($ADAT['összes fokozat'])-1; + while($ADAT['összes fokozat'][$j]['hianyzasDb'] > $fegyelmiIgazolatlanDb && $j >= 0) $j--; +// Na de mi van, ha $j == -1 lesz, mert mondjuk az első fokozat 2 igazolatlan esetén adandó és neki még csak egy van? + if ($j >= 0) { + $megerdemeltFokozat = $ADAT['összes fokozat'][$j]['fokozat']; + $megerdemeltBejegyzesTipusId = $ADAT['összes fokozat'][$j]['bejegyzesTipusId']; + + // Fegyelmi utáni igazolatlanok összesítése + $fegyelmi = $fih; + if (_KESESI_IDOK_OSSZEADODNAK === true) { + // a fegyelmikbe beleszámítható az igazolatlanok száma rev2222+ + $fegyelmi += floor($fikIdo / 45); + } else { + if (intval(_HANY_KESES_IGAZOLATLAN) > 0) + $fegyelmi += floor($fik / intval(_HANY_KESES_IGAZOLATLAN)); + if (intval(_HANY_FSZ_IGAZOLATLAN) > 0) + $fegyelmi += floor($ff / intval(_HANY_FSZ_IGAZOLATLAN)); + } + } + # FIX 2009-05-28 konczy + # Ha a már lejárt hiányzások és késések és hiányzások darabszámának ($j) megfelelő + # fokozat nagyobb, mint a beírt, akkor meg kell jelenítenünk a formot. + # - illetve, ha a legutóbbi fegyelmi óta van újabb lezárt igazolatlanja... + //// $_talalat = ($j >= 0 && ($fegyelmi > 0 || $megerdemeltFokozat>$aktFokozat)); + # Nem, az utolsó feltétel nem áll, mert ha nem adunk minden igazolatlan után + # valamilyen fegyelmit, akkor maradhat "megtorlatlan" igazolatlan! + $_talalat = ($j >= 0 && ($megerdemeltFokozat>$aktFokozat)); + + if (($_talalat)&& $_TANEV['statusz']=='aktív') $class = 'fokozat'; + else $class = 'ufokozat'; + echo ''."\n"; + ## ----- + } + + echo ''; + } + # + echo ''."\n"; + + echo '
    '; + formBegin(); + echo ' '; + echo ' '; + echo ' '; + $SEL = array($ADAT['nevsor'] => ' selected="selected" '); + echo ''; + formEnd(); + echo ''._HOZOTT.''._LEZART.''._IGAZOLHATO.''._OSSZES.''._KRETA.''._FEGYELMI_UTANI.''._FEGYELMI_FOKOZATOK.'
    '._HIANYZAS.''._HIANYZAS.''._KESES.''._HIANYZAS.''._KESES.''._HIANYZAS.''._KESES.''._FSZ.''._FM.''._EH.''._HIANYZAS.''._KESES.''._H.''._K.''._FSZ.''._O.''._AKTUALIS_FOKOZAT.''._LEGMAGASABB_FOKOZAT.''._BEIRANDO_FOKOZAT.'
    '._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.'
    '._OSSZES.''.$ADAT['stat']['összes']['hiányzás']['igazolatlan'].''.$ADAT['stat']['összes']['hiányzás']['igazolt'].''.(intval($ADAT['stat']['összes']['hiányzás']['igazolt'])+intval($ADAT['stat']['összes']['hiányzás']['igazolatlan'])).''.$ADAT['stat']['összes']['késés']['igazolatlan'].''.$ADAT['stat']['összes']['késés']['igazolt'].''.(intval($ADAT['stat']['összes']['késés']['igazolt'])+intval($ADAT['stat']['összes']['késés']['igazolatlan'])).''.$ADAT['stat']['összes']['felszerelés hiány']['igazolatlan'].''.$ADAT['stat']['összes']['felmentés']['igazolatlan'].''.$ADAT['stat']['összes']['egyenruha hiány']['igazolatlan'].''.$ADAT['stat']['összes']['fegyelmi']['hiányzás']['igazolatlan'].''.$ADAT['stat']['összes']['fegyelmi']['késés']['igazolatlan'].''.$ADAT['stat']['összes']['fegyelmi']['felszerelés hiány']['igazolatlan'].''.$ADAT['stat']['összes']['összes igazolatlan'].'
    '; + echo _HIANYZASMENTESNAPOKSZAMA.': '.$ADAT['hianyzasmentesNapokSzama']; + echo '
    '.($i++).''; + echo ''; + echo $dAdat['diakNev']; + echo ''; + echo ''.$ADAT['hozottHianyzas'][$diakId]['igazolatlan']['db'].''.$ADAT['hozottHianyzas'][$diakId]['igazolt']['db'].''.$osszeg.''.$lhigazolatlan.''.$lhigazolt.''.$osszeg.''.$lkigazolatlan.''.$lkigazolt.''.$osszeg.''.$ihigazolatlan.''.$ihigazolt.''.$osszeg.''.$ikigazolatlan.''.$ikigazolt.''.$osszeg.''.$ohigazolatlan.''.$ohigazolt.''.$osszeg.''.$okigazolatlan.''.$okigazolt.''.$osszeg.''.$ofelszereles.''.$ofelmentes.''.$oegyenruha.''.$_KRETAADAT['hiányzás']['igazolatlan']['db'].''.$_KRETAADAT['hiányzás']['igazolt']['db'].''.(($_KRETAADAT['hiányzás']['igazolatlan']['db'])+($_KRETAADAT['hiányzás']['igazolt']['db'])).''; + _kiir(intval($_KRETAADAT['késés']['igazolatlan']['db']).'/'.intval($_KRETAADAT['késés']['igazolatlan']['perc'])."'"); + echo ''; + _kiir(intval($_KRETAADAT['késés']['igazolt']['db']).'/'.intval($_KRETAADAT['késés']['igazolt']['perc'])."'"); + echo ''; + if (($_KRETAADAT['késés']['igazolatlan']['db'])+($_KRETAADAT['késés']['igazolt']['db']) >0) { + echo (($_KRETAADAT['késés']['igazolatlan']['db'])+($_KRETAADAT['késés']['igazolt']['db'])); + echo '/'; + echo (($_KRETAADAT['késés']['igazolatlan']['perc'])+($_KRETAADAT['késés']['igazolt']['perc'])); + echo '\''; + } + echo ''.$fih.''.$fik.''.$ff.''.$fe.''.$igazolatlanok_szama.''; + echo ''.$ADAT['fokozat2bejegyzesTipus'][$aktFokozat]['bejegyzesTipusNev']; + echo ''; + echo ''; + echo ''.$ADAT['fokozat2bejegyzesTipus'][$maxFokozat]['bejegyzesTipusNev']; + echo ''; + echo ''; + ## FORM + if ( + ($_talalat) && $_TANEV['statusz']=='aktív' + && in_array($dAdat['aktualisStatusz'], array('jogviszonyban van','vendégtanuló')) + ) { + + formBegin(); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + if ($ADAT['referenciaDt'] == '') echo ''; + else echo ''; + echo ''; + echo ''; + formEnd(); + } elseif ($fegyelmi > 0) { + echo _FEGYELMIVEL_NEM_SULYTOTT_LEZART_IGAZOLATLANOK.': '.$fegyelmi; + } + echo '
    '; + + } + + function _kiir($val) { + if ($val>0) echo $val; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/osztalyNap.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/osztalyNap.phtml new file mode 100644 index 00000000..719a6c96 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hianyzas/osztalyNap.phtml @@ -0,0 +1,112 @@ +'."\n"; + + echo ''; + echo ''._DIAK.''._KESES.''._HIANYZAS.''._FELSZERELES.''._FELMENTES.''._EGYENRUHA.''; + echo ''."\n"; + + echo ''; + echo ''.''."\n"; + echo ''."\n"; + echo ''; + foreach($ADAT['diakok'] as $diakId=>$X) { + $D = $ADAT['diakHianyzott'][$diakId]; + if (is_array($D)) { + echo ''; + echo ''; + echo ''; + echo $ADAT['diakok'][$diakId]['diakNev']; + echo ''; + echo ''; + echo ''._hWalk($D['késés']['igazolatlan']).''; + echo ''._hWalk($D['késés']['igazolt']).''; + echo ''._hWalk($D['hiányzás']['igazolatlan']).''; + echo ''._hWalk($D['hiányzás']['igazolt']).''; + echo ''._hWalk($D['felszerelés hiány']['igazolatlan']).''; + echo ''._hWalk($D['felmentés']['igazolatlan']).''; + echo ''._hWalk($D['egyenruha hiány']['igazolatlan']).''; + echo ''."\n"; + } + } + echo ''."\n\n"; + echo ''; + } + + function _hWalk($X) { + if (is_array($X)) + foreach ($X as $tankorTipus => $V) { + $r[] = ''.$V['db'].''; + if ($V['db']!='') $db += $V['db']; + } + return $db.((count($r)>0) ? ' ('.implode('+', $r).')':''); + } + + function putOsztalyHianyzas($ADAT) { + + putOsztalyHianyzok($ADAT); + + echo ''."\n"; + + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''; + + foreach ($ADAT['hianyzas'] as $ora => $oraAdat) { + + // Az óra cella magasságának (rowspan) megállapítása + $row = 0; foreach ($oraAdat as $tankorId => $hAdat) $row += count($hAdat); + // ezzel jelezzük, hogy most nem kell tr a tankör cellája előtt + $oraElso = true; + // Az óra sorának kezdete + echo ''; + echo ''; + + foreach ($oraAdat as $tankorId => $hAdat) { + + if (!$oraElso) echo ''; + $oraElso = false; + echo ''; + + $diakIndex = array(); $elso = true; + for ($i = 0; $i < count($hAdat); $i++) $diakIndex[ $hAdat[$i]['diakId'] ][] = $i; + foreach ($ADAT['diakok'] as $diakId => $dAdat) { +// if (isset($diakIndex[$diakId])) { + if (is_array($diakIndex[$diakId])) foreach ($diakIndex[$diakId] as $i) { +// $i = $diakIndex[$diakId]; + if (!$elso) echo ''."\n"; + $elso = false; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + } + } + } + } + echo ''; + echo '
    '._ORA.''._TANKOR.''._DIAK.''._TIPUS.'
    '.$ADAT['dt'].'
    '.$ora.'.
    '; + echo ''; + echo $ADAT['tankorok'][ $hAdat[0]['tankorId'] ][0]['tankorNev'].' ('.$hAdat[0]['tankorId'].')'; + echo ''; + echo '
    '; + echo ''; + echo $ADAT['diakok'][ $hAdat[$i]['diakId'] ]['diakNev'].' ('.$hAdat[$i]['diakId'].')'; + echo ''."\n"; + echo ''.''; + if ($hAdat[$i]['hTipus'] != 'felmentés' && $hAdat[$i]['hTipus'] != 'felszerelés hiány' && $hAdat[$i]['hTipus'] != 'egyenruha hiány') echo $hAdat[$i]['statusz'].' '; + echo $hAdat[$i]['hTipus']; + if ($hAdat[$i]['statusz'] == 'igazolatlan' && $hAdat[$i]['hTipus'] == 'késés' && $hAdat[$i]['perc'] != 0) + echo ' ('.$hAdat[$i]['perc'].' '._PERC.')'; + + echo '
    '."\n"; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hibabejelento/admin.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hibabejelento/admin.phtml new file mode 100644 index 00000000..1672bcb7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hibabejelento/admin.phtml @@ -0,0 +1,150 @@ +'; + for ($i = 0; $i < count($ADAT['kerelmek']); $i++) { + $_K = $ADAT['kerelmek'][$i]; + $kerelemId = $_K['kerelemId']; + $_napja = round(((strtotime(date('Y-m-d H:i:s')) - strtotime($_K['rogzitesDt']))/(24*60*60))); + + if ($ADAT['kerelmek'][$i]['jovahagyasDt'] != '') $class = ' class="jovahagyott" '; + else $class = ''; + + echo '
  • '; + //echo '
    '.$i.'
    '; + echo '
    '; + echo ''; + echo superdate($ADAT['kerelmek'][$i]['rogzitesDt']); + echo ' – '; + echo $ADAT['kerelmek'][$i]['userAccount']; + if ($ADAT['kerelmek'][$i]['kategoria'] !='') + echo ''.$ADAT['kerelmek'][$i]['kategoria'].''; + // if ($_K['telephelyId'] !='') + // echo ''.$_K['telephelyId'].''; + if ($_napja>0) echo ' – '.$_napja.' napja'; + echo ''; + + echo '
    '; + echo nl2br(supertext($ADAT['kerelmek'][$i]['szoveg'])); + echo '
    '; + + echo '
    '; + + if (count($ADAT['valaszok'][$kerelemId])>0) { + $_V = $ADAT['valaszok'][$kerelemId]; + echo ''; + for ($j=0; $j'; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '.superdate($_V[$j]['valaszDt']).''.$_V[$j]['userAccount'].''.supertext($_V[$j]['valasz']).'
    '; + } + + formBegin(); + echo ''; + echo ''; + echo ''; + + echo '
    '; + + + echo ''; + if (count($KERELEM_TAG)>0) { + echo ''; + } + echo ''; + + if (count($TELEPHELY)>=1) { + echo ''; + echo ''; + echo ''."\n"; + } + + echo ''; + + if (__VEZETOSEG || __NAPLOADMIN) { + + if ($ADAT['kerelmek'][$i]['jovahagyasDt'] != '') + echo ''; + else + echo ''; + echo ''; + + } else { + + if ($ADAT['kerelmek'][$i]['jovahagyasDt'] != '') echo ''.$ADAT['kerelmek'][$i]['jovahagyasDt'].''; + if ($ADAT['kerelmek'][$i]['lezarasDt'] != '') echo ''.superdate($ADAT['kerelmek'][$i]['lezarasDt']).''; + + +/* echo '
    '; + echo nl2br(supertext($ADAT['kerelmek'][$i]['valasz'])); + echo '
    '; + + echo '
    '; + echo ''.$ADAT['kerelmek'][$i]['rogzitesDt'].''; + echo '
    '; +*/ + } + + + formEnd(); + + echo '
  • '; + + } + echo ''; + + } + + function putHibabejelento($telephelyId) { + + global $KERELEM_TAG; + + formBegin(array('class'=>'hiba')); + echo ''; + echo ''; + + echo '

    '._KERELEM.'

    '; + echo ''; + + echo '
    '; + + if (count($KERELEM_TAG)>0) { + echo ''; + } + echo ''; + + formEnd(); + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hibabejelento/hibabejelento.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hibabejelento/hibabejelento.phtml new file mode 100644 index 00000000..08bec2a3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hibabejelento/hibabejelento.phtml @@ -0,0 +1,32 @@ +'hiba')); + echo ''; + echo ''; + + echo '

    '._ESZREVETEL.'

    '; + echo ''; + + echo '
    '; + + if (count($KERELEM_TAG)>0) { + echo ''; + } + echo ''; + + formEnd(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/cronFutar.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/cronFutar.phtml new file mode 100644 index 00000000..8dc73ed5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/cronFutar.phtml @@ -0,0 +1,265 @@ +1) { // csak ha nem egyértelmű + $RETURN_STR .= '
    '; + // putFace($ADAT['hirnokFolyam'][$h]['hirnokFolyamAdatok']['id'],$ADAT['hirnokFolyam'][$h]['hirnokFolyamAdatok']['tipus'],30); + $RETURN_STR .= ''.$ADAT['hirnokFolyam'][$h]['hirnokFolyamAdatok']['cn'].''; + $RETURN_STR .= '
    '; + } + foreach ($ADAT['hirnokFolyam'][$h]['hirnokFolyamUzenetek'] as $stamp => $DA) { + for ($i=0; $i'; + $RETURN_STR .= '
    '; + if (function_exists('generateFutarBadge_'.$D['hirnokTipus'])) $RETURN_STR .= call_user_func('generateFutarBadge_'.$D['hirnokTipus'],$D); + $RETURN_STR .= '
    '; + $RETURN_STR .= '
    '; + if (function_exists('generateFutarDetail_'.$D['hirnokTipus'])) $RETURN_STR .= call_user_func('generateFutarDetail_'.$D['hirnokTipus'],$D); + else $RETURN_STR .= (date('Y.m.d. H:i:s',$stamp)); + $RETURN_STR .= '
    '; + $RETURN_STR .= '
    '; + if (function_exists('generateFutar_'.$D['hirnokTipus'])) $RETURN_STR .= call_user_func('generateFutar_'.$D['hirnokTipus'],$D); + // else dump($D); + $RETURN_STR .= '
    '; + $RETURN_STR .= '
    '; + if (function_exists('generateFutarRight_'.$D['hirnokTipus'])) $RETURN_STR .= call_user_func('generateFutarRight_'.$D['hirnokTipus'],$D); + $RETURN_STR .= '
    '; +/* $RETURN_STR .= '
    '; + if (function_exists('generateFutarFooter_'.$D['hirnokTipus'])) $RETURN_STR .= call_user_func('generateFutarFooter_'.$D['hirnokTipus'],$D); + $RETURN_STR .= '
    '; +*/ + $RETURN_STR .= ''; + } + } + } + // vege $RETURN_STR .= ''; + return str_replace('',''."\n",$RETURN_STR); + } + function generateFutarRight_uzeno($D) { + return $RETURN_STR; + } + function generateFutarFooter_uzeno($D) { + return $RETURN_STR; + } + function generateFutar_idoszak($D) { + $RETURN_STR .= 'Aktív '.$D['idoszakAdat']['tipus'].' időszak: '.$D['idoszakAdat']['tolDt'].' – '.$D['idoszakAdat']['igDt']; + return $RETURN_STR; + } + + function generateFutarBadge_jegy($D) { + // return 'face'; + } + + function generateFutar_haladasiOra($D) { + global $aHetNapjai; + $nap = kisbetus($aHetNapjai[date('w',strtotime($D['oraAdat']['dt']))-1]); + $RETURN_STR .= 'A '.$D['oraAdat']['tankorCn'].' tankör '.$D['oraAdat']['dt'].' '.$nap.'i '.$D['oraAdat']['ora'].'. óra státusza megváltozott. '; + if ($D['oraAdat']['teremId']>0) $RETURN_STR .= 'Terme: '.$D['oraAdat']['teremLeiras'].' ('.$D['oraAdat']['teremId'].') '; + $RETURN_STR .= 'Új típusa: '.$D['oraAdat']['tipus'].'! '; + if ($D['oraAdat']['ki']>0) $RETURN_STR .= '('.$D['oraAdat']['kiCn'].')'; + return $RETURN_STR; + } + + function generateFutarDetail_uzeno($D) { + $IMG = array( // jobb lenne valami shared helyen + 'diak' => '', + 'szulo' => '', + 'tanar' => '', + 'munkakozosseg' => '', + 'tankor' => '', + 'tankorSzulo' => '', + 'osztaly' => '', + 'osztalySzulo' => '', + 'osztalyTanar' => '', + ); + $TIPUS_STR = array( + 'diak' => 'diák', + 'szulo' => 'szülő', + 'tanar' => 'tanár', + 'munkakozosseg' => 'munkaközösség tagjai', + 'tankor' => 'tankör diákjai és tanára', + 'tankorSzulo' => 'tankörbe járók szülei', + 'osztaly' => 'osztály diákjai és osztályfőnökei', + 'osztalySzulo' => 'osztályba járók szülei', + 'osztalyTanar' => 'osztályban tanítók', + ); + $_szalId = $D['uzenoAdat']['feladoId'].'_'.$D['uzenoAdat']['feladoTipus'].'_'.$D['uzenoAdat']['cimzettId'].'_'.$D['uzenoAdat']['cimzettTipus']; + $_link1 = href('index.php?page=naplo&sub=uzeno&f=uzeno&feladoId='.$D['uzenoAdat']['feladoId'].'&feladoTipus='.$D['uzenoAdat']['feladoTipus']); + $_link2 = href('index.php?page=naplo&sub=uzeno&f=uzeno&cimzettId='.$D['uzenoAdat']['cimzettId'].'&feladoTipus='.$D['uzenoAdat']['cimzettTipus']); + $RETURN_STR .= ''; + if ($D['uzenoAdat']['feladoId']==0) $RETURN_STR .= 'Adminisztrátor'; + else $RETURN_STR .= $D['feladoNev']; + $RETURN_STR .= ''; + //TESZT $RETURN_STR .= ''; + if ($D['cimzettNev']!='') $RETURN_STR .= '
    '.$D['cimzettNev'].''; + $RETURN_STR .= '
    '; + $RETURN_STR .= ''; + $RETURN_STR .= superdate(date('Y-m-d H:i:s',strtotime($D['uzenoAdat']['dt']))); + $RETURN_STR .= '·'; + if ($D['uzenoAdat']['cimzettId']==0) $RETURN_STR .= ''; + else $RETURN_STR .= $IMG[$D['uzenoAdat']['cimzettTipus']]; + $RETURN_STR .= '·'; + if ($D['uzenoAdat']['cimzettId']==0) $RETURN_STR .= 'minden '; + $RETURN_STR .= $TIPUS_STR[$D['uzenoAdat']['cimzettTipus']]; + $RETURN_STR .= ''; + return $RETURN_STR; + + } + + function generateFutar_zaroJegy($D) { + global $KOVETELMENY; + + $RETURN_STR .= ucfirst($D['targyAdat']['targyNev']); + $RETURN_STR .= ' tárgyból '; + + $RETURN_STR .= $D['zaroJegyAdat']['evfolyamJel'].'. évfolyam '; + $RETURN_STR .= ''.$D['zaroJegyAdat']['felev'].'. félévére '; + + $RETURN_STR .= ''.($KOVETELMENY[$D['zaroJegyAdat']['jegyTipus']][$D['zaroJegyAdat']['jegy']]['hivatalos']).''; + $RETURN_STR .= ' ('.$KOVETELMENY[$D['zaroJegyAdat']['jegyTipus']][$D['zaroJegyAdat']['jegy']]['rovid'].') '; + $RETURN_STR .= $D['zaroJegyAdat']['jegyTipus']; + $RETURN_STR .= ' típusú osztályzat került beírásra / módosult a bizonyítványban.'; + + + if (is_array($D['oraAdat'])) { + $RETURN_STR .= 'Az óra adatai: '.$D['oraAdat']['tankorNev'].' '. + $D['oraAdat']['kiCn'].', '. + $D['oraAdat']['leiras'].', '. + $D['oraAdat']['dt'].' '. + $D['oraAdat']['ora'].'. óra.'; + } + + // dump($D); + return $RETURN_STR; + } + function generateFutar_jegy($D) { + global $KOVETELMENY; + + if ($D['jegyAdat']['dt'] != date('Y-m-d',strtotime($D['jegyAdat']['modositasDt']))) { + + $str[] = 'Jegymódosítás! '; + $str[] = ucfirst($D['targyAdat']['targyNev']); + $str[] = 'tárgyból'; + + $str[] = ''.($KOVETELMENY[$D['jegyAdat']['jegyTipus']][$D['jegyAdat']['jegy']]['hivatalos']).''; + $str[] = '('.$KOVETELMENY[$D['jegyAdat']['jegyTipus']][$D['jegyAdat']['jegy']]['rovid'].') '; + $str[] = $D['jegyAdat']['jegyTipus']; + $str[] = 'típusú értékelésre módosult a '.$D['jegyAdat']['dt'].'-n kelt eredeti bejegyzés.'; + } else { + $str[] = ucfirst($D['targyAdat']['targyNev']); + $str[] = 'tárgyból'; + + $str[] = ''.($KOVETELMENY[$D['jegyAdat']['jegyTipus']][$D['jegyAdat']['jegy']]['hivatalos']).''; + $str[] = '(röviden: '.$KOVETELMENY[$D['jegyAdat']['jegyTipus']][$D['jegyAdat']['jegy']]['rovid'].'),'; + $str[] = $D['jegyAdat']['jegyTipus']; + $str[] = 'típusú értékelés került beírásra az osztályozó naplóba.'; + } + + if (is_array($D['oraAdat'])) { + $str[] = 'Az óra adatai: '.$D['oraAdat']['tankorNev'].' '. + $D['oraAdat']['kiCn'].', '. + $D['oraAdat']['leiras'].', '. + $D['oraAdat']['dt'].' '. + $D['oraAdat']['ora'].'. óra.'; + } + + // $RETURN_STR .= $D['jegyAdat']['jegy']; + // $RETURN_STR .= $D['jegyAdat']['jegyTipus']; + $RETURN_STR .= implode(' ',$str); + + // dump($D); + return $RETURN_STR; + } + + function generateFutar_dolgozat($D) { + + if (strtotime($D['dolgozatAdat']['tervezettDt'])>strtotime(date('Y-m-d H:i:s'))) { + $RETURN_STR .= 'Új dolgozat várható! '; + } else { + $RETURN_STR .= 'Új dolgozat került rögzítésre. '; + } + $RETURN_STR .= 'A bejelentés ideje: '; + $RETURN_STR .= $D['dolgozatAdat']['bejelentesDt'].', tervezett időpontja: '; + $RETURN_STR .= $D['dolgozatAdat']['tervezettDt'].'. '; + + $RETURN_STR .= 'A dolgozat megnevezése: '.$D['dolgozatAdat']['dolgozatNev'].'. '; + + $RETURN_STR .= 'Érintett tankör'; + if (count($D['dolgozatAdat']['tankor'])>1) $RETURN_STR .= 'ök'; + $RETURN_STR .= ': '; + for($i=0; $i'; + } + return $RETURN_STR; + } + + function generateFutar_haladasiBeiratlan($D) { + + if ($D['db']==0) { + $RETURN_STR .= 'Köszönjük, hogy minden órádat beírtad!'; + } else { + $RETURN_STR .= 'Beíratlan órák száma: '.$D['db']; + } + return $RETURN_STR; + } + function generateFutar_uzeno($D) { + if ($D['uzenoAdat']['flag']==1) $RETURN_STR .= '– a szöveget a kérésedre elrejtettük –'; + else $RETURN_STR .= nl2br(makelinksclickable((supertext($D['uzenoAdat']['txt'])))); // egyelőre nem tudunk bővebbet, mert a backend nem szolgáltat infót +/* $RETURN_STR .= '
    '; + $_szalId = $D['uzenoAdat']['feladoId'].'_'.$D['uzenoAdat']['feladoTipus'].'_'.$D['uzenoAdat']['cimzettId'].'_'.$D['uzenoAdat']['cimzettTipus']; + $RETURN_STR .= ''; + $RETURN_STR .= ''; + $RETURN_STR .= ''; + + if ($D['uzenoAdat']['flag']!=1) { + $RETURN_STR .= ''; + } else { + $RETURN_STR .= ''; + } + if (__UZENOADMIN===true) { + $RETURN_STR .= ''; + } + $RETURN_STR .= '
    '; +*/ + return $RETURN_STR; + + } + + function generateFutar_bejegyzes($D) { + $RETURN_STR .= 'Új '.ucfirst($D['bejegyzesAdat']['bejegyzesTipusNev']).' került rögzítésre. '; + if ($D['bejegyzesAdat']['szoveg'] !='') $RETURN_STR .= ''.$D['bejegyzesAdat']['szoveg'].''; + $RETURN_STR .= ' - '.$D['tanarAdat']['tanarNev']; + return $RETURN_STR; + } + + function generateFutar_hianyzas($D) { + global $aHetNapjai; + $nap = kisbetus($aHetNapjai[date('w',strtotime($D['hianyzasAdat']['dt']))-1]); + $RETURN_STR .= $D['hianyzasAdat']['dt'].' '.$nap.' '.$D['hianyzasAdat']['ora'].'. órára ('; + $RETURN_STR .= $D['oraAdat']['tankorNev'].', '.$D['oraAdat']['kiCn']; + $RETURN_STR .= ') '; + if (in_array($D['hianyzasAdat']['tipus'],array('késés','hiányzás'))) $RETURN_STR .= $D['hianyzasAdat']['statusz'].' '; + if ($D['hianyzasAdat']['tipus']=='késés' && $D['hianyzasAdat']['perc']>0) $RETURN_STR .= ' '.$D['hianyzasAdat']['perc'].' perc '; + $RETURN_STR .= ''.$D['hianyzasAdat']['tipus'].' került rögzítésre.'; + return $RETURN_STR; + } + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/hirnok.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/hirnok.phtml new file mode 100644 index 00000000..0ab0693c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/hirnok.phtml @@ -0,0 +1,320 @@ +'; + + for ($h=0; $h=1) { + echo '
    '; + putFace($ADAT['hirnokFolyam'][$h]['hirnokFolyamAdatok']['id'],$ADAT['hirnokFolyam'][$h]['hirnokFolyamAdatok']['tipus'],30); + echo ''.$ADAT['hirnokFolyam'][$h]['hirnokFolyamAdatok']['cn'].''; + echo '
    '; + } + foreach ($ADAT['hirnokFolyam'][$h]['hirnokFolyamUzenetek'] as $stamp => $DA) { + for ($i=0; $i'; + echo '
    '; + if (function_exists('putHirnokBadge_'.$D['hirnokTipus'])) call_user_func('putHirnokBadge_'.$D['hirnokTipus'],$D); + echo '
    '; + echo '
    '; + if (function_exists('putHirnokDetail_'.$D['hirnokTipus'])) call_user_func('putHirnokDetail_'.$D['hirnokTipus'],$D); + else echo superdate(date('Y-m-d H:i:s',$stamp)); + echo '
    '; + echo '
    '; + if (function_exists('putHirnok_'.$D['hirnokTipus'])) call_user_func('putHirnok_'.$D['hirnokTipus'],$D); + // else dump($D); + echo '
    '; + echo '
    '; + if (function_exists('putHirnokRight_'.$D['hirnokTipus'])) call_user_func('putHirnokRight_'.$D['hirnokTipus'],$D); + echo '
    '; +/* echo '
    '; + if (function_exists('putHirnokFooter_'.$D['hirnokTipus'])) call_user_func('putHirnokFooter_'.$D['hirnokTipus'],$D); + echo '
    '; +*/ + echo ''; + } + } + } + echo ''; + + } + function putHirnokBadge_bejegyzes($D) { + // hint by rpetya (peter.rakolcza@gmail.com) + // $ICO = array('dicséret'=>'icon-smiley-alt','fegyelmi'=>'icon-exclamation-sign','üzenet'=>'icon-envelope'); + $ICON = array('dicséret'=>'mood','fegyelmi'=>'mood_bad','üzenet'=>'mail'); + $RGB = array('dicséret'=>'lightgreen','fegyelmi'=>'#e91e63','üzenet'=>'#9c27b0'); + // echo ''; + echo ''.$ICON[$D['bejegyzesAdat']['tipus']].''; + } + function putHirnokBadge_idoszak($D) { + echo ''; + } + function putHirnokBadge_haladasiBeiratlan($D) { + + if ($D['db']!=0) + echo ''; + else + echo ''; + + } + function putHirnokBadge_dolgozat($D) { + echo ''; + //echo ''; + echo 'lightbulb_outline'; + echo ''; + } + function putHirnokBadge_jegy($D) { + echo ''; + // echo ''; + if (in_array($D['jegyAdat']['jegy'],array(1,2,3,4,5))) echo 'looks_'.intval(($D['jegyAdat']['jegy'])).''; + else echo 'mode_edit'; + echo ''; + } + function putHirnokBadge_haladasiOra($D) { + $ICONS = array('helyettesítés'=>'cached', 'elmarad'=>'grid_off', 'elmarad máskor'=>'call_split','felügyelet'=>'border_clear', 'normál'=>'border_all', 'normál máskor'=>'call_merge','összevonás'=>'group_add'); + echo ''; + // echo ''; + echo ''.$ICONS[$D['oraAdat']['tipus']].''; // grid_off + echo ''; + } + function putHirnokBadge_uzeno($D) { + $_szalId = $D['uzenoAdat']['feladoId'].'_'.$D['uzenoAdat']['feladoTipus'].'_'.$D['uzenoAdat']['cimzettId'].'_'.$D['uzenoAdat']['cimzettTipus']; + echo ''; + // putFace($D['uzenoAdat']['cimzettId'],$D['uzenoAdat']['cimzettTipus'],30); + // echo ''; + echo 'mail'; + echo ''; + //putFace($D['uzenoAdat']['feladoId'],$D['uzenoAdat']['feladoTipus'],30); + } + function putHirnokRight_uzeno($D) { + putFace($D['uzenoAdat']['feladoId'],$D['uzenoAdat']['feladoTipus'],30); + } + function putHirnokFooter_uzeno($D) { + echo ''; + } + + function putHirnokBadge_zaroJegy($D) { + echo ''; + // echo ''; + echo 'border_color'; + echo ''; + } + + function putHirnok_idoszak($D) { + echo 'Aktív '.$D['idoszakAdat']['tipus'].' időszak: '.$D['idoszakAdat']['tolDt'].' – '.$D['idoszakAdat']['igDt']; + } + + function putHirnokBadge_hianyzas($D) { + $ICON = array('késés'=>'timer','felmentés'=>'accessible','felszerelés hiány'=>'accessibility', + 'hiányzás'=>'location_off'); // location_off, grid_off, blur_off + echo ''; + // echo ''; + echo ''.$ICON[$D['hianyzasAdat']['tipus']].''; + echo ''; + ; + } + + function putHirnok_hianyzas($D) { + global $aHetNapjai; + $nap = kisbetus($aHetNapjai[date('w',strtotime($D['hianyzasAdat']['dt']))-1]); + echo $D['hianyzasAdat']['dt'].' '.$nap.' '.$D['hianyzasAdat']['ora'].'. órára ('; + echo $D['oraAdat']['tankorNev'].', '.$D['oraAdat']['kiCn']; + echo ') '; + if (in_array($D['hianyzasAdat']['tipus'],array('késés','hiányzás'))) echo $D['hianyzasAdat']['statusz'].' '; + if ($D['hianyzasAdat']['tipus']=='késés' && $D['hianyzasAdat']['perc']>0) echo ' '.$D['hianyzasAdat']['perc'].' perc '; + echo ''.$D['hianyzasAdat']['tipus'].' került rögzítésre.'; + } + + function putHirnok_haladasiOra($D) { + global $aHetNapjai; + // if ($D['oraAdat']['dt']=='1970-01-01 01:00:00') return false; + $nap = kisbetus($aHetNapjai[date('w',strtotime($D['oraAdat']['dt']))-1]); + echo 'A '.$D['oraAdat']['tankorCn'].' tankör '.$D['oraAdat']['dt'].' '.$nap.'i '.$D['oraAdat']['ora'].'. óra státusza megváltozott. '; + if ($D['oraAdat']['teremId']>0) echo 'Terme: '.$D['oraAdat']['teremLeiras'].' ('.$D['oraAdat']['teremId'].') '; + echo 'Új típusa: '.$D['oraAdat']['tipus'].'! '; + if ($D['oraAdat']['ki']>0) echo '('.$D['oraAdat']['kiCn'].')'; + } + + function putHirnokDetail_uzeno($D) { + $IMG = array( // jobb lenne valami shared helyen + 'diak' => '', + 'szulo' => '', + 'tanar' => '', + 'munkakozosseg' => '', + 'tankor' => '', + 'tankorSzulo' => '', + 'osztaly' => '', + 'osztalySzulo' => '', + 'osztalyTanar' => '', + ); + $TIPUS_STR = array( + 'diak' => 'diák', + 'szulo' => 'szülő', + 'tanar' => 'tanár', + 'munkakozosseg' => 'munkaközösség tagjai', + 'tankor' => 'tankör diákjai és tanára', + 'tankorSzulo' => 'tankörbe járók szülei', + 'osztaly' => 'osztály diákjai és osztályfőnökei', + 'osztalySzulo' => 'osztályba járók szülei', + 'osztalyTanar' => 'osztályban tanítók', + ); + $_szalId = $D['uzenoAdat']['feladoId'].'_'.$D['uzenoAdat']['feladoTipus'].'_'.$D['uzenoAdat']['cimzettId'].'_'.$D['uzenoAdat']['cimzettTipus']; + $_link1 = href('index.php?page=naplo&sub=uzeno&f=uzeno&feladoId='.$D['uzenoAdat']['feladoId'].'&feladoTipus='.$D['uzenoAdat']['feladoTipus']); + $_link2 = href('index.php?page=naplo&sub=uzeno&f=uzeno&cimzettId='.$D['uzenoAdat']['cimzettId'].'&feladoTipus='.$D['uzenoAdat']['cimzettTipus']); + echo ''; + if ($D['uzenoAdat']['feladoId']==0) echo 'Adminisztrátor'; + else echo $D['feladoNev']; + echo ''; + //TESZT echo ''; + if ($D['cimzettNev']!='') echo '
    '.$D['cimzettNev'].''; + echo '
    '; + echo ''; + echo superdate(date('Y-m-d H:i:s',strtotime($D['uzenoAdat']['dt']))); + echo '·'; + if ($D['uzenoAdat']['cimzettId']==0) echo ''; + else echo $IMG[$D['uzenoAdat']['cimzettTipus']]; + echo '·'; + if ($D['uzenoAdat']['cimzettId']==0) echo 'minden '; + echo $TIPUS_STR[$D['uzenoAdat']['cimzettTipus']]; + echo ''; + + } + + function putHirnok_zaroJegy($D) { + global $KOVETELMENY; + + echo ucfirst($D['targyAdat']['targyNev']); + echo ' tárgyból '; + + echo $D['zaroJegyAdat']['evfolyamJel'].'. évfolyam '; + echo ''.$D['zaroJegyAdat']['felev'].'. félévére '; + + echo ''.($KOVETELMENY[$D['zaroJegyAdat']['jegyTipus']][$D['zaroJegyAdat']['jegy']]['hivatalos']).''; + echo ' ('.$KOVETELMENY[$D['zaroJegyAdat']['jegyTipus']][$D['zaroJegyAdat']['jegy']]['rovid'].') '; + echo $D['zaroJegyAdat']['jegyTipus']; + echo ' típusú osztályzat került beírásra / módosult a bizonyítványban.'; + + + if (is_array($D['oraAdat'])) { + echo 'Az óra adatai: '.$D['oraAdat']['tankorNev'].' '. + $D['oraAdat']['kiCn'].', '. + $D['oraAdat']['leiras'].', '. + $D['oraAdat']['dt'].' '. + $D['oraAdat']['ora'].'. óra.'; + } + + // dump($D); + } + function putHirnok_jegy($D) { + global $KOVETELMENY; + + if ($D['jegyAdat']['dt'] != date('Y-m-d',strtotime($D['jegyAdat']['modositasDt']))) { + + $str[] = 'Jegymódosítás! '; + $str[] = ucfirst($D['targyAdat']['targyNev']); + $str[] = 'tárgyból'; + + $str[] = ''.($KOVETELMENY[$D['jegyAdat']['jegyTipus']][$D['jegyAdat']['jegy']]['hivatalos']).''; + $str[] = '('.$KOVETELMENY[$D['jegyAdat']['jegyTipus']][$D['jegyAdat']['jegy']]['rovid'].') '; + $str[] = $D['jegyAdat']['jegyTipus']; + $str[] = 'típusú értékelésre módosult a '.$D['jegyAdat']['dt'].'-n kelt eredeti bejegyzés.'; + } else { + $str[] = ''.ucfirst($D['targyAdat']['targyNev']).''; + $str[] = 'tárgyból'; + + $str[] = ''.($KOVETELMENY[$D['jegyAdat']['jegyTipus']][$D['jegyAdat']['jegy']]['hivatalos']).''; + $str[] = '('.$KOVETELMENY[$D['jegyAdat']['jegyTipus']][$D['jegyAdat']['jegy']]['rovid'].'),'; + $str[] = $D['jegyAdat']['jegyTipus']; + $str[] = 'típusú értékelés került beírásra az osztályozó naplóba.'; + } + + if (is_array($D['oraAdat'])) { + $str[] = 'Az óra adatai: '.$D['oraAdat']['tankorNev'].' '. + $D['oraAdat']['kiCn'].', '. + $D['oraAdat']['leiras'].', '. + $D['oraAdat']['dt'].' '. + $D['oraAdat']['ora'].'. óra.'; + } + + // echo $D['jegyAdat']['jegy']; + // echo $D['jegyAdat']['jegyTipus']; + echo implode(' ',$str); + + // dump($D); + } + + function putHirnok_dolgozat($D) { + + if (strtotime($D['dolgozatAdat']['tervezettDt'])>strtotime(date('Y-m-d H:i:s'))) { + echo 'Új dolgozat várható! '; + } else { + echo 'Új dolgozat került rögzítésre. '; + } + echo 'A bejelentés ideje: '; + echo $D['dolgozatAdat']['bejelentesDt'].', tervezett időpontja: '; + echo $D['dolgozatAdat']['tervezettDt'].'. '; + + echo 'A dolgozat megnevezése: '.$D['dolgozatAdat']['dolgozatNev'].'. '; + + echo 'Érintett tankör'; + if (count($D['dolgozatAdat']['tankor'])>1) echo 'ök'; + echo ': '; + for($i=0; $i'; + } + } + + function putHirnok_haladasiBeiratlan($D) { + + if ($D['db']==0) { + echo 'Köszönjük, hogy minden órádat beírtad!'; + } else { + echo 'Beíratlan órák száma: '.$D['db']; + } + } + function putHirnok_uzeno($D) { + if ($D['uzenoAdat']['flag']==1) echo '– a szöveget a kérésedre elrejtettük –'; + else echo nl2br(makelinksclickable((supertext($D['uzenoAdat']['txt'])))); // egyelőre nem tudunk bővebbet, mert a backend nem szolgáltat infót + echo '
    '; + $_szalId = $D['uzenoAdat']['feladoId'].'_'.$D['uzenoAdat']['feladoTipus'].'_'.$D['uzenoAdat']['cimzettId'].'_'.$D['uzenoAdat']['cimzettTipus']; + echo ''; + echo ''; + echo ''; + if ($D['uzenoAdat']['flag']!=1) { + echo ''; + } else { + echo ''; + } + if (__UZENOADMIN===true) { + echo ''; + } + echo '
    '; + + } + + function putHirnok_bejegyzes($D) { + echo 'Új '.ucfirst($D['bejegyzesAdat']['bejegyzesTipusNev']).' került rögzítésre. '; + if ($D['bejegyzesAdat']['szoveg'] !='') echo ''.$D['bejegyzesAdat']['szoveg'].''; + if ($D['tanarAdat']['tanarNev']!='') echo ' - '.$D['tanarAdat']['tanarNev']; + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/hirnokFeliratkozas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/hirnokFeliratkozas.phtml new file mode 100644 index 00000000..ba5d6b69 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/hirnok/hirnokFeliratkozas.phtml @@ -0,0 +1,68 @@ +'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; +// foreach ($ADAT['hirnokFeliratkozas'] as $tipus => $HADAT) { + $HADAT = $ADAT['hirnokFeliratkozas']; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + } +// } + echo '
    -|+'; + echo ''; + echo 'utolsó email dátum
    '.$HADAT[$i]['naploId'].''.$HADAT[$i]['naploTipus'].''.$HADAT[$i]['userAccount'].''.$HADAT[$i]['policy'].''.$HADAT[$i]['email'].''.$HADAT[$i]['feliratkozasDt'].''.$HADAT[$i]['utolsoEmailDt'].''.$HADAT[$i]['megtekintesDt'].'
    '; + formEnd(); + } + + + function putHirnokFeliratkozas_user($ADAT) { + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + $HADAT = $ADAT['hirnokFeliratkozas']; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + } + echo '
    -|+utolsó email dátum
    '.$HADAT[$i]['email'].''.''.$HADAT[$i]['utolsoEmailDt'].''.$HADAT[$i]['megtekintesDt'].'
    '; + formEnd(); + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diak.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diak.phtml new file mode 100644 index 00000000..546d1a42 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diak.phtml @@ -0,0 +1,1038 @@ +'; + formBegin(array('class'=>'diak')); + echo '
    '._DIAK_ALAPADATAI.''."\n"; + echo '
    '; + putFace($ADAT['diakId'],'diak','100'); + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    Diák neve'.($ADAT['diakAdat']['diakNev']).'
    Oktatási:'.($ADAT['diakAdat']['oId']).'
    Születési hely:'.($ADAT['diakAdat']['szuletesiHely']).'
    Születési idő:'.($ADAT['diakAdat']['szuletesiIdo']).'
    Gondviselő neve:'.($ADAT['diakAdat']['gondviseloNev']).'
    Apa neve:'.($ADAT['diakAdat']['apaNev']).'
    Anya neve (születéskori):'.($ADAT['diakAdat']['anyaNev']).'
    '; + echo '
    '; + formEnd(); + echo ''; + } + + function putDiakAdatForm($ADAT, $Szulok, $tanev) { + + + $diakAdat = $ADAT['diakAdat']; + $DIAKJOGVISZONY = $ADAT['diakJogviszony']; + $OSZTALYOK = $ADAT['osztalyok']; + foreach ($diakAdat as $key => $val) { + if (is_string($diakAdat[$key])) $diakAdat[$key] = htmlspecialchars($val); + } + + $cssClass = array( + 'felvételt nyert' => 'felveteltNyert', + 'magántanuló' => 'magantanulo', + 'vendégtanuló' => 'vendegtanulo', + 'jogviszonya lezárva' => 'jogviszonyLezarva', + 'jogviszonya felfüggesztve' => 'jogviszonyFelfuggesztve', + ); + + $cssClass2 = (_MODOSITHAT===true) ? "":" readonly"; + + echo ''._DIAK_NYELVVIZSGA_ADATOK.''; + + echo '
    '; + for ($i=0; $i<=count($ADAT['diakKepzes'][$ADAT['diakId']]); $i++) { + $_DK = $ADAT['diakKepzes'][$ADAT['diakId']][$i]; + $_title .= $_DK['kepzesNev'].' '.$_DK['tolDt'].'-'.$_DK['igDt'].' '; + } + echo '
    '; + echo ''.$diakAdat['statusz'].''; + echo '
    '; + + $POSTTHESE = array('tanev'=>$tanev,'osztalyId'=>$ADAT['osztalyId']); + + putDiakAlapadatok($diakAdat, $POSTTHESE, $DIAKJOGVISZONY, $ADAT['diakKepzes'][$ADAT['diakId']]); + if (_MODOSITHAT===true) putDiakKepUpload($diakAdat['diakId'],$POSTTHESE); + putDiakSzuletesiAdatok($diakAdat, $POSTTHESE); + putDiakElerhetoseg($diakAdat, $POSTTHESE); + + putDiakSzulo($diakAdat, $Szulok, $POSTTHESE); + putDiakCim($diakAdat, 'lakhely', $POSTTHESE); + putDiakCim($diakAdat, 'tart', $POSTTHESE); + putDiakTanulmanyiAdatok($diakAdat, $POSTTHESE, $OSZTALYOK, $ADAT); + putDiakNyelvvizsga($ADAT, $POSTTHESE); + putDiakSzocialisAdatok($diakAdat, $POSTTHESE); + + echo '
    '; + } + + function _postThese($POSTTHESE) { + if (is_array($POSTTHESE)) foreach($POSTTHESE as $k => $v) { + echo ''."\n"; + } + } + + function putDiakKepUpload($diakId,$POSTTHESE) { + formBegin(array('enctype'=>"multipart/form-data",'class'=>'diak')); + echo '
    '._DIAK_FENYKEPE.''."\n"; + _postThese($POSTTHESE); + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '; + formEnd(); + } + + function putDiakAlapadatok($diakAdat, $POSTTHESE, $DIAKJOGVISZONY, $KEPZES = '') { + global $DIAKADAT_DISABLE; + if (!is_array($DIAKADAT_DISABLE)) $DIAKADAT_DISABLE = array(); + + if (_MODOSITHAT===true) + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak onChangeRequest')); + else + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak')); + + if (_KERELMEZHET===true) echo ''; + else echo ''; + + echo ''."\n"; + echo ''."\n"; + _postThese($POSTTHESE); + echo '
    '._DIAK_ALAPADATAI.''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + if ($diakAdat['nem'] == 'lány') echo ''; + elseif ($diakAdat['nem'] == 'fiú') echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + $_ro = (in_array('torzslapszam',$DIAKADAT_DISABLE))?'readonly="readonly" tabindex="-1"':''; + echo ''; + echo '
    '; + echo ''; + echo ''; + // echo $diakAdat['jogviszonyStatusz'].' ('.$diakAdat['jogviszonyDt'].')'; + echo '
      '; + for ($i=0; $i'.$DIAKJOGVISZONY[$i]['dt'].': '.$DIAKJOGVISZONY[$i]['statusz'].''; + } + echo '
    '; + + if (is_array($KEPZES) && count($KEPZES)>0) { + echo '
      '; + for ($i=0; $i'.$KEPZES[$i]['kepzesNev'].': '.$KEPZES[$i]['tolDt'].''; + } + echo '
    '; + } + + echo '
    '."\n"; + if ($diakAdat['gondozasiSzam']!='') + echo ' '."\n"; + echo ''."\n"; + if ($diakAdat['gondozasiSzam']!='') + echo $diakAdat['gondozasiSzam']; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + $_ro = (in_array('allampolgarsag',$DIAKADAT_DISABLE))?'readonly="readonly" tabindex="-1"':''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + $_ro = (in_array('adoazonosito',$DIAKADAT_DISABLE))?'readonly="readonly" tabindex="-1"':''; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + $_ro = (in_array('diakigazolvanyszam',$DIAKADAT_DISABLE))?'readonly="readonly" tabindex="-1"':''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + $_ro = (in_array('szemelyiigazolvanyszam',$DIAKADAT_DISABLE))?'readonly="readonly" tabindex="-1"':''; + echo ''; + echo ''."\n"; + echo ' '."\n"; + echo ''."\n"; + $_ro = (in_array('tartozkodasiokiratszam',$DIAKADAT_DISABLE))?'readonly="readonly" tabindex="-1"':''; + echo ''; + echo '
    '; + $_ro = (in_array('nekazonosito',$DIAKADAT_DISABLE))?'readonly="readonly" tabindex="-1"':''; + echo ''; + echo '
    '; + echo ''; + echo '
    '."\n"; + + if (_MODOSITHAT===true) echo ''; + + echo '
    '."\n"; + formEnd(); + } + + function putDiakSzuletesiAdatok($diakAdat, $POSTTHESE) { + if (_MODOSITHAT===true) + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak onChangeRequest')); + else + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak')); + echo ''."\n"; + echo ''."\n"; + _postThese($POSTTHESE); + echo '
    '._DIAK_SZULETESI_ADATAI.''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + + if (_MODOSITHAT===true) echo ''; + + echo '
    '."\n"; + formEnd(); + } + + function putDiakCim($diakAdat, $tipus = 'lakhely', $POSTTHESE) { + + global $ADAT; + + if (_MODOSITHAT===true) + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak onChangeRequest')); + else + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + _postThese($POSTTHESE); + echo '
    '.constant('_DIAK_CIM_'.strtoupper($tipus)).''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + + if (_MODOSITHAT===true) echo ''; + + echo '
    '."\n"; + formEnd(); + } + + function putDiakElerhetoseg($diakAdat, $POSTTHESE) { + if (_MODOSITHAT===true) + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak onChangeRequest')); + else + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak')); + echo ''."\n"; + echo ''."\n"; + _postThese($POSTTHESE); + echo '
    '._DIAK_ELERHETOSEG.''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '."\n"; + + if (_MODOSITHAT===true) echo ''; + + echo '
    '."\n"; + formEnd(); + } + + function putDiakTanulmanyiAdatok($diakAdat, $POSTTHESE, $OSZTALYOK, $ADAT) { + + $tanev = $POSTTHESE['tanev']; + + if (_MODOSITHAT===true) + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak onChangeRequest')); + else + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak')); + echo ''."\n"; + echo ''."\n"; + _postThese($POSTTHESE); + echo '
    '._DIAK_TANULMANYI_ADATOK.''."\n"; + echo ''."\n"; + + $voltOsztaly = $Osztaly = array(); +// $Be = $Ki = array(); + for ($i = 0; $i < count($diakAdat['osztaly']); $i++) { + $_osztalyId = ($diakAdat['osztaly'][$i]['osztalyId']); + $voltOsztalyIds[] = $_osztalyId; + $_O = $OSZTALYOK[$_osztalyId]; + $Osztaly[] = ''.$diakAdat['osztaly'][$i]['osztalyJel'].' ['.$_O['kezdoTanev'].'/'.$_O['vegzoTanev'].'.'.$_O['jel'].' '.$_O['leiras'].' ('.$_O['osztalyfonokNev'] + .')] '.$diakAdat['osztaly'][$i]['beDt'].' → '.($diakAdat['osztaly'][$i]['kiDt']=='' ?'-':$diakAdat['osztaly'][$i]['kiDt'] ).' '._NAPLOSORSZAM.': '.$diakAdat['osztaly'][$i]['naploSorszam'].''; +// $Be[] = $diakAdat['osztaly'][$i]['beDt']; +// $Ki[] = $diakAdat['osztaly'][$i]['kiDt']; + } + for ($i = 0; $i < count($diakAdat['mindenOsztaly']); $i++) { + $_osztalyId = $diakAdat['mindenOsztaly'][$i]['osztalyId']; + if (is_array($voltOsztalyIds) && !in_array($_osztalyId, $voltOsztalyIds)) { + $_O = $OSZTALYOK[$_osztalyId]; + + $VoltOsztaly[] = $diakAdat['mindenOsztaly'][$i]['osztalyJel'].' ['.$_O['kezdoTanev'].'/'.$_O['vegzoTanev'].'.'.$_O['jel'].' '.$_O['leiras'].' ('.$_O['osztalyfonokNev'] + .')] '.$diakAdat['mindenOsztaly'][$i]['beDt'].' → '.($diakAdat['mindenOsztaly'][$i]['kiDt']=='' ?'-':$diakAdat['mindenOsztaly'][$i]['kiDt'] ).' '._NAPLOSORSZAM.': '.$diakAdat['osztaly'][$i]['naploSorszam'].''; +// $Be[] = $diakAdat['mindenOsztaly'][$i]['beDt']; +// $Ki[] = $diakAdat['mindenOsztaly'][$i]['kiDt']; + } + } + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + +// echo ''."\n"; +// echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '; + echo _DIAK_OSZTALYA." (".$tanev.")\n"; + echo ''."\n"; + echo '
      '; + for ($i=0; $i'.$Osztaly[$i].''; + } + for ($i=0; $i'.$VoltOsztaly[$i].''; + } + echo '
    '; + echo '
    '; +// echo implode('
    ', $Be); +// echo '
    '."\n"; +// echo implode('
    ', $Ki); +// echo '
    '; + echo ''."\n"; + echo ''."\n"; +// echo ''; + echo $diakAdat['jogviszonyKezdete']; + echo ''; + echo ''."\n"; + echo ''."\n"; +// echo ''; + echo $diakAdat['jogviszonyVege']; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + + if (_MODOSITHAT===true) echo ''; + + echo '
    '."\n"; + formEnd(); + + } + + function putDiakSzocialisAdatok($diakAdat, $POSTTHESE) { + + global $ADAT; + + if (_MODOSITHAT===true) + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak onChangeRequest')); + else + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak')); + echo ''."\n"; + echo ''."\n"; + _postThese($POSTTHESE); + echo '
    '._DIAK_SZOCIALIS_ADATOK.''."\n"; + echo ''."\n"; + +// Ez mi???? +// $Osztaly = $Be = $Ki = array(); +// for ($i = 0; $i < count($diakAdat['osztaly']); $i++) { +// $Osztaly[] = $diakAdat['osztaly'][$i]['osztalyJel']; +// $Be[] = $diakAdat['osztaly'][$i]['beDt']; +// $Ki[] = $diakAdat['osztaly'][$i]['kiDt']; +// } + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + + echo ''."\n"; + + echo '
    '."\n"; + echo '
    '._DIAK_TORVENYES_KEPVISELO.''."\n"; + for ($i = 0; $i < count($ADAT['torvenyesKepviselo']); $i++) { + $CHK = (strpos($diakAdat['torvenyesKepviselo'], $ADAT['torvenyesKepviselo'][$i]) !== false)?' checked="checked" ':''; + echo ''."\n"; + echo '
    '."\n"; + } + echo '
    '."\n"; + echo '
    '."\n"; + echo '
    '._DIAK_SZOCIALIS_HELYZET.''."\n"; + for ($i = 0; $i < count($ADAT['szocialisHelyzet']); $i++) { + $CHK = (strpos($diakAdat['szocialisHelyzet'], $ADAT['szocialisHelyzet'][$i]) !== false)?' checked="checked" ':''; + echo ''."\n"; + echo '
    '."\n"; + } + echo '
    '."\n"; + echo '
    '; + echo ''."\n"; + echo '
    '._DIAK_FOGYATEKOSSAG.''."\n"; + for ($i = 0; $i < count($ADAT['fogyatekossag']); $i++) { + $CHK = (strpos($diakAdat['fogyatekossag'], $ADAT['fogyatekossag'][$i]) !== false)?' checked="checked" ':''; + echo ''."\n"; + echo '
    '."\n"; + } + echo '
    '."\n"; + echo 'SNI'; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + + if (_MODOSITHAT===true) echo ''; + + echo '
    '."\n"; + formEnd(); + + } + + + function putDiakSzulo($diakAdat, $Szulok, $POSTTHESE) { + + if (_MODOSITHAT===true) + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diakSzulo'), 'class'=>'diak onChangeRequest 0onSubmitUpdate')); + else + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diakSzulo'), 'class'=>'diak onSubmitUpdate')); + echo '
    '._DIAK_SZULO.''."\n"; + echo ''."\n"; + _postThese($POSTTHESE); + echo ''; + echo ''; + echo ''; + echo ''; + + echo '
    '."\n"; + formEnd(); + } + + + function putUjDiak($ADAT) { + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=intezmeny&f=diak'), 'class'=>'diak')); + echo ''."\n"; + echo ''."\n"; + echo '
    '._UJ_DIAK.''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + + + echo '
    '; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo _OSZTALY; + echo ''; + if (is_array($ADAT['osztaly'])) { + echo ''."\n"; + echo $ADAT['osztaly']['kezdoTanev'].'-'.($ADAT['osztaly']['kezdoTanev']+1).'/'.$ADAT['osztaly']['jel']; + if (isset($ADAT['osztaly']['osztalyJel'])) echo ' ('.$ADAT['osztaly']['osztalyJel'].')'; + } + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '; + echo ''; + echo '
    '."\n"; + + echo ''; + + echo '
    '."\n"; + formEnd(); + } + + function putDiakJogviszonyValtozas($ADAT) { + formBegin(array('method'=>'post', 'class'=>'diak')); + echo '
    '._JOGVISZONY_VALTAS.''."\n"; + + echo '

    '._JOGVISZONY_VALTAS.'

    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
      '; + for ($i=0; $i'.$ADAT['diakJogviszony'][$i]['dt'].': '.$ADAT['diakJogviszony'][$i]['statusz'].''; + } + echo '
    '; + + echo ''; + echo ''."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo '
    '; + + echo '
    '; + echo ''; + echo ''; + echo '
    '."\n"; + echo ''; + echo ''; + echo '
    '."\n"; + echo '
    '; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo '
    '."\n"; + + echo ''."\n"; + + echo '
    '; + formEnd(); + + + /* ----------------------- */ + + + formBegin(array('method'=>'post', 'class'=>'diak hozottHianyzas')); + echo '
    '._HOZOTT_HIANYZASOK.''."\n"; + + echo '

    '._HOZOTT_HIANYZASOK.'

    '; + + if (is_array($ADAT['hozottHianyzas']) && count($ADAT['hozottHianyzas'])>0) { + echo '
      '; + foreach ($ADAT['hozottHianyzas'] as $statusz => $db) { + echo '
    • '.$statusz.': '.$db['db'].'
    • '; + } + echo '
    '; + } else { + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo _IGAZOLT.''; + echo '
    '; + echo _IGAZOLATLAN.''; + echo ''; + + } +/* +| diakId | int(10) unsigned | NO | MUL | NULL | | +| statusz | enum('igazolt','igazolatlan') | YES | | NULL | | +| dbHianyzas | tinyint(3) unsigned | YES | | NULL | | +| dt | date | YES | | NULL | | +*/ + + echo '
    '."\n"; + formEnd(); + } + + function putDiakExportForm($ADAT) { + echo "\n\n"; + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=export&f=diakExport'), 'class'=>'diak')); + echo ''."\n"; + echo ''."\n"; + formEnd(); + + } + + function putDiakNyomtatForm($osztalyId,$diakId) { + echo "\n\n"; + formBegin(array('method'=>'post', 'action'=>href('index.php?page=naplo&sub=nyomtatas&f=diakAdatlap'), 'class'=>'diak')); + if (isset($diakId)) echo ''."\n"; + else echo ''."\n"; + echo ''."\n"; + formEnd(); + } + + + function putDiaktorol($ADAT) { + formBegin(array('method'=>'post', 'class'=>'diak')); + + echo '
    '._JOGVISZONY_TOROL.''."\n"; + echo '

    '._JOGVISZONY_TOROL.'

    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '; + + formEnd(); + } + + function putSuliXRESTForm($ADAT) { + formBegin(array('method'=>'post', 'class'=>'diak rest')); + echo '
    '._FELHASZNALOI_AZONOSITO.''."\n"; + + echo '

    '._FELHASZNALOI_AZONOSITO.'

    '; + + echo ''; + echo ''; + + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + formEnd(); + + } + + + function putDiakNyelvvizsga($ADAT, $POSTTHESE) { + + $diakAdat = $ADAT['diakAdat']; + + $tanev = $POSTTHESE['tanev']; + + formBegin(array('method'=>'post', 'class'=>'diak')); + + echo ''."\n"; + echo ''."\n"; + _postThese($POSTTHESE); + + echo '
    '._DIAK_NYELVVIZSGA_ADATOK.''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '; + // echo ''; + + $NY = $ADAT['diakAdat']['diakNyelvvizsga']; + if (count($NY)>0) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    NyelvSzintTípusIntézményBizonyítvány számKiállítás dátuma
    '; + echo ''; + echo ''; + for ($j=0; $j'; + echo ''.$NY[$i]['vizsgaSzint'].''.$NY[$i]['vizsgaTipus'].''.$NY[$i]['vizsgaIntezmeny'].''.$NY[$i]['vizsgaBizonyitvanySzam'].''.$NY[$i]['vizsgaDt'].'
    '; + } + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + + + echo '
    '."\n"; + + if (_MODOSITHAT===true) echo ''; + + echo '
    '."\n"; + formEnd(); + + } + + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakExport.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakExport.phtml new file mode 100644 index 00000000..51665213 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakExport.phtml @@ -0,0 +1,93 @@ +href('index.php?page=naplo&sub=intezmeny&f=diakExport'), 'class'=>'diak')); + echo ''."\n"; + + foreach ($exportFormatum as $formatum => $mezok) { + $format = ekezettelen($formatum); + echo ''."\n"; + echo ''."\n"; + } + + if (isset($ADAT['osztalyId'])) echo ''."\n"; + if (isset($ADAT['dt'])) echo ''."\n"; + + echo '
    '._EXPORT.''."\n"; + echo ''."\n"; + +/* + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; +*/ + + if (strstr($_SERVER["HTTP_USER_AGENT"], 'Linux')) $CHK = array('csv' => ' checked="checked" '); + else $CHK = array('xml' => ' checked="checked" '); + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; +// echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + + + if (is_array($ADAT['export'])) { + echo ''; + echo ''."\n"; + echo ''."\n"; + } + + + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '._FORMATUM.''; + echo ''."\n"; + echo '
    '."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; +// echo ''."\n"; +// echo ''."\n"; +// echo '
    '; + echo ''."\n"; + echo '
    '."\n"; + putExportMezok($ADAT['mezok']); + echo '
    '."\n"; + echo '
    '; + if ($skin != 'ajax') formEnd(); + } + + function putExportMezok($Mezok) { + + echo ''."\n"; + + echo ''."\n"; + foreach ($Mezok as $attr => $attrNev) { + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + } + echo ''."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo '
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakFelmentes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakFelmentes.phtml new file mode 100644 index 00000000..884c6923 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakFelmentes.phtml @@ -0,0 +1,225 @@ +'; + echo '

    1. '._FELMENTES_TARGY_ERTEKELES_ALOL.'

    '; + formBegin(); + + echo ''; _putDiakTargy($ADAT['diakTargy'],'T1targy'); + + echo ''."\n"; + echo ''; _putTolIgDt($ADAT['dt'],null,array('tolDt'=>true),'T1tol'); + + echo '
    '; + echo ''; + echo ''._ZARADEK1; + echo ''._ZARADEK2; + + echo '
    '."\n"; + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + + _putSubmit(); + formEnd(); + echo ''."\n"; + + + echo '
    '; + echo '

    2. '._FELMENTES_TANKOR_ORALATOGATASA_ALOL.'

    '; + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo '
    '; + + echo ''; + _putDiakTankor($ADAT['diakTankor'], 'T2tankor'); + + echo ''; + _putTolIgDt($ADAT['dt'],null,array('tolDt'=>true, 'igDt'=>true),'T2tol'); + echo '
    '; + _putHetNapjai(); + _putOrak(); + + echo '
    '; + echo ''; + + echo '
    '; + echo ''; + + echo '
    '; + echo ''; + + _putSubmit(); + formEnd(); + echo '
    '."\n"; + + echo '
    '; + echo '

    3. '._FELMENTES_TARGY_TANULASA_ALOL.'

    '; + echo '
    '._TIPUS3.'
    '."\n"; + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; _putDiakTargy($ADAT['diakTargy'],'T3targy'); echo '
    '; + echo ''; _putTolIgDt($ADAT['dt'],null,array('tolDt'=>true),'T3tol'); + + echo '
    '; + echo ''; + + _putSubmit(); + formEnd(); + echo '
    '; + + if (count($ADAT['diakZaradek'])>0) _putZaradek($ADAT['diakZaradek']); + if (count($ADAT['tankorDiakFelmentes'])>0) { + + echo '
    '; + formBegin(); + echo '

    '._ROGZITETT_FELMENTESEK.'

    '; + + _putTankorDiakFelmentes($ADAT['tankorDiakFelmentes'],$ADAT['diakTankor']); + + echo ''; + echo ''; + echo ''; + echo ''; + + _putSubmit('A kijelölt felmentéseket '.$ADAT['dt'].'-i hatállyal (-1nap) lezárjuk (végdátumot erre módosítjuk), ezzel a felmentés megszűnik. A tranzakcióhoz módosító záradék is készül.' ); + + formEnd(); + echo '
    '; + } + + + } + + function putDiakFelmentesAdatok($ADAT) { + echo '
    '; + echo '

    '._ROGZITETT_FELMENTESEK.'

    '; + _putTankorDiakFelmentes($ADAT['tankorDiakFelmentes'],$ADAT['diakTankor'],true); + echo '
    '; + } + + function _putDiakTargy($DIAKTARGY,$varId) { + if (count($DIAKTARGY)>0) { + echo ''; + } + } + function _putDiakTankor($DATA,$varId) { + if (count($DATA)>0) { + echo ''; + } + } + + function _putTolIgDt($tolDt,$igDt=null,$ALLOW=array('tolDt','igDt'),$tolId) { + + if ($ALLOW['tolDt']) echo ''; + if ($ALLOW['igDt']) echo ''; + + } + + + function _putSubmit($DESC = '') { + echo '
    '; + echo ''.$DESC.'
    '; + echo ''; + echo ''; + echo '
    '; + } + + + function _putHetNapjai() { + global $aHetNapjai; + if (count($aHetNapjai)>0) { + echo ''; + } + } + function _putOrak() { + echo ''; + } + + function _putZaradek($Z) { + + echo '
    '; + echo '

    '._ROGZITETT_ZARADEKOK.'

    '; + + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    DátumSorszámZáradék szövegeDokumentumokId'._IKTATOSZAM.''.$Z[$i]['dt'].''.$Z[$i]['sorszam'].''.$Z[$i]['szoveg'].''.$Z[$i]['dokumentum'].''.$Z[$i]['zaradekId'].''.$Z[$i]['iktatoszam'].'
    '."\n"; + echo '
    '; + } + + function _putTankorDiakFelmentes($F,$TANKOR, $readonly=false) { + + global $aHetNapjai; + + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + for ($j=0; $j'.$TANKOR[$j]['tankorNev'].''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + } + echo '
    TankörFelmentés típus'._IKTATOSZAM.'TólIgId'; + if ($readonly===false) echo ''; + echo ''.$F[$i]['felmentesTipus'].''.$F[$i]['iktatoszam'].''.$F[$i]['beDt'].''.$F[$i]['kiDt'].''.(is_numeric($F[$i]['nap']) ? $aHetNapjai[$F[$i]['nap']-1]:'').''.$F[$i]['ora'].''.$F[$i]['tankorDiakFelmentesId'].'
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakStatusz.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakStatusz.phtml new file mode 100644 index 00000000..8d282c62 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakStatusz.phtml @@ -0,0 +1,97 @@ +'."\n"; + formBegin(); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo '

    '._JELENLEGI_STATUSZ.': '.$ADAT['diakAdat']['statusz'].'

    '; + echo ''."\n"; + formEnd(); + + echo '
    '; + + echo '

    '._JOGVISZONYVALTOZASOK.'

    '; + echo '
      '."\n"; + foreach ($ADAT['diakStatusz'] as $i => $djAdat) { + echo '
    • '; + + formBegin(array('class'=>'statusz')); + echo ''."\n"; + echo '

      '.$djAdat['dt'].': '.$djAdat['statusz'].'

      '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + if (is_array($djAdat['zaradek'])) echo ''."\n"; + formEnd(); + + formbegin(array('class'=>'zaradek')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '

      '._JELENLEGI_ZARADEK.'

      '; + if (is_array($djAdat['zaradek'])) echo $djAdat['zaradek']['szoveg'].' ['.$djAdat['zaradek']['sorszam'].'/'.$djAdat['zaradek']['zaradekId'].']'; + else echo _NINCS; + echo '

      '."\n"; + echo ''."\n"; + echo '

      '._UJ_MODOSITOTT_ZARADEK.'

      '."\n";; + echo ''."\n"; + echo '
      '; + formEnd(); + + echo '
    • '."\n"; + } + echo '
    '."\n"; + + echo '
    '; + + echo '

    '._KIMARADT_JOGVISZONY_ZARADEKOK.'

    '; + echo '
      '."\n"; + foreach ($ADAT['diakZaradekok'] as $dt => $dtAdat) { + foreach ($dtAdat as $j => $dzAdat) { + if (in_array($dzAdat['zaradekIndex'], $ADAT['jogviszonyZaradekok'])) { + echo '
    • '; + echo $dzAdat['dt'].': ['.$dzAdat['sorszam'].'/'.$dzAdat['zaradekId'].']'.$dzAdat['szoveg'].' ('.$dzAdat['dokumentum'].')'; + echo '
    • '."\n"; + } + } + } + echo '
    '."\n"; + echo ''."\n"; // class="dj" + + } + + function putHibasJogviszony($ADAT) { + + if (count($ADAT['hibas']['tobbszoros']) == 0) return; + echo '

    '._HIBAS_JOGVISZONYU_DIAKOK.'

    '; + echo '

    '._TOBBSZOROS_JOGVISZONY.'

    '; // egy stártusz egymás követlenül után többször is szerepel + + foreach ($ADAT['hibas']['tobbszoros'] as $i => $diakId) { + echo ''; + echo $diakId; + echo ', '; + } + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakSzulo.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakSzulo.phtml new file mode 100644 index 00000000..78bd4f5f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakSzulo.phtml @@ -0,0 +1,300 @@ + elemet!! + formBegin(array('action'=>href('index.php?page=naplo&sub=intezmeny&f=diakSzulo'),'class'=>"diak")); + if ($skin == 'ajax') { + $class = 'onClickUpdate'; + } + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '._DIAK_SZULO.''."\n"; + + $SEL = array($tipus => ' kiemelt'); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + if ($tipus != '') { + + echo ''."\n"; + + if ($diakAdat[$tipus.'Id'] != '') { + $szAdat = $Szulok[$diakAdat[$tipus.'Id']]; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + } else { + $szAdat = array(); + // Új szülő hozzárendelése + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + } + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + if ($diakAdat[$tipus.'Id'] != '') { + // Hozzárendelés törlése + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + } + echo '
    '; + echo '

    '._SZULO_ADAT_MODOSITAS.'

    '; + echo '
    '; + echo ''; + echo '

    '._SZULO_HOZZARENDELESE.'

    '; + echo '
    '; + echo ''."\n"; + echo '
    '; + echo '
    '; + echo '
    '; + echo '

    '._UJ_SZULO.'

    '; + echo '
    '; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if ($szAdat['nem']!='') $_SEL[$szAdat['nem']] = ' selected="selected" '; + elseif ($tipus=='anya') $_SEL['lány'] = ' selected="selected" '; + elseif ($tipus=='apa') $_SEL['fiú'] = ' selected="selected" '; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''; + if (__NAPLOADMIN) { + $inNev=(($szAdat['nevElotag']!='')?$szAdat['nevElotag'].' ':'').$szAdat['csaladinev'].' '.$szAdat['utonev']; + if ($szAdat['userAccount']=='') { + $inUsername=$szAdat['csaladinev'].'.'; + $inUsername .= (mb_strpos($szAdat['utonev'],' ')!=0)?mb_substr($szAdat['utonev'], 0, mb_strpos($szAdat['utonev'],' '), 'UTF-8'):$szAdat['utonev']; + if ($inUsername == '.') $inUsername = ''; + } else { + $inUsername=$szAdat['userAccount']; + } + $inJelszo = sprintf('%u', crc32($szAdat['csaladinev'])); + $inEmail = $szAdat['email']; + $inTel = $szAdat['mobil']; + // kódold + echo ''; + if ($szAdat['userAccount']=='') echo '@ '; + echo ' ('.$inJelszo.')'; + } else + echo ''; + echo ''; + echo ''; + echo ''; + $_SEL[$szAdat['statusz']] = ' selected="selected" '; + echo ''."\n"; + echo '
    '."\n"; + echo '
    '._LAKHELY.''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '."\n"; + + echo ''."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '; + if ($diakAdat[$tipus.'Id'] == '') { + echo ''; + echo ''; + } else { + echo ''; + echo ''; + } + echo '
    '; + echo '

    '._SZULO_HOZZARENDELES_TORLESE.'

    '; + echo '
    '; + echo ''; + echo '
    '."\n"; + } // isset($tipus) + + echo '
    '."\n"; + + if ($skin != 'ajax') { + echo ''."\n"; + for ($i = 0; $i < count($ADAT['szuloDiakjai']); $i++) { + echo ''; + } + } + formEnd(); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakTankor.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakTankor.phtml new file mode 100644 index 00000000..bca9028f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakTankor.phtml @@ -0,0 +1,84 @@ +'post', 'action'=>'')); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + for ($i=0; $i'; /* container */ + echo ''; + if ($ADAT['diakOsszOraszam']>0) { + echo ''; + echo ''; + echo '\n"; + echo ''; + foreach($ADAT['diakTankorOraszam'] as $tankorTipus => $oraszam) { + echo ''; + } + echo '
    '._TANKOR_ORASZAMOK.'
    '._OSSZESEN.' '.$ADAT['diakOsszOraszam']."
    '.$tankorTipus.''.$oraszam.'
    '; + } + echo ''."\n"; + echo ''; + echo ''; + +/* Osztályonként */ + for ($j=0; $j'; + for ($i=0; $i'; + for ($i=0; $i'; + formEnd(); + echo '
    '; + if (__MODOSITHATO) { + echo ''; + echo '
    '; + echo ''; + } +// else echo _LEZART; + echo '
    '._OSZTALYTANKOROK.' '.$_osztalyJel.'
    '._DIAKTANKOROK.'
    '; /* container */ + } + + function _row($D,$BENNE,$id) { + + $_benne = ($BENNE[$D['tankorId']]) ? true: false; + $_class = ($_benne) ? ' class="benne" ':''; + $_chk = ($_benne) ? ' checked="checked" ':''; + $_dsb = (__MODOSITHATO) ? '': ' disabled="disabled" readonly="readonly" '; + echo ''; + if (!$_benne) + echo ''."\n"; + else + echo ''."\n"; + echo ''.$D['tankorId'].''."\n"; + echo ''."\n"; + echo ''; /* tervezett heti oraszam */ + echo $D['tankorTipus'].' '; + if ($D['hetiOraszam']>0) echo number_format($D['hetiOraszam'],1); + echo ''; + echo ''; + for ($k=0; $k'."\n"; + echo ''; + if ($D['felveheto']==1) echo 'o'; //else echo '•'; + echo ''."\n"; + echo ''."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakTankorJelentkezes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakTankorJelentkezes.phtml new file mode 100644 index 00000000..b55f2684 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/diakTankorJelentkezes.phtml @@ -0,0 +1,167 @@ +'; + echo ''; + echo ''; + echo ''; + echo ''; + + for ($i=0; $i'; /* konténer */ + echo ''; + /* Összesítő, tájékoztató táblázat */ +/* + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if (is_array($ADAT['diakKepzes'])) foreach($ADAT['diakKepzes'] as $diakId => $DO) { + for($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + } + } + + echo ''; + echo ''; + echo ''; + echo ''; + + echo '
    '._KEPZES_ORASZAM.'
    '.$DO[$i]['kepzesNev'].'/'.$DO[$i]['tanev'].'
    '. + _KOTELEZOEN_VALASZTHATO.''.intval($ORASZAMOK['kötelezően választható']['sum']).' '._ORA.'
    '. + _SZABADON_VALASZTHATO.''.intval($ORASZAMOK['szabadon választható']['sum']).' '._ORA. + '
    '._VALASZTOTT.'
    '. + _VALASZTOTT.''.intval(0).' '._ORA. + '
    '."\n"; +*/ + echo ''; /* konténer */ + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + if ( (!__DIAK && !__NAPLOADMIN && !__VEZETOSEG) || + (__TARGYVALASZTAS!==true || !isset($ADAT['diakId'])) ) { $GVal = false; $GMutat = false;} + else {$GVal = true; $GMutat = true;} + +// for ($j=0; $j'; + for ($i=0; $i'; + for ($i=0; $i'; +// } + echo '
    '._VALASZTHATO.'
    '._JELENTKEZ.''._ID.''._BLOKK.''._ORASZAM.''._TANKOR.''._LETSZAM.''._KERETLETSZAM.''.ucfirst(_TANAR).'
    '; + //if (__) echo ''; + //else echo _LEZART; + if (__TARGYVALASZTAS===false) echo _NINCSTV; + elseif (__MINCONTROL===false) echo _ELOTV; + else echo _TV; + + echo '
    '._OSSZESFELVETT.'
    '; + echo ''; /* konténer */ + formEnd(); + + } + + function _row($D,$BENNE,$id,$MODOSITHATO,$showbutton=true) { + + global $TBLOKKOK,$TID2TBLOKK; + + $_benne = ($BENNE[$D['tankorId']]) ? true: false; + $_class = ($_benne) ? 'benne ':''; + $_chk = ($_benne) ? ' checked="checked" ':''; + $_dsb = ($MODOSITHATO && $D['max']>$D['letszam']) ? '': ' disabled="disabled" readonly="readonly" '; + $_dsbLE = ($MODOSITHATO && (__MINCONTROL===false || (__MINCONTROL===true && $D['min']<$D['letszam'])) ) ? '': ' disabled="disabled" readonly="readonly" '; + + if ($D['min']<$D['letszam'] && $D['max']>$D['letszam']) $_letszamClass = 'lok'; + elseif ($D['min']==$D['letszam']) $_letszamClass = 'lok lokbottom'; + elseif ($D['max']==$D['letszam']) $_letszamClass = 'lok loktop'; + elseif ($D['min']>$D['letszam']) $_letszamClass = 'lkeves'; + elseif ($D['min']<$D['letszam']) $_letszamClass = 'lsok'; + + for ($i=0; $i'; + if (!$_benne) { + echo ''; + if ($showbutton) echo ''; + else echo ' '; // for IE + echo ' '; + } else { + echo ' '; + if ($showbutton) echo ''; + else echo ' '; // for IE + echo ''; + } + echo ''.( (is_array($D['blokkIdk']))?implode('|',$D['blokkIdk']).'/':'' ).$D['tankorId'].''; + echo ''; + for ($i=0; $i'; + echo ''.$D['oraszam'].''; + echo ''.$D['tankorNev'].''; + //echo ''; + echo ''.$D['letszam'].''; + echo ''.$D['min'].'-'.$D['max'].''; + echo ''; + for ($k=0; $k'; + echo ''."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/felmentes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/felmentes.phtml new file mode 100644 index 00000000..b4e5e234 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/felmentes.phtml @@ -0,0 +1,261 @@ +'; + echo '

    '._FELMENTESEK.'

    '; + formBegin(); + echo ''; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '; + echo ''; + echo $ADAT['diakAdat'][$D['diakId']]['diakNev']; + echo ' ('.$ADAT['diakAdat'][$D['diakId']]['diakId'].')'; + echo ''; + echo ''; + echo ($D['felmentesTipus']); + echo ''; + echo ($D['tankorId']); + echo ''; + echo $D['beDt']; + echo ''; + echo $D['kiDt']; + echo ''; + echo $D['nap'].'/'.$D['ora']; + echo ''; + echo $D['iktatoszam']; + echo '
    '; + formEnd(); + } + + + function putDiakFelmentesForm($ADAT) { + + echo '
    '; + echo '

    1. '._FELMENTES_TARGY_ERTEKELES_ALOL.'

    '; + formBegin(); + + echo ''; _putDiakTargy($ADAT['diakTargy'],'T1targy'); + + echo ''."\n"; + echo ''; _putTolIgDt($ADAT['dt'],null,array('tolDt'=>true),'T1tol'); + + echo '
    '; + echo ''; + echo ''._ZARADEK1; + echo ''._ZARADEK2; + + echo '
    '."\n"; + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + + _putSubmit(); + formEnd(); + echo '
    '."\n"; + + + echo '
    '; + echo '

    2. '._FELMENTES_TANKOR_ORALATOGATASA_ALOL.'

    '; + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo '
    '; + + echo ''; + _putDiakTankor($ADAT['diakTankor'], 'T2tankor'); + + echo ''; + _putTolIgDt($ADAT['dt'],null,array('tolDt'=>true, 'igDt'=>true),'T2tol'); + echo '
    '; + _putHetNapjai(); + _putOrak(); + + echo '
    '; + echo ''; + + echo '
    '; + echo ''; + + echo '
    '; + echo ''; + + _putSubmit(); + formEnd(); + echo '
    '."\n"; + + echo '
    '; + echo '

    3. '._FELMENTES_TARGY_TANULASA_ALOL.'

    '; + echo '
    '._TIPUS3.'
    '."\n"; + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; _putDiakTargy($ADAT['diakTargy'],'T3targy'); echo '
    '; + echo ''; _putTolIgDt($ADAT['dt'],null,array('tolDt'=>true),'T3tol'); + + echo '
    '; + echo ''; + + _putSubmit(); + formEnd(); + echo '
    '; + + if (count($ADAT['diakZaradek'])>0) _putZaradek($ADAT['diakZaradek']); + if (count($ADAT['tankorDiakFelmentes'])>0) { + + echo '
    '; + formBegin(); + echo '

    '._ROGZITETT_FELMENTESEK.'

    '; + + _putTankorDiakFelmentes($ADAT['tankorDiakFelmentes'],$ADAT['diakTankor']); + + echo ''; + echo ''; + echo ''; + echo ''; + + _putSubmit('A kijelölt felmentéseket '.$ADAT['dt'].'-i hatállyal (-1nap) lezárjuk (végdátumot erre módosítjuk), ezzel a felmentés megszűnik. A tranzakcióhoz módosító záradék is készül.' ); + + formEnd(); + echo '
    '; + } + + + } + + function putDiakFelmentesAdatok($ADAT) { + echo '
    '; + echo '

    '._ROGZITETT_FELMENTESEK.'

    '; + _putTankorDiakFelmentes($ADAT['tankorDiakFelmentes'],$ADAT['diakTankor'],true); + echo '
    '; + } + + function _putDiakTargy($DIAKTARGY,$varId) { + if (count($DIAKTARGY)>0) { + echo ''; + } + } + function _putDiakTankor($DATA,$varId) { + if (count($DATA)>0) { + echo ''; + } + } + + function _putTolIgDt($tolDt,$igDt=null,$ALLOW=array('tolDt','igDt'),$tolId) { + + if ($ALLOW['tolDt']) echo ''; + if ($ALLOW['igDt']) echo ''; + + } + + + function _putSubmit($DESC = '') { + echo '
    '; + echo ''.$DESC.'
    '; + echo ''; + echo ''; + echo '
    '; + } + + + function _putHetNapjai() { + global $aHetNapjai; + if (count($aHetNapjai)>0) { + echo ''; + } + } + function _putOrak() { + echo ''; + } + + function _putZaradek($Z) { + + echo '
    '; + echo '

    '._ROGZITETT_ZARADEKOK.'

    '; + + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    DátumSorszámZáradék szövegeDokumentumokId'._IKTATOSZAM.''.$Z[$i]['dt'].''.$Z[$i]['sorszam'].''.$Z[$i]['szoveg'].''.$Z[$i]['dokumentum'].''.$Z[$i]['zaradekId'].''.$Z[$i]['iktatoszam'].'
    '."\n"; + echo '
    '; + } + + function _putTankorDiakFelmentes($F,$TANKOR, $readonly=false) { + + global $aHetNapjai; + + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + for ($j=0; $j'.$TANKOR[$j]['tankorNev'].''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + } + echo '
    TankörFelmentés típus'._IKTATOSZAM.'TólIgId'; + if ($readonly===false) echo ''; + echo ''.$F[$i]['felmentesTipus'].''.$F[$i]['iktatoszam'].''.$F[$i]['beDt'].''.$F[$i]['kiDt'].''.(is_numeric($F[$i]['nap']) ? $aHetNapjai[$F[$i]['nap']-1]:'').''.$F[$i]['ora'].''.$F[$i]['tankorDiakFelmentesId'].'
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepesitesek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepesitesek.phtml new file mode 100644 index 00000000..9274c725 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepesitesek.phtml @@ -0,0 +1,121 @@ +'kepesites')); + + echo ''; + + echo '

    Alapadatok

    '; + echo ''; + echo ''; + echo '
    '; + + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo '
    '; + + formEnd(); + + } + + function putKepesitesAdat($ADAT) { + + formBegin(array('class'=>'kepesites','id'=>'kepesitesForm')); + + echo ''; + echo ''; + + echo '

    Alapadatok

    '; + echo ''; + echo ''; + echo '
    '; + + echo ''.$ADAT['kepesitesAdat']['kepesitesId']; + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo '
    '; + + echo '

    Hozzárendelt tárgyak:

    '; + echo '
      '; +// foreach ($ADAT['kepesitesAdat']['targyak'] as $idx => $tAdat) { + foreach ($ADAT['kepesitesAdat']['targyak'] as $idx => $tAdat) { + echo '
    • '; + echo $tAdat['targyNev'].' ('.$tAdat['targyId'].')'; + echo ' '.$tAdat['targyJelleg']; + echo ''; + echo '
    • '; + } + echo '
    '; + echo ''; + echo ''; + echo '
    '; + + echo '

    Hozzárendelt tanárok:

    '; + echo '
      '; + foreach ($ADAT['kepesitesAdat']['tanarok'] as $idx => $tAdat) { + echo '
    • '.$tAdat['tanarNev'].' ('.$tAdat['tanarId'].')
    • '; + } + echo '
    '; + echo ''; + echo ''; + echo '
    '; + + +//dump($ADAT['kepesitesAdat']); + formEnd(); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepzes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepzes.phtml new file mode 100644 index 00000000..d3a79358 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepzes.phtml @@ -0,0 +1,143 @@ +'kepzes')); + echo ''."\n"; + + echo '

    '._UJ_KEPZES.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + + echo '

    '."\n"; + + formEnd(); + + } + + function kepzesElesForm($ADAT) { + + if (($kepzesEles = $ADAT['kepzesAdat']['kepzesEles'])==1) { + $_class="kepzes hibernalt"; + $_TXT = _KEPZES_HIBERNAL; + $_GOMB_TXT = _HIBERNAL; + } else { + $_class="kepzes eles"; + $_TXT = _KEPZES_ELESIT; + $_GOMB_TXT = _ELESIT; + } + + formBegin(array('class'=>$_class)); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '

    '.$_TXT.'

    '."\n"; + echo '

    '."\n"; + formEnd(); + + } + + function putKepzesForm($ADAT) { + + if (($kepzesEles = $ADAT['kepzesAdat']['kepzesEles'])==1) { + $_class="kepzes eles"; + } else { + $_class="kepzes hibernalt"; + } + + formBegin(array('class'=>$_class)); + echo ''."\n"; + echo ''."\n"; + + echo '

    '._KEPZES_ADATAI.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo '
    '; + + echo ''."\n"; + echo ''."\n"; + echo '
    '; + + echo '
    '; + echo ''._MAR_RESZTVEVO_OSZTALYOK.''; + echo ''."\n"; + echo '
    '; + + echo '
    '; + + echo '
    '; + echo ''._OSZTALYOK.''; + echo ''."\n"; + echo '
    '; + + + echo '

    '."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepzesOraterv.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepzesOraterv.phtml new file mode 100644 index 00000000..fb10c6c4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/kepzesOraterv.phtml @@ -0,0 +1,271 @@ +0) { + + echo '
      '; + for ($i=0; $i'; + echo $ADAT['osztalyok'][$_osztalyId]['osztalyJel']; + echo $ADAT['osztalyok'][$_osztalyId]['leiras']; + echo $ADAT['osztalyok'][$_osztalyId]['kezdoTanev'].'-'; + echo $ADAT['osztalyok'][$_osztalyId]['vegzoTanev']; + echo $ADAT['osztalyok'][$_osztalyId]['kezdoEvfolyamSorszam']; + echo '['.$_osztalyId.']'; + echo ''; + } + echo '
    '; + } + } + + function putOratervMasolas($ADAT) { + + formBegin(array('id'=>'oratervMasolas')); + + echo '

    Képzés óratervének átvétele

    '; + echo ''; + echo ''; + + echo ''; + echo ''; + formEnd(); + + } + + function putKepzesOraterv($ADAT) { + + $kepzesId = $ADAT['kepzesId']; + + $EVFOLYAMJELEK = $ADAT['kepzesAdat']['osztalyEvfolyamJelek']; + if (!is_array($EVFOLYAMJELEK)) { + return true; + } + + + /* KÉPZÉS ÓRASZÁMOK POST + ---------------- ---- + *kepzesId + *evfolyamJel + kotelezoOraszam KO_[kepzesId]_[evfolyamJel] + maximalisOraszam MO_[kepzesId]_[evfolyamJel] + */ + formBegin(array('name'=>'kepzesOraterv','class'=>'kepzesOraterv')); + echo ''; + echo ''; + echo ''; + + echo ''; + //FEJLÉC + echo ''; + foreach($EVFOLYAMJELEK as $i => $_evfolyamJel) { + echo ''; + } + echo ''; + echo ''; + // ÉVFOLYAMONKÉNTI ÓRASZÁMOK + echo ''; + foreach($EVFOLYAMJELEK as $i => $_evfolyamJel) { + echo ''; + } + echo ''; + + echo ''."\n"; + + echo ''; + //LÁBLEC + echo ''; + foreach($EVFOLYAMJELEK as $i => $_evfolyamJel) { + echo ''; + } + echo ''; + echo ''; + echo ''; + } + echo ''; + echo ''; + // EGY UJ: + echo ''; + echo ''; + foreach($EVFOLYAMJELEK as $i => $_evfolyamJel) { + echo ''; + } + echo ''; + echo ''; + // -- idáig EGY UJ + echo ''."\n"; + + + // KÉPZÉS ÓRATERV + /* -------------- + *kepzesOratervId + kepzesId + targyId + evfolyamJel + szemeszter + hetiOraszam + kovetelmeny enum('jegy','négyszintű (szöveges minősítés)','százalékos','aláírás','háromszintű','egyedi felsorolás','szöveges szempontrendszer','nincs') DEFAULT null + tipus enum('első nyelv','második nyelv','kötelezően választható','szabadon választható','mintatantervi') + */ + flush(); + echo ''; + + $ADAT['targyak'][] = array('targyId'=>''); // a tárgy-típusok esetén nincs targyId - ezt is vegyük ide bele + if (is_array($ADAT['oraterv'])) + foreach($ADAT['oraterv'] as $tipus => $X) +// foreach($X as $targyId => $DI) { + foreach($ADAT['targyak'] as $idx => $tAdat) // a névsor miatt a $ADAT['targyak']-on megyünk végig + if (is_array($X[$tAdat['targyId']])) { // megnézzük, hogy az adott targyTipusban szerepel-e + $targyId = $tAdat['targyId']; // kiolvassuk a targyId-t (hogy a korábbi kódot ne kelljen átírni) +// $D = $DI; + $D = $X[$targyId]; // beállítjuk $D-t + + // TOMEG: + $targyIdEsc = _escape($tipus).'_'.$targyId; + $_class = ($tipus!='mintatantervi') ? 'class="nm"' : ''; + echo ''; + echo ''; + foreach($EVFOLYAMJELEK as $i => $_evfolyamJel) { + $up1 = ($D[$_evfolyamJel][1][0]['kovetelmeny']!=''); + $up2 = ($D[$_evfolyamJel][2][0]['kovetelmeny']!=''); + $_class = ($D[$_evfolyamJel][1][0]['hetiOraszam']+$D[$_evfolyamJel][2][0]['hetiOraszam'] > 0) ? ' class="nn" ' : ''; + echo ''; + echo '
    ';/* első félévi */ + echo ''; + echo ''._format($D[$_evfolyamJel][1][0]['hetiOraszam']).''; + + _put_simple_select($ADAT['kepzesOraterv.kovetelmeny'],'T_'.$targyIdEsc.'_K_'.$_evfolyamJel.'_1',$D[$_evfolyamJel][1][0]['kovetelmeny']); + echo ''.$D[$_evfolyamJel][1][0]['kovetelmeny'].''; + echo '
    '; + + echo '
    ';/* második félévi */ + echo ''; + echo ''._format($D[$_evfolyamJel][2][0]['hetiOraszam']).''; + + _put_simple_select($ADAT['kepzesOraterv.kovetelmeny'],'T_'.$targyIdEsc.'_K_'.$_evfolyamJel.'_2',$D[$_evfolyamJel][2][0]['kovetelmeny']); + echo ''.$D[$_evfolyamJel][2][0]['kovetelmeny'].''; + echo '
    '; // placeholder + echo '
    '; +/* + echo ''; + echo _format($D[$_evfolyamJel][1][0]['hetiOraszam'])." "; + echo $D[$_evfolyamJel][1][0]['kovetelmeny']; + echo '
    '; + echo _format($D[$_evfolyamJel][2][0]['hetiOraszam']).' '; + echo $D[$_evfolyamJel][2][0]['kovetelmeny']; + echo '
    '; +*/ + echo ''; + } + echo '
    '; + echo ''."\n"; + // -- idáig TOMEG + flush(); + } + echo ''; + echo '
    '._EVFOLYAMJEL.''.$_evfolyamJel.'.'; + echo '1. félév2. félév

    '; + echo 'óraszámkövetelmény '; + echo '
    '._KOTELEZO_ORASZAM.'-'._MAXIMALIS_ORASZAM.''; + echo ''; // KO = kötelező óraszám + echo '-'; // MO = maximális óraszám + echo '
    '._EVFOLYAMJEL.''.$_evfolyamJel.'. 
    Még hiányzó / Max választható'; + foreach($EVFOLYAMJELEK as $i => $_evfolyamJel) { + $min = $ADAT['oraszam'][$_evfolyamJel]['kotelezoOraszam']; //--TODO $i->$evfolyamJel + $max = $ADAT['oraszam'][$_evfolyamJel]['maximalisOraszam']; + $sum=0; + reset($ADAT['oraterv']); + if (is_array($ADAT['oraterv'])) foreach($ADAT['oraterv'] as $tipus=>$DT) foreach($DT as $targyId => $D) { + $sum+=($D[$_evfolyamJel][1][0]['hetiOraszam']+$D[$_evfolyamJel][2][0]['hetiOraszam']) / 2; + } + $_class = ($min<=$sum && $sum<=$max) ? 'class="ok"':$_class = ($max-$sum<0) ? 'class="alert"' : '';; + echo ''; + echo ($min-$sum) . "«". ($max - $sum); + echo ' 
    '; + _put_targy_select($ADAT['targyak'],$ADAT['kepzesOraterv.tipus'],'UJ_targyTipusId','targyId','targyNev',null); + //_put_targy_select($ADAT['targyak'],$ADAT['kepzesOraterv.tipus'],'UJ_targyId','targyId','targyNev',$targyId); + echo ''; + //$i; + echo '
    '; + echo ''; + _put_simple_select($ADAT['kepzesOraterv.kovetelmeny'],'UJ_K_'.$_evfolyamJel.'_1',null); + echo '
    '; + echo ''; + _put_simple_select($ADAT['kepzesOraterv.kovetelmeny'],'UJ_K_'.$_evfolyamJel.'_2',null); + echo '
    '; + echo '
    '; + echo '
    '; + echo ''; + echo '
    '; + echo ''; + echo $tAdat['targyNev']; + echo ' ('._unescape($targyIdEsc).')'; + echo ''; + echo ''; + echo ''; + echo ''; + + echo '
    '."\n"; + formEnd(); + + } + + function _put_simple_select($VALUES,$name,$selected) { + + echo ''."\n"; + } + + function _put_targy_select($VALUES1,$VALUES2,$name,$keyname,$valuename,$selected) { // immáron speciális, feleslegessé vált a key, value + +// global $FOGLALT; +// if (in_array( $key, $FOGLALT )) echo $key; + + echo ''; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/munkakozosseg.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/munkakozosseg.phtml new file mode 100644 index 00000000..b35f799e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/munkakozosseg.phtml @@ -0,0 +1,316 @@ +'ujMkForm','class'=>'uj mk')); + echo '
    '; + echo '

    Új munkaközösség felvétele

    '; + + echo ''."\n"; + echo ''; + echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''; + echo '
    '; + formEnd(); + } + + function putMunkakozossegForm($MKADAT,$TANAROK,$TANAROK_INMK) { + + formBegin(array('id'=>'MkForm', 'class'=>'mk')); + + echo '

    Munkaközösség

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + + echo ''; + echo ''."\n"; + + echo '
    '; + + echo '
    '; + echo '
    '; + echo ''."\n"; + echo '
    '; + + echo '
    '; + + echo '
    '; + echo '
    '; + echo ''."\n"; + echo '
    '; + + echo ''; + echo '
    '; + for($i=0; $i'.$TANAROK_INMK[$i]['tanarNev'].''."\n"; + putFace($TANAROK_INMK[$i]['tanarId'],'tanar',32); + } + echo '
    '; + + formEnd(); + + } + + + + + + + + + + function putMunkakozossegTorolForm($mkId) { + + formBegin(array('id'=>'mkTorolForm', 'class'=>'mk torol')); + echo '

    A munkaközösség törlése

    '; + + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''; + + formEnd(); + } + + + + + + + function putUjTargyForm($mkId, $ADAT) { + formBegin(array('id'=>"ujTargyForm", 'class'=>"uj mk")); + + echo '

    Új tárgy felvétele a munkaközösséghez

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + + _putTargyJellegSelect($ADAT); // not selected + + echo ''; + + formEnd(); + } + + function putTargyValtoztatForm($ADAT) { + + formBegin(array('id'=>'targyValtoztatForm', 'class'=>'mk')); + + echo '

    Tárgy változtatása: '.$ADAT['targyAdat']['targyNev'].'

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + //echo ''; + echo '
    • '; + echo _TARGY_JELLEG.': '; + _putTargyJellegSelect($ADAT); // not selected + echo '
    • '; + echo _EVKOZI_KOVETELMENY.': '; + _putTargyKovetelmenySelect($ADAT,'evkozi'); + echo '
    • '; + echo _ZARO_KOVETELMENY.': '; + _putTargyKovetelmenySelect($ADAT,'zaro'); + echo '
    • '; + echo _TARGY_ROVID_NEVE.': '."\n"; + echo '
    • '; + echo _KIRTARGY.': '; + putKirTargySelect($ADAT['kirTargyak'],$ADAT['targyAdat']['kirTargyId']); + echo '
    '; + echo ''; + formEnd(); + } + + function _putTargyJellegSelect($ADAT) { + echo ''; + } + function _putTargyKovetelmenySelect($ADAT,$melyik) { + $kov = $melyik.'Kovetelmeny'; + echo ''; + } + + function putTargyTorolForm($targyId,$mkId) { + formBegin(array('id'=>"targyTorolForm", 'class'=>"mk torol")); + + echo '

    A kijelölt tárgy törlése

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''; + + formEnd(); + } + + + function putKirTargySelect($ADAT,$kirTargyId) { + + echo ''."\n"; + echo _KIRTARGY_MEGJ; + } + + function putTargyAtnevezes($ADAT) { + + formBegin(array('id'=>'targyAtnevezes','class'=>'mk')); + + echo '

    '._TARGY_ATNEVEZES.'

    '; + + echo '
    '._ATNEVEZES_HELP.'
    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''."\n"; + + echo ''; + + formEnd(); + } + + function putTargyMkValtas($ADAT) { + + formBegin(array('id'=>'targyMkValtas','class'=>'mk')); + + echo '

    '._TARGY_MK_VALTAS.'

    '; + + echo '
    '._MK_VALTAS_HELP.'
    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + + formEnd(); + } + + function putTargyBeolvasztasForm($ADAT) { + + global $TANKOR_TIPUS; + + formBegin(array('id'=>'targyBeolvasztas','class'=>'mk')); + + echo '

    '._TARGY_BEOLVASZTASA.'

    '; + + echo '
    '._BEOLVASZTAS_HELP.'
    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + formEnd(); + } + + function putTargyTargyForm($ADAT) { + + formBegin(array('id'=>'targyTargy','class'=>'mk')); + + echo '

    '._TARGY_KAPCSOLATOK.'

    '; + + echo '
    '._TARGYTARGY_HELP.'
    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''; + + echo ''; + + formEnd(); + } + + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/osztaly.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/osztaly.phtml new file mode 100644 index 00000000..b476482c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/osztaly.phtml @@ -0,0 +1,427 @@ +'osztalyForm uj')); + + echo '

    '._UJOSZTALY.'

    '; + echo ''."\n"; + echo ''."\n"; + + echo '
    '; + + echo ''; + putOsztalyJellegek($ADAT['osztalyJellegek'],$ADAT['osztalyAdat']['osztalyJellegId']); + + echo '
    '; + + echo ''; + + echo ''; + + echo ''; + + echo '
    '; + echo '
    '; + + + echo '
    '; + echo ''; + echo ''."\n"; + + echo ''; + echo '
    '."\n"; + + echo '
    '; + + echo '
    '; + + formEnd(); +} + +/* +// Már nem léptetünk osztályt... +function putOsztalyLeptetes($ADAT) { + formBegin(array('class'=>'osztalyForm')); + echo '

    '._OSZTALY_LEPTETES.'

    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ':    '; +// echo $ADAT['osztalyAdat']['kezdoEvfolyam'].'. '; + + echo ''; + echo ''."\n"; + echo ''; + formEnd(); + +} +*/ + +function putOsztalyAdatokForm($ADAT) { + + formBegin(array('class'=>'osztalyForm')); + echo '

    '._OSZTALY_ADATAI.' ('.$ADAT['osztalyAdat']['osztalyId'].')

    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo _KEZDOTANEV.'/'._VEGZOSTANEV.': '.$ADAT['osztalyAdat']['kezdoTanev'].'/'.($ADAT['osztalyAdat']['kezdoTanev']+1).' - '.$ADAT['osztalyAdat']['vegzoTanev'].'/'.($ADAT['osztalyAdat']['vegzoTanev']+1).''; + + echo '
      '; + for ($_ev = $ADAT['osztalyAdat']['kezdoTanev']; $_ev<=$ADAT['osztalyAdat']['vegzoTanev']; $_ev++) { + echo '
    • '.$_ev."/".($_ev+1).' - '.$ADAT['osztalyJelek'][$_ev].'
    • '; + } + echo '
    '; + + echo ''."\n"; + $KepzesStr = array(); + for ($i = 0; $i < count($ADAT['kepzesek']); $i++) { + if (is_array($ADAT['osztalyAdat']['kepzesIds']) && in_array($ADAT['kepzesek'][$i]['kepzesId'], $ADAT['osztalyAdat']['kepzesIds'])) + $KepzesStr[] = $ADAT['kepzesek'][$i]['kepzesNev'].' - '.$ADAT['kepzesek'][$i]['tanev'].' ('.$ADAT['kepzesek'][$i]['kepzesId'].')'; + } + if (is_array($KepzesStr) && count($KepzesStr) > 0) echo ''.implode(' / ', $KepzesStr).'
    '; + else echo '    -    
    '; + + echo '
    '; + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + echo ''."\n"; + + echo '
    '; + putOsztalyJellegek($ADAT['osztalyJellegek'],$ADAT['osztalyAdat']['osztalyJellegId']); + echo '
    '; + echo ''; + echo '
    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + if (is_array($ADAT['osztalyAdat']['osztalyfonokok'])) { + for ($i = 0; $i < count($ADAT['osztalyAdat']['osztalyfonokok']); $i++) { + $O = $ADAT['osztalyAdat']['osztalyfonokok'][$i]; + echo ''; + echo ''; + echo ''; + if ($ADAT['osztalyAdat']['osztalyfonokok'][$i]['kiDt'] == '') { + echo ''; + } else { + echo ''; + } + echo ''."\n"; + } + } + + echo ''."\n"; + + echo ''."\n"; + echo '
    '._OSZTALYFONOKOK.'
    '._TANARNEVE.''._BEDT.''._KIDT.'
    '; + // echo $ADAT['osztalyAdat']['osztalyfonokok'][$i]['tanarNev']; + echo $O['tanarNev']; + if ($ADAT['osztalyAdat']['osztalyfonokok'][$i]['kiDt'] == '') { + echo ''."\n"; + echo ''."\n"; + } + echo ''.$ADAT['osztalyAdat']['osztalyfonokok'][$i]['beDt'].''.$ADAT['osztalyAdat']['osztalyfonokok'][$i]['kiDt'].'
    '; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; +# kiDt jobb ha nincs # echo ''."\n"; + echo '
    '."\n"; + formEnd(); + + + + + formBegin(array('class'=>'osztalyForm')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '

    '._MODOSITAS.'

    '; + + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''."\n"; + + formEnd(); + + + +} + +function osztalyTorlesForm($osztalyId) { + + global $tanev; + + formBegin(array('class'=>'osztalyForm')); + + echo '

    '._OSZTALY_TORLESE.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + formEnd(); +} + +function putOsztalyNevsor($ADAT) { + + formBegin(array('class'=>'osztalyForm')); + + echo '

    '._OSZTALYNEVSOR.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + if (is_array($ADAT['osztalyAdat']['kepzes'])) for ($j = 0; $j < count($ADAT['osztalyAdat']['kepzes']); $j++) { + echo ''."\n"; + } + + + echo '
      '; + + foreach ($ADAT['osztalyNevsor'] as $diakId => $value) { + + echo '
    1. '; + // Képzés + echo '
      '; $CHK = array(); + if (is_array($ADAT['diakKepzes'][$diakId])) + foreach ($ADAT['diakKepzes'][$diakId] as $index => $kAdat) { + $kepzesId = $kAdat['kepzesId']; + if (in_date_interval($ADAT['dt'], $kAdat['tolDt'], $kAdat['igDt'])) { + $CHK[ $kepzesId ] = ' checked="checked" '; + if (!in_array($kepzesId, $ADAT['osztalyAdat']['kepzesIds'])) { + echo ''; + echo ''."\n"; + echo ''; + echo ''; + } + } + } + if (is_array($ADAT['osztalyAdat']['kepzes'])) { + for ($j = 0; $j < count($ADAT['osztalyAdat']['kepzes']); $j++) { + $kepzesId = $ADAT['osztalyAdat']['kepzes'][$j]['kepzesId']; + $_class = ($CHK[$kepzesId]!='')? 'chk':''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + if ($CHK[$kepzesId]!='') $_KEPZESDB[$kepzesId]++; + } + } + + echo '
      '; + echo ''; // ⇓ + if (is_array($ADAT['diakKepzes'][$diakId])) { + echo ''; + } + echo '
      '."\n"; + + echo '
      '."\n"; + + if ($value['diakNaploSorszam']!='') echo ''.$value['diakNaploSorszam'].''; + echo ''.$value['diakNev'].''; + if ($value['statusz'][0]['statusz'] != 'jogviszonyban van') echo ''.$value['statusz'][0]['statusz'].''; + + $tmp = array(); + if (is_array($value['osztalyDiak'])) foreach ($value['osztalyDiak'] as $dts) $tmp[] = $dts['beDt'].'-'.(($dts['kiDt'] == '' || $dts['kiDt'] == '0000-00-00') ? '?' : $dts['kiDt']); + echo '('.implode(', ', $tmp).')'; + + echo '
    2. '."\n"; + } + echo '
    '; + echo '
    '._REFERENCIA_DATUM.':
    '."\n"; + echo '
    '."\n"; + + if (count($ADAT['kepzesek'])>0) { + echo ''; + echo ''; + for ($i = 0; $i < count($ADAT['kepzesek']); $i++) { + if (is_array($ADAT['osztalyAdat']['kepzesIds']) && in_array($ADAT['kepzesek'][$i]['kepzesId'], $ADAT['osztalyAdat']['kepzesIds'])) { + echo ''; + echo ''; + echo ''; + echo ''; + } + } + echo '
    '._KEPZES.''._LETSZAM.'
    '.$ADAT['kepzesek'][$i]['kepzesNev'].' - '.$ADAT['kepzesek'][$i]['tanev'].' ('.$ADAT['kepzesek'][$i]['kepzesId'].')'.''.$_KEPZESDB[ $ADAT['kepzesek'][$i]['kepzesId'] ].'
    '; + } + + formEnd(); + + echo '
    '; + echo '

    '; + echo ($ADAT['osztalyAdat']['osztalyJel']); + echo '

    '; + echo '

    '.($ADAT['osztalyAdat']['leiras']).'

    '; + foreach ($ADAT['osztalyNevsor'] as $diakId => $value) { + putFace($diakId,'diak',80); + } + echo '
    '; + + +} + +function putUjTagForm($ADAT) { + + formBegin(array('class'=>'osztalyForm')); + + echo '

    '._UJ_TAG.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + +} + +function putTagTorlesForm($ADAT) { + + formBegin(array('class'=>'osztalyForm')); + + echo '

    '._TAG_TORLES.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + +} + +function putOsztalyJellegek($ADAT,$osztalyJellegId) { + + echo ''."\n"; + +} + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tanar.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tanar.phtml new file mode 100644 index 00000000..563f2bd6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tanar.phtml @@ -0,0 +1,419 @@ +href('index.php?page=naplo&sub=intezmeny&f=tanar'), 'class'=>"tanar onChangeRequest")); + + echo ''."\n"; + echo ''."\n"; + echo '
    '._TANAR_ALAPADATAI.''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; +/* + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; +*/ + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + +/* + echo ''."\n"; + echo ''."\n"; +*/ + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + + echo ''; + + echo '
    '."\n"; + formEnd(); + } + + function putTanarSzuletesiAdatok($ADAT) { + formBegin(array('action'=>href('index.php?page=naplo&sub=intezmeny&f=tanar'), 'class'=>"tanar onChangeRequest")); + + echo ''."\n"; + echo ''."\n"; + echo '
    '._TANAR_SZULETESI_ADATAI.''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo '
    '."\n"; + formEnd(); + + } + + function putTanarJogviszonyAdatok($ADAT) { + formBegin(array('action'=>href('index.php?page=naplo&sub=intezmeny&f=tanar'), 'class'=>"tanar onChangeRequest")); + + echo ''."\n"; + echo ''."\n"; + echo '
    '._TANAR_JOGVISZONYA.''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ' '; _inlineHelp(_KIDT_HELP); + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    55%65%80%100%
    '; + _inlineHelp(_HETI_MUNKAORA_HELP); + echo '
    '; + echo ''; + echo ' '; + echo _ORA.' '; + _inlineHelp(_HETI_KOTELEZOORASZAM_HELP); + echo '
    '; + echo ''; + echo ''; + echo ' '; _inlineHelp(_STATUSZ_HELP); + echo ''; + echo ''; + echo '
    '._TOVABBKEPZES_FORDULO_DT.''; + echo ''; + echo ' '; + _inlineHelp(_TOVABBKEPZES_FORDULO_DT_HELP); + echo '
    '."\n"; + + + echo '
    '."\n"; + formEnd(); + + } + + function putTanarKepesites($ADAT) { + + formBegin(array('action'=>href('index.php?page=naplo&sub=intezmeny&f=tanar'), 'class'=>"tanar")); + + echo ''."\n"; + echo ''."\n"; + echo '
    '._TANAR_KEPESITESE.''."\n"; + echo ''."\n"; + echo ''; + echo ''; + if (is_array($ADAT['tanarAdat']['kepesites']) && count($ADAT['tanarAdat']['kepesites'])>0) + foreach ($ADAT['tanarAdat']['kepesites'] as $idx => $kAdat) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + + echo ''; + + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + + + echo '
    végzettségfokozatspecializációképesítés megnevezése
    '.$kAdat['vegzettseg'].''.$kAdat['fokozat'].''.$kAdat['specializacio'].''.$kAdat['kepesitesNev'].' ('.$kAdat['kepesitesId'].')
    '; + echo ''; + echo ''; + echo ''; + echo '
    Új képesítés
    '; + echo ''; + echo ' '; _inlineHelp(_VEGZETTSEG_HELP); + echo ''; + echo ''; + echo ' '; _inlineHelp(_FOKOZAT_HELP); + echo ''; + echo ''; + echo ' '; _inlineHelp(_SPECIALIZACIO_HELP); + echo ''; + echo ''; + echo ' '; _inlineHelp(_KEPESITESNEV_HELP); + echo ''; + echo '
    '."\n"; + + echo '
    '."\n"; + formEnd(); + + } + + function putUjTanar() { + formBegin(array('action'=>href('index.php?page=naplo&sub=intezmeny&f=tanar'), 'class'=>"tanar")); + + echo ''."\n"; + echo '
    '._UJ_TANAR.''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + +/* + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; +*/ + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo '
    '."\n"; + + echo ''; + + echo '
    '."\n"; + formEnd(); + + } + + function putKepUpload($tanarId) { + formBegin(array('enctype'=>"multipart/form-data",'class'=>'tanar')); + echo '
    '._FENYKEPE.''."\n"; + echo '
    '. + putFace($tanarId,'tanar',"100",false); + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '; + formEnd(); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankor.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankor.phtml new file mode 100644 index 00000000..2401da8f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankor.phtml @@ -0,0 +1,376 @@ +'tankor')); + echo '

    '._TANKORNEV_MODOSITAS.'

    '; + + echo '
    '; + echo '

    '._TANKORNEV_MODOSITAS_HELP.'

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '

    '; + echo ''; + + echo ''; + echo ''; + + echo '

    '; + formEnd(); + + } + + + function putUjTankorForm($MK,$TARGY,$TANAR,$OSZTALY,$SZEMESZTER,$TOPOST,$ADAT) { + + global $TANKOR_TIPUS; + /* $TOPOST['tankoradat'] */ + + if (!is_array($TARGY)) return false; + $SZEMCHECK = array(); + for ($i=0; $i$_formClass.'tankor', 'method'=>'post', 'action'=>'')); + echo ''."\n"; + echo ''."\n"; + foreach($TOPOST as $_t => $_v) + echo ''."\n"; + echo '

    '._TANKOR.' '; + echo $MK['leiras'].'/'.$TARGY['targyNev']; + if ($TARGY['targyJelleg']!='') echo ' ('.$TARGY['targyJelleg'].')'; + for ($i=0; $i'; + echo $TOPOST['tankortanar'][$i]['tanarNev']; + echo ''; + } + echo '

    '."\n"; + + echo ''; + + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + + echo '
    '._ELNEVEZES.''; + echo $ADAT['tanev']; + echo ''; + /* + 12.abcd angol nyelv II-ALAP óra + évfolyam(ok), osztály, tárgy, (extra tankorJel), elnevezés (tankorNevCimke) + */ + // találjuk ki az elnevezést! + if ($TOPOST['tankorId']!='') { + $tankorNev = $TOPOST['tankoradat']['tankorNev']; + foreach ($TANKOR_TIPUS as $_k=>$_v) { + // ha a név utolsó egyésége megegyezik a jelöléssel... + if (substr($tankorNev, -strlen($_v)) == $_v) { $_tipus = $_v; break; } + } + } elseif ($TOPOST['tankoradat']['tipus']!='') { + $_tipus=$TOPOST['tankoradat']['tipus']; + } + echo ''; + if (defined('__AKG_TANKORNEV') && __AKG_TANKORNEV === true) { + echo ''; + } + echo '
    '._TANKORCN.''; + echo ''; + echo '
    '; + + echo '

    '._ALTALANOS.'

    '."\n"; + + echo ''; + echo ''."\n"; + echo ''; + echo ''; +if (count($TOPOST['tankorcsoport']['idk'])>1) { + echo ''."\n"; +} + echo ''; + + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''; +/* REV 2185++ - tól nem kell, nem lehet. A típus determinál + echo ''; + + echo ''; + + echo ''; + + echo ''; +*/ + echo '
    '._TIPUS.''; + echo ''; + + echo ''; + echo '
    '; + echo 'Megváltoztassam a tankörhöz tartozó összes - már rögzített - hiányzás típusát +
    ebben a tanévben('.$ADAT['tanev'].')?'; + echo ''; + echo ''; + + echo '
    '; + echo '
    '._TANKORCSOPORTOK.'
    '; + echo ''; + echo '
    '._VALASZTHATO.''; + if (isset($TOPOST['tankoradat']['felveheto'])) $_CHK[$TOPOST['tankoradat']['felveheto']] = ' checked="checked"'; + else $_CHK[0] = ' checked="checked"'; + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo '
    '._EVKOZI_KOVETELMENY.''; + + if (isset($TOPOST['tankoradat']['kovetelmeny'])) { + $_CHK[$TOPOST['tankoradat']['kovetelmeny']] = ' checked="checked"'; + $_CLASS[$TOPOST['tankoradat']['kovetelmeny']]=' class="sel"'; + } else { + $_CHK['jegy'] = ' checked="checked"'; + } + + foreach ( $ADAT['tankor.kovetelmeny'] AS $i => $kovetelmeny) { + echo '
    '; + echo ''; + echo ''; + echo '
    '; + } + +/* echo ''; + echo ''; + echo ''; + echo ''; +*/ echo '
    '._JELENLET.''; + if (isset($TOPOST['tankoradat']['jelenlet'])) $_CHK[$TOPOST['tankoradat']['jelenlet']] = ' checked="checked"'; + else $_CHK['kötelező'] = ' checked="checked"'; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '; + echo ''; + + $_CHK = array(); + + echo '

    '._SZEMESZTEREK.'

    '; + echo ''; + echo ''; + for ($i=0; $i'; + echo $SZEMESZTER[$i]['tanev'].' '.$SZEMESZTER[$i]['szemeszter']; + echo ''."\n"; + } + echo ''."\n"; + + echo ''; + for ($i=0; $i'; + $_RO = ($SZEMESZTER[$i]['statusz']=='lezárt') ? ' readonly="readonly" onclick="return false;" class="lezart" ':''; + $_CHK = (is_array($SZEMCHECK) && in_array($SZEMESZTER[$i]['tanev'].'/'.$SZEMESZTER[$i]['szemeszter'],$SZEMCHECK))? ' checked="checked"':''; + $_ID = 'c'.$SZEMESZTER[$i]['tanev'].'/'.$SZEMESZTER[$i]['szemeszter']; + echo ''; + echo ''."\n"; + } + echo ''; + + echo ''; + for ($i=0; $i'; + $_RO = ($SZEMESZTER[$i]['statusz']=='lezárt') ? ' readonly="readonly" class="lezart" ':''; + $_val = $SZEMORASZAM[$SZEMESZTER[$i]['tanev'].'/'.$SZEMESZTER[$i]['szemeszter']]; + $_ID = 't'.$SZEMESZTER[$i]['tanev'].'/'.$SZEMESZTER[$i]['szemeszter']; + echo ''; + echo ''."\n"; + } + echo ''; + echo '
    '._SZEMESZTER.'
    '._HETI_ORASZAM.'
    '."\n\n"; + + echo '

    '._RESZTVEVO_OSZTALYOK.'

    '; + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''; + } + echo '
    '._OSZTALYJELE.''._LEIRAS.'
    '; + $_CHK = (is_array($TOPOST['osztalyok']) && in_array($OSZTALY[$i]['osztalyId'],$OSZTCHECK))? ' checked="checked"':''; + echo ''; + echo ''; + echo ''; + + + echo '
    '; + + if ($TOPOST['tankorId']=='') { // engedélyezzüz a tanár felvételét + + echo '

    '._MEGJELOLTIDOSZAKBANTANAR.'

    '; + echo ''; + } + + + echo ''; + + formEnd(); + + } + + function putTankorLezarForm($tankorId, $mkId, $targyId, $tanev = __TANEV) { + + formBegin(array('class'=>'tankor')); + echo '

    '._TANKOR_LEZARAS.'

    '; + + echo '

    '._TANKOR_LEZARAS_HELP.'

    '; + echo '

    '; + echo ''."

    \n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '

    '; + echo ''; + echo ''; + echo ''; + echo '

    '; + formEnd(); + } + + + function putTankorTorolForm($tankorId, $mkId, $targyId, $tanev = __TANEV) { + + formBegin(array('class'=>'tankor')); + echo '

    '._TANKOR_TORLES.'

    '; + + echo '

    '._TANKOR_TORLES_HELP; + + echo ''."

    \n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '

    '; + echo ''; + echo ''; + echo '

    '; + formEnd(); + } + + function putTankorTargyForm($ADAT) { + + formBegin(array('class'=>'tankor')); + echo '

    '._TANKOR_TARGY_MODOSITAS.'

    '; + + echo '

    '._TANKOR_TARGY_HELP.'

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '

    '; + echo ''; + echo ''; + echo ''; + echo '

    '; + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorDiak.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorDiak.phtml new file mode 100644 index 00000000..272d6908 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorDiak.phtml @@ -0,0 +1,310 @@ +'post', 'action'=>'', 'class'=>'tankor')); + echo '

    '.ucfirst(_TANAR).': '.implode(', ',$TT).'

    '; + + echo '

    '._DIAKOK.'

    '; + + if ($ADAT['tankor']['diakjai']['nevek']!==false) { + + echo ''; + __tableHeadFoot(); + echo ''; + $i=1; + if (is_array($ADAT['tankor']['diakjai']['nevek'])) + foreach ($ADAT['tankor']['diakjai']['nevek'] as $diakId=>$DIAK) { + $_D = $ADAT['tankor']['diakjai']['adatok'][$diakId]; + $_db = count($_D); + $_CHK = (is_array($ADAT['diakSelected']) && in_array($diakId,$ADAT['diakSelected'])) ? 'checked="checked"':''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + for ($k=1; $k'; + echo ''; + echo ''; + echo ''; + } + } + echo ''; + echo '
    '; + echo ''; + echo $i++; + echo '. '.$DIAK['diakNev']; + echo ' '; + $_osztalyId=$ADAT['diakOsztaly'][$diakId][0]; + if (isset($ADAT['osztaly'][$_osztalyId]['osztalyJel'])) echo '('.$ADAT['osztaly'][$_osztalyId]['osztalyJel'].')'; + echo ''; + echo $_D[0]['beDt']; + echo ''; + echo $_D[0]['kiDt']; + echo ''; + for ($k=0; $k'; + echo $ADAT['diakKepzes'][$diakId][$k]['kepzesNev']; + echo ''; + } + echo '
    '; + echo $_D[$k]['beDt']; + echo ''; + echo $_D[$k]['kiDt']; + echo '
    '; + + } + + + formEnd(); + + } + + function __tableHeadFoot() { + echo ''; + echo ''._NEV.''._METTOL.''._MEDDIG.''._NEME.''._KEPZES.''."\n"; + echo ''; + echo ''; + echo ''._NEV.''._METTOL.''._MEDDIG.''._NEME.''._KEPZES.''."\n"; + echo ''; + } + + function putTankorDiakForm($ADAT) { + + $tankorId = $ADAT['tankorId']; + $TT = array(); + for ($i = 0; $i < count($ADAT['tankor']['tanarai']); $i++) { + $TT[] = $ADAT['tankor']['tanarai'][$i]['tanarNev']; + } + + formBegin(array('method'=>'post', 'id'=>'tankorDiak', 'class'=>'tankor', 'action'=>'')); + + if (count($TT)>0) echo '

    '.ucfirst(_TANAR).': '.implode(', ',$TT).'

    '; + + echo '

    '._DIAKOK.'

    '; + + if ($ADAT['tankor']['diakjai']['nevek']!==false) { + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; +# echo ''."\n"; +# echo ''."\n"; +# echo ''."\n"; + echo ''; + __tableHeadFoot(); + echo ''; + $i=1; + + if (is_array($ADAT['tankor']['diakjai']['nevek'])) + foreach ($ADAT['tankor']['diakjai']['nevek'] as $diakId=>$DIAK) { + $_D = $ADAT['tankor']['diakjai']['adatok'][$diakId]; + $_db = count($_D); + $_CHK = (is_array($ADAT['diakSelected']) && in_array($diakId,$ADAT['diakSelected'])) ? 'checked="checked"':''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + } + echo ''; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo $i++; + echo '. '.$DIAK['diakNev']; + echo ' '; + $_osztalyId=$ADAT['diakOsztaly'][$diakId][0]; + if (isset($ADAT['osztaly'][$_osztalyId]['osztalyJel'])) echo '('.$ADAT['osztaly'][$_osztalyId]['osztalyJel'].')'; + echo ''; + echo $_D[0]['beDt']; + echo ''; + echo $_D[0]['kiDt']; + echo ''; + echo ($ADAT['diakAdat'][$diakId]['nem']); + echo ''; + for ($k=0; $k'; + echo $ADAT['diakKepzes'][$diakId][$k]['kepzesNev']; + echo ''; + } + echo '
    '; + + echo ' '.$ADAT['refDt'].' - '; + echo ''; + if ($ADAT['voltUtkozes'] === true && __NAPLOADMIN) echo ''; + echo ''; + formEnd(); + } + } + + function putUjDiakForm($ADAT) { + + $tankorId = $ADAT['tankorId']; + + formBegin(array('method'=>'post', 'id'=>'ujDiak', 'class'=>'tankor', 'action'=>'')); + + echo '

    '._UJDIAK.'

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + //echo ''."\n"; + //echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + + formEnd(); + + } + + function putUjDiakForm2($ADAT) { + $tankorId = $ADAT['tankorId']; + + formBegin(array('method'=>'post', 'id'=>'ujDiak', 'class'=>'tankor', 'action'=>'')); + + echo '

    '._UJDIAK.'

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + //echo ''."\n"; + //echo ''."\n"; + $j=0; + $SORT = array(); + foreach($ADAT['diakok'] as $_osztalyId => $___D) { + if (isset($ADAT['osztaly'][$_osztalyId]['osztalyJel'])) + $SORT[$ADAT['osztaly'][$_osztalyId]['osztalyJel']]=$_osztalyId; + else // Vendégtanulók miatt... + $SORT[constant('_'.strtoupper($_osztalyId))] = $_osztalyId; + } + + + ksort($SORT); + foreach($SORT as $_oJel => $_osztalyId) { + $DADAT = $ADAT['diakok'][$_osztalyId]; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo '
    '.$_oJel.'
    '.$_oJel.''; + //** + echo ''; + for($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + // -- + echo ''."\n"; + $j++; + } + echo '
    '.($i+1).'.'; + echo ''; + // képzései: + echo ''; + //echo ''; + echo $_neme; + echo ''; + for ($k=0; $k'; + echo $ADAT['diakKepzes'][$_diakId][$k]['kepzesNev']; + + echo ''; + } + echo '
    '; + //** + + echo '
    '; + + } + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + + formEnd(); + + } + + function __n($D1,$D2) { + $kip = date('z',strtotime($D1)); + $kop = date('z',strtotime($D2)); + list($bY,$bM,$bD) = explode('-',$D1); + list($kY,$kM,$kD) = explode('-',$D2); + $px = $kop-$kip+($kY-$bY)*365-1; + return $px; + } + + /* EZT TESSÉK SZÉPEN MEGÍRNI :) */ + function _put_grafikon($ADAT,$TANEV) { + + // el kellene még tolni a kezdes és zárás ismeretében! + $tanevN = __n($TANEV['kezdesDt'], $TANEV['zarasDt']); + // legyen 1 pixel, 1 nap + $pxx=0; + echo '
    '; + + if (($px=__n($TANEV['kezdesDt'],$ADAT[0]['beDt']))>0) { + echo ''; + $pxx+=$px; + } elseif ($px<0) { // hackit + $ADAT[0]['beDt']=$TANEV['kezdesDt']; + } + for($i=0; $i'; + if (is_array($ADAT[$i+1])) { + $px = __n($ADAT[$i]['kiDt'],$ADAT[$i+1]['beDt']); + echo ''; + $pxx+=$px; + } + } + echo '
    '; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorLetszam.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorLetszam.phtml new file mode 100644 index 00000000..c7a935e8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorLetszam.phtml @@ -0,0 +1,83 @@ +'; + echo ''._TANKOR.''._TIPUS.''; + echo ''; + echo _LETSZAM; + + formBegin(); + $_CHK = ($ADAT['osztalyonkent']=='1') ? ' checked="checked" ':''; + echo ''; + _putLimit($ADAT['tankorLetszamLimit']); + echo ''; + echo ''; + echo ''; + formEnd(); + echo ''; + echo ''._TANAROK.''."\n"; + for($i=0; $i=$_D['letszam']) { + echo ''; + echo ''; + echo ''; + echo $_D['tankorNev']; + echo ' ('.$_D['tankorId'].')'; + echo ''; + echo ''; + echo ''; + echo $_D['tankorTipus']; + echo ''; + echo ''; + echo ''; + echo $_D['letszam']; + echo ''; + echo ''; + echo ''; + + if (is_array($_D['letszamOsztaly'])) + foreach( + $_D['letszamOsztaly'] as $osztalyJel => $db + ) { + echo ''; + echo $osztalyJel.':'; + echo $db; + echo ''; + } + + echo ''; + echo ''; + for ($j=0; $j'; +/* + echo ''; + for ($j=0; $j'; +*/ echo ''; + echo ''."\n"; + } + } + echo ''; + + } + + function _putLimit($limit) { + + echo ''; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorSzemeszter.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorSzemeszter.phtml new file mode 100644 index 00000000..a98009fb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorSzemeszter.phtml @@ -0,0 +1,101 @@ +'tankorSzemeszter')); + echo ''."\n"; + echo ''."\n"; +//hö? + if (isset($_POST['tanarId'])) echo ''."\n"; + if (isset($_POST['osztalyId'])) echo ''."\n"; + if (isset($_POST['mkId'])) echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + for ($i = 0; $i < count($ADAT['szemeszterek']); $i++) { + if ($szTanev != $ADAT['szemeszterek'][$i]['tanev']) { + $szTanev = $ADAT['szemeszterek'][$i]['tanev']; + $colspan = $Tanevek[$szTanev]; + $_class=array(); + $_class[] = ekezettelen($ADAT['szemeszterek'][$i]['statusz']); + if ($tanev == $szTanev) $_class[] = 'aktualis'; + echo ''."\n"; + } + } + echo ''."\n"; + echo ''."\n"; + for ($i = 0; $i < count($ADAT['szemeszterek']); $i++) { + $_class=array(); + $_class[] = ekezettelen($ADAT['szemeszterek'][$i]['statusz']); + if ($tanev == $ADAT['szemeszterek'][$i]['tanev']) $_class[] = 'aktualis'; + echo ''."\n"; + } + echo ''."\n"; + + for ($i = 0; $i < count($ADAT['tankorok']); $i++) { + + $tankorId = $ADAT['tankorok'][$i]['tankorId']; + echo ''."\n"; + + echo ''."\n"; + for ($j = 0; $j < count($ADAT['szemeszterek']); $j++) { + $szTanev = $ADAT['szemeszterek'][$j]['tanev']; + $szSzemeszter = $ADAT['szemeszterek'][$j]['szemeszter']; + + + $_class=array(); + $_class[] = ekezettelen($ADAT['szemeszterek'][$j]['statusz']); + if ($tanev == $ADAT['szemeszterek'][$j]['tanev']) $_class[] = 'aktualis'; + echo ''."\n"; + } + echo ''."\n"; + } + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '._TANKOR.' ('.$tanev.')'; + echo $szTanev; + echo '
    '.$ADAT['szemeszterek'][$i]['szemeszter'].'
    '; + echo ''; + echo $ADAT['tankorok'][$i]['tankorNev'].' ('.$ADAT['tankorok'][$i]['tankorId'].')'; + echo ''; + echo ''; + for ($j=0; $j'.$ADAT['tankorTanarok'][$tankorId][$j]['tanarNev'].' '; + echo $ADAT['tankorTanarok'][$tankorId][$j]['minBeDt'].'--'; + echo $ADAT['tankorTanarok'][$tankorId][$j]['maxKiDt']; + } + echo ''; + echo ''; + + if ($ADAT['szemeszterek'][$j]['statusz'] == 'lezárt') $disabled = ' disabled="disabled" '; + else $disabled = ''; + $value = "$tankorId/$szTanev/$szSzemeszter"; + $name = 'O_'.$tankorId.'_'.$szTanev.'_'.$szSzemeszter; + if (is_array($ADAT['tankorSzemeszter'][$tankorId][$szTanev][$szSzemeszter])) { + $szAdat = $ADAT['tankorSzemeszter'][$tankorId][$szTanev][$szSzemeszter]; + $tankorNev = $szAdat['tankorNev']; + $title = $tankorNev; + echo ''."\n"; + echo ''."\n"; + } else { + echo ''."\n"; + echo ''."\n"; + } + + echo '
    '."\n"; + + formEnd(); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorTanar.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorTanar.phtml new file mode 100644 index 00000000..78a9f417 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorTanar.phtml @@ -0,0 +1,103 @@ +'post', 'id'=>'tankorTanarAssoc', 'class'=>'tankor', 'action'=>'')); + + //echo '

    '._TANTARGYFELOSZTAS.'

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; +# echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''; + for($i = 0; $i < count($ADAT['tankorok']); $i++) { + $_D = $ADAT['tankorok'][$i]; + echo ''; + echo ''; + echo ''; + echo ''; + // -- ELEJE nem jó, ha sok tankör adatait együtt módosítjuk! -- + if (count($ADAT['tankorok']) == 1) { + echo ''; + echo ''; + } + // -- VÉGE nem jó, ha sok tankör adatait együtt módosítjuk! -- + echo ''; + } + echo '
    '._TANKOR.''._ORASZAM.''._AKTUALIS_TANAR.''._VALASZTOTT_TANAR.''._IDOSZAK.'
    '; + echo ''; + echo $_D['tankorNev']. ' ('.$_D['tankorId'].')'; + echo ''."\n"; + echo ''; + echo ''; + echo sprintf('%01.1f',$_D['oraszam']); + echo ''; + echo ''; + echo '
      '; + for($j = 0; $j < count($_D['tanarok']); $j++) { + echo '
    • '; + echo $_D['tanarok'][$j]['tanarNev']; + echo '
    • '."\n"; + } +// for ($j=0; $j'; +// echo $ADAT['tankorTanarok'][$_D['tankorId']][$j]['tanarNev']; +// echo ' ('.$ADAT['tankorTanarok'][$_D['tankorId']][$j]['minBeDt'].'--'; +// echo $ADAT['tankorTanarok'][$_D['tankorId']][$j]['maxKiDt'].')'; +// echo ''; +// } + echo '
    '; + echo '
    '; + echo ''; + _putTanarSelect('TA'.$_D['tankorId'], $ADAT['tanarok'], $_D['tanarok']); + echo ''; + echo '
      '; + for ($j=0; $j'; + echo $ADAT['tankorTanarBejegyzesek'][$_D['tankorId']][$j]['tanarNev']; + echo ': '.str_replace('-','.',$ADAT['tankorTanarBejegyzesek'][$_D['tankorId']][$j]['beDt']).'. – '; + if ($ADAT['tankorTanarBejegyzesek'][$_D['tankorId']][$j]['kiDt']=='') { + echo ''; + } else { + echo str_replace('-','.',$ADAT['tankorTanarBejegyzesek'][$_D['tankorId']][$j]['kiDt']).'.'; + } + echo ''; + echo ''; + } + echo '
    '; + echo '
    '; + // -- ELEJE nem jó, ha sok tankör adatait együtt módosítjuk! -- + if (count($ADAT['tankorok']) == 1) { + echo ' '; + echo ''; + } + // -- VÉGE nem jó, ha sok tankör adatait együtt módosítjuk! -- + formEnd(); + + } + + function _putTanarSelect($name, $TANAROK, $TANITOK) { + for ($i = 0; $i < count($TANITOK); $i++) { + $TAN[] = $TANITOK[$i]['tanarId']; + $_class = "vantanara"; + } + echo ''; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorTanarHozzarendeles.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorTanarHozzarendeles.phtml new file mode 100644 index 00000000..aa9747fc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankorTanarHozzarendeles.phtml @@ -0,0 +1,147 @@ +'; + + echo '
    '; + + echo ''; + + echo '
    '; + echo 'Elfogadható óraszám: ' + .'«kötelező óraszám»' + .' 2' + .'
      ' + .'
    • 0
    • 1
    • 2
    • 3
    • 4
    • ' + .'
    • 5
    • 6
    • 7
    • 8
    • 9
    • ' + .'
    ' + .'
    ' + .' – ' + .'«kötelező óraszám»' + .' 2' + .'
      ' + .'
    • 0
    • 1
    • 2
    • 3
    • 4
    • ' + .'
    • 5
    • 6
    • 7
    • 8
    • 9
    • ' + .'
    ' + .'
    '; + echo '
    '; + + echo '
    '; + echo 'Tankörök száma: '; + echo ''.$ADAT['tankorStat']['kesz'].'/'; + echo ''.$ADAT['tankorStat']['osszes'].' = '; + echo ''.number_format($ADAT['tankorStat']['kesz'] / $ADAT['tankorStat']['osszes'] * 100,1,',','').'%'; + echo '
    '; + + echo '
    '; + echo '' + .' Szűrés ' + .''; + echo '
    '; + + + + echo '
    '; + + } + + function putTankorTanarMatrix($ADAT) { + + $COLORS = array(1=>'#198198',2=>'#298298',3=>'green',4=>'#ffaaaa',5=>'#aabbcc',6=>'#bbccaa',7=>'#ccaabb',8=>'#aaccbb',9=>'#aaccee','9Ny'=>'#ffccee',10=>'#ffaacc',11=>'#eeffbb',12=>'#ccddff'); + $TANKOROK = $ADAT['tankorok']; + $TANAROK = $ADAT['tanarok']; + for ($i=0; $i'tantargyFelosztasForm')); + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + $first = true; + foreach ($TARGYTANKOR as $_targyId => $_TA) { + if ($first) { $class=' class="first targy" '; $first=false; } + else { $class=' class="targy" '; } + echo ''; + } + echo ''; + echo ''; + echo ''; + $first = true; + foreach ($TARGYTANKOR as $_targyId => $TANKORSOR) + for ($i=0; $i 1) $class .= ' tobb'; + elseif (count($_tankorAdat['tanarIds']) == 1) $class .= ' kesz'; + } + $class .= ' tdTargy-'.$_targyId; + if (!$_tankorAdat['bontasOk']) $class .= ' bontasHiba'; + $color = $COLORS[substr($_tankorAdat['tankorNev'],0,strpos($_tankorAdat['tankorNev'],'.') )]; + echo ''; + } + echo ''; + echo ''."\n"; + + for ($i=0; $i'; + echo ''; + echo ''; + $first = true; + foreach ($TARGYTANKOR as $_targyId => $TANKORSOR) { + for ($j=0; $j'; + $_CHK = in_array($_tanarAdat['tanarId'],$_tankorAdat['tanarIds']) ? 'checked="checked" ':''; + echo ''; + echo ''; + } else { + echo ''; + } + }} + echo ''."\n"; + } + echo '
    '.$ADAT['keszTankorDb'].' db kész/'.count($TANKOROK).' db tankörÓraszám'; + echo $ADAT['targyAdat'][$_targyId]['targyNev']; + echo '
    0 db kész/'.count($TANAROK).' db tanár'; + echo str_replace($ADAT['targyAdat'][$_tankorAdat['targyId']]['targyNev'].' ','',$_tankorAdat['tankorNev']); + echo '
    '; + echo $_tanarAdat['tanarNev']; + echo '('.$_tanarAdat['tanarId'].')'; // DEBUG TODO, legyen inkább a beépülő jobb sáv + echo ''; + echo ''.number_format($_tanarAdat['lekotottOraszam'],2,',','').'/'; + echo ''.number_format($_tanarAdat['hetiKotelezoOraszam'],1,',','').''; + echo '
    '."\n"; + echo '
    '."\n"; + formEnd(); + } + + function _inarray($tanarId,$tankorTanar) { + for ($i=0;$i diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/terem.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/terem.phtml new file mode 100644 index 00000000..68c826f9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/terem.phtml @@ -0,0 +1,101 @@ +'."\n"; + + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + foreach ($ADAT['teremAdat'] as $teremId => $tAdat) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + } + echo ''."\n"; + + echo '
    '._TEREMID.''._LEIRAS.''._FEROHELY.''._TIPUS.''._TELEPHELY.''.'
    '; + echo '
    '.$tAdat['teremId'].''; + echo ' '; + echo $tAdat['leiras']; + echo ''.$tAdat['ferohely'].''.$tAdat['tipus'].''.$ADAT['telephelyAdat'][ $tAdat['telephelyId'] ]['telephelyRovidNev'].''.$tAdat['teremAllapot'].'
    '."\n"; + + echo ''."\n"; + + } + + function putTeremForm($ADAT) { + + $tAdat = $ADAT['teremAdat'][ $ADAT['teremId'] ]; + + formBegin(array('class'=>'terem','action'=>href('index.php?page=naplo&sub=intezmeny&f=terem'))); + + if ($ADAT['teremId']=='') { + echo ''."\n"; + echo ''."\n"; + echo '

    '._UJ_TEREM.'

    '; + } else { + echo ''."\n"; + echo ''."\n"; + echo '

    '.$tAdat['leiras'].'

    '; + } + + + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '."\n"; + + echo '
    '; + + echo ''."\n"; + echo ''.$ADAT['teremId'].'
    '; + + echo ''."\n"; + echo '
    '."\n"; + + echo ''."\n"; + echo '
    '."\n"; + + echo ''."\n"; + echo '
    '."\n"; + + echo '
    '; + echo ''."\n"; + + formEnd(); + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tovabbkepzes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tovabbkepzes.phtml new file mode 100644 index 00000000..cafddee2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tovabbkepzes.phtml @@ -0,0 +1,479 @@ +'; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + + } + + function putTovabbkepzesTerv($ADAT) { + + if (count($ADAT['lehetsegesTovabbkepzesek'])==0) return false; + + $TOVABBKEPZESEK = reindex($ADAT['tovabbkepzesek'],array('tovabbkepzesId')); + $TANAROK = reindex($ADAT['tanarok'],array('tanarId')); + $TE_STATUSZ = array('','terv','jóváhagyott','elutasított','megszűnt','megszakadt','teljesített'); + $TE_STATUSZ_INDIKATOR = array( + '' =>'', + 'terv' => '', + 'jóváhagyott' => '', + 'elutasított' => '', + 'megszakadt' => '', + 'megszűnt' => '', + 'teljesített' => ''); + + $TE = reindex($ADAT['tovabbkepzesTerv'],array('tovabbkepzesId','tanarId','tanev')); + formBegin(array('id'=>'tovabbkepzesTerv')); + echo '

    '; + echo _TOVABBKEPZES_TERV.' – '.$ADAT['tanev']; + if (__TANAR) echo ' – '._USERCN; + if (__NAPLOADMIN || __VEZETOSEG || __TITKARSAG) echo ' – '; + echo '

    '; + echo ''; + echo ''; + // Így is lehet, de inkább listázzuk ki az összes lehetséges továbbképzést + /* + echo ''; + */ + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if (__MODOSITHAT) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + for ($i=0;$i'; + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''; + /* más kontrollok is elképzelhetők, pl input gombok + echo ''; + */ + echo ''; + echo ''; + echo ''; + + echo ''."\n"; + } + echo ''; + echo '
    '._TOVABBKEPZES.''._TOVABBKEPZES_FORDULO_DT.''._RESZOSSZEG.''._TAMOGATAS.''._MEGJEGYZES.''._STATUSZ.'
    '._TAMOGATASI_KERET.': Ft.- Ft.- Ft.-
    '; + echo ''; + echo $TE_STATUSZ_INDIKATOR[$_D_TE["tovabbkepzesStatusz"]]; + echo ''; + echo $TOVABBKEPZESEK[$_D['tovabbkepzesId']][0]['tovabbkepzesNev'].' '; + echo ''.$TANAROK[$_D['tanarId']][0]['tanarNev'].''; + echo $TANAROK[$_D['tanarId']][0]['tovabbkepzesForduloDt']; + echo ''; + echo ' Ft.-'; + echo ''; + echo ' Ft.-'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if (__MODOSITHAT===true) { + echo ''; + } else { + echo $_D_TE['tovabbkepzesStatusz']; + } + echo ''; + //$_kulcs = $_D['tovabbkepzesId'].'_'.$_D['tanarId'].'_'.$ADAT['tanev']; + echo ''; + echo '
    '; + // extra: jovahagyasDt, teljesitesDt + + if (count($ADAT['lehetsegesTovabbkepzesek'])>0) { + echo '
    '; + echo '
    '; + echo '
    '; + } + + formEnd(); + + } + + function putTanarokTovabbkepzesAdatai($ADAT) { + +// $tovabbkepzesStatusz = array('terv','jóváhagyott','elutasított','megszűnt','megszakadt','teljesített'); + $tovabbkepzesStatusz = array('teljesített','jóváhagyott','terv'); + + formBegin(array('id'=>'tanarTovabbkepzesForduloDt')); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + for ($i=0;$i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + echo '
    '; + _inlineHelp('A teljesített, jóváhagyott és tervezett továbbképzések összegét a státuszaiknak megfelelő színnel jelezzük az aktuális hét éves ciklusban. A nem akkreditált képzésnél maximum 30 órát számítunk!'); + echo ''._TANAR.' '; + _inlineHelp('A táblázatban a tanárokra vonatkozó státuszok olvashatók. Ha egy tanár továbbképzés forduló dátuma a következő két évben várható és nem éri el a 120 órányi továbbképzést, figyelmeztető felkiáltó jellel jelezzük.'); + echo ''._HETI_KOTELEZO_ORASZAM.''._HETI_MUNKAORA.''._STATUSZ.''; + _inlineHelp('A hétéves ciklus végének számít.'); + echo ' '._TOVABBKEPZES_FORDULO_DT.' '; + echo '
    '; + echo '
    '; + foreach($tovabbkepzesStatusz as $_status) { + if (($_c = intval($_TTC[$_status][0]['sumOraszam']))>0) + echo ''.$_c.''; + $_sum += $_c; + } + echo '
    '; + echo ''.($_forduloEv-8).'/'.($_forduloEv-7).''; + echo ''.($_forduloEv-1).'/'.($_forduloEv).''; + echo '
    '; + if ($_timeframeAlert) { + if ($_sum<120) { + if ($_evdiff>=0) $_class='alert'.$_evdiff; + else $_class='alert'; + echo ''; + } else { + echo ''; + } + } else { + if (is_array($ADAT['tovabbkepzesFolyamat'][$_D['tanarId']])) + echo ''; + else + echo ''; + } + echo ''; + echo $_sum; + echo ''.$_D['tanarNev'].''.$_D['hetiKotelezoOraszam'].''.$_D['hetiMunkaora'].''.$_D['statusz'].''; + echo ''; + echo ''; + echo '
    '; + formEnd(); + + } + + + function putTovabbkepzesek($ADAT) { + /* tovabbkepzesTanar: + `tovabbkepzesId` smallint(5) unsigned NOT NULL, + `tanarId` int(10) unsigned NOT NULL, + `tolDt` date NOT NULL, + `igDt` date DEFAULT NULL, + `tanusitvanyDt` date DEFAULT NULL, + `tanusitvanySzam` varchar(255) COLLATE utf8_hungarian_ci DEFAULT NULL, + */ + if (count($ADAT['tovabbkepzesek'])==0) return false; + + $TOVABBKEPZESEK = reindex($ADAT['tovabbkepzesek'],array('tovabbkepzesId')); + $TANAROK = reindex($ADAT['tanarok'],array('tanarId')); + + + /* Listázzuk a továbbképzések hozzárendelését egy tanárhoz, illetve új hozzárendelést is tehessünk */ + + formBegin(array('id'=>'tanarTovabbkepzesek')); + echo '

    '._TANAROK_TOVABBKEPZESEI.'

    '; + echo ''; + echo ''; + // legyen itt egy táblázat + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if (__MODOSITHAT) { // a táblázat első sora egy inputokból álló sor + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } // módosíthat + echo ''; + for ($i=0;$i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if ($_D['tolDt']!='0000-00-00' && $_D['tolDt']!='') $dbSor++; + } + echo ''; + echo '
    '.''._TANAR.''._TOVABBKEPZES.''._TOLDT.''._IGDT.''._TANUSITVANYDT.''._TANUSITVANYSZAM.''.'
    '; + echo ''; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo '
    '; + echo $_D['tovabbkepzesId']; + echo ''; + echo ''.$TANAROK[$_D['tanarId']][0]['tanarNev'].''.$TOVABBKEPZESEK[$_D['tovabbkepzesId']][0]['tovabbkepzesNev'].''.$TOVABBKEPZESEK[$_D['tovabbkepzesId']][0]['oraszam'].''; + if (__MODOSITHAT) echo ''; + echo '
    '; + + if (($dbSor)>0) { // esettleg darabszám alapjn növelhetjük a méretet + if ($dbSor<20) $_height=40*$dbSor + 70; + else $_height = 600; + echo "
    "; + } + //echo '
    '; + formEnd(); + + } + + function putUjTovabbkepzes($ADAT) { + + $KAT = array('diploma','szakvizsga','akkreditált','egyéb'); + + echo '
    '; + echo '

    '._TOVABBKEPZESEK.'

    '; + + formBegin(); + echo '

    '._UJ_TOVABBKEPZES.'

    '; + echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '.'
    '; + echo _INTEZMENY; + echo ''; + echo ' '; + //_inlineHelp(_TOVABBPEZOINTEZMENY_HELP); + echo ' '; +// _inlineHelp(_TOVABBPEZOINTEZMENY_HELP); + + echo '
    '._TOVABBKEPZES_NEV.'
    '._ORASZAM.''.'
    '._AKKREDITALT.''; + // ''; + echo ''; + echo '
    '; + + formEnd(); + + + if (count($ADAT['tovabbkepzesek'])>0) { + + formBegin(array('id'=>'tovabbkepzesek')); + echo '

    '._FELVETT_TOVABBKEPZESEK.'

    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + } + echo ''; + echo '
    '._TOVABBKEPZES_NEV.''._ORASZAM.''._AKKREDITALT.''._INTEZMENY.'
    '; + echo ''; + echo ''; + echo ''; + echo ' óra'; + echo ''; + //echo ' '; + echo ''; + if ($_D['akkreditalt']==1) echo ' '._AKKREDITALT; + echo ''; + echo $_D['intezmenyRovidNev']; + echo ' ('.$_D['tovabbkepzoIntezmenyId'].')'; + echo ''; + echo ''; + echo '
    '; + formEnd(); + } + + echo '
    '; + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/valtas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/valtas.phtml new file mode 100644 index 00000000..75e6f446 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/valtas.phtml @@ -0,0 +1,85 @@ +'; + echo ''; + for($i=0; $i'; + putFace($T['tanarId'],'tanar',30); + echo ''; + echo ''.$T['tanarNev'].''; + if ($T['titulus']!='') echo '
    '.$T['titulus'].'
    '; + $osztalyai = ($ADAT['tanarOsztaly'][$T['tanarId']]); + for ($j=0; $j
    osztályfőnök '.$ADAT['osztalyok'][$_osztalyId]['osztalyJel']; + echo ' ('.$ADAT['osztalyok'][$_osztalyId]['leiras'].')
    '; + } + $munkakozossegei = ($ADAT['tanarMunkakozosseg'][$T['tanarId']]); // vezetett + for ($j=0; $j'; + echo $munkakozossegei[$j]['munkakozossegNev']. ' munkaközösség-vezető'; + echo ''; + } + echo ''; + if (($i+1) % 3 == 0 && $i!=count($ADAT['tanarok'])-1) echo ''; + } + echo ''; + echo ''; +} + +/* +function putIntezmenyValaszto($Intezmenyek) { + + formBegin(); + + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + +} + +function putTanevValaszto($Tanevek) { + + formBegin(); + + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + formEnd(); +} +*/ +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/verseny.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/verseny.phtml new file mode 100644 index 00000000..2dcd0d84 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/verseny.phtml @@ -0,0 +1,41 @@ +'._VERSENYEK.''; + + formBegin(); + + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + +} + +function putUjVerseny($ADAT) { + + formBegin(); + + echo _TARGY; + echo ''; + + echo _VERSENYNEV; + echo ''; + echo ''."\n"; + + formEnd(); + +} + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/zaradek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/zaradek.phtml new file mode 100644 index 00000000..9382738e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/zaradek.phtml @@ -0,0 +1,78 @@ +'zaradek')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + $tmp = explode('%', $ADAT['zaradek']['szoveg']); + $szoveg = '

    '; + for ($i = 0; $i < count($tmp); $i++) { + if ($i % 2 == 0) { + $szoveg .= $tmp[$i]; + } else { + $szoveg .= ''.$tmp[$i].''; + } + } + $szoveg .= '

    '; + + echo $szoveg; + echo ''; + for ($i = 0; $i < count($ADAT['params']); $i++) { + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + } + echo ''; + echo '
    '._IKTATOSZAM.''; + echo ''; + echo '
    '; + + echo '
    '."\n"; + + formEnd(); + } + + function putDiakZaradekok($ADAT) { + + formBegin(array('class'=>'diakZaradek')); + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + for ($i = 0; $i < count($ADAT['diakZaradekok']); $i++) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''."\n"; + } + echo ''."\n"; + echo '
    '._DATUM.''._SORSZAM.''._SZOVEG.''._DOKUMENTUM.'
    '.$ADAT['diakZaradekok'][$i]['dt'].''.$ADAT['diakZaradekok'][$i]['sorszam'].''.$ADAT['diakZaradekok'][$i]['szoveg'].''.$ADAT['diakZaradekok'][$i]['dokumentum'].''; + if (__NAPLOADMIN) { + echo ''; + } + echo '
    '."\n"; + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/esemenyAdmin.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/esemenyAdmin.phtml new file mode 100644 index 00000000..b1483200 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/esemenyAdmin.phtml @@ -0,0 +1,246 @@ +Új esemény'; + + formBegin(); + + echo ''; + + echo _TIPUS; + echo ''; + + + echo '
    '; + echo _NEV; + echo ''; + + + echo '
    '; + echo _LEIRAS; + echo ''; + + + +// echo _INTERVALLUM (igen/nem); + + echo ''; + + formEnd(); + echo ''."\n"; + + } + + function putKosziEsemenyek($ADAT) { + + echo '
    Köszi esemény minták'; + + formBegin(); + + echo ''; + echo ''; + + formEnd(); + echo '
    '; + } + + function putKosziPont($ADAT) { + + echo '
    Kapható pontok'; + + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '._PONTTIPUS.''._HELYEZES.''._PONT.''.$K['kosziPontTipus'].''.$K['kosziHelyezes'].''.$K['kosziPont'].'
    '."\n"; + + echo '
    '; + + + + echo '
    Új ponttípus'; + + formBegin(); + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + + echo ''; + + formEnd(); + + echo '
    '; + + } + + + /* TANÉV */ + + function putKoszi($ADAT) { + + echo '
    Köszi események a tanévben'; + + formBegin(); + + echo ''; + echo ''; + + if (count($ADAT['koszi'])==0) { + echo '
    '._NINCS.'
    '; + } else { + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '._DATUM.''._FELEV.''._IGAZOLOK.''.$K['dt'].''.$K['felev'].''.$K['igazolo'].'
    '."\n"; + } + + echo ''; + + formEnd(); + + echo '
    '; + + + + } + + function putUjKoszi($ADAT) { + + echo '
    '._UJ_ESEMENY.''; + + formBegin(); + + echo ''; + echo ''; + + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + + echo ''; + +/* echo ''; + echo ''; + echo ''; +*/ + + echo ''; + + echo ''; + + echo '
    '._DATUM.''._JELENTKEZES.''._IGAZOLOK.'
    '; + echo ''; + echo '
    Félév:'; + + echo '
    '; + echo '-'; + echo ''; + echo ''; + // típus, aki igazolhat: diák osztályfőnöke + //echo 'diák'; + echo '
      '; + echo '
    • diákönkörmányzat
    • '; + echo '
    • tanár
    • '; + echo '
    • osztályfőnök
    • '; + echo '
    '; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '."\n"; + + echo ''; + + formEnd(); + + echo '
    '; + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/koszi.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/koszi.phtml new file mode 100644 index 00000000..2b580a8b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/koszi.phtml @@ -0,0 +1,277 @@ +Ezekre az eseményekre jelentkeztél'; + + echo ''; + echo ''; +//'."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + echo '
    '._MIKOR.''._ESEMENY.''._PONT.''._PONT.''.date('Y.m.d. H:i',strtotime($K['rogzitesDt'])).''.$K['kosziEsemenyTipus'].''.$K['kosziEsemenyNev'].''.$K['kosziEsemenyLeiras'].''.($K['pont']).'
    '._IDEN_ENNYIT.':'.$pontsum.'
    '."\n"; + + echo ''; + + + } + + + function putKosziLista($ADAT) { + +/* +mysql> desc kosziDiak; ++--------------+------------------+------+-----+---------------------+-------+ +| Field | Type | Null | Key | Default | Extra | ++--------------+------------------+------+-----+---------------------+-------+ +| kosziId | int(10) unsigned | NO | PRI | NULL | | +| diakId | int(10) unsigned | NO | PRI | NULL | | +| rogzitesDt | timestamp | NO | | CURRENT_TIMESTAMP | | +| jovahagyasDt | timestamp | NO | | 0000-00-00 00:00:00 | | +| kosziPontId | int(10) unsigned | NO | MUL | NULL | | +| pont | int(10) unsigned | NO | | NULL | | ++--------------+------------------+------+-----+---------------------+-------+ +*/ + + + echo '
    Jelentkezz!'; + echo '
    '; + + formBegin(); + + echo ''; + echo ''; + + echo ''; + if ($ADAT['kosziId']!='') { + echo ''; + } + + echo ''; + + formEnd(); + + echo '
    '; + echo '
    '; + + } + + + + + + + + + + + + + + +// ------------ + + + + function putKosziPont($ADAT) { + + echo '
    Kapható pontok'; + + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '._PONTTIPUS.''._HELYEZES.''._PONT.''.$K['kosziPontTipus'].''.$K['kosziHelyezes'].''.$K['kosziPont'].'
    '."\n"; + + echo '
    '; + + + + echo '
    Új ponttípus'; + + formBegin(); + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + + echo ''; + + formEnd(); + + echo '
    '; + + } + + + /* TANÉV */ + + function putKoszi($ADAT) { + + echo '
    Köszi események a tanévben'; + + formBegin(); + + echo ''; + echo ''; + + if (count($ADAT['koszi'])==0) { + echo '
    '._NINCS.'
    '; + } else { + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '._DATUM.''._FELEV.''._IGAZOLOK.''.$K['dt'].''.$K['felev'].''.$K['igazolo'].'
    '."\n"; + } + + echo ''; + + formEnd(); + + echo '
    '; + + + + } + + function putUjKoszi($ADAT) { + + echo '
    Köszi események a tanévben'; + + formBegin(); + + echo ''; + echo ''; + + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; +/* + echo ''; +*/ + echo ''; + echo ''; + echo ''; + echo ''; + + echo '
    '._DATUM.''._FELEV.''._IGAZOLOK.'
    '; + echo 'diák'; + echo 'tanár'; + echo 'osztályfőnök'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '."\n"; + + echo ''; + + + formEnd(); + + echo '
    '; + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/kosziAdmin.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/kosziAdmin.phtml new file mode 100644 index 00000000..4b02f29e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/koszi/kosziAdmin.phtml @@ -0,0 +1,331 @@ +'._IGAZOLANDO.''; + + echo ''; + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + } + echo '
    '._MIKOR.''._ESEMENY.''._PONT.''._NEV.''._TEENDO.''.$K['rogzitesDt'].''.$K['kosziEsemenyTipus'].''.$K['kosziEsemenyNev'].''.$K['kosziEsemenyLeiras'].''.$K['pont'].''.$ADAT['diak'][$K['diakId']]['diakNev'].''; +//print_r($K); + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + formEnd(); + echo '
    '."\n"; + + echo ''; + + + } + + + + +//-.------------------------------------------------------------------- + + + + + + + + + + function putKosziDiakLista($ADAT) { + + + if (count($ADAT['kosziDiakLista'])==0) return; + + $KET = array('iskolai rendezvény','DÖK rendezvény','tanulmányi verseny','sportverseny','foglalkozás','tevékenység','hiányzás'); + + echo '
    Ezekre az eseményekre jelentkeztél'; + + echo ''; + echo ''; +//'."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + echo '
    '._MIKOR.''._ESEMENY.''._PONT.''._PONT.''.$K['rogzitesDt'].''.$K['kosziEsemenyTipus'].''.$K['kosziEsemenyNev'].''.$K['kosziEsemenyLeiras'].''.($pontsum+=$K['pont']).'
    '._IDEN_ENNYIT.':'.$pontsum.'
    '."\n"; + + echo '
    '; + + + } + + + function putKosziLista($ADAT) { + +/* +mysql> desc kosziDiak; ++--------------+------------------+------+-----+---------------------+-------+ +| Field | Type | Null | Key | Default | Extra | ++--------------+------------------+------+-----+---------------------+-------+ +| kosziId | int(10) unsigned | NO | PRI | NULL | | +| diakId | int(10) unsigned | NO | PRI | NULL | | +| rogzitesDt | timestamp | NO | | CURRENT_TIMESTAMP | | +| jovahagyasDt | timestamp | NO | | 0000-00-00 00:00:00 | | +| kosziPontId | int(10) unsigned | NO | MUL | NULL | | +| pont | int(10) unsigned | NO | | NULL | | ++--------------+------------------+------+-----+---------------------+-------+ +*/ + + + echo '
    Jelentkezz ezekre az eseményekre!'; + echo '
    '; + + formBegin(); + + echo ''; + echo ''; + + echo ''; + if ($ADAT['kosziId']!='') { + echo ''; + } + + echo ''; + + formEnd(); + + echo '
    '; + echo '
    '; + + } + + + + + + + + + + + + + + +// ------------ + + + + function putKosziPont($ADAT) { + + echo '
    Kapható pontok'; + + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '._PONTTIPUS.''._HELYEZES.''._PONT.''.$K['kosziPontTipus'].''.$K['kosziHelyezes'].''.$K['kosziPont'].'
    '."\n"; + + echo '
    '; + + + + echo '
    Új ponttípus'; + + formBegin(); + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + + echo ''; + + formEnd(); + + echo '
    '; + + } + + + /* TANÉV */ + + function putKoszi($ADAT) { + + echo '
    Köszi események a tanévben'; + + formBegin(); + + echo ''; + echo ''; + + if (count($ADAT['koszi'])==0) { + echo '
    '._NINCS.'
    '; + } else { + echo ''; + echo ''."\n"; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '._DATUM.''._FELEV.''._IGAZOLOK.''.$K['dt'].''.$K['felev'].''.$K['igazolo'].'
    '."\n"; + } + + echo ''; + + formEnd(); + + echo '
    '; + + + + } + + function putUjKoszi($ADAT) { + + echo '
    Köszi események a tanévben'; + + formBegin(); + + echo ''; + echo ''; + + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; +/* + echo ''; +*/ + echo ''; + echo ''; + echo ''; + echo ''; + + echo '
    '._DATUM.''._FELEV.''._IGAZOLOK.'
    '; + echo 'diák'; + echo 'tanár'; + echo 'osztályfőnök'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '."\n"; + + echo ''; + + + formEnd(); + + echo '
    '; + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/naplo.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/naplo.phtml new file mode 100644 index 00000000..e5d42bfc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/naplo.phtml @@ -0,0 +1,33 @@ +'; + if ($ADAT['beiratlan'] == 0) { + if ($skin!='ajax') { // :( + $i = rand(0, count($UdvozloKep)-1); + echo 'anim gif'; + } + echo _MINDEN_BEIRVA; + if (__JATEK_INSTALLED===true) { + echo '

    2048

    '; + } + } else { + echo ''._BEIRATLAN_ORAK_SZAMA.': '.$ADAT['beiratlan'].''; + } + echo ''; + + } + + function putBeirasiAdatokDiak() { + if (__JATEK_INSTALLED===true) { + echo '

    2048

    '; + } + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/diakTankorJelentkezes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/diakTankorJelentkezes.phtml new file mode 100644 index 00000000..ae808368 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/diakTankorJelentkezes.phtml @@ -0,0 +1,31 @@ +'nyomtat')); + + echo ''."\n"; + echo ''."\n"; + + echo '

    '._OSZTALYOK.'

    '."\n"; + + foreach ($ADAT['osztalyok'] as $osztalyId => $osztalyAdat) { + + echo ''; + echo ''."\n"; + + } + + echo '
    '; + echo ''; + echo ''."\n"; + + echo '
    '; + echo ''."\n"; + + formEnd(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/helyettesitesinaplo.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/helyettesitesinaplo.phtml new file mode 100644 index 00000000..8f83fe6e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/helyettesitesinaplo.phtml @@ -0,0 +1,17 @@ +'letolt')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/osztalyozonaplo.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/osztalyozonaplo.phtml new file mode 100644 index 00000000..312b77d8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/osztalyozonaplo.phtml @@ -0,0 +1,9 @@ +'._LETOLTES.''; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/tankorNaplohozRendeles.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/tankorNaplohozRendeles.phtml new file mode 100644 index 00000000..b92337ce --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/nyomtatas/tankorNaplohozRendeles.phtml @@ -0,0 +1,127 @@ +'; + echo ''; + + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + for ($i = 0; $i < count($ADAT['osztalyTankorei'][$osztalyId]); $i++) { + $tankorId = $ADAT['osztalyTankorei'][$osztalyId][$i]; + $naplo = $ADAT['tankorNaploja'][$tankorId]; + $tankorNev = $ADAT['tankorNeve'][$tankorId]; + echo ''; + echo ''; + if (isset($osztalyId)) { + echo ''; + } + echo ''; + echo ''; + } + echo ''; + echo '
    '._TANKOR.''._JELOLT.''._NAPLO.'
    '; + echo _JELOLT_TANKOROK_SZAMA.': '.count($ADAT['naploTankorei'][$osztalyId]); + echo '
    '; + echo ''; + echo '
    '.$tankorNev.':'.$tankorId.''; + + if ($naplo == $osztalyId) $CHK = ' checked="checked" '; + else $CHK = ''; + + echo ''; + + echo ''.$ADAT['osztalyJele'][$naplo].'
    '; + formEnd(); + + } + + function putHozzarendelesekTorlese() { + formBegin(); + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '."\n"; + formEnd(); + } + + function putHianyzoTankorok($ADAT) { + + echo ''; + + $Hianyzo = array(); + for ($i = 0; $i < count($ADAT['tankorIds']); $i++) { + $tankorId = $ADAT['tankorIds'][$i]; + if ($ADAT['tankorNaploja'][$tankorId] == '') $Hianyzo[] = $tankorId; + } + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + for ($i = 0; $i < count($Hianyzo); $i++) { + $tankorId = $Hianyzo[$i]; + echo ''; +// echo ''; + echo ''; + echo ''; + } + echo ''; + echo '
    '._TANKOR.'
    '; + echo _HIANYZO_TANKOROK_SZAMA.': '.count($Hianyzo); + echo '
    '.($i+1).''.$ADAT['tankorNeve'][$tankorId].'
    '; + } + + function putEloszlas($ADAT) { + + if (!isset($osztalyId)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + for ($i = 0; $i < count($ADAT['osztalyok']); $i++) { + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + echo '
    '._OSZTALY.''._DB.'
    '.$ADAT['osztalyok'][$i]['osztalyJel'].''.count($ADAT['naploTankorei'][ $ADAT['osztalyok'][$i]['osztalyId'] ]).'
    '; + } + + } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/ascExport.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/ascExport.phtml new file mode 100644 index 00000000..0fee8df7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/ascExport.phtml @@ -0,0 +1,142 @@ +'export ok')); + + echo '

    '._EXPORTALAS.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + if (count($ADAT['orarendiHet']) > 0) { + echo '
    '._EXPORTALANDO_HET.''."\n"; + for ($i = 0; $i < count($ADAT['orarendiHet']); $i++) { + if ($ADAT['orarendiHet'][$i] == $ADAT['exportalandoHet']) + echo ''."\n"; + else + echo ''."\n"; + echo ''; + } + echo '
    '."\n"; + } + echo '
    '; + if ($ADAT['szeminariumkent']==true) { + echo ''; + } else { + echo ''; + } + echo ''."\n"; + + echo '
    '; + echo ''; + echo ''."\n"; + + echo '
    '; + echo ''; + echo ''."\n"; + + echo '
    '; + echo ''; + echo ''."\n"; + + echo '
    '."\n"; + + echo '
    '."\n"; + echo '' + .'Download' + ._EXPORT_SABLON_LETOLTESE + .''."\n"; + + if (defined('__LOADURL')) echo ''._DOWNLOAD.''."\n"; // Ha sikerült az export, akkor letöltés indítás + formEnd(); + } + + + function putTobbszorosOraForm($ADAT) { + + formBegin(array('class'=>'tobbszoros export')); + + echo '

    '._TOBBSZOROS_ORAK.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + +// echo '
    '._TOBBSZOROS_ORAK.''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; +// echo '
    '."\n"; + + if (count($ADAT['bontas']) > 0) { + echo '
    '; + echo '
    '; + echo ''."\n"; + } + echo '
    '."\n"; + + formEnd(); + } + + function putBlokkOraszamForm($ADAT) { + + formBegin(array('class'=>'blokk export')); + + echo '

    '._ORARENDI_BLOKKOK.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
      '; + foreach ($ADAT['tankorBlokk']['blokkNevek'] as $bId => $bNev) { + echo '
    • '; + echo ' '; + echo $bNev.' ('.$bId.')'; + echo '
    • '."\n"; + } + echo '
    '."\n"; + echo ''."\n"; + + formEnd(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/helyettesites.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/helyettesites.phtml new file mode 100644 index 00000000..1f2668aa --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/helyettesites.phtml @@ -0,0 +1,90 @@ +'.''; + // ----------------------------------------------- + // FEJLÉC + // ----------------------------------------------- + echo '

    '; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + //---------------------------------------------------------- + echo ''; + for($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if ($sor['ki'] == '') { + echo ''; + } else { + echo ''; + } + echo ''; + } // end of hackout + + } + echo ''; + echo '
    Az órarendihez képest változó óraA helyettesítés
    jellege
    '; + //echo ''; + echo 'Az órát tartó
    tanár neve'; + //if ($orderid==3) echo 'rendezés'; + //echo '
    '; + echo '
    óra'; + //echo ''; + echo 'osztály'; + //if ($orderid==1) echo 'rendezés'; + //echo ''; + echo 'tantárgy'; + //echo ''; + echo 'hiányzó'; + //if ($orderid==2) echo 'rendezés'; + //echo ''; + echo 'terem
    '.date('Y-m-d H:i:s').'
    '.$sor['ora'].'.'.$TANKOROK[$sor['tankorId']]['tankorNev'].'   '.$TANAROK[$sor['kit']]['tanarNev'].''.$ADAT['termek'][$sor['teremId']]['leiras'].''; + if ($sor['eredet']=='plusz') + if (in_array($sor['tipus'],array('elmarad','elmarad máskor'))) + echo 'elmarad (plusz)'; + else + echo 'megtartva (plusz) '.$sor['tipus']; + else + echo $sor['tipus']; + echo '-'; + echo ' '.$TANAROK[$sor['ki']]['tanarNev']; + if ($sor['terem']!=$_terem) echo ' ('.$_terem.')'; + echo '
    '; + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarend.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarend.phtml new file mode 100644 index 00000000..798c8e85 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarend.phtml @@ -0,0 +1,448 @@ +'','most'=>false); + $b1 = explode(':',$ADAT[$csengetesiRendTipus][$telephelyId][$n][$ora][0]['tolTime']); + $r = intval($b1[0]).':'.$b1[1]; + $b2 = explode(':',$ADAT[$csengetesiRendTipus][$telephelyId][$n][$ora][0]['igTime']); + $r .= '-'.intval($b2[0]).':'.$b2[1]; + if ( ((date('H')*60+date('i')) >= ($b1[0]*60+$b1[1])) && ((date('H')*60+date('i')) <= ($b2[0]*60+$b2[1])) ) $most = true; + $R['kiir'] = $r; + $R['most'] = $most; + $R['dataTol'] = str_replace(':','',$ADAT[$csengetesiRendTipus][$telephelyId][$n][$ora][0]['tolTime']); + $R['dataIg'] = str_replace(':','',$ADAT[$csengetesiRendTipus][$telephelyId][$n][$ora][0]['igTime']); + return $R; + } + + function putOrarend($ADAT) { + global $aHetNapjai,$skin; + + /* Képzés-Mátrix */ + //dump($ADAT['kepzesOraterv']); + if (is_array($ADAT['kepzesOraterv']) && count($ADAT['kepzesOraterv'])>0) { + $kepzes_figyel = true; + $KEPZES_MATRIX[2]=$ADAT['kepzesOraterv']['első nyelv']['sum']; + $KEPZES_MATRIX[3]=$ADAT['kepzesOraterv']['második nyelv']['sum']; + $KEPZES_MATRIX[1]=$ADAT['kepzesOraterv']['mintatantervi']['sum'] + +$ADAT['kepzesOraterv']['kötelezően választható']['sum'] + +$ADAT['kepzesOraterv']['szabadon választható']['sum'] + ; + //dump($KEPZES_MATRIX); + } else $kepzes_figyel = false; + // ---------------- + $multiTelephely = (count($ADAT['orarend']['telephelyIdk'])>1); + if ($multiTelephely) { echo ''; } + for ($i=0; $iMaYoR Social Edition'; + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '

    '.$ADAT['toPrint'].'

    '; + echo ''."\n"; + echo ''; + echo ''; + if (is_array($ERINTETTHETEK)) { + echo ''; + } else { + echo ''; + } + for ($nap=1; $nap<=$ADAT['hetiMaxNap']; $nap++) { + // if ($skin=='pda' + // && in_array($ADAT['orarend']['napok'][$nap]['tipus'], array('tanítási nap','speciális tanítási nap')) + // && $ADAT['orarend']['napok'][$nap]['dt'] != date('Y-m-d')) continue;; + // + + $_ma_class = ($nap==date('w') && $ADAT['orarend']['napok'][$nap]['dt']==date('Y-m-d')) ? 'ma': ''; + + $_th_class = ($ADAT['orarend']['napok'][$nap]['megjegyzes']=='') ? '': ' spec '; + $_th_class .= $_ma_class; + $_th_class .= (in_array($ADAT['orarend']['napok'][$nap]['csengetesiRendTipus'],array('','normál'))) ? '': ' spec '.ekezettelen($ADAT['orarend']['napok'][$nap]['csengetesiRendTipus']); + + echo ''; + } + echo ''; + echo ''."\n"; + + if (__ALLOWSET===true) { + $_footclass = ($ADAT['publikusOrarend']) ? 'publikus' : 'nempublikus'; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + } + echo ''."\n"; +// echo ''; + if (count($ADAT['dolgozat']['tervezett'])>0 || count($ADAT['jegyzet'])>0) { $_jegyzetSorCss = ''; } else { $_jegyzetSorStyle = 'display:none;'; } + echo ''; + echo ''; + for ($nap=1;$nap<=$ADAT['hetiMaxNap'];$nap++) { + $dt = $ADAT['NAPOK'][$nap-1]; + $_ma_class = ($nap==date('w') && $ADAT['orarend']['napok'][$nap]['dt']==date('Y-m-d')) ? 'ma': ''; + echo ''; + } + echo ''; + + for($ora=$ADAT['napiMinOra']; $ora<=$ADAT['napiMaxOra']; $ora++) { + echo ''; + echo ''; + for ($nap=1; $nap<=$ADAT['hetiMaxNap']; $nap++) { + //$dt = $ADAT['orarend']['napok'][$nap]['dt']; + $dt = $ADAT['NAPOK'][$nap-1]; + if ($skin=='pda' + && in_array($ADAT['orarend']['napok'][$nap]['tipus'], array('tanítási nap','speciális tanítási nap')) + && $dt != date('Y-m-d')) continue;; + + $_eppTartClass = ($_CSR['most']===true && $nap==date('w')) ? 'eppTart':''; + $_ma_class = ($nap==date('w')) ? 'ma': ''; + + echo ''."\n"; + } + echo ''."\n"; + } + echo ''; + echo ''; + if ($kepzes_figyel) { + echo ''; + } + echo ''; + echo '
    '.implode(',',array_keys($ERINTETTHETEK)).'.'._HET.'
    '.$ADAT['orarend']['db'].' '._ORA.''.'
    '; + $aznapErintettNap = array(); + for ($b=0; $b'; + echo (count($aznapErintettNap['megjegyzes'])==0) ? $aHetNapjai[($nap-1)] : implode('; ',array_unique($aznapErintettNap['megjegyzes'])); + echo ''; + + if ($ADAT['orarend']['napok'][$nap]['dt']!='') { + echo '
    '; + if (_POLICY=='public') { + echo ''.$ADAT['orarend']['napok'][$nap]['dt'].'/'.$ADAT['orarend']['napok'][$nap]['het'].''; + } else { + echo ''; + } + if (_POLICY=='private' && in_array(__JEGYZETSZEREPTIPUS,array('diak','tanar'))) echo ''; + if (_POLICY=='private' && __TANAR===true) { + if ($ADAT['kivalasztott'][0] == 'tankor') { + $_href = 'index.php?page=naplo&sub=osztalyozo&f=dolgozat&tankorId='.$ADAT['kivalasztott'][1]; + } else { + $_href = 'index.php?page=naplo&sub=osztalyozo&f=dolgozat'; + } + echo ''; // dolgozat + } + echo ''; + echo '
    '; + } else { + echo '
    '.$aHetNapjai[($nap-1)].'
    '; // default + } + + echo '
    '; + if ($ADAT['publikusOrarend']) { + echo 'Ez az órarend publikus.'; + } else { + formBegin(); + echo ''; + echo ''; + formEnd(); + } + echo '
    '.$het.'. heti órarend
    '; + echo 'dolgozatok, jegyzetek'; + // echo ''; + echo ''; + //dump($ADAT['dolgozat']['tervezett'][$dt]); + for ($d=0; $d'; + for ($t=0; $t'.$ADAT['dolgozat'][$_dolgozatId]['dolgozatNev']; + echo ''; + // if (count($ADAT['dolgozat']['tervezett'][$dt])>$d+1) echo '
    '; + } + for ($d=0; $d'; + // echo 'Jegyzet:'; + echo makelinksclickable(supertext($_JEGYZET['jegyzetLeiras'])); + if($_JEGYZET['userId']!=__JEGYZETSZEREPID || $_JEGYZET['userTipus']!=__JEGYZETSZEREPTIPUS) { + echo '
    @'.supertext($_JEGYZET['nev']).''; + } + for ($_t=0; $_t'; + } + } + echo '
    '; + echo $ora; + /* az órarendben szereplő órákat vesszük csak figyelembe, a haladásit - egyelőre - nem */ + //if (!$multiTelephely) // mindig az "elsőt" vesszük figyelembe!!! + $_telephelyId = $ADAT['orarend']['telephelyIdk'][0]; + for ($nap=1;$nap<=7;$nap++) { + $_csengetesiRendTipus = $ADAT['orarend']['napok'][$nap]['csengetesiRendTipus']; + $_display = ($nap!= date('w') ? 'style="display:none;"':''); + $_CSR = csengetesiRend($_csengetesiRendTipus,$_telephelyId,$nap,$ora,$ADAT['csengetesiRend']); + $_csrclass = ($_CSR['most']===true) ? 'most':''; + echo '
    '; + echo $_CSR['kiir']; + echo '
    '; + } + echo '
    '; + $het = 0; + $ORARENDI = array(); + for($i=0; $i3) $_tankorTipusId=1; + $KEPZES_MATRIX[$_tankorTipusId]--; + } + // Az órarendből a jelek: + $_targyJel = $_T['targyJel']; + $_osztalyJel = $_T['osztalyJel']; + // figyelem, itt jön a kiírás, a _putOra fv helyett: + $_tipusClass = str_replace(' ','_',$_ORA['tipus']); + $_oraMostVanClass = ($_oraMostVan) ? ' oraMostVan':''; + if ($_T['jelleg']=='osztályfüggetlen') { + $_tipusClass .= ' osztályfüggetlen'; + } + $_oraAdat = (isset($_ORA['oo']) && _POLICY!='public') ? 'oraAdat' : ''; // haladási + $_hianyzasAdat = $ADAT['hianyzas'][$_ORA['oraId']][0]; + $_hianyzasClass = (is_array($_hianyzasAdat) && $_hianyzasAdat['hTipus']=='hiányzás') ? ' nemVoltBent ':''; + echo '
    '; + + if (is_array($_hianyzasAdat)) { + echo ''; + if ($_hianyzasAdat['hTipus']=='hiányzás') + echo ''; + // echo ''; + if ($_hianyzasAdat['hTipus']=='késés') echo $_hianyzasAdat['perc']; + if ($_hianyzasAdat['hTipus']=='felszerelés hiány') echo 'fsz'; + if ($_hianyzasAdat['hTipus']=='egyenruha hiány') echo 'eh'; + if ($_hianyzasAdat['hTipus']=='felmentés') echo 'fm'; + echo ''; + } + + if (is_array($FM[$_T['tankorId']]) && count($FM[$_T['tankorId']])>0) { + $_FM = $FM[$_T['tankorId']]; + for ($fm_i=0; $fm_iFM'; + } + } + if ($TANKOR_DOLGOZAT[$_T['tankorId']][$dt]>0) echo ''; + if ($TANKOR_JEGYZET[$_T['tankorId']][$dt]>0) echo ''; + $_teremKiir = ($_T['teremId'] != $_valosTeremId) ? ''.$ADAT['termek'][$_T['teremId']]['leiras'].''.$ADAT['termek'][$_valosTeremId]['leiras'].'' : $ADAT['termek'][$_T['teremId']]['leiras']; + $_ferohely = $ADAT['termek'][$_valosTeremId]['ferohely']; + $_letszam = $ADAT['tankorLetszamok'][$_T['tankorId']]; + if ($_T['tankorId']!='') { + echo ''; + echo $ADAT['tankorok'][$_T['tankorId']][0]['tankorNev']; + echo ''; + } else { + echo "$_targyjel : $_osztalyJel : "; + } + echo ', '; + echo ''.$_teremKiir.''; + +// mindenkinek módosítható (social edition) +if (MAYOR_SOCIAL === true) { +// if ($_valosTeremId == 0) { + // (`het`,`nap`,`ora`,`tanarId`,`tolDt` = teremId), + $_keyBase = 'OOM+'.$_T['het'].'+'.$nap.'+'.$ora.'+'.$_T['tanarId'].'+'.$_T['tolDt'].'+'.$_ORA['oraId']; + $_hidden = ($_valosTeremId > 0)?' style="display:none" ':''; + echo ''; +// } +} + + echo '
    '; + if ($_ORA['kit']!='') { + echo ''; + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + echo ''; + if ($_ORA['ki']!='') echo ' '.$ADAT['tanarok'][$_ORA['ki']]['tanarNev']; + } else { + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + } + + if (isset($_ORA['oo'])) { + if ($_ORA['leiras']!='') echo ''; + else echo ''; // ° + } + if (in_array($_tankorTipus,array('délutáni','tanórán kívüli'))) { + echo ' ¹'; + } + + echo '
    '; + if (count($T[$nap][$ora]['orak'])>$i+1) + //echo '
    '; + echo '
    '; + } + /* !!! Az orarendTankor összerendezőhöz állnak csak rendelkezésre ezek a fals adatok, és csak tanárnál... + --> lásd még: share/orarend.php + if (count($T[$nap][$ora]['orak'])==0) { + $het = $ADAT['orarend']['napok'][$nap]['het']; + if (count($ADAT['orarend']['orarendiOra'][$het][$nap][$ora])>0) { + $X = $ADAT['orarend']['orarendiOra'][$het][$nap][$ora]; + for ($i=0; $i'; + echo $X[$i]['targyJel'].' : '; + echo $X[$i]['osztalyJel'].' : '; + echo $X[$i]['teremId']; + echo ''; + } + } + } + */ + /* és ide jönnek a pluszok */ + $j=0; + if (is_array($ADAT['haladasi']['orak'][$dt][$ora])) { + foreach ($ADAT['haladasi']['orak'][$dt][$ora] as $_tankorId => $__T) { + if (!is_array($ORARENDI) || !in_array($_tankorId,$ORARENDI)) { + if ($j!=0) echo '
    '; $j++; + $_ORA = $ADAT['haladasi']['orak'][$dt][$ora]; + _putOra($_ORA,$_tankorId,$TANKOR_DOLGOZAT); + } + } + } + echo '
    '; + //echo '
    '; + if ($KEPZES_MATRIX[1]!=0) echo 'Képzéshez viszonyított óraszám hiány: '.$KEPZES_MATRIX[1].' '; + if ($KEPZES_MATRIX[2]!=0) echo 'Első nyelv: '.$KEPZES_MATRIX[2].' '; + if ($KEPZES_MATRIX[3]!=0) echo 'Második nyelv: '.$KEPZES_MATRIX[3].' '; + //echo '
    '; + echo '
    '."\n\n\n\n"; + + if (MAYOR_SOCIAL === true) formEnd(); + +// } // foreach + + } else { + putOrarendPlain($ADAT); + } + + + } + + function putOrarendPlain($ADAT) { + if (is_array($ADAT['orarend']['orarendiOra'])) { + foreach($ADAT['orarend']['orarendiOra'] as $het => $T) { + echo ''."\n"; + echo ''; + for($ora=$ADAT['napiMinOra']; $ora<=$ADAT['napiMaxOra']; $ora++) { // FIXME (getMinOra, getMaxOra konstansok!???) + echo ''; + echo ''; + for ($nap=1; $nap<=$ADAT['hetiMaxNap']; $nap++) { // FIXME (getMaxNap) + echo ''."\n"; + } + echo ''."\n"; + } + echo '
    '.$het.'. heti órarend
    '.$ora.''; + $X = $ADAT['orarend']['orarendiOra'][$het][$nap][$ora]; + + for ($i=0; $i'; + echo $X[$i]['targyJel'].' : '; + echo $X[$i]['osztalyJel'].' : '; + echo $X[$i]['teremId']; + echo ''; + } + echo '
    '."\n\n\n\n"; + } + } + } + + function _putOra($ORA,$_tankorId,$TANKOR_DOLGOZAT) { + global $ADAT; + if ($_tankorId=='') return false; + $_ORA = $ORA[$_tankorId]; + $_tipusClass = str_replace(' ','_',$_ORA['tipus']); + $_eredetClass = $_ORA['eredet']; + echo '
    '; + if ($TANKOR_DOLGOZAT[$_tankorId][$_ORA['dt']]>0) echo ''; + echo ''; + echo $ADAT['tankorok'][$_ORA['tankorId']][0]['tankorNev']; + echo ''; + + echo ', '.$ADAT['termek'][$_ORA['teremId']]['leiras']; + + echo '
    '; + + echo ''; + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + echo ''; + if ($_ORA['ki']!='') echo ' '.$ADAT['tanarok'][$_ORA['ki']]['tanarNev']; + + if (isset($_ORA['oo'])) echo ' °'; // else tervezett + + echo '
    '; + + } + + function _datediff($dt1,$dt2) { + return round(abs(strtotime($dt1)-strtotime($dt2))/86400); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendBetolto.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendBetolto.phtml new file mode 100644 index 00000000..d6f037b0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendBetolto.phtml @@ -0,0 +1,60 @@ +'file')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo '
    '; + echo '
    '; + echo ''."\n"; + + if ($ADAT['showForceOption']) { + echo '
    '."\n"; + } + + echo ''."\n"; + + echo '
    '."\n"; + echo '' + .'Download' + ._EXPORT_SABLON_LETOLTESE + .''."\n"; + + formEnd(); + } + + function putAdat($ORAK) { + + echo ''; + + for ($i = 0; $i < count($ORAK); $i++) { + echo ''; + for ($j = 0; $j < count($ORAK[$i]); $j++) { + echo ''; + } + + echo ''; + } + + echo '
    '; + echo $ORAK[$i][$j]; + echo '
    '; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendEllenorzes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendEllenorzes.phtml new file mode 100644 index 00000000..cb44176f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendEllenorzes.phtml @@ -0,0 +1,88 @@ +'orarend')); + + echo '
      '; + + echo '
    1. '; + echo '

      '._ORARENDIORA_TANKOR_ELLENORZES.'

      '; + if (count($ADAT['check']['orarendiOraTankor']) > 0) { + echo '
        '; + for ($i = 0; $i < count($ADAT['check']['orarendiOraTankor']); $i++) { + $A = $ADAT['check']['orarendiOraTankor'][$i]; + echo '
      1. '; + echo $ADAT['tanarok'][ $A['tanarId'] ]['tanarNev'].' '.$A['het'],'. '._HET.' '.$aHetNapjai[ $A['nap']-1 ].' '.$A['ora'].'. '._ORA.': '; + echo ''.$A['osztalyJel'].' '.$A['targyJel'].''; + echo ' ('._ERVENYES.': '.$A['tolDt'].' - '.$A['igDt'].')'; + echo '
      2. '; + } + echo '
      '; + } else { + echo _OK; + } + echo '
    2. '."\n"; + + echo '
    3. '; + echo '

      '._TANKOR_ORASZAM_ELLENORZES.'

      '."\n"; + if (count($ADAT['check']['tankorOraszam']) > 0) { + echo '
        '; + for ($i = 0; $i < count($ADAT['check']['tankorOraszam']); $i++) { + $A = $ADAT['check']['tankorOraszam'][$i]; + echo '
      1. '; + echo $A['tankorNev'].' ('.$A['tankorId'].'): '.$A['tankorHetiOraszam'].' != '.$A['orarendHetiOraszam'].''; + echo '
      2. '; + } + echo '
      '; + } else { + echo _OK; + } + echo '
    4. '."\n"; + + echo '
    5. '; + echo '

      '._HIANYZO_TERMEK.'

      '."\n"; + if (count($ADAT['check']['hianyzoTermek']) > 0) { + echo '
        '; + for ($i = 0; $i < count($ADAT['check']['hianyzoTermek']); $i++) { + $A = $ADAT['check']['hianyzoTermek'][$i]; + echo '
      1. '; + echo $A['tanarNev'].' '.$A['het'],'. '._HET.' '.$aHetNapjai[ $A['nap']-1 ].' '.$A['ora'].'. '._ORA.': '; + echo ''.$A['osztalyJel'].' '.$A['targyJel'].''; + echo '
      2. '; + } + echo '
      '; + } else { + echo _OK; + } + echo '
    6. '."\n"; + + echo '
    7. '; + echo '

      '._TEREMUTKOZES.'

      '."\n"; + if (count($ADAT['check']['teremUtkozes']) > 0) { + echo '
        '; + for ($i = 0; $i < count($ADAT['check']['teremUtkozes']); $i++) { + $A = $ADAT['check']['teremUtkozes'][$i]; + echo '
      1. '; + echo $A['het'],'. '._HET.' '.$aHetNapjai[ $A['nap']-1 ].' '.$A['ora'].'. '._ORA.': '; + echo ''.$A['teremId'].''; + echo '
      2. '; + } + echo '
      '; + } else { + echo _OK; + } + echo '
    8. '."\n"; + + echo '
    '; + +//echo '
    ';
    +//var_dump($ADAT['check']['teremUtkozes']);
    +//echo '
    '; + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendLoad.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendLoad.phtml new file mode 100644 index 00000000..04a59fb4 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendLoad.phtml @@ -0,0 +1,26 @@ +'; + for ($i=0; $i'; + echo ''; + for ($j=0; $j'.$ADAT['tanarok'][$j]['tanarNev'].''; + } + echo ''."\n"; + + echo '
    '; + + } + echo ''; + + formEnd(); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendModosito.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendModosito.phtml new file mode 100644 index 00000000..468d11bf --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendModosito.phtml @@ -0,0 +1,313 @@ +'; + echo '
    '; + + global $aHetNapjai; + $TANKOROK = $ADAT['felvehetoTankorok']; + $BLOKKOK = $ADAT['felvehetoBlokkok']; + if (is_array($ADAT['felvehetoTankorok']) && count($ADAT['felvehetoTankorok']) > 0) { + + $T = $ADAT['orarend']['assoc']; + echo '

    '.$ADAT['toPrint'].'

    '; + formBegin(); + + if (count($ADAT['vanHaladasi'])>0) { + $_class = ($ADAT['haladasiModositando']!=0) ? 'haladasiModositando':''; + echo '
    '; +# echo ' az órarendi módosítások a (már betöltött) haladási naplóval együtt módosítható'; + echo ' az új - órarendbe felveendő - órák a már betöltött haladási naplóba is bekerülhetnek?'; + $_CHK = ($ADAT['haladasiModositando']!=0) ? 'checked="checked"':''; + echo ''; + echo ' (a törlés és teremmódosítás nem vonatkozik a már betöltött órákra)'; + echo '
    '; + } + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''."\n"; + echo ''; + echo ''; + for ($nap=1; $nap<=$ADAT['hetiMaxNap']; $nap++) { + $dt = $ADAT['orarend']['napok'][$nap]['dt']; + //$_th_class = ($ADAT['orarend']['napok'][$nap]['megjegyzes']=='') ? '': 'spec'; + $_th_class = ($ADAT['vanHaladasi'][$dt]['db']>0) ? 'spec': ''; + echo ''; + } + echo ''; + echo ''."\n"; + + echo ''."\n"; +// echo ''; + for($ora=$ADAT['napiMinOra']; $ora<=$ADAT['napiMaxOra']; $ora++) { + echo ''; + echo ''; + for ($nap=1; $nap<=$ADAT['hetiMaxNap']; $nap++) { + $CELLATANKORIDK=array(); + $dt = $ADAT['orarend']['napok'][$nap]['dt']; + $het = $ADAT['orarend']['napok'][$nap]['het']; + echo ''."\n"; + } + echo ''."\n"; + } + echo ''; + echo '
    '; + if (count($ADAT['vanHaladasi'][$dt]['db'])>0) echo ' '; + echo ''.str_replace('-','.',$ADAT['orarend']['napok'][$nap]['dt']).'. ('.$ADAT['orarend']['napok'][$nap]['het'].') '; + echo ($ADAT['orarend']['napok'][$nap]['megjegyzes']=='') ? $aHetNapjai[($nap-1)] : $ADAT['orarend']['napok'][$nap]['megjegyzes']; + echo '
    '.$het.'. heti órarend
    '.$ora.''; +// $het = 0; + $ORARENDI = $__tanarIdk = array(); + for($i=0; $i'; + +// Fejlesztés alatt, itt lehet majd felvenni az órát, ha már van órarend +// Igaziból lehet, hogy ezt az órarend felületen célszerűbb lenne megcsinálni +if ($ADAT['vanHaladasi'][$dt]>0) { + echo ''; + if (isset($ADAT['haladasi']['orak'][$dt][$ora][$_T['tankorId']]['oraId'])) { + echo ''; + } else { + echo ''; + // dt-ora-ki,tankorId,teremId,tipus,eredet,feladatTipusId,munkaido + } + echo ''; +} + $_ferohely = $ADAT['termek'][$_T['teremId']]['ferohely']; + $_letszam = $ADAT['tankorLetszamok'][$_T['tankorId']]; + if ($_T['tankorId']!='') { + // HACK - találjuk ki, hogy mi a kulcsa a kártyának + for ($_k=0; $_k'."\n"; + echo ''; + echo $ADAT['tankorok'][$_T['tankorId']][0]['tankorNev']; + echo ''; + //echo ''."\n"; + } else { + echo "$_targyjel : $_osztalyJel : "; + } + echo ', '; + echo ''.$ADAT['termek'][$_T['teremId']]['leiras'].''; + _putTerem(array('name'=>'T_'.$het.'_'.$nap.'_'.$ora.'_'.$_T['tanarId'].'_'.$_kulcsTolDt, 'teremId'=>$_T['teremId']),$ADAT['termek']); + echo '
    '; + if ($_ORA['kit']!='') { + echo ''; + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + echo ''; + if ($_ORA['ki']!='') echo ' '.$ADAT['tanarok'][$_ORA['ki']]['tanarNev']; + } else { + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + } + + echo ''; + /* Egy egység */ + + + + // ------------------------------------- + + if (count($T[$nap][$ora]['orak'])>$i+1) echo '
    '; + + + } + if (isset($ADAT['haladasi']['orak'][$dt][$ora])) { + foreach($ADAT['haladasi']['orak'][$dt][$ora] as $__tankorId => $_O) { + if (!in_array($__tankorId,$CELLATANKORIDK)) { + //$_O = $ADAT['haladasi']['orak'][$dt][$ora][$_T['tankorId']]; + echo '
    '; + echo ''; + if (!in_array($_O['tipus'],array('elmarad','elmarad_máskor'))) + echo ''; + echo $ADAT['tankorok'][ $__tankorId ][0]['tankorNev']; + // array(13) { ["oraId"]=> string(5) "37936" ["dt"]=> string(10) "2016-01-08" ["ora"]=> string(2) "10" ["ki"]=> string(2) "81" ["kit"]=> NULL ["tankorId"]=> string(4) "3086" ["teremId"]=> NULL ["leiras"]=> string(0) "" ["tipus"]=> string(6) "egyéb" ["eredet"]=> string(8) "órarend" ["feladatTipusId"]=> NULL ["munkaido"]=> string(10) "lekötött" ["oo"]=> bool(false) + echo '
    '.$_O['tipus']; + echo ' '.$_O['eredet']; + if ($_O['teremId']!='') echo ' '.$ADAT['termek'][$_O['teremId']]['leiras']; + if ($_O['leiras']!='') echo '
    '.$_O['leiras']; + echo '
    '; + } + } + } + if (count($T[$nap][$ora]['orak'])==0 || !in_array($ADAT['tanarId'],$__tanarIdk)) { + _putPluszOra($het,$nap,$ora,$TANKOROK,$BLOKKOK); + //echo ''; + } + //echo '
     
    '; + +/* ============== */ +for ($oi=0; $oi'; + + echo '
    '._LEBEGO_ORA.'
    '; + $__tanarId = $_TANKOROSSZE['tanarId']; + $__targyJel = $_TANKOROSSZE['targyJel']; + $__osztalyJel = $_TANKOROSSZE['osztalyJel']; + $__teremId = $_TANKOROSSZE['teremId']; + $__tolDt = $_TANKOROSSZE['tolDt']; + + echo _TANAR.': '.$__tanarId.'
    '; + echo _TARGYJEL.': '.$__targyJel.'
    '; + echo _OSZTALYJEL.': '.$__osztalyJel.'
    '; + //echo _TEREMID.': '.$__teremId.'
    '; + echo _TOLDT.': '.$__tolDt.'
    '; + + //PRIMARY KEY (`het`,`nap`,`ora`,`tanarId`,`tolDt`), + echo ''; + echo _TOROL; + + // és a hozzárendelt tankör: + echo '
    '; + echo ''; + echo '
    '; + + + echo ''."\n"; + } +} +//-------------------------------------- + + + + + + + + + + + echo '
    '."\n\n\n\n"; +// } // foreach + + echo '
    '; + + if (count($ADAT['hibasOrak'])>0) { + echo '
    '; + for ($i=0; $i'; + + echo ''; + + echo $ADAT['tankorok'][$__tankorId][0]['tankorNev'].'
    '; + echo $ADAT['tanarok'][$__tanarId]['tanarNev']; + echo '
    '; + echo $__het.'/'.$__nap.'/'.$__ora.'
    '; + echo $__tolDt.' '.$__igDt.'
    '; + echo _TARGYJEL.': '.$__targyJel.'
    '; + echo _OSZTALYJEL.': '.$__osztalyJel.''; + //echo _TEREMID.': '.$__teremId.'
    '; + echo '
    '; + echo '
    '; + } + echo ''; + + } + formEnd(); + + } else { +// putOrarendPlain($ADAT); + } + + + } + + function putOrarendPlain($ADAT) { + } + + function _putPluszOra($het,$nap,$ora,$TANKOROK,$BLOKKOK) { + + + echo ''; + } + + + function _putTerem($ADAT = array('name'=>'T_0_0_0','teremId'=>null), $TERMEK) { + echo ''; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendTankor.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendTankor.phtml new file mode 100644 index 00000000..08144c53 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendTankor.phtml @@ -0,0 +1,88 @@ + $T) { + foreach($T as $nap => $REST) { + $NAP_SZAM2HET[$nap]=$het; + } + } + + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; +// echo ''; + echo ''."\n"; + for($ora=$ADAT['napiMinOra']; $ora<=$ADAT['napiMaxOra']; $ora++) { + echo ''; + echo ''; + for ($nap=1; $nap<=$ADAT['hetiMaxNap']; $nap++) { + $het = $NAP_SZAM2HET[$nap]; + $T = $ADAT['orarendiOra'][$het]; + echo ''."\n"; + } + echo ''."\n"; + } + echo '
    '.$ora.''; + if (count($T[$nap][$ora])>=2) { + echo 'HIBA! -'.$T[$nap][$ora].' - adott napon több órája is van!'; + } else { + for($i=0; $i'; + echo "targyJel: $_targyJel\n"; + echo "osztalyJel: $_osztalyJel\n"; + echo "teremId: $_teremId\n"; + echo "het/nap/ora: $het/$nap/$ora\n"; + + // és a hozzárendelt tankör: + echo ''; + echo ''; + } // if + } // for + } // else + echo '
    '."\n\n\n\n"; + echo '
    '; + formEnd(); + } else { + echo '

    Adj meg keresési feltételt!

    '; + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendTeremModositas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendTeremModositas.phtml new file mode 100644 index 00000000..9efa700e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendTeremModositas.phtml @@ -0,0 +1,107 @@ +'terem')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '

    '._ORARENDI_ORA_KIVALASZTASA.'

    '."\n"; + + $SEL = array($ADAT['tanarId'] => ' selected="selected" '); + echo ''."\n"; + echo ''."\n"; + + echo '
    '; + $SEL = array($ADAT['het'] => ' selected="selected" '); + echo ''."\n"; + echo ''."\n"; + + $SEL = array($ADAT['nap'] => ' selected="selected" '); + echo ''."\n"; + echo ''."\n"; + + $SEL = array($ADAT['ora'] => ' selected="selected" '); + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + formEnd(); + } + + function putTeremModosito($ADAT) { + + formBegin(array('class'=>'terem')); + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + + echo '

    '._TEREM_MODOSITAS.'

    '."\n"; + + if (is_array($ADAT['orarendiOra']) && count($ADAT['orarendiOra'])>=1) { + + echo ''.$ADAT['tankorok'][ $ADAT['tankorIndex'][ $ADAT['orarendiOra']['tankorId'] ] ]['tankorNev'] + .' ('.$ADAT['orarendiOra']['tankorId'].') '; + echo ' ['.$ADAT['orarendiOra']['osztalyJel'].', '.$ADAT['orarendiOra']['targyJel'].'] '; + + $SEL = array($ADAT['orarendiOra']['teremId'] => ' selected="selected" '); + echo '
    '."\n"; + echo '
    '."\n"; + } else { + echo _NINCS_ORAJA; + } + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/szabadTerem.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/szabadTerem.phtml new file mode 100644 index 00000000..b4ab5bf0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/szabadTerem.phtml @@ -0,0 +1,78 @@ + $ORA) { + if(!in_array($dt,$NAPOK)) $NAPOK[] = $dt; + foreach ($ORA as $ora => $TERMEK) { + $X[$ora][$dt] = $TERMEK; + if ($maxOra<$ora) $maxOra = $ora; + if ($minOra>$ora) $minOra = $ora; + } + } + echo '

    '.$ADAT['toPrint'].'

    '; + + formBegin(array('class'=>'teremKereso')); + + echo '-10'; + echo '10-19'; + echo '20-29'; + echo '30-39'; + echo '40+'; + + formEnd(); + + echo ''."\n"; + echo ''; + echo ''; + foreach ($NAPOK as $dt) { + $nap = date('w',strtotime($dt)); + $_th_class = ($ADAT['orarend']['napok'][$nap]['megjegyzes']=='') ? '': 'spec'; + echo ''; + } + echo ''; + echo ''."\n"; + + echo ''."\n"; + for($ora=$minOra; $ora<=$maxOra; $ora++) { + echo ''; + echo ''; + foreach ($NAPOK as $dt) { + echo ''."\n"; + } + echo ''."\n"; + } + echo ''; + echo '
    '; + echo $aHetNapjai[($nap-1)]; + echo '
    '.$dt; + echo '
    '.$ora.''; + for($i=0; $i=40) $_class='xlarge'; + elseif ($ferohely>=30) $_class='large'; + elseif ($ferohely>=20) $_class='normal'; + elseif ($ferohely>=10) $_class='small'; + else $_class = 'xsmall'; + if ($_teremId!='') { + $_title = 'Férőhely: '.($ADAT['termek'][$_teremId]['ferohely']); // ferohely, telephelyId, tipus + echo ''; + echo $ADAT['termek'][$_teremId]['leiras']; + echo ' '; + } + } + echo '
    '."\n\n\n\n"; + } + + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/tanarOrarend.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/tanarOrarend.phtml new file mode 100644 index 00000000..c0968a52 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/tanarOrarend.phtml @@ -0,0 +1,38 @@ +'orarend')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + formEnd(); + +/* + echo ''."\n"; + for ($i = 0; $i < count($Tanarok); $i++) { + + echo ''-"\n"; + $tanarId = $Tanarok[$i]['tanarId']; + $tanarNev = $Tanarok[$i]['tanarNev']; + + echo ''."\n"; + for ($nap = 1; $nap < 6; $nap++) { + for ($ora = $napiMinOra; $ora <= $napiMaxOra; $ora++) { + $Ora = $Orak[$tanarId][$nap][$ora]; + echo ''."\n"; + } + } + echo ''."\n"; + } + echo '
    '.$tanarNev.''.$Ora['osztalyJel'].'
    '.$Ora['targyJel'].'
    '."\n"; +*/ + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/termez.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/termez.phtml new file mode 100644 index 00000000..4d00f428 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/termez.phtml @@ -0,0 +1,86 @@ +'; + echo ''; + formEnd(); + + + formBegin(); + echo ''; + + $P = $ADAT['teremPreferencia']; + echo ''; + echo ''; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '._SORREND.''._TANAR.''._TARGY.''._TEREM_SORREND.'
    '; + $href = href('index.php?page=naplo&sub=orarend&f=termez&action=run&tolDt='.$ADAT['tolDt'].'&runTeremPreferenciaId='.$_order,array('sessionID','lang','policy')); + echo ' '; + echo ''; + echo ''.$ADAT['tanar'][$_tanarId]['tanarNev'] .' ('.$_tanarId.')'; + if ($_targyId>0) echo $ADAT['targy'][$_targyId][0]['targyNev']. ' ('.$_targyId.')'; + echo ''; + echo str_replace(',',', ',$P[$i]['teremStr']); + /* + echo ''; + */ + echo ''; + $href = href('index.php?page=naplo&sub=orarend&f=termez&action=del&delTeremPreferenciaId='.$_order,array('sessionID','lang','policy')); + echo ' '; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ' (termek vesszővel)'; + echo '
    '; + echo ''; + + formEnd(); + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/bizelomenetel.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/bizelomenetel.phtml new file mode 100644 index 00000000..62a2de0c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/bizelomenetel.phtml @@ -0,0 +1,3 @@ + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/bizonyitvany.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/bizonyitvany.phtml new file mode 100644 index 00000000..c576c706 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/bizonyitvany.phtml @@ -0,0 +1,427 @@ +'."\n"; + echo ''; + echo ''; + echo ''.$ADAT['diakAdat']['viseltNevElotag'].' '.$ADAT['diakAdat']['viseltCsaladinev'].' '.$ADAT['diakAdat']['viseltUtonev'].''; + echo ''; + echo ''; + echo ''._HIVATALOS_DT_SZERINT_CSOPORTOSITOTT.''; + echo ''; + echo ''; + echo ''._TANULMANYI_OSSZESITOJE.''; + echo ''; + if (is_array($ADAT['diakKepzes'])) { + echo ''; + echo ''; + foreach($ADAT['diakKepzes'] as $index => $kepzesAdat) { + echo ''.$kepzesAdat['kepzesNev'].' '; + } + echo ''; + echo ''; + } + echo ''; + echo ''._TARGY.''; + foreach ($ADAT['bizonyitvany']['tanevSzemeszterei'] as $tanev => $tAdat) echo ''.$tanev.''; + echo ''; + echo ''; + foreach ($ADAT['bizonyitvany']['tanevSzemeszterei'] as $tanev => $tAdat) + for ($i = 0; $i < count($tAdat); $i++) echo ''.$tAdat[$i].''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo $ADAT['intezmeny']['cimHelyseg'].', '; + $ho = date('m'); + echo date('Y').'. '.kisbetus($Honapok[--$ho]).' '.date('d').'.'; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''._MAGATARTAS.''; + foreach ($ADAT['bizonyitvany']['szemeszterek'] as $i => $szAdat) { + echo ''; + foreach ($ADAT['magatartasIdk'] as $_targyId) { + $_jegyAdat = $ADAT['bizonyitvany']['jegyek'][$_targyId][$szAdat['tanev']][$szAdat['szemeszter']]; + for ($i=0; $i'; + } + echo ''; + echo ''; + echo ''._SZORGALOM.''; + foreach ($ADAT['bizonyitvany']['szemeszterek'] as $i => $szAdat) { + echo ''; + foreach ($ADAT['szorgalomIdk'] as $_targyId) { + $_jegyAdat = $ADAT['bizonyitvany']['jegyek'][$_targyId][$szAdat['tanev']][$szAdat['szemeszter']]; + for ($i=0; $i'; + } + echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''._TARGY.''; + echo ''._JEGY.''; + echo ''; + + foreach ($ADAT['bizonyitvany']['jegyek'] as $targyId => $targyAdat) { + + if (!in_array($targyId, array_merge($ADAT['magatartasIdk'],$ADAT['szorgalomIdk'])) ) { + // // $TARGYORATERV = $ADAT['kepzesOraterv'][$targyId]; + echo ''; + echo ''; + echo $ADAT['targyak'][$targyId]['targyNev']; + echo ' ('.$ADAT['targyak'][$targyId]['targyId'].')'; + echo ''; + /* Bizonyítvány kiírás */ + foreach ($ADAT['bizonyitvany']['szemeszterek'] as $i => $szAdat) { + + $_jegyAdat = $ADAT['bizonyitvany']['jegyek'][$targyId][$szAdat['tanev']][$szAdat['szemeszter']]; + + echo ''; + for ($j=0; $j strtotime($jegyAdat['hivatalosDt'])) { + // // $_targyOraterv = $TARGYORATERV[$jegyAdat['evfolyamJel']][$jegyAdat['szemeszter']][0]; + $_title = $jegyAdat['evfolyam'].'. évfolyam'; + if ($jegyAdat['evfolyamJel']!='') $_title .= ' ('.$jegyAdat['evfolyamJel'].'. évfolyamjel)' ; + if ($_targyOraterv['kovetelmeny'] != $jegyAdat['jegyTipus']) { + $_title .= ' nem óraterv szerinti'; + $_class = ' style="font-style:italic; color: #ffffff;" '; + } else { + $_class = ''; + } + echo ''; + echo $KOVETELMENY[$jegyAdat['jegyTipus']][$jegyAdat['jegy']]['hivatalos'].' '.$bizonyitvanyMegjegyzesek[$jegyAdat['megjegyzes']]; + echo ''; + + /* Ha ez vizsga volt, jegyezzük meg */ + if (is_array($ADAT['zaroJegyVizsga'][$jegyAdat['zaroJegyId']])) { + $_kiir = '('.$ADAT['zaroJegyVizsga'][$jegyAdat['zaroJegyId']]['tipus'] + .', évfolyam:'.$ADAT['zaroJegyVizsga'][$jegyAdat['zaroJegyId']]['evfolyam'] + .', évfolyamJel:'.$ADAT['zaroJegyVizsga'][$jegyAdat['zaroJegyId']]['evfolyamJel'].')- '.($ADAT['zaroJegyVizsga'][$jegyAdat['zaroJegyId']]['szoveg']); + echo 'º'; + $MEGJ[] = $_kiir; + } + $_kiir = ''; + if ($j+1 < count($_jegyAdat)) echo '
    '; + } + } + + echo ''; + } + echo ''; + } + } + echo ''; + if (count($MEGJ)>0) { + echo ''; + foreach ($MEGJ as $megj) echo $megj."
    \n"; + echo ''; + } + echo ''."\n"; + } + + + + + function putDiakBizonyitvany($diakId, $ADAT) { + + global $Honapok, $KOVETELMENY, $bizonyitvanyMegjegyzesek, $bizonyitvanyJegyzetek, $osztaly, $attrs; + + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + if (defined('TANITASI_HETEK_SZAMA')) echo ''; + echo ''."\n"; + if (is_array($ADAT['bizonyitvany']['targyak'])) + foreach ($ADAT['bizonyitvany']['targyak'] as $targyId => $targyAdat) { + $bizAdat = $ADAT['bizonyitvany']['jegyek'][$targyId]; + if (!in_array($targyId, array_merge($ADAT['magatartasIdk'],$ADAT['szorgalomIdk']))) { // itt szűrendő ki a magatartás - szorgalom + $targyNev = $ADAT['targyak'][$targyId]['targyNev']; + // innen is lehetne // $targyNev = $targyAdat['targyNev']; + echo ''; + echo ''; + + echo ''."\n"; + + if (defined('TANITASI_HETEK_SZAMA')) { + // Óraszámok + echo ''; + } + /* ------------------- */ + echo ''."\n"; + } + } + echo ''."\n"; + + if (__ZARO_SZEMESZTER) { + $class = 'hianyzas'; + $txt = ''; + } else { + $class = 'hianyzas nemNyomtatando'; + $txt = '
    '._IGAZOLATLAN_SZAM_MEGJEGYZES.''; + } + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + + echo '
    '.$ADAT['diakAdat']['viseltNevElotag'].' '.$ADAT['diakAdat']['viseltCsaladinev'].' '.$ADAT['diakAdat']['viseltUtonev'].'
    '._AZ_OSZTALYZATOK_HIVATALOS_DT_SZERINTI.'
    '._ERTESITOJE.'
    '; + echo _AZ.' '.$ADAT['intezmeny']['nev'].' '; + for ($i=0; $i'; + echo ' '.$ADAT['szemeszterAdat']['tanev'].'-'.($ADAT['szemeszterAdat']['tanev']+1).' '._TANEV.' '.$ADAT['szemeszterAdat']['szemeszter'].'. '._SZEMESZTERBEN.' '._ELERT_EREDMENYEROL; + echo '
    '; + echo $ADAT['intezmeny']['cimHelyseg'].', '; + $ev = substr($ADAT['szemeszterAdat']['zarasDt'], 0, 4); + $ho = substr($ADAT['szemeszterAdat']['zarasDt'], 5, 2); + $nap = substr($ADAT['szemeszterAdat']['zarasDt'], 8, 2); + echo $ev.'. '.kisbetus($Honapok[--$ho]).' '.$nap.'.'; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
     '._PH.' 
    '._OSZTALYFONOK.' '._SZULO.'
    '; + echo '
    '._MAGATARTAS.''; + + foreach ($ADAT['magatartasIdk'] as $_targyId) { + $_jegyAdat = $ADAT['bizonyitvany']['jegyek'][$_targyId]; + for ($i=0; $i'; + echo '
    '._SZORGALOM.''; + + foreach ($ADAT['szorgalomIdk'] as $_targyId) { + $_jegyAdat = $ADAT['bizonyitvany']['jegyek'][$_targyId]; + for ($i=0; $i'; + echo '
    '._TARGY.''._JEGY.''._ORASZAM.'
    '; + echo $targyNev; + echo ''; + + for ($_ji=0; $_ji strtotime($jegyAdat['hivatalosDt'])) { + if ($_ji!=0) echo ', '; + echo $KOVETELMENY[$jegyAdat['jegyTipus']][$jegyAdat['jegy']]['hivatalos']; + echo ' '.$bizonyitvanyMegjegyzesek[$jegyAdat['megjegyzes']]; + if (is_array($ADAT['zaroJegyVizsga'][$jegyAdat['zaroJegyId']])) { + echo 'º'; + } + if ($jegyAdat['megjegyzes'] != '') { + $jegyzetStr .= str_replace('%1%', $targyNev, $bizonyitvanyJegyzetek[$jegyAdat['megjegyzes']]).'
    '; + } + } + } + echo '
    '; + echo $ADAT['bizonyitvany']['targyOraszam'][$targyId]['evesOraszam']; + echo '
    '._MULASZTOTT_ORAK_SZAMA.$txt.''._MULASZTOTT_ELMELET_GYAKORLAT.'
    '._IGAZOLT.''; + echo intval($ADAT['hianyzas']['igazolt']); + echo ''; + echo intval($ADAT['hianyzas']['elmélet']['igazolt']); + echo '-'; + echo intval($ADAT['hianyzas']['gyakorlat']['igazolt']); + echo '
    '._IGAZOLATLAN.''; + echo intval($ADAT['hianyzas']['igazolatlan']); + echo ''; + echo intval($ADAT['hianyzas']['elmélet']['igazolatlan']); + echo '-'; + echo intval($ADAT['hianyzas']['gyakorlat']['igazolatlan']); + echo '
    '._KESESPERC.''; + echo floor(($ADAT['hianyzas']['elmélet']['kesesPercOsszeg'] + $ADAT['hianyzas']['gyakorlat']['kesesPercOsszeg']) / 45) + .' ('.intval($ADAT['hianyzas']['elmélet']['kesesPercOsszeg'] + $ADAT['hianyzas']['gyakorlat']['kesesPercOsszeg']).' '._PERC.')'; + echo ''; + echo floor($ADAT['hianyzas']['elmélet']['kesesPercOsszeg'] / 45).' ('.intval($ADAT['hianyzas']['elmélet']['kesesPercOsszeg']).' '._PERC.')'; + echo '-'; + echo floor($ADAT['hianyzas']['gyakorlat']['kesesPercOsszeg'] / 45).' ('.intval($ADAT['hianyzas']['gyakorlat']['kesesPercOsszeg']).' '._PERC.')'; + echo '
    '; + echo $jegyzetStr; + echo '
    '."\n"; + + } + +////////////////////////////////!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + + function putZaroJegyModosito($diakId, $ADAT) { + + global $KOVETELMENY; + global $_EVFOLYAMJEL_BETUVEL; + require_once('skin/classic/module-naplo/html/share/jegy.phtml'); + + formBegin(array('class'=>'modosit')); + + echo '

    '._JEGYMODOSITAS.' (csak speciális esetben!)

    '; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + //EZNEMJO echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + + echo ''; + + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + + + echo ''; + echo ''; + echo ''; + + echo '
    '; + echo ''."\n"; + echo '
    '._TARGY.''; + // tárgy kiválasztása + echo ''."\n"; + echo '
    '._EVFOLYAM.''; + + // évfolyam kiválasztás: + if (count($ADAT['diakEvfolyamJel'])>0) { + echo ''; + } else { // csak egy van (vagy egy se ... :( + echo ($evfolyamJel = $ADAT['diakEvfolyamJel'][0]).". ".((_EVFOLYAM)); + } + echo '
    '._JEGY.''; + + // jegy kiválsztása + $JEGYSELECT = array( + 'variable' => 'zaroJegy', + 'zaroJegyTipusok' => $ADAT['zaroJegyTipusok'], + 'diakId' => $diakId, +// 'evfolyam' => $evfolyam, // nem biztos hogy van evfolyamunk, lehet hogy a select-ben definiált + 'targyId' => null, // nincs targyId-nk. Ez az előző select kimenete + 'tanev'=>$ADAT['szemeszterAdat']['tanev'], + 'szemeszter'=>$ADAT['szemeszterAdat']['szemeszter'], + ); + putJegySelect($JEGYSELECT); // használjuk a shared könyvtár függvényeit + + echo '
    '; + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/diak.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/diak.phtml new file mode 100644 index 00000000..79c33e0f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/diak.phtml @@ -0,0 +1,235 @@ + $ev, + 'hó' => $ho + ); + $HO['count']++; + $aktDt = date('Y-m-01',strtotime('next month',strtotime($aktDt))); + } + + formBegin(); + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + if (__SHOW_FACES_TF) { + echo ''; + $_sub=-1; + } else $_sub=0; + echo ''."\n"; + + if (__ATLAG_MUTATAS !== false) { + if (__DEFAULT_SULYOZAS == $ADAT['sulyozas']) $_class="defaultSulyozas"; + echo ''; + } + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + for ($i = 0; $i < $HO['count']; $i++) { + echo ''."\n"; + } + if (__ATLAG_MUTATAS !== false) echo ''."\n"; + foreach ($_TANEV['szemeszter'] as $idx => $szemeszterAdat) { + echo ''."\n"; + } + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; +// foreach ($Targyak as $targyId => $targyAdat) { + for ($t=0; $t'."\n"; + echo ''."\n"; + for ($j = 0; $j < $HO['count']; $j++) { + echo ''."\n"; + } + if (__ATLAG_MUTATAS !== false) { + echo ''."\n"; + } + + /* Bizonyítvány kiírás */ + // Ehelyett használható lenne a share putJegySelect() is! --TODO 2016-2017 + foreach ($_TANEV['szemeszter'] as $idx => $szemeszterAdat) { + $tanev = $szemeszterAdat['tanev']; + $szemeszter = $szemeszterAdat['szemeszter']; + $_BIZ = $ADAT['zaroJegyek'][$diakId][$targyId][$tanev][$szemeszter]; + echo ''."\n"; + } + + /* ------------------- */ + + echo ''."\n"; + } + //---------- + echo ''; + for ($j = 0; $j < $HO['count']; $j++) { + echo ''; + } + echo ''; + foreach ($_TANEV['szemeszter'] as $idx => $szemeszterAdat) { + echo ''; + } + echo ''; + // ------- + echo ''."\n"; + + echo '
    '; + echo ''; + putFace($diakId,'diak'); + echo ' '.$diakNev.' '.$_osztalystr; + echo ''; + echo ''; + $SEL = array($ADAT['sulyozas'] => ' selected="selected"'); + echo ''; + + echo ''._BIZONYITVANY.'
    '._TARGY.''; + echo ''.decimal_to_roman($HO[$i]['hó']).'.'; + echo ''.$Honapok[$HO[$i]['hó']-1].''; + echo ''._ATLAG.''.$szemeszterAdat['szemeszter'].'
    '; + echo ''; + echo ''._KIS_JEGY.''; + echo ''._NORMAL_JEGY.''; + echo ''._DOLGOZAT.''; + echo ''._TEMAZARO.''; + echo ''._VIZSGAJEGY.''; + echo ' 
    '; + if (count($ADAT['targyTankor'][$targyId]) == 1) { + echo ''.$targyNev.''; + } else + echo $targyNev; + /* VIRTUAL */ + echo ' '; + putJegySelect(array( + 'class'=>'eeHidden', + 'style'=>'display:none', + 'jegySelectTipus'=>'jegy', + 'targyId'=>$targyId, + 'jegyTipus'=>$ADAT['diakTargy'][$t]['evkoziKovetelmeny'] + )); + echo ''; + // ---------- + echo ''; + $honapJegyei = $targyAdat[$HO[$j]['év']][$HO[$j]['hó']]; + for ($k = 0; $k < count($honapJegyei); $k++) { + $jegyAdat = $Jegyek['jegyek'][$honapJegyei[$k]]; + if ($KOVETELMENY[$jegyAdat['jegyTipus']]['átlagolható']===true) { + $JEGYATLAG[$j][$jegyAdat['jegyTipus']]['normal'][] = $jegyAdat['jegy']; // kulcsok szerinti átlag + $JEGYATLAG[$j][$jegyAdat['jegyTipus']]['jegyAdat'][] = $jegyAdat; + } + $href = href('index.php?page=naplo&sub=osztalyozo&f=jegy&jegyId='.$jegyAdat['jegyId']); + $_jegyShow = $KOVETELMENY[$jegyAdat['jegyTipus']][$jegyAdat['jegy']]['rovid']; + if ($jegyAdat['tipus'] < 3) $title = $jegyAdat['tankorNev'].' ('.$jegyAdat['dt'].') '.$jegyAdat['megjegyzes']; + else $title = $Dolgozatok[$jegyAdat['dolgozatId']]['dolgozatNev'].' ('.$jegyAdat['dt'].')'.' - '.$jegyAdat['tankorNev'].' '.$jegyAdat['megjegyzes']; + echo ''; + echo ($_jegyShow!='') ? $_jegyShow.'' : '?'; + if ($jegyAdat['dt']!=date('Y-m-d',strtotime($jegyAdat['modositasDt']))) echo '*'; + echo ' '; + } + if (is_array($hianyzoDolgozatok[$targyId][$HO[$j]['év']][$HO[$j]['hó']])) { + $honapDolgozatai = $hianyzoDolgozatok[$targyId][$HO[$j]['év']][$HO[$j]['hó']]; + for ($k = 0; $k < count($honapDolgozatai); $k++) { + $dolgozatAdat = $Dolgozatok[$honapDolgozatai[$k]]; + $href = href('index.php?page=naplo&sub=osztalyozo&f=dolgozat&dolgozatId='.$dolgozatAdat['dolgozatId']); + $title = $dolgozatAdat['dolgozatNev'].' ('.$dolgozatAdat['bejelentesDt'].')'; + echo ''; + } + } + echo ''.(($ADAT['sulyozas']!='')?$targyAdat['atlag']:'').''."\n"; + for ($ji=0; $ji strtotime($szemeszterAdat['zarasDt'])) { + $_sikertelenClass = (in_array( $jegy, $KOVETELMENY[$jegyTipus]['sikertelen']))? ' class="sikertelen" ': ''; + echo ''; + echo $KOVETELMENY[$jegyTipus][$jegy]['hivatalos']; + echo ' '.$bizonyitvanyMegjegyzesek[$megjegyzes]; + echo ''; + } + } + echo '
    '._ATLAG.':'; + foreach (array('féljegy','jegy') as $atlagolhatoJegyTipus) { + // if (count($JEGYATLAG[$j][$atlagolhatoJegyTipus]['normal'])>0) { + // echo $s[$j] = number_format( (array_sum($JEGYATLAG[$j][$atlagolhatoJegyTipus]['normal']) / count($JEGYATLAG[$j][$atlagolhatoJegyTipus]['normal'])),2); + // if (intval($s[$j-1])!=0 && ($s[$j-1]-$s[$j])<-0.2) echo ' '; + // elseif (intval($s[$j]!=0) && ($s[$j-1]-$s[$j])>0.2) echo ' '; + // } + if (count($JEGYATLAG[$j][$atlagolhatoJegyTipus]['jegyAdat'])>0) { + $_J = $JEGYATLAG[$j][$atlagolhatoJegyTipus]['jegyAdat']; + $_haviSulyoz = 0; + $_haviOszto = 0; + for ($x=0; $x0) { + echo $s[$j] = number_format( ($_haviSulyoz/$_haviOszto), 2, ',','.'); + if (intval($s[$j-1])!=0 && ($s[$j-1]-$s[$j])<-0.2) echo ' '; + elseif (intval($s[$j]!=0) && ($s[$j-1]-$s[$j])>0.2) echo ' '; + } + } + } + echo ''; + if (count($ZJATLAG[$szemeszterAdat['tanev']][$szemeszterAdat['szemeszter']])>0) { + echo number_format(array_sum($ZJATLAG[$szemeszterAdat['tanev']][$szemeszterAdat['szemeszter']]) / count($ZJATLAG[$szemeszterAdat['tanev']][$szemeszterAdat['szemeszter']]),2,',','.'); + } + echo '
    '."\n"; + formEnd(); + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/dolgozat.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/dolgozat.phtml new file mode 100644 index 00000000..e145b5fc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/dolgozat.phtml @@ -0,0 +1,313 @@ +'; + + echo ''; + echo ''._DOLGOZATOK.''; + echo ''; + echo ''; + echo ''._DOLGOZAT.''; + echo ''._TANKOR.''; + echo ''._BEJELENTES.''; + echo ''._TERVEZETT.''; + echo ''; + + echo ''; + $kuszob=false; + + if (count($Dolgozat['dolgozatIds']) > 0) { + for ($i = count($Dolgozat['dolgozatIds'])-1; $i >= 0; $i--) { + $dolgozatId = $Dolgozat['dolgozatIds'][$i]; + if (!$kuszob && strtotime($Dolgozat[$dolgozatId]['tervezettDt'])<=time()) { + echo ''.''; + $kuszob=true; + } + echo ''; + echo ''; + if (__MODOSITHAT) { + // ide jön a form action=dolgozatTorles + echo 'x'; + } else { + echo ($i+1).'.'; + } + echo ''; + echo ''; + echo ''; + if ($Dolgozat[$dolgozatId]['dolgozatNev'] != '') echo $Dolgozat[$dolgozatId]['dolgozatNev']; + else echo _NINCS_KITOLTVE; + echo ''; + echo ''; + echo ''; + + $Tankorok = $Dolgozat[$dolgozatId]['tankor']; + $TankorLista = array(); + for ($t = 0; $t < count($Tankorok); $t++) $TankorLista[] = $Tankorok[$t]['tankorNev']; + echo implode('
    ',$TankorLista); + + echo ''; + echo ''; + $_dt = $Dolgozat[$dolgozatId]['bejelentesDt']; + $_dow = date('w', strtotime($_dt)); + echo str_replace('-', '. ', $_dt).'. '; + echo $aHetNapjai[($_dow - 1)]; + echo ''; + echo ''; + $_dt = $Dolgozat[$dolgozatId]['tervezettDt']; + if ($_dt != '0000-00-00' && $_dt != '') { + $_dow = date('w', strtotime($_dt)); + echo str_replace('-', '. ', $_dt).'. '; + echo $aHetNapjai[($_dow - 1)]; + } + + echo ''; + + echo ''; + echo ''; + flush(); + } + } else { + echo ''; + echo ''._NINCS_DOLGOZAT.''; + echo ''; + } + echo ''; + echo ''; + + echo ''; + echo '
    '; + } + + function putDolgozat($Dolgozat, $valaszthatoTankorok, $Tanarok, $ADAT) { + + global $_TANEV, $KOVETELMENY; + + if (__MODOSITHAT) $disabled = ''; + else $disabled=' disabled="disabled" '; + + $kepMutat = $ADAT['kepMutat']; + + // -------------- A dolgozat adatai -------------- // + + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo '
    '._DOLGOZAT_ADATAI.'
    '; + if (__MODOSITHAT) echo ''; + if (__TOROLHET) echo ''; + echo '
    '._MEGNEVEZES.'
    '._BEJELENTES.''.$Dolgozat['bejelentesDt'].''._TERVEZETT.''; + echo ''; + echo ''; + echo ''; + echo'
    '._BEJELENTETT_DOLGOZATOK.''; + echo ''; + echo '
    '; + formEnd(); + + echo ''; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + // tankör választás + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo '
    '._TANKOROK.'
    '."\n"; + formBegin(); + echo ''."\n"; + echo ''."\n"; + echo '
    '."\n"; + if (__MODOSITHAT) echo ''."\n"; + formEnd(); + echo '
    '."\n"; + + // -------------- A dolgozat jegyei -------------- // + + if (__NAPLOADMIN || __VEZETOSEG || __TANAR) { + + $colspan = count($Dolgozat['tankor'])*2; + $_colspan=2; + if ($kepMutat) { + $colspan+=(count($Dolgozat['tankor'])); + $_colspan++; + } + formBegin(); + + echo ''."\n"; + echo ''."\n"; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + $maxDiakSzam = 0; + for ($j = 0; $j < count($Dolgozat['tankor']); $j++) { + if ($maxDiakSzam < ($_count = count($Dolgozat['tankor'][$j]['diakok']['idk']))) + $maxDiakSzam = $_count; + echo ''; + } + echo ''; + echo ''; + + for ($j = 0; $j < count($Dolgozat['tankor']); $j++) { + if ($kepMutat) echo ''; + echo ''; + echo ''; + } + echo ''; + echo ''; + + echo ''; + echo ''; + for ($j = 0; $j < count($Dolgozat['tankor']); $j++) { + $tankorAdat = $Dolgozat['tankor'][$j]; + $tankorId = $tankorAdat['tankorId']; + echo ''; + } + echo ''; + + echo ''; + + echo ''."\n"; + for ($i = 1; $i <= $maxDiakSzam; $i++) { + echo ''."\n"; + + for ($j = 0; $j < count($Dolgozat['tankor']); $j++) { + $tankorAdat = $Dolgozat['tankor'][$j]; + $tankorId = $tankorAdat['tankorId']; + if (is_array($Dolgozat['tankor'][$j]['diakok']['nevek'])) { + reset($Dolgozat['tankor'][$j]['diakok']['nevek']); + for ($d = 0; $d < $i; $d++) + list($diakId, $diakAdat) = each($Dolgozat['tankor'][$j]['diakok']['nevek']); + $diakNev = $diakAdat['diakNev']; + } else { $diakNev = ''; } + + if ($kepMutat) { + echo ''; + } + echo ''."\n"; + echo ''."\n"; + } + echo ''."\n"; + } + if (is_array($ATLAG) && count($ATLAG)>0) { + foreach ($ATLAG as $jegyTipus => $A) { + echo ''; + echo ''; + echo ''; + echo ''; + } + } + echo ''."\n"; + echo '
    '._JEGYEK.'
    '; + echo ''; + echo $Dolgozat['tankor'][$j]['tankorNev']; + echo ''; + echo '
    '._NEV.''._JEGY.'
    '; + echo ''."\n"; + echo '
    '; + putFace($diakId,'diak'); + echo ''.$diakNev.''; + if (is_array($tankorAdat['jegyek'][$diakId])) { + for ($k = 0; $k < count($tankorAdat['jegyek'][$diakId]);$k++) { + $jegy = $tankorAdat['jegyek'][$diakId][$k]; + if ($KOVETELMENY[ $jegy['jegyTipus'] ]['átlagolható']===true) $ATLAG[$jegy['jegyTipus']][] = $jegy['jegy']; + $href = href('index.php?page=naplo&sub=osztalyozo&f=jegy&jegyId='.$jegy['jegyId']); + $title = $jegy['dt'].' '.$jegy['megjegyzes']; + echo ''; + echo $KOVETELMENY[ $jegy['jegyTipus'] ][ $jegy['jegy'] ]['rovid'].' '; + echo ''; + } + } + echo '
    '; + echo $jegyTipus; + echo ''.number_format(array_sum($ATLAG[$jegyTipus])/count($ATLAG[$jegyTipus]),2).'
    '."\n"; + formEnd(); + + } // csak admin, tanár és igazgató láthatja az összes jegyet! + + + } + + function putDolgozatBejelento($tankorId) { + + formBegin(array('class'=>'dolgozat')); + echo ''; + echo ''; + echo ''; + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/jegy.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/jegy.phtml new file mode 100644 index 00000000..b24e8b43 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/jegy.phtml @@ -0,0 +1,164 @@ + 'post', 'id' => 'jegyMod', 'action' => href('index.php?page=naplo&sub=osztalyozo&f=jegy')), array('skipFormTag'=>$skin == 'ajax','print'=>true)); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + // -------- Óra hozzárendelés -------- // + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + // -------- Ha dolgozat jegy - a dolgozat adatai -------- // + + if ($jegy['tipus'] > 2) { + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + } + echo '
    '; + + echo ''; + echo $jegy['diakNev']; + echo ''; + + echo '
    '."\n"; + if (_MODOSITHAT) { + echo ''."\n"; + echo ''."\n"; + } + echo '
    '; + putFace($jegy['diakId'],'diak'); + echo ''."\n"; + echo ''; + $tanarLista = ''; + for ($i = 0; $i < count($jegy['tanár']['idk']); $i++) $tanarLista .= $jegy['tanár'][$i]['tanarNev'].', '; + echo $jegy['tankör'][0]['tankorNev'].' ('.substr($tanarLista, 0, -2).')'; + echo ''."\n"; + echo '
    '.$jegy['dt'].' ('.$aHetNapjai[(date('w',strtotime($jegy['dt']))+6) % 7].')'."\n"; + if ($jegy['modositasDt']!='0000-00-00 00:00:00') + echo '
    '.$jegy['modositasDt'].' ('.$aHetNapjai[(date('w',strtotime($jegy['modositasDt']))+6) % 7].')'."\n"; + echo '
    '."\n"; + $SEL = array($jegy['jegy'] => ' selected="selected" '); + $_ok = false; + echo ''."\n"; + echo ''."\n"; + $SEL = array($jegy['tipus'] => ' selected="selected"'); + echo ''."\n"; + echo '
    '._MEGJEGYZES.''."\n"; + echo ''."\n"; + echo '
    '._HOZZARENDELT_ORA.''."\n"; + $SEL = array($jegy['oraId'] => ' selected="selected"'); + echo ''."\n"; + echo '
    '.ucfirst(_DOLGOZAT).''."\n"; + $SEL = array($jegy['dolgozatId'] => ' selected="selected"'); + echo ''."\n"; + echo '
    '; + + if ($skin != 'ajax') formEnd(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/stat.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/stat.phtml new file mode 100644 index 00000000..4ede6060 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/stat.phtml @@ -0,0 +1,691 @@ +'; + echo ''; + echo ''; + echo ''._SZEMPONT.''; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + $nyekClass = in_array($ADAT['osztaly'][$i]['osztalyJellegId'],$ADAT['nyekJellegu']) ? ' style="background-color: #f60"':''; + echo ''; + if ($ADAT['osztaly'][$i]['osztalyJel'] != '') echo $ADAT['osztaly'][$i]['osztalyJel']; + else echo $ADAT['osztaly'][$i]['kezdoTanev'].'/'.$ADAT['osztaly'][$i]['jel']; + echo ''; + } + echo ''._OSSZESITES.''; + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''._IGAZOLT.''; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + $SUM['igazolt'] += $ADAT['hianyzas'][ $ADAT['osztaly'][$i]['osztalyId'] ]['igazolt']; + echo ''.($ADAT['hianyzas'][ $ADAT['osztaly'][$i]['osztalyId'] ]['igazolt']).''; + } + echo ''; + echo $SUM['igazolt'].'/'; + echo $ADAT['hianyzas']['']['igazolt']; + echo ''; + echo ''; + + echo ''; + echo ''._IGAZOLATLAN.''; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { +//2013NKT if (_KESESI_IDOK_OSSZEADODNAK === true) { + $title = $ADAT['hianyzas'][ $ADAT['osztaly'][$i]['osztalyId'] ]['igazolatlan'].'+' + .intval($ADAT['hianyzas'][ $ADAT['osztaly'][$i]['osztalyId'] ]['igazolatlanKesesbol']); + $SUM['igazolatlan']+= $ADAT['hianyzas'][ $ADAT['osztaly'][$i]['osztalyId'] ]['osszesIgazolatlan']; + echo ''.$ADAT['hianyzas'][ $ADAT['osztaly'][$i]['osztalyId'] ]['osszesIgazolatlan'].''; +//2013NKT } else { +//2013NKT echo ''.$ADAT['hianyzas'][ $ADAT['osztaly'][$i]['osztalyId'] ]['igazolatlan'].''; +//2013NKT } + } + echo ''; + echo $SUM['igazolatlan']."/"; + echo $ADAT['hianyzas']['']['igazolatlan']; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + + echo ''; + echo ''._KITUNO.''; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + echo ''.$ADAT['jegyek'][ $ADAT['osztaly'][$i]['osztalyId'] ]['kituno'].''; + } + echo ''.$ADAT['jegyek']['intezmeny']['kituno'].''; + echo ''; + + echo ''; + echo ''._JELES.''; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + echo ''.$ADAT['jegyek'][ $ADAT['osztaly'][$i]['osztalyId'] ]['jeles'].''; + } + echo ''.$ADAT['jegyek']['intezmeny']['jeles'].''; + echo ''; + + echo ''; + echo ''._BUKOTT.''; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + echo ''.$ADAT['jegyek'][ $ADAT['osztaly'][$i]['osztalyId'] ]['bukott'].''; + } + echo ''.$ADAT['jegyek']['intezmeny']['bukott'].''; + echo ''; + + echo ''; + echo ''._BUKAS.''; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + echo ''.$ADAT['jegyek'][ $ADAT['osztaly'][$i]['osztalyId'] ]['bukas'].''; + } + echo ''.$ADAT['jegyek']['intezmeny']['bukas'].''; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''._ÁTLAG.''; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + if (isset($ADAT['jegyek'][ $ADAT['osztaly'][$i]['osztalyId'] ]['atlag'])) { + echo ''.number_format($ADAT['jegyek'][ $ADAT['osztaly'][$i]['osztalyId'] ]['atlag'], 2, ',', ' ').''; + } else { + echo ''; + } + } + echo ''.number_format($ADAT['jegyek']['intezmeny']['atlag'], 2, ',', ' ').''; + echo ''; + + if (is_array($ADAT['targyak'])) { + foreach ($ADAT['targyak'] as $i => $targyAdat) { + echo ''; + echo ''.$targyAdat['targyNev']; + if ($targyAdat['targyJelleg']!='') echo ' ('.$targyAdat['targyJelleg'].')'; + echo ''; + $_c = 0;$_sum=0; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + if ($ADAT['tantargyiAtlagok'][ $targyAdat['targyId'] ][ $ADAT['osztaly'][$i]['osztalyId'] ] != 0) { + $_sum += $ADAT['tantargyiAtlagok'][ $targyAdat['targyId'] ][ $ADAT['osztaly'][$i]['osztalyId'] ]; + $_c++; + echo ''.number_format($ADAT['tantargyiAtlagok'][ $targyAdat['targyId'] ][ $ADAT['osztaly'][$i]['osztalyId'] ], 2, ',', ' ').''; + } else { + echo ''; + } + } + echo ''; + echo ''; + $_avg_iskolai = ''.number_format($ADAT['tantargyiAtlagok'][ $targyAdat['targyId'] ]['iskola'] , 2, ',', ' ').''; + if ($_c!=0) { + $_avg = ($_sum/($_c)); + $_txt_avg = ''.number_format($_avg,2,',',' ').''; + if ($ADAT['tantargyiAtlagok'][ $targyAdat['targyId'] ]['iskola']!=$_avg) { + echo $_txt_avg . '('.$_avg_iskolai.')'; + } else { + echo $_avg_iskolai; + } + } else { + echo $_avg_iskolai; + } + echo ''; + echo ' / '; + echo ''.intval($ADAT['jegyek']['intezmeny']['targy'][ $targyAdat['targyId'] ]).''; + echo ''; + echo ''; + } + //echo '__'; + } + + echo ''; + + $_nyvColor = array('#8bc34a','#2196f3','#e91e63','#263238'); + if (is_array($ADAT['targyak'])) { + $_szintIndex=0; + foreach($ADAT['vizsgaSzint'] as $vizsgaSzint) { + echo ''; + echo 'Nyelvvizsgák – '.$vizsgaSzint.' '; + foreach ($ADAT['mindenTargy'] as $_index => $targyAdat) { + if ($targyAdat['targyJelleg'] == 'nyelv' && count($ADAT['nyelvvizsgak'][$targyAdat['targyId']])>0) { + echo ''; + echo ''; + echo $targyAdat['targyNev']; + echo ''; + $_c = 0;$_sum=0; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + $_db = count($ADAT['nyelvvizsgak'][$targyAdat['targyId']][$ADAT['osztaly'][$i]['osztalyId']][$vizsgaSzint]); + if ($_db>0) { + $nyekClass = in_array($ADAT['osztaly'][$i]['osztalyJellegId'],$ADAT['nyekJellegu']) ? ' style="color: white; background-color: #f60"':'style="color:white; background-color: #648c82"'; + echo ''; + } + else echo ''; + if ($_db>0) echo $_db; + echo ''; + } + echo ''."\n"; + } + } + echo ''; + $_szintIndex++; + } + } + + echo ''; + + } + + + function putOsztalyBizonyitvany($ADAT) { + + global $aHetNapjai, $Honapok, $bizonyitvanyMegjegyzesek; + global $KOVETELMENY, $ZaradekIndex, $_EVFOLYAMJEL_BETUVEL; +// global $targySorrend; + $MAGSZORGIDK = array_merge($ADAT['magatartasTargyIdk'],$ADAT['szorgalomTargyIdk']); + + $colSpan = count($ADAT['targyak']); + + // Bizonyítvány-hoz tartozó változók beállítása + $plusCols = 6 + 2; + $colSpan += $plusCols; // további column-nal bővül a táblázat + $rowSpan = 3; + + // ------------------------ + // Design + $img1 = 'skin/classic/module-naplo/img/osztalyozo/node-minus.gif'; + $img2 = 'skin/classic/module-naplo/img/osztalyozo/node-plus.gif'; + +// putNyomtatasForm($ADAT); + + formBegin(array('name'=>'beir', 'method'=>'post', 'action'=>'')); + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + + echo ''; + // Tárgyanként + $id = 0; + for ($j = 0; $j < count($ADAT['targyak']); $j++) if ( + !in_array($ADAT['targyak'][$j]['targyId'], $MAGSZORGIDK) + && (isset($ADAT['tantargyiAtlagok'][$ADAT['targyak'][$j]['targyId']]) + || $ADAT['targyboljegy'][$ADAT['targyak'][$j]['targyId']] === true + || __SHOWSTATZARASMINDENTARGY) + ) { + $_class = ''; + $_data = ''; + // FŐTÁRGY + if (is_array($ADAT['targyTargy']['FOal'][$ADAT['targyak'][$j]['targyId']])) { + $_class = "foTargy"; + $_data = 'data-targyid="' + .$ADAT['targyak'][$j]['targyId'] + .'" data-altargyidk="[&' + .implode('&',$ADAT['targyTargy']['FOal'][$ADAT['targyak'][$j]['targyId']]) + .'&]"'; + } + // ALTÁRGY + if (is_array($ADAT['targyTargy']['alFO'][$ADAT['targyak'][$j]['targyId']])) { + $_class = "alTargy"; + $_data = 'data-targyid="' + .$ADAT['targyak'][$j]['targyId'] + .'" data-fotargyidk="[&' + .implode('&',$ADAT['targyTargy']['alFO'][$ADAT['targyak'][$j]['targyId']]) + .'&]"'; + + } + echo ''; + $id++; + } + echo ''; + + // magatartás, szorgalom + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''; + // Tárgyanként + $id = 0; + for ($j = 0; $j < count($ADAT['targyak']); $j++) if ( + !in_array($ADAT['targyak'][$j]['targyId'], $MAGSZORGIDK) + && (isset($ADAT['tantargyiAtlagok'][$ADAT['targyak'][$j]['targyId']]) + || $ADAT['targyboljegy'][$ADAT['targyak'][$j]['targyId']] === true + || __SHOWSTATZARASMINDENTARGY) + ) { + echo ''; + $id++; + } + echo ''; + echo ''; + + echo ''; + + // ---------- Tanulónként a jegyek ------------- // + + echo ''; + + for ($i = 0; $i < count($ADAT['diakok']); $i++) { + + $_class = array(); // reset + $D = $ADAT['diakok'][$i]; + $diakId = $D['diakId']; + $DA = $ADAT['diakAdat'][$diakId]; + $jegyek = $ADAT['jegyek'][$diakId]; + $hianyzas = $ADAT['hianyzas'][$diakId]; + $atlag = $ADAT['atlag'][$diakId]; + $msz_beirhato = ($D['aktualisStatusz'] != 'magántanuló') + && (!isset($D['kiDt']) || is_null($D['kiDt']) || (strtotime($D['kiDt'])>=time())); + + $zaraskoriTag = in_array($diakId, $ADAT['zaraskoriDiakIds']); + + if (!$zaraskoriTag) echo ''; else echo ''; + + $_class[] = ekezettelen(str_replace(' ', '', $D['aktualisStatusz'])); + if ($DA['bukott']===true) $_class[] = 'bukott'; + elseif ($DA['jeles']===true) $_class[] = 'jeles'; + elseif ($DA['kituno']===true) $_class[] = 'kituno'; + + echo ''; + + // Tárgyanként végigmenve + $id = 0; + for ($j = 0; $j < count($ADAT['targyak']); $j++) if ( + !in_array($ADAT['targyak'][$j]['targyId'], $MAGSZORGIDK) + && (isset($ADAT['tantargyiAtlagok'][$ADAT['targyak'][$j]['targyId']]) + || $ADAT['targyboljegy'][$ADAT['targyak'][$j]['targyId']] === true + || __SHOWSTATZARASMINDENTARGY) + ) { + $_targyId=$ADAT['targyak'][$j]['targyId']; + $jegyAdat = $jegyek[$ADAT['targyak'][$j]['targyId']]; // EZ INDEXELT TÖMB! Több jegy is lehet! + $_vanosztalyzat=false; + echo ''; + $id++; + } + + if (isset($ADAT['atlagok'][$diakId])) { + $atlag = number_format($ADAT['atlagok'][$diakId], 2, ',', ''); + $_class[] = 'atlag '; + } else { + $atlag = ''; + } + // Tanuló átlaga: + echo ''; + + // Tanuló hiányzásai + echo ''; + echo ''; + + echo ''; + + echo ''."\n"; + + echo ''."\n"; + + // Záradékok + echo ''."\n"; + + echo ''; + + } + + // Tantárgyi átlagok + echo ''; + echo ''; + $id=0; + for ($j = 0; $j < count($ADAT['targyak']); $j++) if ( + !in_array($ADAT['targyak'][$j]['targyId'], $MAGSZORGIDK) + && (isset($ADAT['tantargyiAtlagok'][$ADAT['targyak'][$j]['targyId']]) + || $ADAT['targyboljegy'][$ADAT['targyak'][$j]['targyId']] === true + || __SHOWSTATZARASMINDENTARGY) + ) { + echo ''."\n"; + $id++; + } + echo ''; + + // Félévi átlagok + echo ''; + + echo ''; + // Tárgyi eloszlás +// ------------------------------------------------------------------------------------------------------------ +// ------------------------------------------------------------------------------------------------------------ +// ------------------------------------------------------------------------------------------------------------ +// ------------------------------------------------------------------------------------------------------------ + foreach ($KOVETELMENY['jegy']['értékek'] as $_jegy) { + echo ''; + echo ''; + for ($j = 0; $j < count($ADAT['targyak']); $j++) if ( + !in_array($ADAT['targyak'][$j]['targyId'], $MAGSZORGIDK) + && (isset($ADAT['tantargyiAtlagok'][$ADAT['targyak'][$j]['targyId']]) + || $ADAT['targyboljegy'][$ADAT['targyak'][$j]['targyId']] === true + || __SHOWSTATZARASMINDENTARGY) + ) { + $_targyId = $ADAT['targyak'][$j]['targyId']; + echo ''; + } + echo ''; + echo ''; + } +// ------------------------------------------------------------------------------------------------------------ +// ------------------------------------------------------------------------------------------------------------ +// ------------------------------------------------------------------------------------------------------------ +// ------------------------------------------------------------------------------------------------------------ + + echo ''; + echo '
    '; + //echo '+/-'; + //echo '
    '; + //echo '
    + echo ''; + _putBeallitasCheckbox('targyak',$ADAT['beallitasok']); + _putBeallitasCheckbox('oraszamok',$ADAT['beallitasok']); + _putBeallitasCheckbox('zaradek',$ADAT['beallitasok']); + echo '
    '; + echo _BIZONYITVANY; + echo ': '.$ADAT['osztaly']['osztalyJel'].' ('.$ADAT['osztaly']['kezdoTanev'].'-'.($ADAT['osztaly']['vegzoTanev']+1).') - '.$ADAT['osztaly']['osztalyfonok']['tanarNev']; + echo '
    '._NEV.''; + echo $ADAT['targyak'][$j]['targyNev']; + echo ''; + echo _ATLAG; + echo ''.$ADAT['szemeszterAdat']['tanev'].'/'.$ADAT['szemeszterAdat']['szemeszter'].'
    '; + echo _MULASZTAS; + echo ''._MAGATARTAS.''._SZORGALOM.'
    '._IGAZOLATLAN.''._IGAZOLT.''._FELSZ.''._KESES.'
    '.ucfirst(_TANAR).''; + if (is_array($ADAT['tanarok'][ $ADAT['targyak'][$j]['targyId'] ])) { + for ($t=0; $t<($tdb=count($ADAT['tanarok'][ $ADAT['targyak'][$j]['targyId'] ])); $t++) { + echo $ADAT['tanarok'][ $ADAT['targyak'][$j]['targyId'] ][$t]['tanarNev']; + if ($t<$tdb-1) echo ',
    '; + } + } + echo '
     
    '; + if ($D['diakNaploSorszam']!='') echo '
    '.$D['diakNaploSorszam'].'
    '; + echo ''; + echo '
    '; + for ($k=0; $k'; + echo $KOVETELMENY[$_jegyAdat['jegyTipus']][$_jegyAdat['jegy']]['hivatalos']; + echo ' '.$bizonyitvanyMegjegyzesek[$_jegyAdat['megjegyzes']]; + echo ''; + } else { + echo '
    '; + echo $KOVETELMENY[$_jegyAdat['jegyTipus']][$_jegyAdat['jegy']]['hivatalos']; + echo ' '.$bizonyitvanyMegjegyzesek[$_jegyAdat['megjegyzes']]; + if (in_array($_jegyAdat['jegyTipus'], array('jegy','féljegy'))) { + if ( ($_jegyAdat['jegy']-$ADAT['evkoziJegyAtlag'][$diakId][$_targyId][0]['jegyAtlag'])>0.5) + echo '*'; + elseif ( ($_jegyAdat['jegy']-$ADAT['evkoziJegyAtlag'][$diakId][$_targyId][0]['jegyAtlag'])<-0.5) + echo '!'; + + } + if (0<($_evesOraszam=$ADAT['targyOraszam'][$diakId][$_jegyAdat['targyId']]['evesOraszam'])) + echo '
    '.($_evesOraszam).'
    '; + $_vanosztalyzat=true; + echo '
    '; + } + } + + if ($_vanosztalyzat===false && $ADAT['evkoziJegyAtlag'][$diakId][$_targyId][0]['jegyAtlag']!='') echo '÷'; + echo '
    '.$atlag; + + echo ''; + echo intval($hianyzas['igazolatlan']); + echo ''; + echo intval($hianyzas['igazolt']); + echo ''; + echo ($ADAT['hianyzas'][$diakId]['felszerelesHianyDb']); + echo ''; + echo intval($ADAT['hianyzas'][$diakId]['kesesDb']); + echo '/'.intval($ADAT['hianyzas'][$diakId]['kesesPercOsszeg']).'\''; + echo ''; + + $_magatartasTargyId = $ADAT['magatartasTargyIdk'][0]; + if (_BEIRHATO && $msz_beirhato && $zaraskoriTag) { + + if (!isset($jegyek[ $_magatartasTargyId ][0]['targyId'])) + $jegyek[ $_magatartasTargyId ][0]['targyId'] = $_magatartasTargyId; + $J = $jegyek[ $_magatartasTargyId ][0]; + $_JEGY_S = array( + 'jegySelectTipus' => 'zaroJegy', + 'variable' => 'zaroJegy', + 'diakId' => $diakId, + 'targyId'=> $_magatartasTargyId, + 'tanev'=> $ADAT['szemeszterAdat']['tanev'], + 'szemeszter' => $ADAT['szemeszterAdat']['szemeszter'], + 'evfolyam'=> $J['evfolyam'], + 'evfolyamJel'=> $J['evfolyamJel'], + 'zaroJegyId' => $J['zaroJegyId'], + 'jegy' => $J['jegy'], + 'jegyTipus' => $ADAT['targyAdat'][ $_magatartasTargyId ]['zaroKovetelmeny'], // fixen + 'megjegyzes' => $J['megjegyzes'], + 'tabindex' => ($i+count($ADAT['diakok'])) + ); + putJegySelect($_JEGY_S); + + } else { + echo $KOVETELMENY['magatartás'][$jegyek[ $_magatartasTargyId ][0]['jegy']]['hivatalos']; + } + echo ''; + + $_szorgalomTargyId = $ADAT['szorgalomTargyIdk'][0]; + + if (_BEIRHATO && $msz_beirhato && $zaraskoriTag) { + if (!isset($jegyek[$_szorgalomTargyId][0]['targyId'])) $jegyek[$_szorgalomTargyId][0]['targyId'] = $_szorgalomTargyId; + $J = $jegyek[$_szorgalomTargyId][0]; + $_JEGY_S = array( + 'jegySelectTipus' => 'zaroJegy', + 'variable' => 'zaroJegy', + 'diakId' => $diakId, + 'targyId'=> $_szorgalomTargyId, + 'tanev'=> $ADAT['szemeszterAdat']['tanev'], + 'szemeszter' => $ADAT['szemeszterAdat']['szemeszter'], + 'evfolyam'=> $J['evfolyam'], + 'evfolyamJel'=> $J['evfolyamJel'], + 'zaroJegyId' => $J['zaroJegyId'], + 'jegy' => $J['jegy'], + 'jegyTipus' => $ADAT['targyAdat'][ ($_szorgalomTargyId) ]['zaroKovetelmeny'], // fixen + 'megjegyzes' => $J['megjegyzes'], + 'tabindex' => ($i+count($ADAT['diakok'])) + ); + + putJegySelect($_JEGY_S); + + } else { + echo $KOVETELMENY['szorgalom'][$jegyek[ $_szorgalomTargyId ][0]['jegy']]['hivatalos']; + } + echo '
    '._ATLAG.''; +// if (isset($ADAT['tantargyiAtlagok'][$ADAT['targyak'][$j]['targyId']])) { + $atlag = number_format($ADAT['tantargyiAtlagok'][$ADAT['targyak'][$j]['targyId']], 2, ',', ''); + echo $atlag; +// } else { $atlag=0; } + echo ''; + echo ''.number_format($ADAT['atlagok']['osztaly'], 2, ',', '.').''; + echo '/'; + echo ''.number_format($ADAT['tantargyiAtlagok']['osztaly'], 2, ',', '.').''; + echo ''; + if (_BEIRHATO) echo ''; + echo '
    '.$KOVETELMENY['jegy'][$_jegy]['hivatalos'].''; + echo $ADAT['jegyEloszlas'][$_targyId][$_jegy]; + echo ''; + echo $ADAT['jegyEloszlas']['osszes'][$_jegy]; + echo '
    '; + + formEnd(); + + putOsztalyStatisztika($ADAT); + + } + + function putOsztalyStatisztika($ADAT) { + +// echo '

    '._OSZTALYSTATISZTIKA.'

    '; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; +// echo ''; +// echo ''; +// echo ''; +// echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + //+ részletezés + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo '
    '._BIZONYITVANY.'
    '. _DICSERETES .''.$ADAT['stat']['dicséret'].'
    '. _FIGYELMEZTETOS .''.$ADAT['stat']['figyelmeztető'].'
    '. _NYELVVIZSGAS .''.$STAT['nyelvvizsga'].'
    '. _KITUNO .''.$ADAT['stat']['kituno'].'
    '. _JELES .''.$ADAT['stat']['jeles'].'
    '. _BUKASOK .''.$ADAT['stat']['bukas'].'
    '. _BUKOTTAK .''.$ADAT['stat']['bukott'].'
    1 '._TARGYBOL.''.$ADAT['stat']['dbBukott'][1].'
    2 '._TARGYBOL.''.$ADAT['stat']['dbBukott'][2].'
    3+ '._TARGYBOL.''.$ADAT['stat']['dbBukott'][3].'
    '; + + // $HIANYZASOK['átlag'][$felev]['igazolt|igazolatlan'] + // $HIANYZASOK['összesen'][$felev]['igazolt|igazolatlan' = $status] + // $HIANYZASOK['ötnél több igazolatlan'][$felev|'összesen'] + // $HIANYZASOK['tíznél több igazolatlan'][$felev|'összesen'] + // $HIANYZASOK['nincs igazolatlanja'][$felev] + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + $letszam = count($ADAT['zaraskoriDiakIds']); + if ($letszam != 0) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    '.ucfirst(_HIANYZASOK).'
    '._IGAZOLT.' '._OSSZESEN.''.number_format($ADAT['stat']['igazolt'],0,',','.').'
    '._IGAZOLATLAN.' '._OSSZESEN.''.number_format($ADAT['stat']['igazolatlan'],0,',','.').'
    '._HIANYZAS.' '._OSSZESEN.''.number_format((($ADAT['stat']['igazolt']+$ADAT['stat']['igazolatlan'])),0,',','.').'
    '._IGAZOLT.' '._ATLAGOSAN.''.number_format($ADAT['stat']['igazolt']/$letszam,2,',','.').'
    '._IGAZOLATLAN.' '._ATLAGOSAN.''.number_format($ADAT['stat']['igazolatlan']/$letszam,2,',','.').'
    '._HIANYZAS.' '._ATLAGOSAN.''.number_format(($ADAT['stat']['igazolt']+$ADAT['stat']['igazolatlan'])/$letszam,2,',','.').'
    '._NINCS.' '._IGAZOLATLANJA.''.$ADAT['stat']['nincs'].'
    '._OT.' '._VAGY.' '._OTNEL.' '._TOBB.' '._IGAZOLATLAN.''.$ADAT['stat']['otnel tobb'].'
    '._TIZ.' '._VAGY.' '._TIZNEL.' '._TOBB.' '._IGAZOLATLAN.''.$ADAT['stat']['tiznel tobb'].'
    '._LETSZAM.''.$letszam.'
    '."\n"; + + } + + function _putBeallitasCheckbox($var,$ADAT) { + $CHK = ($ADAT[$var]==true) ? ' checked="checked" ':''; + echo '
    '; + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/szempontRendszer.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/szempontRendszer.phtml new file mode 100644 index 00000000..b01a7d16 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/szempontRendszer.phtml @@ -0,0 +1,75 @@ +"szr")); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + + echo ''."\n"; + + formEnd(); + + } + + function putSzempontRendszer($ADAT) { + + formBegin(array('class'=>'szr')); + echo '
      '."\n"; + foreach ($ADAT['szempontRendszer']['szempont'] as $szempontId => $szAdat) { + echo '
    1. '."\n"; + echo $szAdat['szempont']; + if (is_array($ADAT['szempontRendszer']['minosites'][$szempontId])) { + echo '
        '."\n"; + for ($i = 0; $i < count($ADAT['szempontRendszer']['minosites'][$szempontId]); $i++) { + echo '
      • '; + echo $ADAT['szempontRendszer']['minosites'][$szempontId][$i]['minosites']; + echo '
      • '."\n"; + } + echo '
      '."\n"; + } + echo '
    2. '."\n"; + } + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + formEnd(); + } + + function putSzempontRendszerLista($ADAT) { + + echo ''."\n"; + + echo ''; + + for ($i = 0; $i < count($ADAT['szempontRendszerek']); $i++) { + $A = $ADAT['szempontRendszerek'][$i]; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + echo '
    '._ID.''._SZEMESZTER.''._TARGY.''._TARGYTIPUS.''._KEPZES.'
    '.$A['szrId'].''.$A['tanev'].'/'.$A['szemeszter'].''; + if (isset($A['targyId'])) echo $A['targyNev'].' ('.$A['targyId'].')'; + echo ''.$A['targyTipus'].''; + if (isset($A['kepzesId'])) echo $A['kepzesNev'].' - '.$A['kepzesTanev'].' ('.$A['kepzesId'].')'; + echo '
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/szovegesErtekeles.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/szovegesErtekeles.phtml new file mode 100644 index 00000000..b81c5ca5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/szovegesErtekeles.phtml @@ -0,0 +1,70 @@ +"ertekeles$class")); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + +//echo '
    '; var_dump($ADAT); echo '
    '; + + echo '

    '; + echo $ADAT['diakTargyak'][ $ADAT['targyId'] ]['targyNev']; + if ($class == ' zaro') echo ' - '._SZEMESZTER_ERTEKELES; + echo '

    '."\n"; + if (isset($ADAT['szovegesErtekeles']['szeId'])) echo '

    '._LEGUTOBBI_ERTEKELES.': '.$ADAT['szovegesErtekeles']['dt'].'

    '; + else echo '

    '._MEG_NEM_ERTEKELT.'

    '."\n"; + + echo '
      '."\n"; + foreach ($ADAT['szempontRendszer']['szempont'] as $szempontId => $szAdat) { + echo '
    1. '."\n"; + echo $szAdat['szempont']."\n"; + echo '
        '."\n"; + for ($i = 0; $i < count($ADAT['szempontRendszer']['minosites'][$szempontId]); $i++) { + $mAdat = $ADAT['szempontRendszer']['minosites'][$szempontId][$i]; + if ( + is_array($ADAT['szovegesErtekeles']['minosites']) + && in_array($mAdat['minositesId'], $ADAT['szovegesErtekeles']['minosites']) + ) $CHK = ' checked="checked" '; + else $CHK = ''; + echo '
      • '."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
      • '."\n"; + } + if (__MODOSITHAT) { + echo '
      • '."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
      • '."\n"; + } elseif ($ADAT['szovegesErtekeles']['egyediMinosites'][$szempontId]['egyediMinosites'] != '') { + echo '
      • '."\n"; + echo ''.$ADAT['szovegesErtekeles']['egyediMinosites'][$szempontId]['egyediMinosites'].''."\n"; + echo '
      • '."\n"; + } + echo '
      '."\n"; + echo '
    2. '."\n"; + } + echo '
    '."\n"; + + if (__MODOSITHAT) echo ''."\n"; + + formEnd(); + +//echo '
    ';
    +//var_dump($ADAT['szovegesErtekeles']);
    +
    +    }
    +
    +?>
    diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/tankor.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/tankor.phtml
    new file mode 100644
    index 00000000..cbac5b68
    --- /dev/null
    +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/tankor.phtml
    @@ -0,0 +1,550 @@
    + $szemeszter,
    +		'év' => $ev,
    +		'hó' => $ho,
    +		'colspan' => 1+count($Jegyek['dolgozatok']['dátum szerint'][$szemeszter][$ev][$ho])
    +	    );
    +	    $HO['count']++;
    +	    $colSpan += 1+count($Jegyek['dolgozatok']['dátum szerint'][$szemeszter][$ev][$ho]);
    +	    $aktDt = date('Y-m-01',strtotime('+1 month',strtotime($aktDt)));
    +	    if (strtotime($aktDt) > strtotime($szAdat['zarasDt'])) {
    +		$szAdat = next($_TANEV['szemeszter']); $szemeszter = $szAdat['szemeszter'];
    +		if ($szAdat !== false) {
    +		    $HO[] = array(
    +			'szemeszter' => $szemeszter,
    +			'év' => $ev,
    +			'hó' => $ho,
    +			'colspan' => 1+count($Jegyek['dolgozatok']['dátum szerint'][$szemeszter][$ev][$ho])
    +		    );
    +		    $HO['count']++;
    +		    $colSpan += 1+count($Jegyek['dolgozatok']['dátum szerint'][$szemeszter][$ev][$ho]);
    +		}
    +	    }
    +	}
    +
    +	// svgClose(array('id'=>'closeLayer','alt'=>_CLOSE,'title'=>_CLOSE,'size'=>20));
    +	formBegin(array('style'=>'display:none;','name'=>'jegyAdat', 'id'=>'jegyAdat', 'method'=>'post', 'action'=>href('index.php?page=naplo&sub=osztalyozo&f=jegy'), 'class'=>'onSubmitUpdate'));
    +	echo '';
    +	formEnd();
    +
    +	formBegin(array('name' => 'beir', 'method' => 'post', 'action' => ''));
    +	    echo ''."\n";
    +	    echo ''."\n";
    +	    echo ''."\n";
    +	    echo ''."\n";
    +	    echo ''."\n";
    +	    echo ''."\n";
    +	    echo ''."\n";
    +	    echo ''."\n";
    +
    +	echo ''."\n";
    +	echo ''."\n";
    +	    echo ''."\n";
    +
    +	    echo ''."\n";
    +	    echo '';
    +
    +		echo '';
    +		// Hónaponként végigmenve
    +		$szemeszter = 0;
    +		for ($j=0;$j<$HO['count'];$j++) {
    +		    if ($szemeszter != $HO[$j]['szemeszter']) {
    +			if (isset($db)) {
    +			    echo $db.'">'.decimal_to_roman($szemeszter).'. '._FELEV.''."\n";
    +			}
    +			if ($szemeszter != 0) echo '';
    +
    +		if ($sulyozas == __DEFAULT_SULYOZAS) $_sulyClass = "defaultSulyozas";
    +
    +		echo '';
    +
    +		// bizonyítvány
    +		echo '';
    +
    +	    echo '';
    +	    echo '';
    +		$szemeszter = 0;
    +		for ($j=0;$j<$HO['count'];$j++) {
    +		    if ($szemeszter != $HO[$j]['szemeszter']) {
    +			if ($szemeszter != 0) echo ''."\n";
    +
    +		    echo '';
    +	    
    +		}
    +	    foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdat) {
    +		echo '';
    +	    }
    +	    echo '';
    +	echo '';
    +
    +	echo '';
    +
    +	    echo '';
    +	    echo '';
    +	    echo '';
    +
    +	echo '';
    +
    +	
    +	// ---------- Tanulónként a jegyek ------------- //
    +	
    +	echo '';
    +	$db = 0;
    +	if (is_array($Diakok['nevek'])) foreach ($Diakok['nevek'] as $diakId => $DIAKADAT) {	
    +
    +	    $JEGYET_KAP = (
    +		in_array($ADAT['diakJogviszony'][$diakId][date('Y-m-d')]['statusz'],array('jogviszonyban van','vendégtanuló'))
    +		||
    +		($ADAT['diakJogviszony'][$diakId][date('Y-m-d')]['statusz']=='magántanuló' && $tankorJelleg == 'gyakorlat')
    +	    );
    +	    $__JEGYEK = array();
    +	    //$diakKovetelmeny = $Diakok['adatok'][$diakId][count($Diakok['adatok'][$diakId])-1]['kovetelmeny']; (ezt nem használjuk!!!)
    +	    echo '';
    +
    +	    echo '';
    +	    
    +	    if ($kepMutat) {
    +		echo '';
    +	    }
    +
    +	    echo '';
    +	    if (__EVKOZI_JEGYET_ADHAT ) {
    +		echo ''."\n";	    
    +	    }
    +	    // Hónaponként végigmenve
    +	    $elozoHo = 0;
    +	    for ($j = 0; $j < $HO['count']; $j++) {
    +	    
    +		$_szemeszter = $HO[$j]['szemeszter'];
    +		$elozoHo = $_ho;
    +		$_ho = $HO[$j]['hó'];
    +		$_ev = $HO[$j]['év'];
    +		$_JEGYEK = $Jegyek[$diakId][$_szemeszter][$_ev][$_ho]['jegyek'];
    +		$_DOGA = $Jegyek[$diakId][$_szemeszter][$_ev][$_ho]['dolgozat'];
    +
    +		if ($elozoHo == $_ho) echo '';
    +		
    +		for ($k = 0; $k < count($Jegyek['dolgozatok']['dátum szerint'][$_szemeszter][$_ev][$_ho]); $k++) {
    +		    $did = $Jegyek['dolgozatok']['dátum szerint'][$_szemeszter][$_ev][$_ho][$k];
    +		    if (in_array($tankorId, $Jegyek['dolgozatok'][$did]['tankorIds'])) echo '';
    +		}
    +		
    +	    }
    +
    +	    if ($Jegyek[$diakId]['átlag'] != 0) {
    +		$atlag = number_format($Jegyek[$diakId]['átlag'],2,',','');
    +		$class = 'atlag';
    +	    } else {
    +		$atlag = '';
    +		$class = '';
    +	    }
    +	    
    +	    echo '';
    +
    +	    $oszlopSzam = 0;
    +
    +	    foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdatok) {
    +		$ZAROJEGYET_KAP = (
    +		    in_array($ADAT['diakJogviszony'][$diakId][$szAdatok['zarasDt']]['statusz'],array('jogviszonyban van','vendégtanuló'))
    +		    ||
    +		    ($ADAT['diakJogviszony'][$diakId][$szAdatok['zarasDt']]['statusz']=='magántanuló' && $tankorJelleg == 'gyakorlat')
    +		);
    +
    +		$felev = $szemeszter;
    +		// Az adott szemeszter szeritni évfolyama (igen, akár ez is változhat év közben: pl nyelvi előkészítős osztályba megy át normál osztályból)
    +		$evfolyam = $ADAT['diakEvfolyam'][$szemeszter][$diakId];
    +		$evfolyamJel = $ADAT['diakEvfolyamJel'][$szemeszter][$diakId];
    +		if (isset($ADAT['diakKepzesKovetelmeny'][$szemeszter][$diakId][$targyId][$evfolyamJel][$szemeszter])) {
    +		    $_info = " a képzésből";
    +		    $diakZaroKovetelmeny = $ADAT['diakKepzesKovetelmeny'][$szemeszter][$diakId][$targyId][$evfolyamJel][$szemeszter][0]['kovetelmeny'];
    +		} else {
    +		    $_info = "";
    +		    $diakZaroKovetelmeny = $zaroKovetelmeny;
    +		}
    +		$oszlopSzam++;
    +		echo '';
    +	    
    +	}
    +	
    +	// Dolgozat átlagok
    +	echo '';
    +	    echo '';
    +	    $elozoHo = 0;
    +	    for ($j = 0; $j < $HO['count']; $j++) {
    +
    +		$_szemeszter = $HO[$j]['szemeszter'];
    +		$elozoHo = $_ho;
    +		$_ho = $HO[$j]['hó'];
    +		$_ev = $HO[$j]['év'];
    +		
    +		// Normál jegyek alatt...
    +		if ($_ho == $elozoHo) echo '';
    +		}
    +
    +	    }
    +	    // Osztályátlag
    +	    echo '';
    +
    +	    // Félévi átlagok
    +	    echo '';
    +	    
    +	echo '';
    +	
    +	echo '';
    +	
    +	echo '
    '."\n"; + echo $Jegyek['tankörök'][$tankorId]['tankorNev']; + //_inlineHelp(''); + echo ' ('.implode(', ',$Jegyek['tanárok']['tanarNevek']).')'; + echo '
    '; + $SEL = array($nevsor => ' selected="selected" '); + echo ''; + if ($kepMutat!='') $_CHK='checked="checked"'; else $_CHK=''; + echo ''; + + echo ''.decimal_to_roman($szemeszter).'. '._FELEV.''; + echo _ATLAG.'
    '; + $SEL = array($sulyozas => ' selected="selected"'); + echo ''; + echo '
    '._BIZONYITVANY.'
    '; + else echo ''; + $szemeszter = $HO[$j]['szemeszter']; + } else { + echo ''; + } +// echo $Honapok[$HO[$j]['hó']-1]; +// echo ''; + echo ''.decimal_to_roman($HO[$j]['hó']).'.'; + echo ''.$Honapok[$HO[$j]['hó']-1].''; +// echo ''.decimal_to_roman($szemeszter).'. '._FELEV.'
    '; + + if (__EVKOZI_JEGYET_ADHAT) { + + echo ''; + echo ''; + echo '
    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + } + echo '
    '; + echo ''.(++$db).'.'; + echo ''; + putFace($diakId,'diak',30); + echo ''; + echo ''; + echo ''; + echo $DIAKADAT['diakNev']; + echo ''; + echo ''; + if ($ADAT['diakEvfolyamJel']['aktualis'][$diakId]=='' && function_exists('putAlertImage')) putAlertImage('Nem határozható meg az évfolyama! Vendégtanuló, vagy már nem tagja a megfelelő osztálynak?'); + echo ''; + if ( + (!is_array($ADAT['diakFelmentes'][$diakId]) || !in_array($tankorId,$ADAT['diakFelmentes'][$diakId])) && $JEGYET_KAP===true + ) { + + // Ez még nem használható! DE NAGYON JÓ LENNE ÁM - 2016 --TODO + /* + $_JEGY = array('jegySelectTipus'=>'jegy', + 'evfolyam'=>$evfolyam, + 'diakId'=>$diakId, + 'targyId'=>$targyId, + 'jegyTipus'=>$evkoziKovetelmeny + ); + putJegySelect($_JEGY); + */ + echo ''."\n"; + + } else { + echo '-'; + } + echo ''; + else echo ''; + for ($k = 0; $k < count($_JEGYEK); $k++) { + $title = ''; + $href = href('index.php?page=naplo&sub=osztalyozo&f=jegy&jegyId='.$_JEGYEK[$k]['jegyId']); + if ($_JEGYEK[$k]['tankorId'] == $tankorId) { + $class = 'jegy'.$_JEGYEK[$k]['tipus']; + $__JEGYEK['sajat'][] = $_JEGYEK[$k]; + } else { + $class = 'jegy'.$_JEGYEK[$k]['tipus'].'mase'; + $__JEGYEK['mase'][] = $_JEGYEK[$k]; + } + $title .= str_replace('-', '.', $_JEGYEK[$k]['dt']) + . ' - '.$Jegyek['tankörök'][$_JEGYEK[$k]['tankorId']]['tankorNev'] + . ' ('; + for ($t = 0; $t < count($Jegyek['tankörök'][$_JEGYEK[$k]['tankorId']]['tanárok']); $t++) { + $title .= $Jegyek['tankörök'][$_JEGYEK[$k]['tankorId']]['tanárok'][$t]['tanarNev'] . ', '; + } + $title = substr($title,0,-2) . ') ' . $_JEGYEK[$k]['megjegyzes']; + echo ''; + echo (($_jegyShow=$KOVETELMENY[$_JEGYEK[$k]['jegyTipus']][$_JEGYEK[$k]['jegy']]['rovid'])!='') ? $_jegyShow:'?'; + + if ($_JEGYEK[$k]['modositasDt']!='0000-00-00 00:00:00' && $_JEGYEK[$k]['dt']!=date('Y-m-d',strtotime($_JEGYEK[$k]['modositasDt']))) echo '*'; + echo ' '; + } + echo ''; + else echo ''; + for ($l = 0; $l < count($_DOGA[$did]); $l++) { + $href = href('index.php?page=naplo&sub=osztalyozo&f=jegy&jegyId='.$_DOGA[$did][$l]['jegyId']); + if ($_DOGA[$did][$l]['tankorId'] == $tankorId) { + $class = 'jegy'.$_DOGA[$did][$l]['tipus']; + $__JEGYEK['sajat'][] = $_DOGA[$did][$l]; + } else { + $class = 'jegy'.$_DOGA[$did][$l]['tipus'].'mase'; + $__JEGYEK['mase'][] = $_DOGA[$did][$l]; + } + $title = $Dolgozatok[$did]['dolgozatNev'].' - '.str_replace('-', '.', $_DOGA[$did][$l]['dt']) + . ' - '.$Jegyek['tankörök'][$_DOGA[$did][$l]['tankorId']]['tankorNev'] + . ' ('; + for ($t = 0; $t < count($Jegyek['tankörök'][$_DOGA[$did][$l]['tankorId']]['tanárok']); $t++) { + $title .= $Jegyek['tankörök'][$_DOGA[$did][$l]['tankorId']]['tanárok'][$t]['tanarNev'] . ', '; + } + $title = substr($title,0,-2) . ') ' . $_DOGA[$did][$l]['megjegyzes']; + echo ''; + echo $KOVETELMENY[$_DOGA[$did][$l]['jegyTipus']][$_DOGA[$did][$l]['jegy']]['rovid']; + if ($_DOGA[$did][$l]['modositasDt']!='0000-00-00 00:00:00' && $_DOGA[$did][$l]['dt']!=date('Y-m-d',strtotime($_DOGA[$did][$l]['modositasDt']))) echo '*'; + echo ' '; + } + echo ''; + $atlag_title = ''; + + $_jegyOsszeg = 0; + $_szlo = $_sumsuly = 0; + for ($i=0; $i'.$atlag.''; + if ($_osszegMutat=== true) echo ' ∑:'.$_jegyOsszeg.''; + echo ''; + if ( __ZAROJEGYET_ADHAT===true) { + $_zarojegyGomb = true; + $jIg = count($ADAT['zaroJegyek'][$diakId][$evfolyamJel][$felev]); // evfolyamJel + if ($jIg==0) $jIg=1; + $vanJegySelect=false; + $lezartJegy=false; + for ($j=0; $j<($jIg); $j++) { + // prepare data + $_ZJEGY = $ADAT['zaroJegyek'][$diakId][$evfolyamJel][$felev][$j]; // evfolyamJel + $_ZJEGY['dt'] = $_ZJEGY['modositasDt']; //!!! HACK -- ez tök jó, de mi a hack? + //??? $vizsgaJegy = ($ADAT['vizsgaJegyek'][$diakId][$evfolyam][$felev][0]['tipus']!=''); // == osztályozó vizsga // különbözeti stb + // Ha netán a tanár lezár rendesen és utóbb vizsgajegyet is írnak be, akkor a rendes jegyet még kell tudni törölni... + $ii = 0; + while ( + ($ii < count($ADAT['vizsgaJegyek'][$diakId][$evfolyamJel][$felev])) // evfolyamJel + && $ADAT['vizsgaJegyek'][$diakId][$evfolyamJel][$felev][$ii]['zaroJegyId'] != $_ZJEGY['zaroJegyId'] // evfolyamJel + ) $ii++; + $vizsgaJegy = $ii < count($ADAT['vizsgaJegyek'][$diakId][$evfolyamJel][$felev]); // evfolyamJel + // --- + if ($lezartJegy===false && $vizsgaJegy==true) $lezartJegy=true; + // FIGYELEM!, ha itt módosítász, ellenőrizd a cikluson kívül is jó marad-e a jegySelect + $_JEGY_S = array( + 'info' => $diakZaroKovetelmeny.$_info, + 'jegySelectTipus' => 'zaroJegy', + 'variable' => 'zaroJegy', + 'diakId' => $diakId, + 'targyId'=> $targyId, + 'evfolyam'=> $_ZJEGY['evfolyam'], + 'evfolyamJel'=> $_ZJEGY['evfolyamJel'], // evfolyamJel + 'tanev'=> $tanev, + 'szemeszter' => $szemeszter, + 'zaroJegyId' => $_ZJEGY['zaroJegyId'], + 'jegy' => $_ZJEGY['jegy'], + 'jegyTipus' => (($_ZJEGY['jegyTipus']=='') ? $diakZaroKovetelmeny : $_ZJEGY['jegyTipus']), + 'zaroJegyTipusok' => array_unique( array( $diakZaroKovetelmeny, (($_ZJEGY['jegyTipus']=='') ? $diakZaroKovetelmeny : $_ZJEGY['jegyTipus']), 'nem értékelhető' )), + 'megjegyzes' => $_ZJEGY['megjegyzes'], + 'dt' => $_ZJEGY['dt'], // !!!!!!!!!!!!!!!! + 'hivatalosDt' => $_ZJEGY['hivatalosDt'], + 'modositasDt' => $_ZJEGY['modositasDt'], + 'tabindex' => ($db+$oszlopSzam*count($Diakok['idk'])), + 'tankorId' => $tankorId // szöveges értékelés... + ); + if ($_ZJEGY['evfolyam']=='') // már kitaláltuk az évfolyamot mindenféle furmánnyal (lásd -pre) + $_JEGY_S['evfolyam'] = $evfolyam; + if ($_ZJEGY['evfolyamJel']=='') // már kitaláltuk az évfolyamot mindenféle furmánnyal (lásd -pre) + $_JEGY_S['evfolyamJel'] = $evfolyamJel; // evfolyamJel + + if (($ZAROJEGYET_KAP === true || __NAPLOADMIN===true) && $lezartJegy===false && ( !defined('__IDOSZAK_SZEMESZTER') || ( + $szemeszter==__IDOSZAK_SZEMESZTER && ( + in_date_interval($_ZJEGY['dt'],__IDOSZAK_TOLDT,__IDOSZAK_IGDT) + || $_ZJEGY['zaroJegyId']=='' + ) + ))) { + if (($evfolyamJel=='' && $evfolyam=='')) { + echo 'Nem határozható meg az évfolyama, így valószínűleg nem adható zárójegy! [#1]'; + } else { + putJegySelect($_JEGY_S); + } + $vanJegySelect = true; + } elseif ($_ZJEGY['zaroJegyId']!='') { + echo '
    '; + echo $KOVETELMENY[$_ZJEGY['jegyTipus']][$_ZJEGY['jegy']]['hivatalos']; + if ($_ZJEGY['megjegyzes']!='') echo ' '.$bizonyitvanyMegjegyzesek[$_ZJEGY['megjegyzes']]; + if ($vizsgaJegy==true) echo '(v)'; + echo '
    '; + } elseif ($vizsgaJegy!==false) { + echo 'Vizsgáznia kell!'; // ??? + } + + } + if ($lezartJegy===false) { + if ( (!defined('__IDOSZAK_SZEMESZTER') || $szemeszter==__IDOSZAK_SZEMESZTER) && $vanJegySelect===false) { + foreach ( array('zaroJegyId','jegy','megjegyzes','dt', 'hivatalosDt', 'modositasDt') as $val) unset($_JEGY_S[$val]); + $_JEGY_S['jegyTipus'] = $zaroKovetelmeny; + if ($evfolyamJel=='' && $evfolyam=='') { + echo 'Nem határozható meg az évfolyama, így valószínűleg nem adható zárójegy!'; + } elseif ($ZAROJEGYET_KAP===true) { + putJegySelect($_JEGY_S); + } else { + echo '-'; + } + } + } + } else { + for ($j=0; $j'."\n"; + } + echo '
    '._ATLAG.''; else echo ''; + for ($k=0;$k'; + $did = $Jegyek['dolgozatok']['dátum szerint'][$_szemeszter][$_ev][$_ho][$k]; + echo ''; + if ($KOVETELMENY[$Jegyek['dolgozatok'][$did]['jegyTipus']]['átlagolható']) echo number_format($Jegyek['dolgozatok'][$did]['átlag'],2,',',''); + else echo '-'; + echo ''; + echo ''; + if ($Jegyek['átlag'] != 0) echo number_format($Jegyek['átlag'],2,',',''); + else echo _ATLAG; + echo ''; + if ($_zarojegyGomb==true) { + echo ''; + echo ''; + } + echo '
    '; + formEnd(); + + } + + + function putTankorjegyStatisztika($ADAT) { + //dump( $ADAT); + //echo '
    '; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/targySorrend.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/targySorrend.phtml new file mode 100644 index 00000000..3de4e501 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/targySorrend.phtml @@ -0,0 +1,45 @@ +'post', 'action'=>'', 'id'=>'sorrend', 'class'=>'sorrend')); + + echo '

    '._SORREND.'

    '; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + $SEL = array($_POST['targyId'] => ' selected="selected" '); + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + + echo '
    '."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/vizsga.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/vizsga.phtml new file mode 100644 index 00000000..3cc399fe --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/vizsga.phtml @@ -0,0 +1,145 @@ +'jelentkezes')); + + echo '

    '._VIZSGAJELENTKEZES.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + $SEL = array($ADAT['vizsgaTipus'] => ' selected="selected" '); + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + + } + + function putVizsgalista($ADAT) { + + global $KOVETELMENY; + + formBegin(array('class'=>'lista')); + + echo '

    '._VIZSGALISTA.'

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + for ($i = 0; $i < count($ADAT['vizsga']); $i++) { + + extract($ADAT['vizsga'][$i]); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + if (isset($vizsgaDt)) { + if (strtotime($vizsgaDt)>time()) { + $halasztClass = ''; $ertekelClass = ' rejtett'; + } else { + $halasztClass = ' rejtett'; $ertekelClass = ''; + } + + echo ''; + if (isset($zaradekId)) { + echo ''; + } else { + echo ''; + } + } else { + echo ''; + echo ''; + } + echo ''."\n"; + } + echo ''."\n"; + echo '
    '._DIAK.''._TARGY.''._EVFOLYAMJEL.''._JELENTKEZES.''._VIZSGA.''._ERTEKELES_HALASZTAS.'
    '; + if (__NAPLOADMIN===true) { + echo ''; + //echo $ADAT['vizsga'][$i]['vizsgaId']; + echo 'X'; + echo ''; + } + echo ''.$ADAT['diakok'][ $diakId ]['diakNev'].''.$ADAT['targyak'][$targyId]['targyNev'].''.(($evfolyamJel!='')?$evfolyamJel:$evfolyam).'/'.$felev.''.$jelentkezesDt.''.nagybetus(substr($tipus,0,1)).''; + echo $vizsgaDt; + echo ''; + echo $szoveg; + echo ''; + if (isset($zaroJegyId)) { + echo ''._EREDMENY.': '.$jegyTipus.' →'; + echo ''; + echo $KOVETELMENY[$jegyTipus][$jegy]['hivatalos']; + if ($KOVETELMENY[$jegyTipus][$jegy]['hivatalos'] != $KOVETELMENY[$jegyTipus][$jegy]['rovid']) + echo ' ('.$KOVETELMENY[$jegyTipus][$jegy]['rovid'].')'; + echo ''; + } + echo ''; + echo ''."\n"; + echo '
    '; + echo '⟩⟩⟩ '._ERTEKELES.' ⟩⟩⟩'; + echo ''; + echo ''; + echo '
    '; + echo '⟩⟩⟩ '._HALASZTAS.' ⟩⟩⟩'; + echo ''; + echo ''."\n"; + + echo ''."\n"; + echo '
    '; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + echo '
    '."\n"; + + formEnd(); + + echo '
    '; + echo '

    Debug információ

    '; + echo ''; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/vizsgaJelentkezes.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/vizsgaJelentkezes.phtml new file mode 100644 index 00000000..d27c0c92 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/vizsgaJelentkezes.phtml @@ -0,0 +1,16 @@ +'jelentkezes')); + echo ''."\n"; + echo ''."\n"; + formEnd(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/zaroJegyCheck.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/zaroJegyCheck.phtml new file mode 100644 index 00000000..95a99b81 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/zaroJegyCheck.phtml @@ -0,0 +1,50 @@ +Osztály évfolyamjele:'; + echo $ADAT['evfolyamJel']; + echo '
    Osztály adatai:'; + echo '
    ';
    +	    var_dump($ADAT['osztalyok']);
    +	echo '
    '; + + $ZJ = $ADAT['zaroJegyek']; + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
    zaroJegyIddiakIdtargyIdjegy+tipusevfolyamevfolyamJelfelevmodositasDthivatalosDt
    '; + echo $ZJ[$i]['zaroJegyId']; + echo ''.$ZJ[$i]['diakId'].''.$ZJ[$i]['targyId'].''.$ZJ[$i]['jegy'].$ZJ['jegyTipus'].''.$ZJ[$i]['evfolyam'].''; + if ($ADAT['evfolyamJel']!=$ZJ[$i]['evfolyamJel']) { + echo '"'.$ZJ[$i]['evfolyamJel'].'"'; + echo ''; + echo $ADAT['evfolyamJel']; + echo ''; + } else { + echo $ZJ[$i]['evfolyamJel']; + echo ''; + } + echo ''.$ZJ[$i]['felev'].''.$ZJ[$i]['modositasDt'].''.$ZJ[$i]['hivatalosDt'].'
    '; + echo '

    A gombnyomás a fenti táblázat zárójegyeinél megváltoztatja az évfolyamJelet!'; + echo '

    '; + formEnd(); + } +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/email.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/email.phtml new file mode 100644 index 00000000..f4a91402 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/email.phtml @@ -0,0 +1,42 @@ + + + + '; + + // BASE CSS + $html .= ''; + + // BEEPULO CSS-EK INLINE + if (is_array($includeCSS) && count($includeCSS)>0) { + for ($i=0; $i \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/face.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/face.phtml new file mode 100644 index 00000000..209652db --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/face.phtml @@ -0,0 +1,71 @@ +'', + 'diak' => '', + 'szulo' => '', + 'tanar' => '', + 'munkakozosseg' => '', + 'tankor' => '', + 'tankorSzulo' => '', + 'osztaly' => '', + 'osztalySzulo' => '', + 'osztalyTanar' => '', + ); + + if ($height<=0) { + $height = '50'; + $c = "size_n"; + } else { + $c = "size_s"; + } + $subdir=''; + $extraHtmlAttrs = ''; + $extraClass = ''; + if (in_array($tipus,array('diak','diák'))) { + $subdir=__TANEV; + $extraClass='diakNev'; + $extraHtmlAttrs = 'data-diakid="'.$Id.'"'; + } elseif (in_array($tipus,array('tanar','tanár'))) { + $subdir=ekezettelen($tipus); + $extraClass='tanarNev'; + $extraHtmlAttrs = 'data-tanarid="'.$Id.'"'; + } elseif ($tipus=='tankor') { + $extraClass = 'tankorAdat'; + $extraHtmlAttrs = 'data-tankorid="'.$Id.'"'; + } elseif (in_array($tipus,array('osztaly','osztalySzulo','osztalyTanar'))) { + $extraClass = 'osztalyAdat'; + $extraHtmlAttrs = 'data-osztalyid="'.$Id.'"'; + } else { + + } + + $extraClass .= ' '.__SHOW_FACES_TYPE.' '; + + if ($subdir!='') { + foreach (array('jpg') as $ext) { + $img = $Id.'.'.$ext; + if (@file_exists(_DOWNLOADDIR.'/'._POLICY.'/naplo/face/'.$subdir.'/'.$img)) { + $file = 'index.php?policy='._POLICY.'&sessionID='._SESSIONID.'&page=session&f=download&download='.sha1($Id).'&dir=naplo/face/'.$subdir.'&file='.$img; + $s = '
    '.$Id.'
    '; + if ($return===true) { + echo $s; + return; + } else { + return $s; + } + } + } + } + // nincs kép + if (__SHOW_FACES_TYPE!='classic') { + $s = '
    '; + //$s .= $Id; + $s .= $ICON[$tipus]; + $s .= '
    '; + } + if ($return===true) echo $s; else return $s; + + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/file.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/file.phtml new file mode 100644 index 00000000..1bb2f616 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/file.phtml @@ -0,0 +1,92 @@ +'updateTable')); + // A form címe + if (defined('_FILESELECTTITLE')) echo '

    '._FILESELECTTITLE.'

    '; + // A továbbadandó POST adatok + for ($i = 0; $i < count($post); $i++) { + /* Ez itt nem ellenőrzött! --TODO */ + echo ''."\n"; + } + echo ''."\n"; + echo ' Meglevő rekord találatkor kihagyjuk a rekord frissítést'; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + formEnd(); + + } + + function putFieldSelectForm($fileName, $T, $attrs, $dbtable, $post = array()) { + + formBegin(array('class'=>'updateTable')); + $_CHK = (_SKIP_ON_DUP === true) ? ' checked="checked" ': ''; + echo ''; + + // A formhoz definiált magyarázó szöveg + if (defined('_FIELDSELECTMESSAGE')) { + echo '

    '._FIELDSELECTMESSAGE.'

    '; + } + // A továbbadandó POST adatok + for ($i = 0; $i < count($post); $i++) { + echo ''."\n"; + } + + // A rovatfej vizsgálata + $rovatfej = ''; $RovatfejAttrs = array(); + for($j=0; $j'; + echo ''; + + echo ''; + echo ''."\n"; + echo ''; + + echo ''; + echo ''; + for($j=0; $j'; + + echo 'kulcs mező?
    '."\n"; + + echo ''."\n"; + + echo ''; + } + echo '
    '; + // Az első x sor kiírása: + for($i=0; $i'; + for($j=0; $j'; + echo $T[$i][$j]; + echo ''; + } + echo ''; + } + echo '
    '."\n"; + + echo ''; + formEnd(); + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/hianyzas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/hianyzas.phtml new file mode 100644 index 00000000..f7a9affc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/hianyzas.phtml @@ -0,0 +1,137 @@ + false, 'href' => '', 'napiMinOra' => null, 'napiMaxOra' => null), $KRETAHIANYZAS) { + + if (is_null($SET['napiMinOra'])) return false; + // a meghívó függvénynek kell gondoskodnia az ALLOWED beállításról. Mi már csak ezt használjuk global egy napra! + if (isset($SET['allowed']) && $SET['allowed'] && $SET['href']!='') { + $OK = true; + $href = $SET['href']; + } else $OK = false; + + echo ''; + $_SOR = ''; + for ($__ora = $SET['napiMinOra'];$__ora <= $SET['napiMaxOra']; $__ora++) { + $__D = $napiHianyzasok[$oraAdat['dt']][$__ora]; + $__classES = array(); + $__kiir=''; + $__hrefClass = ''; + $igazolhatoHianyzasId=''; + $__DK = $KRETAHIANYZAS[$__ora]; + if (count($__D)>0) { + $__tipus=''; + /* A több óra támogatást támogatását módosítani kellene... */ + for ( $i=0; $i0) { + $__kiir2beg = ''; + $__kiir2end = ''; + } + } + } else { + $__kiir .= ' '; + } + if ($__hrefClass=='' && !in_array($__tipus,array('felmentés','felszerelés hiány','egyenruha hiány'))) { + $__hrefClass=$__statusz; + $igazolhatoHianyzasId = $__hid; + } + } + if ($__rogzitoTanarId == __USERTANARID) $__kiir .= '×'; + if ($__kiir=='') $__kiir = '-'; + } else { + $__statusz=$__tipus=$__hid=$__oraId=''; + $__kiir = ' '; + } + $__class = ' class="hianyzasNaptar '.implode(' ',$__classES).'"'; + + echo ''; + $_SOR .= ''.$__kiir2beg.$__kiir.$__kiir2end.''; + } + echo ''.$_SOR; + echo '
    '; + if ($OK === true) { + $_href = href($href.'&hianyzasId='.$igazolhatoHianyzasId.'&dt='.$oraAdat['dt'].'&ora='.$__ora); + echo ''.$__ora.''; + } else + echo ''.$__ora.''; + echo '
    '; + + + if (is_array($KRETAHIANYZAS)) { + + echo ''; + $_SOR = ''; + for ($__ora = $SET['napiMinOra'];$__ora <= $SET['napiMaxOra']; $__ora++) { +// $__D = $napiHianyzasok[$oraAdat['dt']][$__ora]; + $__classES = array(); + $__kiir=''; + $__hrefClass = ''; + $igazolhatoHianyzasId=''; + $__D = $KRETAHIANYZAS[$__ora]; + if (count($__D)>0) { + $__tipus=''; + /* A több óra támogatást támogatását módosítani kellene... */ + for ( $i=0; $i0) { + $__kiir2beg = ''; + $__kiir2end = ''; + } + } + } else { + $__kiir .= ' '; + } + if ($__hrefClass=='' && !in_array($__tipus,array('felmentés','felszerelés hiány','egyenruha hiány'))) { + $__hrefClass=$__statusz; + $igazolhatoHianyzasId = $__hid; + } + } + if ($__rogzitoTanarId == __USERTANARID) $__kiir .= '×'; + if ($__kiir=='') $__kiir = '-'; + } else { + $__statusz=$__tipus=$__hid=$__oraId=''; + $__kiir = ' '; + } + $__class = ' class="hianyzasNaptar '.implode(' ',$__classES).'"'; + + echo ''; + $_SOR .= ''.$__kiir2beg.$__kiir.$__kiir2end.''; + } + echo ''.$_SOR; + echo '
    '; + if ($OK === true) { + $_href = href($href.'&hianyzasId='.$igazolhatoHianyzasId.'&dt='.$oraAdat['dt'].'&ora='.$__ora); + echo ''.$__ora.''; + } else + echo ''.$__ora.''; + echo '
    '; + + } + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/jegy.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/jegy.phtml new file mode 100644 index 00000000..955683dc --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/jegy.phtml @@ -0,0 +1,92 @@ +'; + $content .= ''; + for ($o = 0; $o < count($KOVETELMENY[$_jegyTipus]['értékek']); $o++) { + $_osztalyzat = $KOVETELMENY[$_jegyTipus]['értékek'][$o]; + $_SEL = ($_megjegyzes=='' && $_osztalyzat == $_jegy) ? 'selected="selected"':''; + $_megj = null; + $content .= ''; + // + megjegyzés szerinti jegyek + if ($KOVETELMENY[$_jegyTipus][$_osztalyzat]['megjegyzes']!='') { + $_megj = $KOVETELMENY[$_jegyTipus][$_osztalyzat]['megjegyzes']; + $_SEL = (($_megjegyzes==$_megj) && ($_osztalyzat == $_jegy)) ? 'selected="selected"':''; + $content .= ''; + } + } + $content .= ''; + } elseif (count($_zaroJegyTipusok)>=1) { // ha engedélyezett (van megadott érvényes jegyTipus) + $content .= ''; + if ($ADAT['jegyTipus']=='szöveges szempontrendszer') { + $content .= ''; + } + } else { // ha nincs megadva jegyTipus, sajnos nem írható be jegy + $content .= 'A tárgyhoz nincs rögzítve a jegyTipus!'; + } + if ($responseFormat=='return') return $content; + else echo $content; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/orarend.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/orarend.phtml new file mode 100644 index 00000000..522b5a51 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/share/orarend.phtml @@ -0,0 +1,48 @@ +'; + /* Header */ + echo ''; + echo ''; + for ($nap=0; $nap<=$ADAT['meta']['dbNap']; $nap++) { + echo ''; + if (function_exists('_putOrarendHead')) _putOrarendHead($ADAT['oszlopFej'][$nap]); + echo ''; + } + echo ''; + echo ''."\n"; + /* Footer */ + echo ''; + echo ''; + for ($nap=0; $nap<=$ADAT['meta']['dbNap']; $nap++) { + echo ''; + if (function_exists('_putOrarendFoot')) _putOrarendHead($ADAT['oszlopLab'][$nap]); + echo ''; + } + echo ''; + echo ''."\n"; + + /* Table body */ + for ($ora = 0; $ora<16; $ora++) { + echo ''; + echo ''.$ora.''; + for ($nap=1; $nap<=$ADAT['meta']['dbNap']; $nap++) { + echo ''; + if ($ADAT[$ora][$nap]['modosithato'] === true && function_exists('_egyOraMod')) _egyOraMod(); + echo ''; + } + echo ''."\n"; + } + echo ''; + + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/diakAllapot.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/diakAllapot.phtml new file mode 100644 index 00000000..3e0957f6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/diakAllapot.phtml @@ -0,0 +1,165 @@ +'."\n"; + else echo '
    '."\n"; + + formBegin(array('method'=>'post','action'=>'','class'=>'sni')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo ''."\n"; + $SEL = array($ADAT['sniDiakAdat']['mentorTanarId'] => ' selected="selected" '); + echo ''; + + echo '
    '._DIAGNOZIS.''."\n"; + echo '
    '."\n"; + for ($i = 0; $i < count($ADAT['fogyatekossag']); $i++) { + $value = $ADAT['fogyatekossag'][$i]; + if (strpos($ADAT['diakAdat'][$ADAT['diakId']]['fogyatekossag'], $value) !== false) $CHK = 'checked="checked" '; else $CHK = ''; + echo ' '.$value.'
    '; + if ($i == 5 || $i == 12 ) echo '
    '."\n"; + } + echo '
    '."\n"; + echo '
    '."\n"; + + if (__NAPLOADMIN || __VEZETOSEG || __MENTOR) + echo '

    '."\n"; + + formEnd(); + + // Két állapot űrlapot rakunk ki - kezdő és vég állapot - itt 1. és 2. szemeszter + for ($szemeszter = 1; $szemeszter < 3; $szemeszter++) { + + formBegin(array('method'=>'post','action'=>'','class'=>'sni hideShowContainer')); + + echo '

    '.constant('_SZEMESZTER'.$szemeszter).'

    '; + echo ''; + + formEnd(); + + } + + echo '
    '; + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/fejlesztesiTerv.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/fejlesztesiTerv.phtml new file mode 100644 index 00000000..9c7a149d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/fejlesztesiTerv.phtml @@ -0,0 +1,94 @@ +'."\n"; + else echo '
    '."\n"; + + echo '

    '; + echo $Honapok[(date('m',strtotime($ADAT['dt']))-1)]; + echo '

    '; + + formBegin(array('method'=>'post','action'=>'')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo '
    '."\n"; + $SEL = array($ADAT['sniHaviOsszegzes']['valtozas'] => ' selected="selected" '); + echo ''."\n"; + + if (__NAPLOADMIN || __VEZETOSEG || __MENTOR) + echo '

    '."\n"; + + formEnd(); + echo '
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/tantargyiFeljegyzesek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/tantargyiFeljegyzesek.phtml new file mode 100644 index 00000000..e160758d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/sni/tantargyiFeljegyzesek.phtml @@ -0,0 +1,110 @@ +'."\n"; + + for ($t = strtotime($ADAT['igDt']); $t >= $ADAT['tolTime']; $t = strtotime("-7 days", $t)) { + + $dt = date('Y-m-d', $t); + $dtStr = dateToString($dt); + $igDtStr = dateToString(date('Y-m-d', strtotime("+6 days", $t))); + + $mod = ( + $_TANEV['statusz'] == 'aktív' + && ( + __NAPLOADMIN + || (__TANARA && $t >= strtotime(_HALADASI_HATARIDO)) + ) + ); + if ($mod) echo '
  • '."\n"; + else echo '
  • '."\n"; + + formBegin(array('method'=>'post','action'=>'')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + if ($mod) { + echo ''."\n"; + } else { + echo '

    '.nl2br($ADAT['sniTantargyiFeljegyzes'][$dt]).'

    '; + } + + if ($mod) echo ''; + formEnd(); + + echo '
  • '."\n"; + } + echo ''."\n"; + + + } + + function putDiakHetiFeljegyzesek($ADAT) { + + global $_TANEV; + + $dtStr = dateToString($ADAT['dt']); + $time = strtotime($ADAT['dt']); + $igDtStr = dateToString(date('Y-m-d', strtotime("+6 days", $time))); + + echo '

    '.$dtStr.' - '.$igDtStr.'

    '."\n"; + echo '
      '."\n"; + + foreach ($ADAT['tankorIds'] as $tankorId) { + + $mod = ( + $_TANEV['statusz'] == 'aktív' + && ( + __NAPLOADMIN + || ($ADAT['tankorTanaraE'][$tankorId] && $time >= strtotime(_HALADASI_HATARIDO)) + ) + ); + + if ($mod) echo '
    • '."\n"; + else echo '
    • '."\n"; + + formBegin(array('method'=>'post','action'=>'')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo '
      '."\n"; + if ($mod) { + echo ''."\n"; + } else { + echo '

      '.nl2br($ADAT['sniTantargyiFeljegyzes'][$tankorId]).'

      '; + } + + if ($mod) echo ''; + formEnd(); + + echo '
    • '."\n"; + + } + + echo '
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/lemorzsolodas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/lemorzsolodas.phtml new file mode 100644 index 00000000..26c5124c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/lemorzsolodas.phtml @@ -0,0 +1,59 @@ +Két egymás követő félév alatt átlagosan >=1,1 romlás'; + _putTabla($ADAT['lemorzsolodas']['ronto']); + + echo '

    A fél/év végén a tanulmányi átlaga < 3,0

    '; + _putTabla($ADAT['lemorzsolodas']['rosszTanulo']); + + echo '

    A fél/év végén a tanulmányi átlaga < 2,5

    '; + _putTabla($ADAT['lemorzsolodas']['nagyonRosszTanulo']); + + echo '

    Egy vagy több tárgyból bukik

    '; + _putTabla($ADAT['lemorzsolodas']['bukott']); + + echo '

    Magatartása rossz

    '; + _putTabla($ADAT['lemorzsolodas']['rosszMagatartasu']); + + echo '

    Szorgalma hanyag

    '; + _putTabla($ADAT['lemorzsolodas']['hanyagSzorgalmu']); + + echo '

    50 órát elérő igazolatlan hiányzás

    '; + _putTabla($ADAT['lemorzsolodas']['igazolatlanHianyzo_50']); + + echo '

    100 órát elérő igazolt hiányzás

    '; + _putTabla($ADAT['lemorzsolodas']['igazoltanHianyzo_100']); + + echo '

    magántanulóvá vált

    '; + _putTabla($ADAT['lemorzsolodas']['magantanuloLett']); + + } + + function _putTabla($ADAT) { + // dump($ADAT); + echo 'Összesen: '.count($ADAT); + if (count($ADAT)==0) return false; + echo ''; + echo ''; + foreach($ADAT[0] as $k => $d) { + echo ''; + for ($i=0; $i'; + foreach($D as $k => $d) { + if ($k=='diakNev') echo ''; + else echo ''; + } + echo ''; + } + echo '
    '.$k.''; + } + echo '
    '.$D['diakNev'].''.$d.'
    '; + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/letszam.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/letszam.phtml new file mode 100644 index 00000000..78ebd262 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/letszam.phtml @@ -0,0 +1,54 @@ +'; + echo ''; + echo ''; + echo ''._SZULEV.''; + foreach($ADAT['osztalyok'] as $OSZT) { + $osztalyId = $OSZT['osztalyId']; + $osztalyJel = $OSZT['osztalyJel']; + echo ''.$osztalyJel.''; + } + echo ''; + echo ''; + foreach($ADAT['osztalyok'] as $OSZT) { + echo 'Σ♀'; + } + echo ''; + + echo ''; + echo ''; + echo ''; + echo '('.$ADAT['tanev'].') '.$ADAT['dt'].''; + echo ''; + echo ''; + + echo ''; + foreach ($ADAT['eletkor'] as $szuletesiEv => $D) { + echo ''; + echo ''.$szuletesiEv.''; + + foreach($ADAT['osztalyok'] as $OSZT) { + $osztalyId = $OSZT['osztalyId']; + $osztalyJel = $OSZT['osztalyJel']; + if (count($D[$osztalyId]) > 0) { + echo ''.(($D[$osztalyId]['fiú'][0]['dbDiak'] + $D[$osztalyId]['lány'][0]['dbDiak'])).''; + echo ''.(intval($D[$osztalyId]['lány'][0]['dbDiak'])).''; + } else { + echo ''; + } + } + echo ''."\n"; + } + + echo ''."\n"; + echo ''; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/tantargyFelosztas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/tantargyFelosztas.phtml new file mode 100644 index 00000000..bf662e4b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/stat/tantargyFelosztas.phtml @@ -0,0 +1,414 @@ +A '.__TANEV.'/'.(__TANEV+1).' tanév tantárgyfelosztási statisztikája'; + echo ''; + // Intézményi alapadatok + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + } + echo ''; + echo ''; + + // Pedagógus létszám + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + echo ''; + } + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + echo ''; + echo ''; + } + echo ''; + echo ''; + + // Finanszírozott pedagógus létszám (a költségvetési törvény szerint) + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + } + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + $pLetszam = 0; + foreach ($ADAT['finanszírozott pedagógus létszám'] as $osztalyTipus => $mutato) + $pLetszam += round(intval($iAdat['diakLetszam'][$osztalyTipus])/$mutato); + echo ''; + } + echo ''; + foreach ($ADAT['finanszírozott pedagógus létszám'] as $osztalyTipus => $mutato) { + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + echo ''; + echo ''; + } + echo ''; + } + echo ''; + + // Diák létszám adatok + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + if ( + intval($iAdat['diakLetszam']['statusz']['jogviszonyban van']+$iAdat['diakLetszam']['statusz']['magántanuló']) + <> intval($iAdat['diakLetszam']['statusz']['fiú']['jogviszonyban van']+$iAdat['diakLetszam']['statusz']['fiú']['magántanuló']) + +intval($iAdat['diakLetszam']['statusz']['lány']['jogviszonyban van']+$iAdat['diakLetszam']['statusz']['lány']['magántanuló']) + ) $class=' alert'; + else $class=''; + echo '' + .'' + .''; + //echo ''; + } + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + if (intval($iAdat['diakLetszam']['statusz']['jogviszonyban van']) <> intval($iAdat['diakLetszam']['statusz']['fiú']['jogviszonyban van']+$iAdat['diakLetszam']['statusz']['lány']['jogviszonyban van'])) + $jvClass=' class="alert"'; + if (intval($iAdat['diakLetszam']['statusz']['magántanuló']) <> intval($iAdat['diakLetszam']['statusz']['fiú']['magántanuló']+$iAdat['diakLetszam']['statusz']['lány']['magántanuló'])) + $mClass=' class="alert"'; + if (intval($iAdat['diakLetszam']['statusz']['vendégtanuló']) <> intval($iAdat['diakLetszam']['statusz']['fiú']['vendégtanuló']+$iAdat['diakLetszam']['statusz']['lány']['vendégtanuló'])) + $vClass=' class="alert"'; + if (intval($iAdat['diakLetszam']['statusz']['jogviszonya felfüggesztve']) <> intval($iAdat['diakLetszam']['statusz']['fiú']['jogviszonya felfüggesztve']+$iAdat['diakLetszam']['statusz']['lány']['jogviszonya felfüggesztve'])) + $jfClass=' class="alert"'; + echo ''; + echo ''; + echo ''; + //echo ''; + } + echo ''; + echo ''; + echo ''; + foreach ($ADAT['evfolyamJelek'] as $idx => $evfolyamJel) { + $letezoEvfolyam = false; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + if (is_array($iAdat['diakLetszam']['evfolyamJel'][$evfolyamJel])) { + if (!$letezoEvfolyam) { + echo ''; + $letezoEvfolyam = true; + } + if ($letezoEvfolyam) { + echo ''; + echo ''; + echo ''; + //echo ''; + } + } + } + if ($letezoEvfolyam) echo ''; + } + echo ''; + + // Óraszámok + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + } + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo '' + .'' + .'' + .'' + ; + } + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + echo ''; + foreach (array('óratervi','tanórán kívüli') as $oratervi) { + echo ''; + } + } + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + + echo ''; + foreach (array('óratervi','tanórán kívüli') as $oratervi) { + echo ''; + } + } + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + + echo ''; + foreach (array('óratervi','tanórán kívüli') as $oratervi) { + echo ''; + } + } + echo ''; + echo ''; + + // időkeret + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo '' + .'' + .'' + .'' + .'' + .'' + ; + } + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo '' + .'' + .'' + .'' + .'' + .'' + ; + } + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo '' + .'' + .'' + .'' + .'' + .'' + ; + } + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + echo ''; + + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + $osszDb = 0; $osszMax = 0; $osszSum = 0; unset($osszMin); + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) { + if (isset($iAdat['tankorLetszamStat'][$targyId]['sum'])) { + $osszDb += $iAdat['tankorLetszamStat'][$targyId]['db']; + $osszSum += $iAdat['tankorLetszamStat'][$targyId]['sum']; + if ($osszMax < $iAdat['tankorLetszamStat'][$targyId]['max']) $osszMax = $iAdat['tankorLetszamStat'][$targyId]['max']; + if (!isset($osszMin) || $iAdat['tankorLetszamStat'][$targyId]['min']<$osszMin) + $osszMin = $iAdat['tankorLetszamStat'][$targyId]['min']; + } + } + $ADAT['intezmeny'][$intezmeny]['tankorLetszamStat']['összes'] = + array('db'=>$osszDb, 'min'=>$osszMin, 'max'=>$osszMax, 'átlag'=>number_format($osszSum/$osszDb,1,',','')); + } + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo '' + .'' + .'' + .''; + } + echo ''; + echo ''; + foreach ($ADAT['intezmeny'] as $intezmeny => $iAdat) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + echo ''; + + echo '
    Intézmény neve
    OM
    Címe
    ' + .$iAdat['intezmenyAdat']['nev'].'
    ' + .$iAdat['intezmenyAdat']['OMKod'].'
    ' + .$iAdat['intezmenyAdat']['cimHelyseg'].' '.$iAdat['intezmenyAdat']['cimIrsz'].', '.$iAdat['intezmenyAdat']['cimKozteruletNev'].' '.$iAdat['intezmenyAdat']['cimKozteruletJelleg'].' '.$iAdat['intezmenyAdat']['cimHazszam']; + echo '
    Pedagógus létszám '.intval($iAdat['tanarLetszam']['statusz']['határozatlan idejű']+$iAdat['tanarLetszam']['statusz']['határozott idejű']).'
    Gyakornok
    Pedagógus I.
    Pedagógus II.
    Mesterpedagógus
    Kutatótanár'; + echo '
    '.$iAdat['tanarLetszam']['besorolas']['Gyakornok'].'
    ' + .$iAdat['tanarLetszam']['besorolas']['Pedagógus I.'].'
    ' + .$iAdat['tanarLetszam']['besorolas']['Pedagógus II.'].'
    ' + .$iAdat['tanarLetszam']['besorolas']['Mesterpedagógus'].'
    ' + .$iAdat['tanarLetszam']['besorolas']['Kutatótanár'] + .'
    Határozatlan idejű
    Határozott idejű
    Tartósan távol
    ' + .intval($iAdat['tanarLetszam']['statusz']['határozatlan idejű']).'
    ' + .intval($iAdat['tanarLetszam']['statusz']['határozott idejű']).'
    ' + .intval($iAdat['tanarLetszam']['statusz']['tartósan távol']).'
    ' + .'
    Finanszírozott
    pedagógus létszám
    ÖsszesenDiák létszámMutató
    '.$pLetszam.'
    '.$osztalyTipus.''.round(intval($iAdat['diakLetszam'][$osztalyTipus])/$mutato).''.$iAdat['diakLetszam'][$osztalyTipus].''.$mutato.'
    Diák létszám ÖsszesFiúLány
    '.intval($iAdat['diakLetszam']['statusz']['jogviszonyban van']+$iAdat['diakLetszam']['statusz']['magántanuló']).''.intval($iAdat['diakLetszam']['statusz']['fiú']['jogviszonyban van']+$iAdat['diakLetszam']['statusz']['fiú']['magántanuló']).''.intval($iAdat['diakLetszam']['statusz']['lány']['jogviszonyban van']+$iAdat['diakLetszam']['statusz']['lány']['magántanuló']).'
    jogviszonyban van
    magántanuló
    vendégtanuló
    jogviszonya szünetel
    ' + .''.$iAdat['diakLetszam']['statusz']['jogviszonyban van'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['magántanuló'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['vendégtanuló'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['jogviszonya felfüggesztve'].''. + '
    ' + .''.$iAdat['diakLetszam']['statusz']['fiú']['jogviszonyban van'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['fiú']['magántanuló'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['fiú']['vendégtanuló'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['fiú']['jogviszonya felfüggesztve'].''. + '
    ' + .''.$iAdat['diakLetszam']['statusz']['lány']['jogviszonyban van'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['lány']['magántanuló'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['lány']['vendégtanuló'].'
    ' + .''.$iAdat['diakLetszam']['statusz']['lány']['jogviszonya felfüggesztve'].''. + '
    Évfolyam létszámok
    '.$evfolyamJel.''.$iAdat['diakLetszam']['evfolyamJel'][$evfolyamJel]['összes'].''.$iAdat['diakLetszam']['evfolyamJel'][$evfolyamJel]['fiú'].''.$iAdat['diakLetszam']['evfolyamJel'][$evfolyamJel]['lány'].'
    Óraszámok ÖsszesÓraterviTanórán kívüli
    '.number_format($iAdat['oraszamok']['összes'],2,',','').''.number_format($iAdat['oraszamok']['óratervi'],2,',','').''.number_format($iAdat['oraszamok']['tanórán kívüli'],1,',','').'
    Tantárgyanként'; + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) { + if (isset($iAdat['targyOraszamok']['összes'][$targyId])) { + echo number_format($iAdat['targyOraszamok']['összes'][$targyId],1,',','').'
    '; + } + } + echo '
    '; + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) { + if (isset($iAdat['targyOraszamok']['összes'][$targyId])) { + echo $tAdat['targyNev'].'
    '; + } + } + echo '
    '; + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) { + if (isset($iAdat['targyOraszamok']['összes'][$targyId])) { + echo number_format($iAdat['targyOraszamok'][$oratervi][$targyId],1,',','').'
    '; + }} + echo '
    Osztályonként'; + foreach ($iAdat['osztalyIds'] as $osztalyId) { + if (isset($iAdat['osztalyOraszamok']['összes'][$osztalyId])) { + echo number_format($iAdat['osztalyOraszamok']['összes'][$osztalyId],1,',','').'
    '; + } + } + echo '
    '; + foreach ($iAdat['osztalyIds'] as $osztalyId) { + if (isset($iAdat['osztalyOraszamok']['összes'][$osztalyId])) { + echo $iAdat['osztalyAdat'][$osztalyId]['osztalyJel'].'
    '; + } + } + echo '
    '; + foreach ($iAdat['osztalyIds'] as $osztalyId) { + if (isset($iAdat['osztalyOraszamok']['összes'][$osztalyId])) { + echo number_format($iAdat['osztalyOraszamok'][$oratervi][$osztalyId],1,',','').'
    '; + }} + echo '
    Évfolyamonként'; + foreach ($ADAT['evfolyamJelek'] as $evfolyamJel) { + if (isset($iAdat['evfolyamOraszamok']['összes'][$evfolyamJel])) { + echo number_format($iAdat['evfolyamOraszamok']['összes'][$evfolyamJel],1,',','').'
    '; + } + } + echo '
    '; + foreach ($ADAT['evfolyamJelek'] as $evfolyamJel) { + if (isset($iAdat['evfolyamOraszamok']['összes'][$evfolyamJel])) { + echo $evfolyamJel.'
    '; + } + } + echo '
    '; + foreach ($ADAT['evfolyamJelek'] as $evfolyamJel) { + if (isset($iAdat['evfolyamOraszamok']['összes'][$evfolyamJel])) { + echo number_format($iAdat['evfolyamOraszamok'][$oratervi][$evfolyamJel],1,',','').'
    '; + }} + echo '
    Heti időkeret összesenenge-
    délye-
    zett
    tehetség-
    gondozás,
    felzárkóztatás
    hittan többlet
    órakerete
    egyházi
    intéz-
    ményben
    6 és 8
    évfolyamos
    gimnáziumok
    többlet
    óraszáma
    nemzetiségi
    oktatás-
    nevelés
    többlet
    óraszáma
    '.$iAdat['osztalyIdokeret']['összesen']['összes'].''.$iAdat['osztalyIdokeret']['összesen']['engedélyezett'].''.$iAdat['osztalyIdokeret']['összesen']['tehetséggondozás-felzárkóztatás'].''.$iAdat['osztalyIdokeret']['összesen']['egyházi'].''.$iAdat['osztalyIdokeret']['összesen']['gimnázium'].''.$iAdat['osztalyIdokeret']['összesen']['nemzetiségi'].'
    ' + .'Általános iskola alsó tagozat
    ' + .'Általános iskola felső tagozat
    ' + .'Általános iskola
    ' + .'Gimnázium 1-8. évfolyam
    ' + .'Gimnázium 9-12. évfolyam
    ' + .'Gimnázium
    ' + .$iAdat['osztalyIdokeret']['alsó']['összes'].'
    ' + .$iAdat['osztalyIdokeret']['felső']['összes'].'
    ' + .$iAdat['osztalyIdokeret']['általános']['összes'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium18']['összes'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium92']['összes'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium']['összes'].'
    ' + .'
    ' + .$iAdat['osztalyIdokeret']['alsó']['engedélyezett'].'
    ' + .$iAdat['osztalyIdokeret']['felső']['engedélyezett'].'
    ' + .$iAdat['osztalyIdokeret']['általános']['engedélyezett'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium18']['engedélyezett'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium92']['engedélyezett'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium']['engedélyezett'].'
    ' + .'
    ' + .$iAdat['osztalyIdokeret']['alsó']['tehetséggondozás-felzárkóztatás'].'
    ' + .$iAdat['osztalyIdokeret']['felső']['tehetséggondozás-felzárkóztatás'].'
    ' + .$iAdat['osztalyIdokeret']['általános']['tehetséggondozás-felzárkóztatás'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium18']['tehetséggondozás-felzárkóztatás'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium92']['tehetséggondozás-felzárkóztatás'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium']['tehetséggondozás-felzárkóztatás'].'
    ' + .'
    ' + .$iAdat['osztalyIdokeret']['alsó']['egyházi'].'
    ' + .$iAdat['osztalyIdokeret']['felső']['egyházi'].'
    ' + .$iAdat['osztalyIdokeret']['általános']['egyházi'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium18']['egyházi'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium92']['egyházi'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium']['egyházi'].'
    ' + .'
    ' + .$iAdat['osztalyIdokeret']['alsó']['gimnázium'].'
    ' + .$iAdat['osztalyIdokeret']['felső']['gimnázium'].'
    ' + .$iAdat['osztalyIdokeret']['általános']['gimnázium'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium18']['gimnázium'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium92']['gimnázium'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium']['gimnázium'].'
    ' + .'
    ' + .$iAdat['osztalyIdokeret']['alsó']['nemzetiségi'].'
    ' + .$iAdat['osztalyIdokeret']['felső']['nemzetiségi'].'
    ' + .$iAdat['osztalyIdokeret']['általános']['nemzetiségi'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium18']['nemzetiségi'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium92']['nemzetiségi'].'
    ' + .$iAdat['osztalyIdokeret']['gimnázium']['nemzetiségi'].'
    ' + .'
    Osztályonként'; + foreach ($iAdat['osztalyAdat'] as $osztalyId => $oAdat) echo $oAdat['osztalyJel'].'
    '; + echo '
    '; + foreach ($iAdat['osztalyAdat'] as $osztalyId => $oAdat) echo $iAdat['osztalyIdokeret'][$osztalyId]['engedélyezett'].'
    '; + echo '
    '; + foreach ($iAdat['osztalyAdat'] as $osztalyId => $oAdat) echo $iAdat['osztalyIdokeret'][$osztalyId]['tehetséggondozás-felzárkóztatás'].'
    '; + echo '
    '; + foreach ($iAdat['osztalyAdat'] as $osztalyId => $oAdat) echo $iAdat['osztalyIdokeret'][$osztalyId]['egyházi'].'
    '; + echo '
    '; + foreach ($iAdat['osztalyAdat'] as $osztalyId => $oAdat) echo $iAdat['osztalyIdokeret'][$osztalyId]['gimnázium'].'
    '; + echo '
    '; + foreach ($iAdat['osztalyAdat'] as $osztalyId => $oAdat) echo $iAdat['osztalyIdokeret'][$osztalyId]['nemzetiségi'].'
    '; + echo '
    Csoport statisztika Csoportok számaminimális csoportlétszámmaximális csoportlétszámátlagos csoportlétszám
    '.$iAdat['tankorLetszamStat']['összes']['db'].''.$iAdat['tankorLetszamStat']['összes']['min'].''.$iAdat['tankorLetszamStat']['összes']['max'].''.$iAdat['tankorLetszamStat']['összes']['átlag'].'
    Tantárgyanként'; + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) {; + if (isset($iAdat['tankorLetszamStat'][$targyId]['sum'])) { + echo $iAdat['tankorLetszamStat'][$targyId]['db'].'
    '; + } + } + echo '
    '; + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) { + if (isset($iAdat['tankorLetszamStat'][$targyId]['sum'])) { + echo str_replace(' ',' ', $tAdat['targyNev']).'
    '; + } + } + echo '
    '; + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) { + if (isset($iAdat['tankorLetszamStat'][$targyId]['sum'])) { + echo $iAdat['tankorLetszamStat'][$targyId]['min'].'
    '; + } + } + echo '
    '; + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) { + if (isset($iAdat['tankorLetszamStat'][$targyId]['sum'])) { + echo $iAdat['tankorLetszamStat'][$targyId]['max'].'
    '; + } + } + echo '
    '; + foreach ($iAdat['targyAdat'] as $targyId => $tAdat) { + if (isset($iAdat['tankorLetszamStat'][$targyId]['sum'])) { + echo number_format($iAdat['tankorLetszamStat'][$targyId]['sum']/$iAdat['tankorLetszamStat'][$targyId]['db'],1,',','').'
    '; + } + } + echo '
    '; + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/checkStatus.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/checkStatus.phtml new file mode 100644 index 00000000..95a59a90 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/checkStatus.phtml @@ -0,0 +1,34 @@ +'; + + echo '
    '._DT.':'.$ADAT['vizsgaltDt'].'
    '; + echo '
    '._NAPOK_SZAMA.':'.$ADAT['napokSzama'].'
    '; + echo '
    '._ORAK_SZAMA .':'.$ADAT['orakSzama'].'
    '; + + + echo '
    '._HIANYZO_TANKOR; + echo '
      '; + for ($i=0; $i'; + var_dump($_D); + echo ''; + } + echo '
    '.'
    '; + + echo '
    '._HIANYZO_ORA; + echo '
      '; + for ($i=0; $i'; + var_dump($_D); + echo ''; + } + echo '
    '.'
    '; + echo '
    '; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/diakTanarai.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/diakTanarai.phtml new file mode 100644 index 00000000..0436e1f8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/diakTanarai.phtml @@ -0,0 +1,62 @@ +'."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''._DIAK.' ('.count($ADAT['diak']).' '._FO.')'; + echo ''._OSZTALY.''; + echo ''._TANAR.''; + echo ''."\n"; + echo ''."\n"; + + $db = 0; + for ($i = 0; $i < count($ADAT['diak']); $i++) { + + $diakId = $ADAT['diak'][$i]['diakId']; + $tanarNev = array(); + for ($j = 0; $j < count($ADAT['diak'][$i]['tankorIds']); $j++) { + $tankorId = $ADAT['diak'][$i]['tankorIds'][$j]; + for ($k = 0; $k < count($ADAT['tankorTanar'][$tankorId]); $k++) { + + if (!in_array($ADAT['tankorTanar'][$tankorId][$k]['tanarNev'], $tanarNev)) + $tanarNev[] = $ADAT['tankorTanar'][$tankorId][$k]['tanarNev']; + } + } + + if (count($tanarNev) > 0) { + $db++; + echo ''."\n"; + echo ''.$db.'. '.$ADAT['diak'][$i]['diakNev'].''."\n"; + echo ''.$ADAT['osztaly'][ $ADAT['diak'][$i]['osztalyId'] ]['osztalyJel'].''."\n"; + + echo ''; + echo (count($tanarNev) == 0) ? '-' : implode(', ', $tanarNev); + echo ''."\n"; + echo ''."\n"; + } + } + echo ''."\n"; + + } + + function putOsztalyValaszto($ADAT) { + + formBegin(array('class'=>'osztaly')); + echo ''."\n"; + echo ''."\n"; + foreach ($ADAT['osztaly'] as $osztalyId => $oAdat) { + $CHK = (in_array($osztalyId, $ADAT['osztalyId']))?' checked="checked"':''; + echo ''."\n"; + echo ''."\n"; + } + + echo ''."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/fogadoOra.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/fogadoOra.phtml new file mode 100644 index 00000000..0ec32a97 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/fogadoOra.phtml @@ -0,0 +1,317 @@ +'fogado')); + foreach ($Tanarok as $tanarId => $tAdat) if ($Lista['adatok'][$tanarId]['tol'] != '') { + + $tol = $Lista['adatok'][$tanarId]['tol']; + $ig = $Lista['adatok'][$tanarId]['ig']; + + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + + echo ''; + + echo ''; + $i = 0; + for ($t = strtotime($tol); $t < strtotime($ig); $t = strtotime('+'._VIZITHOSSZ. ' minutes', $t)) { + + $aktTol = date('Y-m-d H:i:s', $t); + if ($Lista['jelentkezesek'][$tanarId][$i]['tol'] == $aktTol) { + $A = $Lista['jelentkezesek'][$tanarId][$i]; + $i++; + } else { $A = array(); } + + $diakNevek = array(); + for ($j = 0; $j < count($Szulok['diakjai'][$A['szuloId']]); $j++) + $diakNevek[] = $Szulok['diakjai'][$A['szuloId']][$j]['diakNev']; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + } + echo ''; + + echo '
    '.$tAdat['tanarNev'].'
    '; + echo substr($tol, 0, 10).' '; + if ($Lista['adatok'][$tanarId]['teremId'] != '') { + echo $Lista['adatok'][$tanarId]['leiras']; + echo ' ('.$Lista['adatok'][$tanarId]['teremId'].') '; + echo _TEREM; + } + echo '
    '._TOL.''._SZULONEV.''._DIAKNEV.'
    '; + echo substr($aktTol,11,-3); + echo ''; + echo $Szulok[$A['szuloId']]['szuloNev']; + + echo ''; + echo implode(',', $diakNevek); + echo '
    '."\n"; + + } + formEnd(); + + } + + function putFogadoOsszes($FogadoOsszes, $Tanarok) { + + formBegin(array('class'=>'fogado')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + if (is_array($FogadoOsszes)) foreach ($FogadoOsszes as $tId => $tAdat) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + } + echo ''; + echo '
    '; + echo _TANARNEV; + echo ''; + echo _DATUM; + echo ''; + echo _TOL; + echo ''; + echo _IG; + echo ''; + echo _TEREM; + echo '
    '; + echo ''; + echo '
    '; + echo ''; + echo $Tanarok[$tAdat['tanarId']]['tanarNev']; + echo ''; + echo ''.substr($tAdat['tol'],0,10).''.substr($tAdat['tol'],11,5).''.substr($tAdat['ig'],11,5).''.$tAdat['teremId'].'
    '."\n"; + formEnd(); + } + + function kovetkezoFogadoIdopont($FogadoDt) { + + formBegin(array('class'=>'fogado')); + echo ''."\n"; + + echo '

    '._KOVETKEZO_FOGADO_ORA.'

    '."\n"; + echo '
    '; + echo ''."\n"; + $SEL = array(substr($FogadoDt['tol'][0],11,5) => ' selected="selected" '); + echo ''; + $SEL = array(substr($FogadoDt['ig'][0],11,5) => ' selected="selected" '); + echo ''."\n"; + echo ''."\n"; + echo '
    '; + formEnd(); + + } + + function tanarFogadoIdopontModosito($tanarFogado, $Termek) { + + formBegin(array('class'=>'fogado')); + echo ''."\n"; + echo ''."\n"; + + echo '

    '._TANAR_FOGADOORAJA.'

    '."\n"; + echo '
    '; + echo ''."\n"; + $SEL = array(substr($tanarFogado['tol'],11,5) => ' selected="selected" '); + echo ''; + $SEL = array(substr($tanarFogado['ig'],11,5) => ' selected="selected" '); + echo ''."\n"; + $SEL = array($tanarFogado['teremId'] => ' selected="selected" '); + echo ''."\n"; + echo ''."\n"; + echo '
    '; + formEnd(); + + } + + function tanarFogadoIdopont($TF, $Termek, $Szulok) { + + formBegin(array('class'=>'fogado')); + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + + for ($t = strtotime($TF['adatok']['tol']); $t < strtotime($TF['adatok']['ig']); $t = strtotime('+'._VIZITHOSSZ.' minutes', $t)) { + $szuloId = $TF['jelentkezesek'][date('Y-m-d H:i:s', $t)]['szuloId']; + $DIAKJAI= array(); + for ($i = 0; $i < count($Szulok['diakjai'][$szuloId]); $i++) { + $DIAKJAI[] = $Szulok['diakjai'][$szuloId][$i]; + } + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + } + echo ''."\n"; + echo '
    '._JELENTKEZESEK.'
    '.substr($TF['adatok']['tol'],0,10).''._SZULONEV.''._DIAKNEV.'
    '.'
    '.date('H:i', $t).''; + echo $Szulok[$szuloId]['szuloNev']; + echo ''; + for ($i=0; $i'; + putFace($_D['diakId'],'diak'); + echo '
    '.$_D['diakNev'].''; + echo ''; + } + echo '
    '."\n"; + formEnd(); + } + + function putFogadoOraJelentkezes($szuloId, $diakTanarai, $Alkalmak, $szuloJelentkezes, $TermekAsszoc) { + + if (__FOGADOORA_JELENTKEZES) $DIS = ''; + else $DIS = ' disabled="disabled" '; + + formBegin(array('class'=>'fogado')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + $sor = ''; + $sum = 4; + foreach($Alkalmak['napok'] as $nap => $napAdat) { + list($tolOra,$tolPerc) = explode(':', $napAdat['tol']); + list($igOra,$igPerc) = explode(':', $napAdat['ig']); + $Alkalmak['napok'][$nap]['colspan'] = $colspan = ceil(((60*$igOra+$igPerc) - (60*$tolOra+$tolPerc)) / _VIZITHOSSZ); + $sum += $colspan; + echo ''; + for ($t = strtotime($napAdat['tol']); $t < strtotime($napAdat['ig']); $t = strtotime('+'._VIZITHOSSZ.' minutes',$t)) { + $sor .= ''; + } + } + $sor .= ''."\n"; + echo ''."\n"; + echo $sor; + echo ''; + echo ''; + echo ''; + for ($i = 0; $i < count($diakTanarai); $i++) { + $tanarId = $diakTanarai[$i]['tanarId']; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + foreach($Alkalmak['napok'] as $nap => $napAdat) { + for ($t = strtotime($napAdat['tol']); $t < strtotime($napAdat['ig']); $t = strtotime('+'._VIZITHOSSZ.' minutes',$t)) { + $datetime = $nap.' '.date('H:i', $t).':00'; + if ($szuloJelentkezes[$tanarId]['tol'] == $datetime) $_class = ' class="ok" '; + elseif (isset($diakTanarai[$i]['foglalt']['jelentkezesek'][$datetime])) $_class=' class="foglalt" '; + else $_class=''; + echo ''; + if ( + $Alkalmak[$tanarId]['tol'] <= $nap.' '.date('H:i:s', $t) + && $Alkalmak[$tanarId]['ig'] > $nap.' '.date('H:i:s', $t) + ) { + + if ($szuloJelentkezes[$tanarId]['tol'] == $datetime) + echo ''; + elseif (isset($diakTanarai[$i]['foglalt']['jelentkezesek'][$datetime])) + echo '-'; + else + echo ''; + } + echo ''; + } + } + echo ''; + + } + echo ''; + echo '
    '._TANARADAT.'
    '._NEV.''._TEREM.''._TOROL.''.$nap.''; + $sor .= date('H:i',$t); + $sor .= '
    '; + if (__FOGADOORA_JELENTKEZES) echo ''."\n"; + echo '
    '.$diakTanarai[$i]['tanarNev'].''; + putFace($diakTanarai[$i]['tanarId'],'tanar'); + echo ''.$TermekAsszoc[ $Alkalmak['tanarTerme'][$diakTanarai[$i]['tanarId']] ]['leiras'].''; + echo ''; + echo '
    '."\n"; + formEnd(); + + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/munkaterv.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/munkaterv.phtml new file mode 100644 index 00000000..6be97179 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/munkaterv.phtml @@ -0,0 +1,370 @@ + 'munkaterv')); + + echo '

    '._EVES_MUNKATERV.' - '.$ADAT['munkaterv'][ $ADAT['munkatervId'] ]['munkatervNev'].' ('.$ADAT['munkatervId'].')

    '."\n"; + + echo ''."\n"; + echo ''."\n"; + if ($action == 'honapValasztas') echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + if ($action == 'munkatervModositas') echo ''; + else echo ''; + echo ''; + for ($i = 1; $i < $dow; $i++) { + echo ''; + } + for ($i = 0; $i < count($Napok); $i++) { + if ($ho != $_ho = date('n', strtotime($Napok[$i]['dt']))) { + $ho = $_ho; + + $dow = date('w',strtotime($Napok[$i]['dt'])); + if ($dow == 0) $dow = 7; + for ($j = $dow; $j < 8; $j++) { + echo ''; + } + echo ''."\n"; + echo '
    '; + if ( + ( + ($_TANEV['statusz'] == 'aktív' && __NAPLOADMIN) + || (__VEZETOSEG && __FOLYO_TANEV) + ) + && $action == 'honapValasztas' + ) echo ''; + echo $Honapok[$ho-1]; + echo '
    '; + echo '
      
    '."\n"; + formEnd(); + + formBegin(); + echo ''."\n"; + echo ''."\n"; + if ($action == 'honapValasztas') echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + for ($j=1;$j<$dow;$j++) { + echo ''; + } + } elseif (date('w',strtotime($Napok[$i]['dt']))==1) echo ''; + + // A szemeszterek határának jelölése + foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdat) { + if ($szAdat['zarasDt'] == $Napok[$i]['dt']) { + $fDb = 8; + break; + } + } +// if ($fDb > 0) $fDb--; + if ($fDb == 8) { $fDb--; $class = str_replace(' ', '', ekezettelen($Napok[$i]['tipus'])); + } elseif ($fDb == 7) { $fDb--; $class = 'felevZarasDt '.str_replace(' ', '', ekezettelen($Napok[$i]['tipus'])); + } elseif ($fDb > 0) { $fDb--; $class = 'felevZaras '.str_replace(' ', '', ekezettelen($Napok[$i]['tipus'])); + } else { $class = str_replace(' ', '', ekezettelen($Napok[$i]['tipus'])); } + + echo ''."\n"; + + if (date('w',strtotime($Napok[$i]['dt']))==0) echo ''; + } + + if (0 != $dow=date('w',strtotime($Napok[$i-1]['dt']))) { + for ($i=$dow+1;$i<8;$i++) { + echo ''; + } + echo ''."\n"; + } + echo '
    '; + if ( + ( + ($_TANEV['statusz'] == 'aktív' && __NAPLOADMIN) + || (__VEZETOSEG && __FOLYO_TANEV) + ) + && $action == 'honapValasztas' + ) echo ''; + echo $Honapok[$ho-1]; + echo '
     
    '."\n"; + + echo $Napok[$i]['dt']; + echo '
    '."\n"; + if ($action == 'munkatervModositas') { + echo ''."\n"; + $SEL = array($Napok[$i]['tipus'] => ' selected="selected"'); + echo '
    '."\n"; + echo ''."\n"; + echo '
    '."\n"; + $SEL = array($Napok[$i]['orarendiHet'] => ' selected="selected" '); + echo ''."\n"; + echo '
    '."\n"; + $SEL = array($Napok[$i]['csengetesiRendTipus'] => ' selected="selected" '); + echo ''."\n"; + } else { + echo $Napok[$i]['tipus']; + if (isset($Napok[$i]['megjegyzes']) && $Napok[$i]['megjegyzes'] != '') { + echo '
    '."\n"; + echo ''.$Napok[$i]['megjegyzes'].''; + } + if ($Napok[$i]['tipus'] == 'tanítási nap') { + echo '
    '."\n"; + echo ''.$Napok[$i]['orarendiHet'].'. '._ORARENDI_HET.''; + } + echo '
    '."\n"; + echo ''.$Napok[$i]['csengetesiRendTipus'].' csengetés'; + } + echo '
     
    '."\n"; + formEnd(); + } + + function putNapokSzama($ADAT) { + + $NapokSzama = $ADAT['NapokSzama']; $napTipusok = $ADAT['napTipusok']; + + echo '

    '._NAPOK_SZAMA.' - '.$ADAT['munkaterv'][ $ADAT['munkatervId'] ]['munkatervNev'].' ('.$ADAT['munkatervId'].')

    '; + echo ''; + echo ''; + echo ''; + for ($i = 0; $i < count($napTipusok); $i++) { + echo ''; + } + echo ''; + echo ''; + echo ''; + for ($i = 0; $i < count($napTipusok); $i++) { + echo ''; + } + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
    '.$napTipusok[$i].''._OSSZES_MUNKANAP.'
    '._TENYLEGES.''.intval($NapokSzama[$napTipusok[$i]]).''.intval($NapokSzama['tanítási nap']+$NapokSzama['speciális tanítási nap']+$NapokSzama['tanítás nélküli munkanap']).'
    '._ELOIRT.''.$ADAT['munkaterv'][ $ADAT['munkatervId'] ]['tanitasiNap'].''.$ADAT['munkaterv'][ $ADAT['munkatervId'] ]['tanitasNelkuliMunkanap'].''.($ADAT['munkaterv'][ $ADAT['munkatervId'] ]['tanitasiNap']+$ADAT['munkaterv'][ $ADAT['munkatervId'] ]['tanitasNelkuliMunkanap']).'
    '; + + echo '

    '._VEGZOS_ZARAS_DT.': '. dateToString($ADAT['munkaterv'][ $ADAT['munkatervId'] ]['vegzosZarasDt']). '

    '; + + } + + function putNapokInit($ADAT, $Set = array('hide' => true)) { + + $Hetek = $ADAT['Hetek']; + formBegin(array('class'=>'openable init', 'id' => 'napokInit', 'style' => ($Set['hide']?'display: none;':''), 'action' => '')); + echo '

    '._NAPOKINIT.'

    '."\n"; + echo ''."\n"; + +// if (is_array($Hetek) && count($Hetek) != 0) { +// echo ''."\n"; +// echo '

    '; +// for ($i = 0; $i < count($Hetek); $i++) { +// echo ''; +// echo $Hetek[$i].'  '; +// } +// echo '

    '; +// } else { + echo '

    '._MAGYARAZAT.'

    '; + echo ''."\n"; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''; +// } + echo '
    '."\n"; + formEnd(); + + } + + function putHetHozzarendelo($ADAT, $Set = array('hide' => true)) { + + global $_TANEV; + + formBegin(array('class'=>'openable init', 'id' => 'hetHozzarendeles', 'style' => ($Set['hide']?'display: none;':''))); + echo '

    '._HETHOZZARENDELES.'

    '; + echo ''."\n"; + echo ''."\n"; + echo '

    '._HH_MAGYARAZAT.'

    '; + echo ''."\n"; + echo ''; + + echo ''; + echo ' - '; + echo ''; + echo ''."\n"; + formEnd(); + + } + + function putUjMunkaterv($ADAT, $Set = array('hide' => true)) { + + global $_TANEV; + + formBegin(array('class'=>'openable init', 'id' => 'ujMunkaterv', 'style' => ($Set['hide']?'display: none;':''))); + echo '

    '._UJ_MUNKATERV.'

    '; + echo ''."\n"; + echo '

    '._UM_MAGYARAZAT.'

    '; + + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''; + + echo ''; + echo ''; +/* + echo ''."\n"; + echo ''; + + echo ''; + echo ' - '; + echo ''; +*/ + echo ''."\n"; + formEnd(); + + } + + function putMunkatervOsztaly($ADAT, $Set = array('hide' => true)) { + + global $_TANEV; + + formBegin(array('class'=>'openable init', 'id' => 'munkatervOsztaly', 'style' => ($Set['hide']?'display: none;':''))); + echo '

    '._MUNKATERV_OSZTALY.'

    '; + echo ''."\n"; + echo ''."\n"; + echo '

    '._MO_MAGYARAZAT.'

    '; + + echo '
      '; + for ($i = 0; $i < count($ADAT['osztaly']); $i++) { + $O = $ADAT['osztaly'][$i]; + echo '
    • '; + echo ''; + echo ''.$O['osztalyJel'].' ('.$O['leiras'].')'; + echo ''."\n"; + echo ''; + echo '
    • '; + } + echo '
    '; + formEnd(); + + } + + function putAdminForm($ADAT, $Hetek = array(), $NapokSzama=null, $napTipusok=null) { + + global $action, $initResult; + + if ($action != '') $SEL = $action; + elseif (__MUNKATERV_OK || $initResult === true) $SEL = 'napokSzama'; + else $SEL = 'napokInit'; + + echo '
    '; + + echo '
    '._NAPOKINIT.'
    '; + if (__MUNKATERV_OK || $initResult === true) { + echo '
    '._NAPOK_SZAMA.'
    '; + echo '
    '._HETHOZZARENDELES.'
    '; + echo '
    '._ELTERO_MUNKATERVEK.'
    '; + echo '
    '._MUNKATERV_OSZTALY.'
    '; + } + + echo ''; + putNapokInit($ADAT, array('hide' => ($SEL!='napokInit'))); + putHetHozzarendelo($ADAT, array('hide' => ($SEL!='hetHozzarendeles'))); + putUjMunkaterv($ADAT, array('hide' => ($SEL!='ujMunkaterv'))); + putMunkatervOsztaly($ADAT, array('hide' => ($SEL!='munkatervOsztaly'))); + echo '
     
    '; + echo '
    '; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorBlokk.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorBlokk.phtml new file mode 100644 index 00000000..0577e5a7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorBlokk.phtml @@ -0,0 +1,200 @@ +"szuro csoport")); + echo ''."\n"; + echo ''."\n"; + if (is_array($ADAT['osztalySzuro']) && count($ADAT['osztalySzuro']) == 1) + echo ''."\n"; + + echo ''; + + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''."\n"; + + if (count($ADAT['osztalySzuro']) != 1) { + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + } + + echo ''; + echo ''; + echo ''."\n"; + + echo '
    '._TARGY_SZURES.'
    '; + echo ''."\n"; + echo '
    '._EVFOLYAM_SZURES.'
    '; + for ($i = 0; $i < count($ADAT['evfolyamJelek']); $i++) { + if (in_array($ADAT['evfolyamJelek'][$i], $ADAT['evfolyamJelSzuro'])) + echo ' '; + else + echo ' '; + echo ' '; + if ($i % 4 == 3) echo '
    '; + } + echo '
    '; + echo ''."\n"; + echo '
    '."\n"; + + formEnd(); + + } + + function putUjTankorBlokk($ADAT) { + + formBegin(array('class'=>'csoport')); + echo ''."\n"; + echo ''."\n"; + + // Kiválasztott tárgyak és évfolyamok + for ($i = 0; $i < count($ADAT['targySzuro']); $i++) echo ''."\n"; + for ($i = 0; $i < count($ADAT['evfolyamJelSzuro']); $i++) echo ''."\n"; + if (is_array($ADAT['osztalySzuro']) && count($ADAT['osztalySzuro']) == 1) + echo ''."\n"; + + echo ''; + + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo '
    '; + echo _UJ_TANKOR_BLOKK; + echo '
    '; + echo _BLOKKNEV; + echo ''; + echo _TANKOROK.' ('.count($ADAT['tankorIdk']).')'; + echo '
    '; + echo '
    '; + echo ' '; + echo '
    '; + echo ''; echo '
    '; + echo ''."\n"; + echo '
    '; + formEnd(); + + } + + function putTankorBlokkok($ADAT) { + + $BLOKKOK = $ADAT['tankorBlokkok']; + if (!is_array($BLOKKOK['blokkNevek'])) return false; + echo ''; + + echo ''; + echo ''; + echo ''."\n"; + + foreach ($BLOKKOK['blokkNevek'] as $blokkId => $blokkNev) { + $BA = $BLOKKOK['idk'][$blokkId]; + + $kirakjuk = false; + // blokk szűrése a tankörök alapján (tehát tárgy és évfolyam alapján) + for ($i = 0; $i < count($BA); $i++) { + if (in_array($BA[$i], $ADAT['szurtTankorIdk'])) { + $kirakjuk = true; + break; + } + } + + if ($kirakjuk) { + + echo ''."\n"; + } // if + } // foreach + + echo '
    '; + echo _TANKOR_BLOKK_MODOSITAS; + echo '
    '; + + formBegin(array('class'=>'csoport')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + // Kiválasztott tárgyak és évfolyamok + for ($i = 0; $i < count($ADAT['targySzuro']); $i++) echo ''."\n"; + for ($i = 0; $i < count($ADAT['evfolyamJelSzuro']); $i++) echo ''."\n"; + if (is_array($ADAT['osztalySzuro']) && count($ADAT['osztalySzuro']) == 1) + echo ''."\n"; + + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo '
    '; + echo _BLOKKNEV. ' ('.$blokkId.')'; + echo ''; + echo _TANKOROK. ' (' . count($BA).')'; + echo '
    '; + echo '
    '; + echo ' '; + echo '
    '; + echo ''; + echo ''; + echo '
    '; + echo ''."\n"; + echo '
    '; + formEnd(); + + echo '
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorCsoport.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorCsoport.phtml new file mode 100644 index 00000000..e6bd23f8 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorCsoport.phtml @@ -0,0 +1,122 @@ +'csoport')); + echo ''."\n"; + echo ''."\n"; + + echo ''; + + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo '
    '; + echo _UJ_TANKOR_CSOPORT; + echo '
    '; + echo _CSOPORTNEV; + echo ''; + echo _TANKOROK; + echo '
    '; + echo '
    '; + echo ''; echo '
    '; + echo ''."\n"; + echo '
    '; + formEnd(); + + } + + function putCsoportok($Csoportok, $tankorAdat, $szTankorIds, $osztalyId) { + + echo ''; + + echo ''; + echo ''; + echo ''."\n"; + + + foreach ($Csoportok as $csoportId => $csoportAdat) { + echo ''."\n"; + } + + echo '
    '; + echo _TANKOR_CSOPORT_MODOSITAS; + echo '
    '; + + formBegin(array('class'=>'csoport')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''; + + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + echo ''; + echo ''."\n"; + + echo '
    '; + echo _CSOPORTNEV; + echo ''; + echo ''; + echo _TANKOROK; + echo '
    '; + echo '
    '; + echo '
    '; + echo '
    '; + echo ''."\n"; + echo '
    '; + formEnd(); + + echo '
    '."\n"; + + } + + function putTankorCsoportKereso($osztalyId) { + + formBegin(array('class'=>'csoportKereses')); + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo '
    '._TANKORCSOPORTOK_KERESESE.'
    '; + echo ''; + echo '
    '."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/targyBontas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/targyBontas.phtml new file mode 100644 index 00000000..07f83e8a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/targyBontas.phtml @@ -0,0 +1,296 @@ +'targyBontasInit')); + echo ''."\n"; + echo ''."\n"; + formEnd(); + } + + function putFilter($ADAT) { + + formBegin(array('id'=>'szures')); + echo ''."\n"; +// echo ''."\n"; + echo ''."\n"; + +/* + echo '
    Évfolyam: '; + foreach ($ADAT['evfolyamJelek'] as $ej) { + $evfolyamJel = $ej['evfolyamJel']; + if ($ADAT['evfolyamJel']==$evfolyamJel) { + $CHK = ' checked="checked" '; $extraClass = ' checked'; + $extraStyle = ''; + } else { + $CHK = $extraClass = ''; + if ($ADAT['evfolyamJel'] != '') $extraStyle = ' style="width: 0px; min-width: 0px;" '; + } + echo '
    '; + echo ''; + //echo ''; + echo $evfolyamJel; + echo '
    '; + } + echo '
    '; +*/ + + echo ''."\n"; + echo '
    '; + $evfolyamJel = ''; + foreach ($ADAT['filter']['osztalyAdat'] as $oAdat) { + $oCHK = (in_array($oAdat['osztalyId'], $ADAT['osztalyIds']))?' checked="checked" ':''; + if ($evfolyamJel != $oAdat['evfolyamJel']) { + if ($evfolyamJel!='') echo '
    '; + $evfolyamJel = $oAdat['evfolyamJel']; + // új évfolyamjel - új sor + if ($ADAT['evfolyamJel']==$evfolyamJel) { + $eCHK = ' checked="checked" '; $extraClass = ' checked'; $extraStyle = ''; + } else { + $eCHK = $extraClass = ''; + if ($ADAT['evfolyamJel'] != '') $extraStyle = ' style="display: none;" '; + } + echo '
    '; + echo '
    '; + echo ''; + echo $evfolyamJel; + echo '
    '; + } + if ($oCHK=='') $class='selectOsztaly'; + else $class='selectOsztaly checked'; + if ($oAdat['bontasOk']) $class .= ' bontasOk'; + echo ''; + echo ''; + echo $oAdat['osztalyJel'].' ('.$oAdat['osztalyfonokNev'].')'."\n"; + echo ''; + } + echo '
    '; + echo ''; + + echo '
    '; + foreach ($ADAT['filter']['kepzesAdat'] as $kepzesId => $kAdat) { + $oClass='kSelect'; + foreach ($kAdat as $oAdat) $oClass .= ' ko-'.$oAdat['osztalyId']; + $CHK = (in_array($kepzesId, $ADAT['kepzesIds']))?' checked="checked" ':''; + if ($CHK=='') echo ''; + formEnd(); + } + + function putTargyBontas($ADAT) { + + formBegin(array('id'=>'bontasForm')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + foreach ($ADAT['osztalyIds'] as $osztalyId) echo ''."\n"; + foreach ($ADAT['kepzesIds'] as $kepzesId) echo ''."\n"; + + echo '
    '; + echo '
    '; + echo '
    '; + echo '

    Tárgyak

    '; + echo '
      '; + foreach ($ADAT['targyAdat'] as $targyId => $tAdat) { + echo '
    • '; + echo $tAdat['targyNev'].' ('.$targyId.')'; + echo '
    • '; + } + echo '
    '; + echo '
    '; + + echo ''; + + $stat = array('ko' => 0, 'bontas' => 0, 'koKesz' => 0, 'bontasKesz' => 0); + foreach ($ADAT['oraterv'] as $targyTipus => $tipusAdat) { + foreach ($tipusAdat as $targyId => $targyAdat) { + foreach ($targyAdat as $hetiOraszam => $oraszamAdat) { + foreach($oraszamAdat as $btStr => $btAdat) { + $tbodyId = str_replace('.','p', $targyTipus[0].'-'.intval($targyId).'-'.$hetiOraszam.'-'.$btStr); + echo ''; + $elsoSor = true; $sorDb = count($btAdat); + foreach ($btAdat as $rAdat) { +$stat['ko']++; + $trId = 'tr-'.$rAdat['osztalyId'].'-'.$rAdat['kepzesOratervId']; + $targyTipusE = ($targyTipus!='mintatantervi'); + + // kész van-e minden bontás-tankör hozzárendelés ebben a sorban? + $bontasArray = $ADAT['osztalyTargyBontas'][ $rAdat['osztalyId'] ][ $rAdat['kepzesOratervId'] ]; + if (is_array($bontasArray)) { + $mindenBontasOk = true; + foreach ($bontasArray as $bontas) { + $stat['bontas']++; + if ($hetiOraszam-$bontas['hetiOraszam']==0) $stat['bontasKesz']++; + else $mindenBontasOk = false; + } + } else $mindenBontasOk = false; + + echo ''; + echo ''; + + echo ($targyTipusE?''; + echo ''; + echo ''; + echo ''; + echo ''; +//echo ''; + echo ''; + if ($mindenBontasOk) $stat['koKesz']++; + $elsoSor = false; + } + echo ''; + } + } + } + } + + + echo '
    '.(!$elsoSor?'':'').''.$targyTipus:''.$rAdat['targyNev'].' ('.$targyId.')').''.$hetiOraszam.''.$ADAT['osztalyAdat'][ $rAdat['osztalyId'] ]['osztalyJel'].' ' + .$ADAT['kepzesAdat'][ $rAdat['kepzesId'] ]['kepzesNev'] + .''.$rAdat['szemeszter'].'. félév' + .''; + $db = 0; + if (is_array($bontasArray)) foreach ($bontasArray as $bontas) { + + if ($hetiOraszam-$bontas['hetiOraszam']==0) $class=" ok"; + elseif ($hetiOraszam-$bontas['hetiOraszam']<0) $class=" fail"; + else $class=''; + echo '
    '; + echo ''.(++$db).'. '.$ADAT['targyAdat'][ $bontas['targyId'] ]['targyNev'].' csoport ('.$bontas['bontasId'].')'; + echo ''; + echo '
      '; + if (is_array($bontas['tankor-oraszam'])) foreach ($bontas['tankor-oraszam'] as $toAdat) { + echo '
    • ['.floatval($toAdat['hetiOraszam']).'] '.$ADAT['tankorAdat'][ $toAdat['tankorId'] ]['tankorNevTargyNelkul'].' ('.$toAdat['tankorId'].')
    • '; + } + echo '
    • '.($hetiOraszam-$bontas['hetiOraszam']).'
    • '; + echo '
    '; + echo '
    '; + + } + echo '
    '; +//dump($bontasArray); +//echo (++$sor).'. '; +//echo $btStr.' ('.$rAdat['kepzesOratervId'].')'; +//echo '
    '.$tbodyId.' - '.$trId; +//echo '
    '; + + + echo '
    '; + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''; + + echo ''; + + echo ''; + + + + +/* + echo ''; + echo ''; + echo ''; + echo ''; +*/ + echo '
    '; + echo count($ADAT['oratervenKivuliTankorok']).''; + echo '
      '; + foreach ($ADAT['oratervenKivuliTankorok'] as $idx => $okAdat) { + if ($idx<30) { + echo '
    • '; + echo $okAdat['tankorNev'].' ('.$okAdat['tankorId'].') ['.(is_null($okAdat['diff'])?'-':$okAdat['diff']).']'; + echo '
    • '; + } + } + if ($idx >= 30) echo '
    • ...
    • '; + echo '
    '; + echo '
    '; + echo ''.$stat['koKesz'].'/'.$stat['ko'].''; + echo ''; + echo ''.$stat['bontasKesz'].'/'.$stat['bontas'].''; + echo ''; + echo ''; + echo '
    Óratervtől eltérő tankörök száma:'; + echo '
      '; + foreach ($ADAT['oratervenKivuliTankorok'] as $idx => $okAdat) { + if ($idx<30) { + echo '
    • '; + echo $okAdat['tankorNev'].' ('.$okAdat['tankorId'].') ['.(is_null($okAdat['diff'])?'-':$okAdat['diff']).']'; + echo '
    • '; + } + } + if ($idx >= 30) echo '
    • ...
    • '; + echo '
    '; + echo '
    '.count($ADAT['oratervenKivuliTankorok']).'
    (nem frissül)
    Óratervi bejegyzés:'.$stat['koKesz'].'/'.$stat['ko'].'
    Felvett bontás:'.$stat['bontasKesz'].'/'.$stat['bontas'].'
    '; + echo '
    '; + echo '
    '; + + + + + + + + + +/* + echo ' '; + echo ' '; + echo ' '; + echo ' '; + echo '
    '; + echo ' '; + echo ' '; + echo ' '; + echo '
    '; + echo ' '; + echo ' '; + echo ' '; + echo '
    '; + echo ' '; + echo ' '; + echo '
    '; + echo ' '; + echo ' '; + echo '
    '; + echo ' '; + echo ' '; + echo '
    '; + echo ' '; + echo ' '; + echo '
    '; + + echo ' '; + echo ' '; + echo ' '; + echo ' '; + echo ' '; + echo '
    '; +*/ + + formEnd(); + + } + + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/targyOraszam.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/targyOraszam.phtml new file mode 100644 index 00000000..5f3027e2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/targyOraszam.phtml @@ -0,0 +1,25 @@ +'; + echo ''._TARGY.''._ORASZAM.''."\n"; + foreach($ADAT['targyOraszam'] as $targyNev => $_D) { + + $sum += $_D['db']; + + echo ''; + echo ''; + echo $targyNev; + echo ''; + echo round($_D['db'],2); + echo ''; + echo ''; + echo ''."\n"; + } + echo ''.$sum.''."\n"; + echo ''; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/vegzosOrarendLezaras.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/vegzosOrarendLezaras.phtml new file mode 100644 index 00000000..d4940066 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/vegzosOrarendLezaras.phtml @@ -0,0 +1,32 @@ +'vegzos')); + echo ''."\n"; + echo ''."\n"; + + echo '

    '._LEZARANDO_OSZTALYOK_KIVALASZTASA.'

    '; + echo '
      '."\n"; + for ($i = 0; $i < count($ADAT['osztalyok']); $i++) { + + if ($ADAT['osztalyok'][$i]['vegzoTanev'] == __TANEV) { + if (in_array($ADAT['osztalyok'][$i]['osztalyId'], $ADAT['lezarandoOsztaly'])) $CHK = ' checked="checked" '; + else $CHK = ''; + echo '
    • '; + echo ''."\n"; + echo ''; + echo '
    • '."\n"; + } + + } + echo '
    '."\n"; + echo ''."\n"; + formEnd(); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/vegzosTankorLezaras.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/vegzosTankorLezaras.phtml new file mode 100644 index 00000000..2e9138bb --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/vegzosTankorLezaras.phtml @@ -0,0 +1,36 @@ +'vegzos')); + + echo ''."\n"; + + echo '

    '.$ADAT['tanev'].'

    '; + echo '
      '."\n"; + for ($i = 0; $i < count($ADAT['osztalyok']); $i++) { + + if ($ADAT['osztalyok'][$i]['vegzoTanev'] == __TANEV && $ADAT['osztalyok'][$i]['kezdoTanev']<=__TANEV) { + if (in_array($ADAT['osztalyok'][$i]['osztalyId'], $ADAT['lezarandoOsztaly'])) $CHK = ' checked="checked" '; + else $CHK = ''; + echo '
    • '; + echo ''."\n"; + echo ''; + echo '
    • '."\n"; + } + + } + echo '
    '."\n"; + echo ''."\n"; + + echo ''."\n"; + + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetInfo.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetInfo.phtml new file mode 100644 index 00000000..31cb5450 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetInfo.phtml @@ -0,0 +1,67 @@ +'._ALAPADATOK.''."\n"; + if ($skin != 'ajax') + formBegin(array('class'=>'tanmenet')); + + echo ''."\n"; + + echo '

    '.$ADAT['tanmenetAdat']['evfolyamJel'].'. '._EVFOLYAMJEL.' - ' + .$ADAT['tanmenetAdat']['targyNev'].' - ' + .$ADAT['tanmenetAdat']['oraszam'].' '._TANORA.'

    '."\n"; + + echo '

    '._TANMENETNEV.': '.$ADAT['tanmenetAdat']['tanmenetNev'].'

    '."\n"; + + echo '

    '._KESZITETTE.': '.$ADAT['tanmenetAdat']['tanarNev'].' - '.''.dateToString($ADAT['tanmenetAdat']['dt']).'

    '."\n"; + + echo '

    '._ALLAPOT.': '.$ADAT['tanmenetAdat']['statusz'].'

    '; + + echo ''."\n"; + + /* -------------------------------- */ + echo '
    '._HOZZARENDELT_TANKOROK.''; + echo __TANEV.':'; + echo '
      '."\n"; + for ($i = 0; $i < count($ADAT['tanmenetAdat']['tankor']); $i++) { + echo '
    • ' + .$ADAT['tanmenetAdat']['tankor'][$i]['tankorNev'].' ('.$ADAT['tanmenetAdat']['tankor'][$i]['tankorId'].')
    • '."\n"; + } + echo '
    '."\n"; + if (count($ADAT['tanmenetAdat']['tankorNemAktualis'])>0) { + echo _MAS_TANEV.':'; + echo '
      '."\n"; + for ($i = 0; $i < count($ADAT['tanmenetAdat']['tankorNemAktualis']); $i++) { + echo '
    • ' + .$ADAT['tanmenetAdat']['tankorNemAktualis'][$i]['tankorNev'].' ('.$ADAT['tanmenetAdat']['tankorNemAktualis'][$i]['tankorId'].')
    • '."\n"; + } + echo '
    '."\n"; + } + echo '
    '."\n"; + + /* -------------------------------- */ + + + echo '
    '._TEMAKOROK.''."\n"; + $oraszam = 0; + echo '
      '."\n"; + for ($i = 0; $i < count($ADAT['tanmenetAdat']['temakor']); $i++) { + echo '
    • '; + echo ''.($oraszam+1).'-'.($oraszam = $oraszam + $ADAT['tanmenetAdat']['temakor'][$i]['oraszam']); + echo '. '._TANORA.': '; + echo ''; + echo '
      '.nl2br(htmlspecialchars($ADAT['tanmenetAdat']['temakor'][$i]['temakorMegnevezes'])).'
      '."\n"; + echo '
    • '."\n"; + } + echo '
    '; + echo '
    '."\n"; + + if ($skin != 'ajax') formEnd(); + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetJovahagyas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetJovahagyas.phtml new file mode 100644 index 00000000..8670839a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetJovahagyas.phtml @@ -0,0 +1,61 @@ +'.$x[$i]['tanarNev'].''; + } + return implode(', ',$T); + } + + function putTanmenetJovahagyas($ADAT) { + + if (!is_array($ADAT['tankorok'])) return false; + echo ''; + foreach ($ADAT['tankorok'] as $tkAdat) { + + $tankorId = $tkAdat['tankorId']; + $tanmenetId = $ADAT['tankorTanmenet'][$tankorId]; + $tmAdat = $ADAT['tanmenetAdat'][$tanmenetId]; + $tmLeiras = ($tanmenetId == '')?'':($tmAdat['tanmenetNev'].' - ('.$tanmenetId.') - '.$ADAT['tanarok'][$tmAdat['tanarId']]['tanarNev']); + $class = ekezettelen($tmAdat['statusz']); + $href=href("index.php?page=naplo&sub=tanmenet&f=tanmenetInfo&tanmenetId=".$tanmenetId); + + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + + + echo ''; + + } + echo '
    '.$tkAdat['tankorNev'].' ('.$tkAdat['tankorId'].')'._tanarNev($tkAdat['tanarok']).''; + if ($tanmenetId != '') echo ''.$tmLeiras.''; + echo ''; + if ($tanmenetId != '') { + if (__JOVAHAGYHAT) { + formBegin(array('class'=>'tanmenet')); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + foreach (array('új','kész','jóváhagyott','publikus') as $statusz) { + $CHK = ($statusz == $tmAdat['statusz'])?' checked="checked" ':''; + echo ''; + echo ''; + } + echo ''; + formEnd(); + } else { + echo $tmAdat['statusz']; + } + } + echo '
    '; + + + } + +?> \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetLeadas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetLeadas.phtml new file mode 100644 index 00000000..d862b093 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetLeadas.phtml @@ -0,0 +1,38 @@ +'."\n"; + + echo ''; + echo ''._TANAR.''; + echo ''._JOVAHAGYOTT.''."\n"; + echo ''._NEM_JOVAHAGYOTT.''."\n"; + echo ''._FELKESZ.''."\n"; + echo ''._HIANYZO.''."\n"; + echo ''."\n"; + echo ''; + echo ''._TANMENET.''; + echo ''."\n"; + + for ($i = 0; $i < count($ADAT['tanarok']); $i++) { + echo ''; + + echo ''; + echo ''; + echo $ADAT['tanarok'][$i]['tanarNev']; + echo ''; + echo ''."\n"; + echo ''.$ADAT['tanarok'][$i]['db']['jóváhagyott'].''; + echo ''.$ADAT['tanarok'][$i]['db']['kész'].''; + echo ''.$ADAT['tanarok'][$i]['db']['új'].''; + echo ''.$ADAT['tanarok'][$i]['db']['hiányzik'].''; + + echo ''."\n"; + } + + echo ''."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetModositas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetModositas.phtml new file mode 100644 index 00000000..628562b3 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetModositas.phtml @@ -0,0 +1,136 @@ +'._ALAPADATOK.''."\n"; + formBegin(array('class'=>'alapadatok')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + + $SEL = array($ADAT['tanmenetAdat']['evfolyamJel'] => ' selected="selected" '); + echo ' '."\n"; + echo ''; + + echo ' - '.$ADAT['tanmenetAdat']['targyNev'].' - '; + + $SEL = array($ADAT['tanmenetAdat']['oraszam'] => ' selected="selected" '); + echo ' '."\n"; + echo ''; + echo '
    '; + + echo ''; + echo ''."\n"; + echo '
    '; + + echo ''; + echo $ADAT['tanmenetAdat']['tanarNev'].' ('.$ADAT['tanmenetAdat']['tanarId'].') - '; + echo dateToString($ADAT['tanmenetAdat']['dt']); + echo '
    '; + + + + echo ' '."\n"; + if (count($ADAT['statusz']) > 0) { + echo ''; + } else { + echo $ADAT['tanmenetAdat']['statusz']; + echo '
    '; + } + echo '
    '; + + if (__NAPLOADMIN || __KESZITO) { + echo ''._TOROL."\n"; + } + echo ''."\n"; + formEnd(); + echo ''."\n"; + /* -------------------------------- */ + echo '
    '._HOZZARENDELT_TANKOROK.''."\n"; + echo __TANEV.':'; + echo '
      '."\n"; + for ($i = 0; $i < count($ADAT['tanmenetAdat']['tankor']); $i++) { + echo '
    • ' + .$ADAT['tanmenetAdat']['tankor'][$i]['tankorNev'].' ('.$ADAT['tanmenetAdat']['tankor'][$i]['tankorId'].')
    • '."\n"; + } + echo '
    '."\n"; + if (count($ADAT['tanmenetAdat']['tankorNemAktualis'])>0) { + echo _MAS_TANEV.':'; + echo '
      '."\n"; + for ($i = 0; $i < count($ADAT['tanmenetAdat']['tankorNemAktualis']); $i++) { + echo '
    • ' + .$ADAT['tanmenetAdat']['tankorNemAktualis'][$i]['tankorNev'].' ('.$ADAT['tanmenetAdat']['tankorNemAktualis'][$i]['tankorId'].')
    • '."\n"; + } + echo '
    '."\n"; + } + echo '
    '."\n"; + /* -------------------------------- */ + + $_D = (__MODOSITHAT===true)?'':' disabled="disabled" '; + echo '
    '._TEMAKOROK.''."\n"; + $FORM = array('action'=>href('index.php?page=naplo&sub=tanmenet&f=tanmenetModositas'), 'name'=>'tanmenetMod', 'class'=>'tanmenet onChangeRequest'); + formBegin($FORM); + + + echo ''."\n"; + echo ''."\n"; + + echo '
      '."\n"; + for ($i = 0; $i < count($ADAT['tanmenetAdat']['temakor']); $i++) { + echo '
    • '; + + echo 'updown'."\n"; + echo 'close'."\n"; + echo '  '; + + $SEL = array($ADAT['tanmenetAdat']['temakor'][$i]['oraszam'] => ' selected="selected" '); + echo ''."\n"; +// echo ''."\n"; + echo ''; + echo '
    • '."\n"; + } + if (__MODOSITHAT===true) { + echo '
    • '; + echo '  '; + echo 'close'."\n"; + echo ' - '; + + echo ''."\n"; +// echo ''."\n"; + echo ''; + echo '
    • '; + echo '
    '; + + echo ''."\n"; + } + + formEnd(); + echo '
    '."\n"; + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetTankor.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetTankor.phtml new file mode 100644 index 00000000..ea58a28f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/tanmenetTankor.phtml @@ -0,0 +1,65 @@ + +
    X'._TANMENET_RESZLETEI.'
    '; + formBegin(array('action'=>href('index.php?page=naplo&sub=tanmenet&f=tanmenetInfo'), 'class'=>"onSubmitUpdate", 'id'=>"inform")); + echo ''."\n"; + formEnd(); + echo '
    '."\n"; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''."\n"; + foreach ($ADAT['tankorok'] as $key => $tAdat) { + $sClass = kisbetus(ekezettelen($ADAT['tanmenetAdat'][ $ADAT['tankorTanmenet'][$tAdat['tankorId']] ]['statusz'])); + echo ''; + echo ''."\n"; + + echo ''; + + echo ''."\n"; + + } + echo '
    '._TANKORNEV.''._TANMENET.'
    '.$tAdat['tankorNev'].' ('.$tAdat['tankorId'].')'.''; + formBegin(array('class'=>'tanmenet')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo '
    '; + echo ''."\n"; + echo ''."\n"; + if (__MODOSITHAT) { + echo ''."\n"; + if (__TANAR) { + echo ''."\n"; + echo ''."\n"; + } + } + echo '
    '; + formEnd(); + echo '
    '."\n"; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/ujTanmenet.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/ujTanmenet.phtml new file mode 100644 index 00000000..5616edda --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanmenet/ujTanmenet.phtml @@ -0,0 +1,31 @@ +
    '._UJ_TANMENET.'
    '; + + formBegin(array('class'=>'tanmenet')); + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo '
    '."\n"; + echo '
    '."\n"; + + echo ''."\n"; + echo '
    '."\n"; + + echo ''."\n"; + + formEnd(); + echo ''; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/uzeno/postas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/uzeno/postas.phtml new file mode 100644 index 00000000..65a45fae --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/uzeno/postas.phtml @@ -0,0 +1,81 @@ + $_t ) { + for ($i=0; $i $_t ) { + for ($i=0; $i'tankor','osztalySzulo'=>'osztaly', 'osztalyTanar'=>'osztaly'); + $allowedZero = array('diak','szulo','tanar'); + + echo ''; // rendhagyó eset, mert az egész tartalmat lecseréli az onLoadUpdate, és a form-tól kezdjük... + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo '
    '._UJ_UZENET; + if (__UZENOADMIN ===true && $ADAT['user']['feladoTipus']!='admin') { + echo ' '; + } + echo '
    '; + echo _CIMZETT.': '; +// echo 'ዖ'.''; + echo ''; + echo ''; + echo ''; + if (is_array($ADAT['r'])) { + echo ' '; + echo ''; + } + echo ''; + echo '
    '; + echo ''; + echo ''; + echo ''; + echo '
    '; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/uzeno/uzeno.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/uzeno/uzeno.phtml new file mode 100644 index 00000000..24304570 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/uzeno/uzeno.phtml @@ -0,0 +1,434 @@ + '', + 'szulo' => '', + 'tanar' => '', + 'munkakozosseg' => '', + 'tankor' => '', + 'tankorSzulo' => '', + 'osztaly' => '', + 'osztalySzulo' => '', + 'osztalyTanar' => '', + ); + + $TATA = array(); + + function fillTata($ADAT) { + + global $TATA; + foreach ( array('tankor','tankorSzulo') as $_i => $_t ) { + for ($i=0; $i $_t ) { + for ($i=0; $i'._CLEARFILTER.''; + if ($ADAT['feladoId']!='') $filter2Clear = '
    '._CLEARFILTER.''; + + if ($ADAT['szalId']!='') { + putUzenetSzal($ADAT); + } elseif ($ADAT['mId']!='') { + putEgyUzenet($ADAT); + } else { + + echo ''; +// echo ' +// '; + echo ''; + echo ''; + + echo ''; + for ($i=0; $i'; + + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''."\n"; + } + echo ''; + if ($skin=='ajax') { + echo ''; + } + echo '
    '._DATUM.', '._FELADO.$filter2Clear.''._CIMZETT.$filterClear.''._SZOVEG.'
    '.'Üzenő'.'
    '; + if ($skin=='ajax' && $ADAT['limits']!='') { + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno'); + echo _LEGFRISSEBB.' '.count($ADAT['uzenetek']).', '; + echo ''._MINDMUTAT.''; + } else { + echo _OSSZESEN.': '.intval($ADAT['limits']['max']); + } + echo '
    '; + if ($kepMutat && ($_f = putFace($D['feladoId'],$D['feladoTipus'],false,false))) { + echo '
    '.$_f.'
    '; + } + echo '
    '; + echo ''; + echo _szerepNev($D['feladoTipus'], $D['feladoId'] ); + echo '
    '; + echo ''._dt($D['dt']).''; + echo '
    '; + echo '
    '; + echo (($D['cimzettId']==0)?'':$IMG[$D['cimzettTipus']]); + echo ''; +/* + if ($kepMutat && ($_f=putFace($D['cimzettId'],$D['cimzettTipus'],false,false))) { + echo '
    '; + echo $_f; + echo '
    '; + } +*/ echo ''; + echo '
    '; + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno&feladoId='.$D['feladoId'].'&feladoTipus='.$D['feladoTipus'].'&mId='.$D['mId'],array('sessionID','lang','policy')); + $href_szal = href('index.php?page=naplo&sub=uzeno&f=uzeno&szalId='.$D['feladoId'].'_'.$D['feladoTipus'].'_'.$D['cimzettId'].'_'.$D['cimzettTipus'].'&mId='.$D['mId'],array('sessionID','lang','policy')); + + // $D['txt'] = ''.nl2br(htmlspecialchars($D['txt'])).''; + $D['txt'] = makelinksclickable(nl2br(supertext($D['txt']))); + echo (mb_substr($D['txt'],0,2000,'UTF-8')); + if (mb_strlen($D['txt'],'UTF-8')>2000) { + echo ' ...'; + } else { + //echo ' '; + } + + echo ''; + if (__UZENOADMIN) { + } elseif ($D['flag']!=1) { + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno&action=flagUzenet&flag='.(1).'&mId='.$D['mId'],array('sessionID','lang','policy')); + echo '
    '; + } + + echo '
    '; + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno&action=delUzenet&mId='.$D['mId'],array('sessionID','lang','policy')); + echo ' '; + + echo '
    '; + if ($ADAT['limits']['max']>$i) echo ''; + echo '
    '; + + if ($skin!='ajax') { + _putLapozo($ADAT['limits'],'index.php?page=naplo&sub=uzeno&f=uzeno&feladoTipus='.$ADAT['feladoTipus'].'&feladoId='.$ADAT['feladoId'].'&cimzettTipus='.$ADAT['cimzettTipus'].'&cimzettId='.$ADAT['cimzettId']); + } else { + } + + } + + } + + function putUzeno_DEPRECATED($ADAT) { + + if ($ADAT['uzenetek']===false) return false; + + global $TATA,$skin,$IMG; + if (!is_array($TATA) || count($TATA)==0) fillTata($ADAT); + + $kepMutat = $ADAT['kepMutat']; +// $kepMutat=false; + $colspan=5; + $_colspan=1; +/* if ($kepMutat) { + $colspan+=2; + $_colspan++; + } +*/ // Üzenetek + if ($ADAT['szalId']!='') putUzenetSzal($ADAT); + elseif ($ADAT['mId']!='') putEgyUzenet($ADAT); + else { + + if ($ADAT['cimzettId']!='') $filterClear = '
    '._CLEARFILTER.''; + if ($ADAT['feladoId']!='') $filter2Clear = '
    '._CLEARFILTER.''; + + echo ''; + echo ' + '; + echo ''; + + echo ''; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''."\n"; + } + echo ''; + echo '
    '._DATUM.', '._FELADO.$filter2Clear.''._CIMZETT.$filterClear.''._SZOVEG.'
    '; + if ($skin=='ajax' && $ADAT['limits']!='') { + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno'); + echo _LEGFRISSEBB.' '.count($ADAT['uzenetek']).', '; + echo ''._MINDMUTAT.''; + } else { + echo _OSSZESEN.': '.intval($ADAT['limits']['max']); + } + echo '
    '; + if ($kepMutat && ($_f = putFace($D['feladoId'],$D['feladoTipus'],false,false))) { + echo '
    '.$_f.'
    '; + } + echo '
    '; + echo ''; + echo _szerepNev($D['feladoTipus'], $D['feladoId'] ); + echo '
    '; + echo ''._dt($D['dt']).''; + echo '
    '; + echo '
    '; + echo (($D['cimzettId']==0)?'':$IMG[$D['cimzettTipus']]); + echo ''; + if ($kepMutat && ($_f=putFace($D['cimzettId'],$D['cimzettTipus'],false,false))) { + echo '
    '; + echo $_f; + echo '
    '; + } + echo ''; + echo '
    '; + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno&feladoId='.$D['feladoId'].'&feladoTipus='.$D['feladoTipus'].'&mId='.$D['mId'],array('sessionID','lang','policy')); + $href_szal = href('index.php?page=naplo&sub=uzeno&f=uzeno&szalId='.$D['feladoId'].'_'.$D['feladoTipus'].'_'.$D['cimzettId'].'_'.$D['cimzettTipus'].'&mId='.$D['mId'],array('sessionID','lang','policy')); + + $D['txt'] = ''.nl2br(htmlspecialchars($D['txt'])).''; + echo (mb_substr($D['txt'],0,2000,'UTF-8')); + if (mb_strlen($D['txt'],'UTF-8')>2000) { + echo ' ...'; + } else { + //echo ' '; + } + + echo ''; + if (__UZENOADMIN) { + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno&action=delUzenet&mId='.$D['mId'],array('sessionID','lang','policy')); + echo ' '; + } elseif ($D['flag']!=1) { + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno&action=flagUzenet&flag='.(1).'&mId='.$D['mId'],array('sessionID','lang','policy')); + echo ' '; + } + echo '
    '; + + if ($skin!='ajax') _putLapozo($ADAT['limits'],'index.php?page=naplo&sub=uzeno&f=uzeno&feladoTipus='.$ADAT['feladoTipus'].'&feladoId='.$ADAT['feladoId'].'&cimzettTipus='.$ADAT['cimzettTipus'].'&cimzettId='.$ADAT['cimzettId']); + + } + + } + + + + + function _szerepNev($tipus,$id) { + global $TATA; + if ($id==0 && defined('_TP'.strtoupper($tipus))) return '«'.constant('_TP'.strtoupper($tipus)).'»'; + elseif($id==0 and $tipus=='') return '«admin»'; + else return ($TATA[$tipus][$id]!='') ? $TATA[$tipus][$id] : '-n/a-' ; + } + + function putUzenoUzenet($ADAT) { + + if (__SZEREP=='') return; + + global $TATA; + if (!is_array($TATA) || count($TATA)==0) fillTata($ADAT); + $feladoId = (__SZEREP=='admin')? 0:setUzenoFeladoId(); + $KEYS = array_keys($ADAT['tagsagok']); +// if (is_null($ADAT['replyTipus'])) $ADAT['replyTipus']=$KEYS[0]; + + if ($ADAT['feladoId']=='' || $ADAT['mId']>0) { + + formBegin(array('method'=>'post','action'=>href('index.php?page=naplo&sub=uzeno&f=postas&mId='.$ADAT['mId']), 'id'=>'uzenoKereso', 'class'=>'onLoadUpdate')); + formEnd(); + + } else { /* RÉGI UI */ + + } + + } + + function putUzenetSzal($ADAT) { + global $IMG; + $U=$ADAT['uzenetek']; + + list($s1,$s2,$s3,$s4) = explode('_',$ADAT['szalId']); + + echo ''; + echo ''; + echo ''; + echo ''; + for ($i=0; $i'; + echo ''; + echo ''; + echo ''; + } + echo '
    '._DATUM.''._FELADO.''._UZENET.'
    '.''.''.'
    '; + //echo $U[$i]['mId']; + echo _dt($U[$i]['dt']); + echo ''; + echo (($D['cimzettId']==0)?'':$IMG[$D['feladoTipus']]); + echo ''; + echo ''; + echo _szerepNev($D['feladoTipus'], $D['feladoId'] ); + echo ''; + echo ''; + echo '
    '.makelinksclickable(nl2br(supertext($U[$i]['txt']))).'
    '; + echo '
    '; + } + + function putEgyUzenet($ADAT) { + + global $IMG; + //--FIXME + for ($i=0; $i'; + echo ''; + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno&mId=',array('sessionID','lang','policy')); + //echo ''; + + $_class = array('more'); + if ($D['flag']==1) { + $_class[] = 'uj'; + $_flag=0; + } else { + $_flag=1; + $_class[] = 'olvasott'; + } + $href = href('index.php?page=naplo&sub=uzeno&f=uzeno&action=flagUzenet&flag='.($_flag).'&mId='.$D['mId'],array('sessionID','lang','policy')); + echo ' '; + echo ''._DATUM.''._FELADO.''._CIMZETT.''; + echo ''; + + $_class = array(); + $_class[] = $D['cimzettTipus']; + echo ''; + echo ''._dt($D['dt']).''; + echo ''; + echo ''; + echo _szerepNev($D['feladoTipus'], $D['feladoId'] ); + echo ''; + echo ''; + echo ''.(($D['cimzettId']==0)?'':$IMG[$D['cimzettTipus']]).''; + echo ''; + echo ''; + echo _szerepNev($D['cimzettTipus'],$D['cimzettId']); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo makelinksclickable(nl2br(supertext($U[$i]['txt']))); // echo nl2br(htmlspecialchars($D['txt'])); + echo ''; + echo ''."\n"; + + echo ''; + echo ''; + + } + + function _putLapozo($LIMITS,$base='index.php?page=naplo&sub=uzeno&f=uzeno') { + + $limit = intval($LIMITS['limit']); + $darab = intval($LIMITS['max']); + $mutato = intval($LIMITS['mutato']); + $tol = ($mutato-5); + $ig = ($mutato+5); + if ($tol<1) $tol=1; + if ($limit==0) $limit=1; + if ($ig>ceil($darab/$limit)) $ig=ceil($darab/$limit); + echo ''; + echo ''; + echo '
    '; + echo ''; + echo ''; + echo ''; + if ($tol>1) { + echo ''; + echo ''; + } + for ($i=$tol; $i<=$ig; $i++) { + if ($i==$mutato) echo ''; + } + if ($ig>'; + echo ''; + } + echo ''; + echo '
    '._LAPOZO.''; + else echo ''; + echo ''; + echo $i; + echo ''; + echo '
    '; + echo '
    '."\n"; + + } + + function _dt($dt) { + return superdate($dt); // date('Y.m.d. H:i',strtotime($dt)); + } + + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/garfield.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/garfield.gif new file mode 100644 index 00000000..fb86107d Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/garfield.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/kutya.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/kutya.gif new file mode 100644 index 00000000..fafc80cf Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/kutya.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/majom.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/majom.gif new file mode 100644 index 00000000..b755ec47 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/majom.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/nyuszi.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/nyuszi.gif new file mode 100644 index 00000000..a6aec1eb Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/nyuszi.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/pingvin.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/pingvin.gif new file mode 100644 index 00000000..f594b832 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/pingvin.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/smiley.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/smiley.gif new file mode 100644 index 00000000..cc8d1d84 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/smiley.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/tux-hard.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/tux-hard.gif new file mode 100644 index 00000000..849f1eeb Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/anim/tux-hard.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/cr.png b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/cr.png new file mode 100644 index 00000000..af1327bd Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/cr.png differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/fel.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/fel.gif new file mode 100644 index 00000000..75f4ecc0 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/fel.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/flipper/adatok.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/flipper/adatok.gif new file mode 100644 index 00000000..ea7c271a Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/flipper/adatok.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/flipper/nevsor.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/flipper/nevsor.gif new file mode 100644 index 00000000..cbb71a41 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/flipper/nevsor.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/csere.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/csere.gif new file mode 100644 index 00000000..f8473beb Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/csere.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/kez.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/kez.gif new file mode 100644 index 00000000..c10fb1e6 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/kez.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/mozgat.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/mozgat.gif new file mode 100644 index 00000000..9944bf0f Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/mozgat.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/ora.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/ora.gif new file mode 100644 index 00000000..83150a51 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/helyettesites/ora.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/change.png b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/change.png new file mode 100644 index 00000000..3d2ede90 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/change.png differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/felkjel.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/felkjel.gif new file mode 100644 index 00000000..aef9774c Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/felkjel.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/green.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/green.gif new file mode 100644 index 00000000..b7ff93ad Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/green.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/h.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/h.gif new file mode 100644 index 00000000..114e8915 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/h.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/i.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/i.gif new file mode 100644 index 00000000..1ebdce34 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/i.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/pin.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/pin.gif new file mode 100644 index 00000000..2b7ace0f Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/pin.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/red-pin.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/red-pin.gif new file mode 100644 index 00000000..cbfe111a Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/red-pin.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/red.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/red.gif new file mode 100644 index 00000000..ff9599e7 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/red.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/sum.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/sum.gif new file mode 100644 index 00000000..92d701f3 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/sum.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/ter-pin.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/ter-pin.gif new file mode 100644 index 00000000..7f98aab5 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/ter-pin.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/yellow-pin.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/yellow-pin.gif new file mode 100644 index 00000000..53b28ec8 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/yellow-pin.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/yellow.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/yellow.gif new file mode 100644 index 00000000..414d28eb Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hianyzas/yellow.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hibabejelento/buggie.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hibabejelento/buggie.gif new file mode 100644 index 00000000..c5248ef9 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hibabejelento/buggie.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hibabejelento/buggie.svg b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hibabejelento/buggie.svg new file mode 100644 index 00000000..b108abfd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/hibabejelento/buggie.svg @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + background + + + + Layer 1 + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/io/kreta.svg b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/io/kreta.svg new file mode 100644 index 00000000..e111fa54 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/io/kreta.svg @@ -0,0 +1,21 @@ + + Created by potrace 1.10, written by Peter Selinger 2001-2011 + + + background + + + + Layer 1 + + + + + + + + + + + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/le.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/le.gif new file mode 100644 index 00000000..6ca503c6 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/le.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/print.png b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/print.png new file mode 100644 index 00000000..76cda839 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/print.png differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tankorok/gold_box.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tankorok/gold_box.gif new file mode 100644 index 00000000..f0dc944c Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tankorok/gold_box.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tankorok/gray-pixel.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tankorok/gray-pixel.gif new file mode 100644 index 00000000..5e9893fe Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tankorok/gray-pixel.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tanmenet/close.png b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tanmenet/close.png new file mode 100644 index 00000000..abbf64ca Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tanmenet/close.png differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tanmenet/updown.png b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tanmenet/updown.png new file mode 100644 index 00000000..9205820e Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/tanmenet/updown.png differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/toggle.png b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/toggle.png new file mode 100644 index 00000000..b4f54d39 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/toggle.png differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/toolSubmit.gif b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/toolSubmit.gif new file mode 100644 index 00000000..d120f8f4 Binary files /dev/null and b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/img/toolSubmit.gif differ diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/regisztracio.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/regisztracio.jquery.min.js new file mode 100644 index 00000000..ff60f853 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/regisztracio.jquery.min.js @@ -0,0 +1,7 @@ + +// Nekem ez Chromium alatt nem működik... De miért nem? + + $(function() { +// $('#regForm').submit(); + }); + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/regisztracio.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/regisztracio.js new file mode 100644 index 00000000..d7f35a6e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/regisztracio.js @@ -0,0 +1,7 @@ + + Event.observe(window, 'load', myPSFLoader, false); + + function myPSFLoader(evt) { + // A regisztrációs form elküldése + $('regForm').submit(); + } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/szemeszterek.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/szemeszterek.jquery.min.js new file mode 100644 index 00000000..21b3f78e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/szemeszterek.jquery.min.js @@ -0,0 +1,43 @@ + +$(function() { + + var startDateTextBox = $('#tolDt'); + var endDateTextBox = $('#igDt'); + + startDateTextBox.datetimepicker('option', 'onSelect', + function (selectedDateTime) { + endDateTextBox.datetimepicker('option', 'minDate', startDateTextBox.datetimepicker('getDate') ); + } + ); + startDateTextBox.datetimepicker('option', 'onClose', + function(dateText, inst) { + if (endDateTextBox.val() != '') { + var testStartDate = startDateTextBox.datetimepicker('getDate'); + var testEndDate = endDateTextBox.datetimepicker('getDate'); + if (testStartDate > testEndDate) + endDateTextBox.datetimepicker('setDate', testStartDate); + } else { + endDateTextBox.val(dateText); + } + } + ); + endDateTextBox.datetimepicker('option', 'onSelect', + function (selectedDateTime) { + startDateTextBox.datetimepicker('option', 'maxDate', endDateTextBox.datetimepicker('getDate') ); + } + ); + endDateTextBox.datetimepicker('option', 'onClose', + function(dateText, inst) { + if (startDateTextBox.val() != '') { + var testStartDate = startDateTextBox.datetimepicker('getDate'); + var testEndDate = endDateTextBox.datetimepicker('getDate'); + if (testStartDate > testEndDate) + startDateTextBox.datetimepicker('setDate', testEndDate); + } else { + startDateTextBox.val(dateText); + } + } + ); + +}); + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/ertekeles/ertekeles.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/ertekeles/ertekeles.js new file mode 100644 index 00000000..d25c0def --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/ertekeles/ertekeles.js @@ -0,0 +1,56 @@ + + Event.observe(window, 'load', myPSFLoader, false); + + hideOlOl = function() { + $$('ol ol.negativ, ol ol.semleges, ol ol.pozitiv').each( + function(elem, index) { +// Effect.BlindUp($(elem)); + elem.hide(); + } + ); + } + + blindUp = function(elem) { + //$$('ol ol.negativ, ol ol.semleges, ol ol.pozitiv').each( + $(elem).up('li').select('ol').each( + function(elem, index) { +//alert('ITT'); + if ($(elem).visible()) Effect.BlindUp($(elem), { duration: 0.5 }); +// elem.hide(); + } + ); + } + + function sleep(milliseconds) { + var start = new Date().getTime(); + while ((new Date().getTime() - start) < milliseconds) {} + } + + function myPSFLoader(evt) { + hideOlOl(); + + Event.observe(document.body, 'click', function(event) { + var element = $(Event.element(event)); + + if (element.hasClassName('gomb')) { + + blindUp(element); + if (element.hasClassName('negativ')) classNev='negativ'; + else if (element.hasClassName('semleges')) classNev='semleges'; + else if (element.hasClassName('pozitiv')) classNev='pozitiv'; + $A(element.up('li').select('ol')).each( + function(elem, index) { + if ($(elem).hasClassName(classNev)) { + if (!$(elem).visible()) { + Effect.BlindDown($(elem), { duration: 0.5 }); + $(elem).down('input').checked=true; + } + } + //$(elem).show(); + + } + ); + } + }) + + } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/esemenyDiak.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/esemenyDiak.jquery.min.js new file mode 100644 index 00000000..a3bd3b7e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/esemenyDiak.jquery.min.js @@ -0,0 +1,101 @@ + + + $(function() { + $('body').bind('keydown', myKeyDown); + $('input.plusz').bind('click', function(event) { + var element = $(event.target); + var container = element.parents('table'); + var openable = container.find('.openable').hide(); + var onclickshow = container.find('.plusz').removeClass('selected'); + var id = element[0].id; + if (id && id.substring(0,4) == 'show') { + var openable = '#'+id.charAt(4).toLowerCase()+ id.substring(5); + $(openable).show(); + setTimeout(function() { // várni kell, hogy láthatóvá váljon a select, csak utána lehet fokuszt adni rá + $(openable+' select').focus(); + }, 1); + } + element.addClass('selected'); + + }); + $('input.add').bind('click', function(event) { + var selectElement = $(event.target).prev('select'); + selectDiak(selectElement); + }); + $("select.diakok option").bind('dblclick', function(event) { + var selectElement = $(event.target).closest('select'); + selectDiak(selectElement); + }); + $('#nevsor').click(function(event) { + elem = $(event.target); + if (elem.hasClass('removeLine')) { + elem.closest('tr').remove(); + } else if (elem.hasClass('icon-remove-sign')) { + if (!confirm(elem.prop('title'))) { + event.preventDefault(); + } else { + // töröl + $('#postDiakId').attr('name','torolDiakId').val(elem.find('input').val()); + elem.closest('form').submit(); + } + } else if (elem.hasClass('icon-ok-sign')) { + // jóváhagyást elutasít + $('#postDiakId').attr('name','elutasitDiakId').val(elem.closest('tr').find('input').val()); + elem.closest('form').submit(); + } else if (elem.hasClass('icon-minus-sign')) { + // jóváhagy + $('#postDiakId').attr('name','jovahagyDiakId').val(elem.closest('tr').find('input').val()); + elem.closest('form').submit(); + } + }); + $('#nevsor td.osztaly').bind('click', function(event) { + elem = $(event.target); + _class = elem.text().replace('.',''); + $('#nevsor tr').not('.'+_class).toggle(); + }); + }); + + myKeyDown = function(event) { + + var element = $(event.target); + var charKeyCode = event.keyCode ? event.keyCode : event.which; + var shiftKey = event.shiftKey ? event.shiftKey : ((charKeyCode == 16) ? true : false); + var altKey = event.altKey ? event.altKey : ((charKeyCode == 18) ? true : false); + var ctrlKey = event.ctrlKey ? event.ctrlKey : ((charKeyCode == 17) ? true : false); + + if (charKeyCode==13) { // Enter + if (element.hasClass('diakok')) { + selectDiak(element); + event.preventDefault(); + } + } else if (charKeyCode==27) { // Esc + $('form#nevsorForm .openable').hide(); + $('form#nevsorForm #oEmpty').show(); + } else if (charKeyCode==9) { // Tab + if (element.hasClass('diakok')) { + if ($('#osztalyok input.selected').nextAll('input:first').length) { + $('#osztalyok input.selected').nextAll('input:first').click(); + } else { + $('#osztalyok input:first').click(); + } + } + } + } + + function selectDiak(selectElement) { + + selectElement.find('option:selected').each(function(index, elem) { + if (!$("#nevsor input[value='" + $(elem).val() + "']").length) { + var sor='' + +'' + +'' + +''+$(elem).text()+'' + +'' + +'' + +''; + $(sor).insertBefore($('#submitRow')); +// $(sor).appendTo($('#nevsor')); + } + }); + } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/jelentkezes.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/jelentkezes.jquery.min.js new file mode 100644 index 00000000..b184d5dd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/jelentkezes.jquery.min.js @@ -0,0 +1,7 @@ +$(function() { + + $('form.esemeny th').click(function(event) { + $('form.esemeny tr').not('.aktualis').not(':first').toggle(); + }); + +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/ujEsemeny.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/ujEsemeny.jquery.min.js new file mode 100644 index 00000000..3ba14772 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/esemeny/ujEsemeny.jquery.min.js @@ -0,0 +1,89 @@ +/* + TODO: összes osztály kijelölése kattintásra +*/ + + + $(function() { + $('body').bind('keydown', myKeyDown); + $('body').bind('click',function(event) { + var element = $(event.target); + if ( + $('#tanarLista').is(':visible') + && element.closest('#tanarLista').length == 0 + && element.attr('id') != 'plusz' + ) { + $('#tanarLista').hide(); + } + }); + $('#osztalyLista li input').bind('change', function(event) { + var element = $(event.target); + if (element.is(':visible')) { + element.closest('li').toggleClass('uj'); + } + }); + $("#tanarok option").bind('dblclick', function(event) { + var elem = $(event.target); + if (!$("#esemenyTanar option[value='" + elem.val() + "']").length) { + $(elem).clone().addClass('uj').appendTo( $('#esemenyTanar')); + } + }); + $('#esemenyTanar').bind('dblclick', function(event) { + $('#tanarLista').show(); + $('#tanarok').focus(); + }); + $('#plusz').bind('click', function(event) { + if ($('#tanarLista').is(':visible')) { + selectTanar(); + $('#tanarLista').hide(); + $('#submitButton').focus(); + } else { + $('#tanarLista').show(); + $('#tanarok').focus(); + } + }); + $('#minusz').bind('click', function(event) { + $('#esemenyTanar option:selected').remove(); + }); + $('#add').bind('click', function(event) { + if ($('#tanarLista').is(':visible')) { + selectTanar(); +// $('#tanarLista').hide(); +// $('#submitButton').focus(); + } + }); $('#closeTanarLista').bind('click', function(event) { + $('#tanarLista').hide(); + }); + $('#submitButton').bind('click',function(event) { + $('#esemenyTanar option').prop('selected','selected'); + }); + }); + + myKeyDown = function(event) { + + var element = $(event.target); + var charKeyCode = event.keyCode ? event.keyCode : event.which; + var shiftKey = event.shiftKey ? event.shiftKey : ((charKeyCode == 16) ? true : false); + var altKey = event.altKey ? event.altKey : ((charKeyCode == 18) ? true : false); + var ctrlKey = event.ctrlKey ? event.ctrlKey : ((charKeyCode == 17) ? true : false); + + if (charKeyCode==13) { // Enter + if (element.attr('id') == 'tanarok') { + selectTanar(); + } + } else if (charKeyCode==27) { // Esc + $('#tanarLista').hide(); + } else if (charKeyCode==46) { // Del + if (element.attr('id') == 'esemenyTanar') { + $('#esemenyTanar option:selected').remove(); + } + } + } + + selectTanar = function() { + $('#tanarok option:selected').each(function(index, elem) { + if (!$("#esemenyTanar option[value='" + $(elem).val() + "']").length) { + $(elem).clone().addClass('uj').appendTo( $('#esemenyTanar')); + } + }); + } + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/export/diakExport.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/export/diakExport.jquery.min.js new file mode 100644 index 00000000..bda10a84 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/export/diakExport.jquery.min.js @@ -0,0 +1,177 @@ + +$(function() { + + kivalaszt = function(event) { + $('select#kivalasztott > option').prop('selected','selected'); + } + mezoKivalasztas = function(event) { + optionAthelyezes('szabad','kivalasztott'); + } + mezoTorles = function(event) { + optionAthelyezes('kivalasztott','szabad'); + } + optionAthelyezes = function(fromId, toId) { + var toSel = $('#'+toId); + if (toSel.prop('selectedIndex') == -1) { + $('#'+fromId+' option:selected').prop('selected','').prependTo(toSel); + } else { + $('#'+fromId+' option:selected').prop('selected','').insertAfter($('#'+toId+' option:selected').first()); + } + } + $('.onClickMezoSelect').bind('click', function(event) { + element = $(event.target); + // Az összes elem kiválasztása... + kivalaszt(); + // ... és átrakása a szabad mezők közé + optionAthelyezes('kivalasztott','szabad'); + // A kiválasztandó elemek kijelölése + idList = $('#'+element.attr('name')+'Lista').val().split(','); + // és áthelyezése egyesével (a megfelelő sorrend miatt!!) + for (j=0; j= 0; i--) { + if (fromSel.options[i].selected) { + fromSel.options[i].remove(); + } + } + } + + + // Mezőkiválasztó gombok kezelése + var FieldSelectObject = Class.create(); + FieldSelectObject.prototype = { + initialize: function(element) { + this.element = $(element); + this.element.observe('click',this.fieldSelect.bindAsEventListener(this)); + }, + + fieldSelect: function(evt, extraInfo) { + + // Az összes elem kiválasztása... + kivalaszt(); + // ... és átrakása a szabad mezők közé + optionAthelyezes('kivalasztott','szabad'); + // A kiválasztandó elemek kijelölése + this.list = $F($(this.element.getAttribute('name')+'Lista')); + this.idList = this.list.split(','); + this.options = $('szabad').options; + // és áthelyezése egyesével (a megfelelő sorrend miatt!!) + for (j=0; j100) szazalek=100; + var cssClass = $(this).attr('class'); + $('#munkaoraBar').css('width',szazalek+'%'); + $('#munkaoraBar').addClass(cssClass); + },function() { + $('#munkaoraBar').css('width','0%'); + $('#munkaoraBar').removeClass(); + }); + +}); \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/haladasi.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/haladasi.jquery.min.js new file mode 100644 index 00000000..578a6f0e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/haladasi.jquery.min.js @@ -0,0 +1,63 @@ +showUpdateLayer = function() { + takaroElem = $('#takaro'); + if (takaroElem) takaroElem.show(); + $('#updateWindow').show(); + $('updateForm').prop('tabindex',1); + $('updateForm').focus(); +} + +$(function() { /* onload */ +/* $('#rejtMutat').click(function(event) { + var element = $(event.target); + $('.ujOra').fadeToggle('fast'); + }); +*/ + $('.rejtMutat').click(function(event) { + $(event.target).closest('tbody').find('.ujOra').fadeToggle('fast'); + }); + $('.torol').change(function(event) { + /* rogton torolt class-uva tesszuk, akkor is, ha az ajaxRequestError van ... (lásd generikus callback) */ + var element = $(event.target); + element.parents('tr').addClass('torolt'); + element.parents('tr').find('.l').empty(); + }); + $('body').click(function(event) { + var x = $(event.target); + if (x.hasClass('gomb DOA')) + x.prop('disabled', false); + }); +/* + $('body').change(function(event) { + var x = $(event.target); // itt kezelhetnénk a haladasi tankorvaltasbol adodo dolgot + }); +*/ + $('body').keypress(function(event) { + var element = $(event.target); + var charKeyCode = event.keyCode ? event.keyCode : event.which; + var shiftKey = event.shiftKey ? event.shiftKey : ((charKeyCode == 16) ? true : false); + var altKey = event.altKey ? event.altKey : ((charKeyCode == 18) ? true : false); + var ctrlKey = event.ctrlKey ? event.ctrlKey : ((charKeyCode == 17) ? true : false); + + if(event.target.type=='text' && element.hasClass('data')) { + if (charKeyCode==13) { + event.preventDefault(); + element.parents('tr').nextAll(':not(.ujOra)').first().find('input[type=text]').focus(); + } + } + }); + +}); + +processJSON = function(json) { + console.log(json.toDo); + + var elementId = "#ORAID_"+json.oraId.toString(); + if (json.toDo=='oraElmarad') { + $(elementId).addClass('elmarad'); + } else if (json.toDo == 'oraMegtartva') { + $(elementId).removeClass(); + } + $('#updateWindow').toggle(); + $('#takaro').toggle(); + +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/helyettesites.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/helyettesites.jquery.min.js new file mode 100644 index 00000000..9be7f906 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/helyettesites.jquery.min.js @@ -0,0 +1,27 @@ + +showUpdateLayer = function() { + takaroElem = $('#takaro'); + if (takaroElem) takaroElem.show(); + $('#updateWindow').show(); + $('updateForm').prop('tabindex',1); + $('updateForm').focus(); + $('#updateHeader').text('Haladási napló'); // sic +} + +$(function() { + $('.rejtMutat').click(function(event) { + $(event.target).closest('tbody').find('.ujOra').fadeToggle('fast'); + }); +/* $('.torol').change(function(event) { + // rogton torolt class-uva tesszuk, akkor is, ha az ajaxRequestError van ... (lásd generikus callback) + var element = $(event.target); + element.parents('tr').addClass('torolt'); + element.parents('tr').find('.l').empty(); + }); + $('body').click(function(event) { + var x = $(event.target); + if (x.hasClass('gomb DOA')) + x.prop('disabled', false); + }); +*/ +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/pluszora.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/pluszora.jquery.min.js new file mode 100644 index 00000000..d3efaded --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/haladasi/pluszora.jquery.min.js @@ -0,0 +1,42 @@ +$(function() { + + $('#mindentanar').click(function() { + $('#tanarLista option').prop('selected', true); + }); + $('#invertal').click(function() { + $('#tanarLista option').each(function() { + $(this).prop('selected',!$(this).prop('selected')); + }); + }); + + $('#munkakozossegSelector').on('change',function() { + mkId = Number.parseInt($(this).val()); + $('#tanarLista option').each(function() { + mkArr = ($(this).data('mk')); + if ($.inArray(mkId,mkArr)>=0) { + $(this).prop('selected',true); + } + }); + }); + $('#selectorMinus').on('click',function() { + $this = $('#munkakozossegSelector'); + mkId = Number.parseInt($this.val()); + $('#tanarLista option').each(function() { + mkArr = ($(this).data('mk')); + if ($.inArray(mkId,mkArr)>=0) { + $(this).prop('selected',false); + } + }); + }); + $('#selectorPlus').on('click',function() { + $this = $('#munkakozossegSelector'); + mkId = Number.parseInt($this.val()); + $('#tanarLista option').each(function() { + mkArr = ($(this).data('mk')); + if ($.inArray(mkId,mkArr)>=0) { + $(this).prop('selected',true); + } + }); + }); + +}); \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/info.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/info.jquery.min.js new file mode 100644 index 00000000..156ac76b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/info.jquery.min.js @@ -0,0 +1,11 @@ + + +$(function() { + google.charts.load('current', {packages: ['corechart','line']}); + google.charts.setOnLoadCallback(drawHianyzasStatChart); + + function drawHianyzasStatChart() { + + } + +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/nap.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/nap.jquery.min.js new file mode 100644 index 00000000..a73bc34b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/nap.jquery.min.js @@ -0,0 +1,19 @@ + +$(function() { + $('table input[type=text].perc').each( + function (index) { + $(this).bind('change', function(event) { + var element = $(event.target); + element.next('input').prop('checked',(element.val() != '0')); + if (element.val() != '0') { + element.addClass('kesett'); + } + }); + } + ); + $('td.jelen input[type=radio],td.hiányzás input[type=radio]').change( function(event) { + var elem=$(event.target); + var percName = 'PERC_'+elem.attr('id').split('_')[1]; + elem.closest('tr').find('input[name='+percName+']').val(0).removeClass('kesett'); + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/nap.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/nap.js new file mode 100644 index 00000000..948d6d74 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/nap.js @@ -0,0 +1,13 @@ + +Event.observe(window, 'load', myPSFLoader, false); + +function myPSFLoader(evt) { + $$('table input[type=text].perc').each( + function (elem, index) { + Event.observe(elem, 'change', function(event) { + var element = $(Event.element(event)); + element.previous('input').checked=(element.value != '0'); + }); // Event.observe + } + ); +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/ora.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/ora.jquery.min.js new file mode 100644 index 00000000..1d1e313c --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/ora.jquery.min.js @@ -0,0 +1,27 @@ + +$(function() { + $('table input[type=text].perc').each( + function (index) { + $(this).bind('change', function(event) { + var element = $(event.target); + element.next('input').prop('checked',(element.val() != '0')); + if (element.val() != '0') { + element.addClass('kesett'); + } + }); + } + ); + $('td.jelen input[type=radio],td.hiányzás input[type=radio]').change( function(event) { + var elem=$(event.target); + var percName = 'PERC_'+elem.attr('id').split('_')[1]; + elem.closest('tr').find('input[name='+percName+']').val(0).removeClass('kesett'); + }); +/* + $('tr.magantanulo').click( function(event) { + $('tr.magantanulo').fadeToggle(); + }); +*/ + $('tr.felmentett').click( function(event) { + $('tr.felmentett').fadeToggle(); + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/ora.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/ora.js new file mode 100644 index 00000000..948d6d74 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/hianyzas/ora.js @@ -0,0 +1,13 @@ + +Event.observe(window, 'load', myPSFLoader, false); + +function myPSFLoader(evt) { + $$('table input[type=text].perc').each( + function (elem, index) { + Event.observe(elem, 'change', function(event) { + var element = $(Event.element(event)); + element.previous('input').checked=(element.value != '0'); + }); // Event.observe + } + ); +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diak.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diak.jquery.min.js new file mode 100644 index 00000000..5cd89589 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diak.jquery.min.js @@ -0,0 +1,192 @@ +$(function() { + + // A gotoCreateAccount elemre kattintva a userAccount értéket a href-hez illesztjük... + $('body').bind('click', function(event) { + element = $(event.target); + if (element.hasClass('gotoCreateAccount')) { + var userAccount = element.prev('input').val(); + if (userAccount == '') { + userAccount = element.attr('title'); + element.prev('input').val(userAccount); + ajaxRequest(element.closest('form')); + } + } + if (element.hasClass('edit')) { + showUpdateLayer(event); + } + }); + + /* Jogviszonyváltozás kezelése - záradékok és egyéb paraméterek megjelenítése */ + $('.rejtett').hide(); + $('#jogviszonyValtasSelect').bind('change', function(event) { + element = $(event.target); + statusz = element.val(); + $('.rejtett').hide(); + + if (statusz == 'jogviszonya lezárva') { + $('#lezaras').show(); + if ($('#lezarasZaradek').val() == 41) $('#igazolatlan').show(); + else if ($('#lezarasZaradek').val == 45) $('#iskola').show(); + } else if (statusz == 'jogviszonya felfüggesztve') $('#felfuggesztes').show(); + }); + $('#lezarasZaradek').bind('change', function(event) { + element = $(event.target); + var zaradekIndex = element.val(); + if (zaradekIndex == 41) $('#igazolatlan').show(); + else $('#igazolatlan').hide(); + if (zaradekIndex == 45) $('#iskola').show(); + else $('#iskola').hide(); + }); + + /* A prototype activate() metódusának kiváltása */ + activateField = function(id) { + $('#'+id).focus().select().mouseup(function(event){ + event.preventDefault(); + }); + }; + + /* + Az oktatási azonosító + 11 jegyű, az első jegye 7, a 11. jegye ellenőrző kód: sum(i*xi) % 11, ahol a 10-es maradék nem megengedett + + 9. számú melléklet a 79/2006. (IV. 5.) Korm. rendelethez + A hallgatói és az oktatói azonosító szám képzésének szabálya + 1. Az azonosító szám tizenegy jegyű szám. + 2. Az azonosító szám képzése: + a) az 1. számjegy konstans 7-es szám, + b) a 2-10. számjegyek összessége egy garantáltan egyedi, + véletlenszerűen generált szám, + c) a 11. számjegy az 1-10. számjegyek felhasználásával, matematikai + módszerekkel képzett ellenőrző szám. + 3. Az azonosító szám 11. számjegyét úgy kell képezni, hogy a 2. a)-b) + pontok szerint képzett 10 számjegy mindegyikét szorozni kell azzal a + sorszámmal, ahányadik helyet foglalja el az azonosító számon belül. + (Első számjegy szorozva eggyel, második számjegy szorozva kettővel és + így tovább.) + Az így kapott szorzatok összegét el kell osztani 11-gyel, és az osztás + maradéka a 11. számjeggyel lesz egyenlő. + + A 2. b) pont szerinti sorszám nem adható ki, ha a 11-gyel való osztás + maradéka egyenlő tízzel. + */ + $('#oId').bind('change', function(event) { + + element = $(event.target); + oId = element.val(); + + var oIdString = String(oId); + if (oIdString.length != 11) { + alert('Hibás oktatási azonosító! (nem 11 jegyű)'); + setTimeout('activateField(\'oId\')',100); + return false; + } + if (oIdString.substring(0,1) != '7') { + alert('Hibás oktatási azonosító! (első jegy nem 7-es)'); + setTimeout('activateField(\'oId\')',100); + return false; + } + var chk = 0; + for (i = 0; i < 10; i++) { + chk += (i+1)*oIdString.substring(i,i+1); + } + chk = chk % 11; + if (chk == 10) { + alert('Hibás oktatási azonosító! (a 11-el vett osztási maradék nem lehet 10)'); + setTimeout('activateField(\'oId\')',100); + return false; + } + if (chk != +oIdString.substring(10)) { + alert('Hibás oktatási azonosító! (Az ellenőrző összeg nem egyezik az utolsó számjeggyel)'); + setTimeout('activateField(\'oId\')',100); + return false; + } + return true; + }); + /* + Adóazonosító + 10 jegyű, + az 1. jegy 8 + !! - a 2-6. számjegyek a személy születési időpontja és az 1867. január 1. között eltelt napok száma, + a 10. jegye ellenőrző kód: sum(i*xi) % 11, ahol a 10-es maradék nem megengedett + */ + if ($('#adoazonosito')) $('#adoazonosito').bind('change', function(event) { + + element = $(event.target); + aa = element.val(); + + var aaString = String(aa); + if (aaString.length != 10) { + alert('Hibás adóazonosító! (nem 10 jegyű)'); + setTimeout('activateField(\'adoazonosito\')',100); + return false; + } + if (aaString.substring(0,1) != '8') { + alert('Hibás adóazonosító! (első jegy nem 8-as - magánszemély)'); + setTimeout('activateField(\'adoazonosito\')',100); + return false; + } + var chk = 0; + for (i = 0; i < 9; i++) { + chk += (i+1)*aaString.substring(i,i+1); + } + chk = chk % 11; + if (chk == 10) { + alert('Hibás adóazonosító! (a 11-el vett osztási maradék nem lehet 10)'); + setTimeout('activateField(\'adoazonosito\')',100); + return false; + } + if (chk != +aaString.substring(9)) { + alert('Hibás adóazonosító! (Az ellenőrző összeg nem egyezik az utolsó számjeggyel)'); + setTimeout('activateField(\'adoazonosito\')',100); + return false; + } + return true; + }); + + /* + A TAJ + 9 jegyű, az első 8 egy folyamatos sorszám, a 9. CDV kód: sum(1-4)(3*x(2i-1)+7*x(2i)) % 10 + */ + $('#tajSzam').bind('change', function(event) { + + element = $(event.target); + tajSzam = element.val(); + + var tajString = String(tajSzam); + if (tajString.length != 9) { + alert('Hibás Társadalombiztosítási Azonosító Jel! (nem 9 jegyű)'); + setTimeout('activateField(\'tajSzam\')',100); + return false; + } + var chk = 0; + for (i = 0; i < 4; i++) { + chk += 3*tajString.substring(2*i,2*i+1)+7*tajString.substring(2*i+1,2*i+2); + } + chk = chk % 10; + if (chk != +tajString.substring(8)) { + alert('Hibás Tásradalombiztosítási Azonosító Jel! (Az ellenőrző összeg nem egyezik az utolsó számjeggyel)'); + setTimeout('activateField(\'tajSzam\')',100); + return false; + } + return true; + }); + + /* + A Diákigazolvány szám + 10 jegyű + */ + $('#diakigazolvanySzam').bind('change', function(event) { + + element = $(event.target); + dSzam = element.val(); + + var dString = String(dSzam); + if (dString.length < 10) { + alert('Hibás Diákigazolvány szám! (kisebb, mint 10 jegyű)'); + setTimeout('activateField(\'diakigazolvanySzam\')',100); + return false; + } + return true; + }); + +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakFelmentes.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakFelmentes.jquery.min.js new file mode 100644 index 00000000..778d0c33 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakFelmentes.jquery.min.js @@ -0,0 +1,9 @@ +$(function() { + + $('.rejtett').hide(); + $('#t1altipus').change(function() { + if ($('#t1altipus').val() =='2') $('#T1b').show(); + else $('#T1b').hide(); + }); + +}); \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakStatusz.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakStatusz.jquery.min.js new file mode 100644 index 00000000..47108be0 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakStatusz.jquery.min.js @@ -0,0 +1,31 @@ + +$(function() { + $('select.zaradek').change(function(event) { + element = $(event.target); + if (element.val() == '') { + element.closest('form').find('input[type=submit]').hide(); + element.next('div').html(''); + } else { + var zArray = element.prop('options')[element.prop('selectedIndex')].innerHTML.split('%'); + var zTxt = '

    '; + var tableTxt = ''; + for (i=0;i'+zArray[i]+''; + tableTxt = tableTxt + ''; + tableTxt = tableTxt + ''; + } + } + tableTxt = tableTxt + '
    '; + zTxt = '

    ' + zTxt + '

    ' + tableTxt; + element.next('div').html(zTxt); + element.next('div').find('table input[type=text]').change(function(event) { + var element = $(event.target); + $('#'+element.attr('id')+'span').innerHTML=element.val().escapeHTML(); + }); + element.closest('form').find('input[type=submit]').show(); + } + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakSzulo.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakSzulo.jquery.min.js new file mode 100644 index 00000000..35e83089 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakSzulo.jquery.min.js @@ -0,0 +1,18 @@ + +$(function() { + $('#szuletesiEv').change(function(event) { + var element = $(event.target); + var dSzam = element.val(); + var dString = String(dSzam); + if (dString.length != 4) { + alert('Hibás évszám! (nem 4 jegyű)'); +// setTimeout('document.getElementById(\'szuletesiEv\').activate()',1000); + setTimeout('$(\'#szuletesiEv\').focus().select()',100); + + return false; + } + return true; + + }); +}); + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakTankorJelentkezes.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakTankorJelentkezes.jquery.min.js new file mode 100644 index 00000000..abb82689 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/diakTankorJelentkezes.jquery.min.js @@ -0,0 +1,56 @@ +$(function() { + $('table.tankor tr').hover(function(event) { + var element = $(event.target); + element.closest('tr').addClass('ez'); + $($(this).attr('class').split(' ')).each(function() { + if (this != '') { + $('table.tankor tr.'+this+':not(.benne):not(.ez)').addClass('utkozik'); + } + }); + },function(event) { + $('table.tankor tr').removeClass('utkozik').removeClass('ez'); + }); +}); + +/* + +Event.observe(window, 'load', myPSFLoader, false); + + +function myPSFLoader(evt) { + + $$('table.tankor tr').each( + function (elem, index) { + + if (elem.getAttribute('class') != null) { + Event.observe(elem, 'mouseover', function(event) { + + var element = $(Event.element(event)); + var trElement = element.up('tr'); + var classNames = $w(trElement.className.split('benne').join(' ')); + if (classNames.length > 0) { + var tdElements = $$('tr.'+classNames.join(' td, tr.')+' td'); + for (i=0; i 0) { + var tdElements = $$('tr.'+classNames.join(' td, tr.')+' td'); + for (i=0; i'+(osztalyJel==''?'?':osztalyJel)+''; + if (i < maxKS) ulStr += '
    '; + ulStr += ''; + } + ulStr += ''; + $('#divKezdoEvfolyamSorszam').html(ulStr); + $('#divJel').slideDown().focus(); + $('#divKezdoEvfolyamSorszam').slideDown(); + } else if (element.closest('ul').attr('id') == 'evfolyamJelek') { + element.closest('ul').find('li').removeClass('kivalasztott'); + e = element.closest('li'); i=0; + while (i<$('#vegzoTanev').val()-$('#kezdoTanev').val()+1) { + e.addClass('kivalasztott'); + e = e.next('li'); + i++; + } + } else if (element.attr('id') == 'jel') { + $('#divKezdoEvfolyamSorszam li span.osztalyJel').html(element.val()); + $('#divLeirasTelephely').slideDown(); + } + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tanar.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tanar.jquery.min.js new file mode 100644 index 00000000..a23b0c80 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tanar.jquery.min.js @@ -0,0 +1,41 @@ + + +$(function() { + + $('body').click(function(event) { + + element = $(event.target); + if (element.hasClass('slideUj')) { + $('tr#ujKepesites').slideToggle('slow'); + } + + }); + + $('select#statusz').change(function(event) { + element = $(event.target); + if (element.val() != 'jogviszonya lezárva') { + if (IsDate($('input#kiDt').val())) { + curdate = new Date(); + date = new Date($('input#kiDt').val()); + if (datekotelezo+plusz) lekotottTd.closest('tr').removeClass('ok').removeClass('minusz').addClass('plusz'); + else lekotottTd.closest('tr').removeClass('minusz').removeClass('plusz').addClass('ok'); + + if (dbFrissit) $('table#tt span#keszTanarDb').html($('table#tt tr.ok').length); + } + + ajaxGetTankorAdat_tth = function(tankorId) { + postData = { 'tankorId':tankorId, 'mayorToken': $('body').data('mayortoken') } + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getTankorAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionID'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONTankorAdat_tth(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('fail'); + //console.log(jqXHR); + updateSalt(jqXHR.getResponseHeader('Etag')); + }); + } + + processJSONTankorMod = function( msg ) { + // console.log(JSON.stringify(msg)); + $('#updateWindowSide').data('target').html(msg.tankorNevTargyNelkul); + processJSONTankorAdat( msg ); + } + + processJSONTankorAdat_tth = function( msg ) { + //console.log(JSON.stringify(msg)); + + $('#updateWindowSideContent').html(''); + $('#updateWindowSideTitle').html('Tantárgyfelosztás - Tankör'); + $('

    ' +msg.tankorNevReszei.evfOszt+' ' + +msg.tankorNevReszei.targyNev + +(msg.tankorNevReszei.tankorJel!=''&&msg.tankorNevReszei.tankorJel!=null?msg.tankorNevReszei.tankorJel+' ':'') + +' '+msg.tankorNevReszei.tankorNevExtra+'' + +'' + +' ('+msg.tankorId+')

    ').appendTo('#updateWindowSideContent'); + $('

    Módosít!

    ').appendTo('#updateWindowSideContent'); + // adatok + ulStr = '
      ' + +'
    • Évközi követelmény: '+msg.kovetelmeny+'
    • ' + +'
    • Létszám korlát: '+msg.min+'-'+msg.max+'
    • ' + +'
    • Tankör-típus: '+msg.rovidNev+' ('+msg.tankorTipusId+')
    • ' + +'
    '; + $(ulStr).appendTo('#updateWindowSideContent'); + // osztályok + ulStr = '
      '; + pStr = '
      Osztályai: '; + for (i=0; i-1) { + ulStr += 'checked="checked" '; + pStr += msg.osztalyok[i].osztalyJel+' ('+msg.osztalyok[i].osztalyId+') '; + } + ulStr += '/> ' + +''; + } + ulStr += '
    '; + pStr += ''+ulStr+''; + $(pStr).appendTo('#updateWindowSideContent'); + // szemeszterek, óraszámok + ulStr = '
      '; + for (i=0; i' + +''; + } + ulStr += '
    '; + pStr = '
    Óraszám: '+msg.oraszam+' ('+msg.tanev+'/'+msg.szemeszter+')' + +'' + +ulStr + +'
    '; + $(pStr).appendTo('#updateWindowSideContent'); + + $('#updateWindowSideSub').removeClass('nyitva'); + if (!$('#updateWindowSide').hasClass('nyitva')) { + $('#updateWindowSide').addClass('nyitva'); + } + + } + + processJSONChk = function(msg, element, tanarId, tankorId) { + // console.log(JSON.stringify(msg)); + tankorTd = $('td#col_'+tankorId); + if (element.prop('checked')) { + oraPerFo = (parseFloat(tankorTd.data('oraszam').replace(',','.'))/parseInt(tankorTd.data('tanardb'))); + $('table#tt td.col-'+tankorId+' input:checked').each(function(index) { + if ($(this).val() != element.val()) { + lSpan = $(this).closest('tr').find('span.lekotott'); + lekot = parseFloat(lSpan.html().replace(',','.'))-oraPerFo; + lSpan.html(lekot.toString().replace('.',',')); + } + }); + if (!tankorTd.hasClass('kesz')) { + tankorTd.addClass('kesz'); + db = parseInt($('table#tt span#keszTankorDb').html()); + $('table#tt span#keszTankorDb').html(++db); + } else { tankorTd.removeClass('kesz').addClass('tobb') } + tankorTd.data('tanardb', parseInt(tankorTd.data('tanardb'))+1); + oraPerFo = (parseFloat(tankorTd.data('oraszam').replace(',','.'))/parseInt(tankorTd.data('tanardb'))); + plusz=parseInt($('div#statusz span#plusz').html()); + minusz=parseInt($('div#statusz span#minusz').html()); + $('table#tt td.col-'+tankorId+' input:checked').each(function(index) { + { + lSpan = $(this).closest('tr').find('span.lekotott'); + lekot = parseFloat(lSpan.html().replace(',','.'))+oraPerFo; + lSpan.html(lekot.toString().replace('.',',')); + checkTanarOraszam(lSpan.closest('td'), plusz, minusz, true); + } + }); + } else { + oraPerFo = (parseFloat(tankorTd.data('oraszam').replace(',','.'))/parseInt(tankorTd.data('tanardb'))); + lSpan = element.closest('tr').find('span.lekotott'); + lekot = parseFloat(lSpan.html().replace(',','.'))-oraPerFo; + lSpan.html(lekot.toString().replace('.',',')); + $('table#tt td.col-'+tankorId+' input:checked').each(function(index) { + { + lSpan = $(this).closest('tr').find('span.lekotott'); + lekot = parseFloat(lSpan.html().replace(',','.'))-oraPerFo; + lSpan.html(lekot.toString().replace('.',',')); + } + }); + if ($('table#tt td.col-'+tankorId+' input:checked').length == 0) { + tankorTd.removeClass('kesz'); + db = parseInt($('table#tt span#keszTankorDb').html()); + $('table#tt span#keszTankorDb').html(--db); + } else if ($('table#tt td.col-'+tankorId+' input:checked').length == 1) tankorTd.removeClass('tobb').addClass('kesz'); + tankorTd.data('tanardb', parseInt(tankorTd.data('tanardb'))-1); + oraPerFo = (parseFloat(tankorTd.data('oraszam').replace(',','.'))/parseInt(tankorTd.data('tanardb'))); + plusz=parseInt($('div#statusz span#plusz').html()); + minusz=parseInt($('div#statusz span#minusz').html()); + checkTanarOraszam(element.closest('tr').find('td.lekotott'), plusz, minusz, true); + $('table#tt td.col-'+tankorId+' input:checked').each(function(index) { + if ($(this).val() != element.val()) { + lSpan = $(this).closest('tr').find('span.lekotott'); + lekot = parseFloat(lSpan.html().replace(',','.'))+oraPerFo; + lSpan.html(lekot.toString().replace('.',',')); + } + checkTanarOraszam($(this).closest('tr').find('td.lekotott'), plusz, minusz, true); + }); + } + $('#cell_'+tanarId+'_'+tankorId).animate({backgroundColor: '#00ff00'}, 100).animate({backgroundColor: '#eeeeee'}, 1000); + } + + + +//////////////////////////////////ITT VOLT AZ ELEJE + // TODO - ezt kivenni + var params = $.parseParams(window.location.toString().split('?')[1] || '' ); + var sessionID=params.sessionID?params.sessionID:''; + $('body').data('sessionID',sessionID); // ez nem lenne szukseges. lasd meg data-sessionid + + checkOraszam(2,2); + + $('body').click(function(event) { + + element = $(event.target); + saltName = $('#updateForm input.salt').prop('name'); + saltValue = $('#updateForm input.salt').val(); + + if (element.attr('id')=='szuro') { + $('#updateWindowSideTitle').html('Szűrés'); + + dStr = '
    '; + dStr += ''; + dStr += ''; + + // Osztályok + ulStr = '
      '; spanStr = ''; + for (i=0; i<$('#szuro').data('szuro').osztalyok.length; i++) { + oAdat = $('#szuro').data('szuro').osztalyok[i]; + ulStr += '
    • ' + +'-1) { + ulStr += ' checked="checked" '; + spanStr += ' '+oAdat['osztalyJel']+' ('+oAdat['osztalyId']+')'; + } + ulStr += '/>
    • '; + } + ulStr += '
    '; + dStr += '
    ' + +'' + +' ' + +'Osztályok: '+spanStr; + dStr += ulStr; + dStr += '
    '; + + // Munkaközösségek + ulStr = '
      '; spanStr = ''; + for (i=0; i<$('#szuro').data('szuro').munkakozossegek.length; i++) { + oAdat = $('#szuro').data('szuro').munkakozossegek[i]; + ulStr += '
    • ' + +'-1) { + ulStr += ' checked="checked" '; + spanStr += '
      '+oAdat['mkNev']+' ('+oAdat['mkId']+')'; + } + ulStr += '/>
    • '; + } + ulStr += '
    '; + dStr += '
    ' + +'' + +' ' + +'Munkaközösségek: '+spanStr; + dStr += ulStr; + dStr += '
    '; + + // Tárgyak + ulStr = '
      '; spanStr = ''; + for (i=0; i<$('#szuro').data('szuro').targyak.length; i++) { + oAdat = $('#szuro').data('szuro').targyak[i]; + ulStr += '
    • ' + +'-1) { + ulStr += ' checked="checked" '; + spanStr += '
      '+oAdat['targyNev']+' ('+oAdat['targyId']+')'; + } + ulStr += '/>
    • '; + } + ulStr += '
    '; + dStr += '
    ' + +'' + +' ' + +'Tárgyak: '+spanStr; + dStr += ulStr; + dStr += '
    '; + + // Tanárok + ulStr = '
      '; spanStr = ''; + ulStr += '
    • ' + +'-1) { + ulStr += ' checked="checked" '; + spanStr += '
      '+oAdat['tanarNev']+' ('+oAdat['tanarId']+')'; + } + ulStr += '/>
    • '; + } + ulStr += '
    '; + dStr += '
    ' + +'' + +' ' + +'Tanárok: '+spanStr; + dStr += ulStr; + dStr += '
    '; + + + + dStr += ''; + dStr += '
    '; + $('#updateWindowSideContent').html(''); + $(dStr).appendTo('#updateWindowSideContent'); + + $('#updateWindowSideSub').removeClass('nyitva'); + $('#updateWindowSide').addClass('nyitva'); + + } else if (element.hasClass('slideContainer') || element.hasClass('slideToggleContainer')) { + element.find('ul').slideToggle(75); + element.find('span.slider').toggleClass('icon-chevron-down').toggleClass('icon-chevron-up'); + } else if (element.hasClass('slider') || element.hasClass('slideToggle')) { + element.closest('div').find('ul').slideToggle(75); + element.closest('div').find('span.slider').toggleClass('icon-chevron-down').toggleClass('icon-chevron-up'); + } else if (element.hasClass('tankor')) { + // console.log(element); + $('#updateWindowSide').data('target',element); + ajaxGetTankorAdat_tth(element.data('tankorid')); + } else if (element.hasClass('tankorNevExtra')) { + element.next('input#tankorNevExtra').show(); + element.hide(); + } else if (element.hasClass('tankorModosit')) { + postData = { 'tankorId':$('#updateWindowSide').data('target').data('tankorid'),'osztalyIds': [], 'tankorSzemeszter': [], 'tankorNevExtra': $('#updateWindowSide input#tankorNevExtra').val() } + $('#updateWindowSide ul#tankorOsztaly input:checked').each(function(index){postData.osztalyIds.push($(this).val());}) + $('#updateWindowSide ul#tankorSzemeszter input[type=text]').each(function(index){ + if ($(this).val() != '') { + tmp = $(this).attr('name').split('-'); + postData.tankorSzemeszter.push({'tanev':tmp[1], 'szemeszter': tmp[2], 'oraszam': $(this).val() }); + } + }); + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=tankorMod&policy=private&skin=ajax&sessionID="+sessionID, + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONTankorMod(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + }).fail(function( jqXHR, textStatus, errorThrown ) { + updateSalt(jqXHR.getResponseHeader('Etag')); + // console.log('fail'); + // console.log(jqXHR); + }); + } else if (element.hasClass('tantan') && !element.hasClass('disable')) { + chkElement = element.find('input[type=checkbox]'); + chkElement.click(); + } else if (element.attr('id') == 'plusz' || element.attr('id') == 'minusz') { + element.find('ul.limit').slideToggle(85); + } else if (element.hasClass('setLimit')) { + spanElement = element.closest('span'); + ulElement = element.closest('ul.limit'); + ulElement.slideUp().detach(); + spanElement.html(' '+element.html()); + ulElement.appendTo(spanElement); + plusz=parseInt($('div#statusz span#plusz').html()); + minusz=parseInt($('div#statusz span#minusz').html()); + checkOraszam(plusz, minusz); + } else if (element.hasClass('targy')) { + targyId = element.data('targyid'); + szurtTargyId = $('table#tt').data('szurtTargyId'); + if (szurtTargyId == targyId) { + // szűrés megszüntetése + $('table#tt tr.tanar').not('.targy'+szurtTargyId).removeClass('szurt'); + $('table#tt').data('szurtTargyId',''); + } else { + // szűrni kell + if (szurtTargyId != '') { + // egy másik szűrés volt eddig - megszűntettjük + $('table#tt tr.tanar').not('.targy'+szurtTargyId).removeClass('szurt'); + } + $('table#tt tr.tanar').not('.targy'+targyId).addClass('szurt'); + $('table#tt').data('szurtTargyId',targyId); + } + // szűrés miatt az első látható cella eltűnhet, módosulhat + if ($('tr.tanar.first').hasClass('szurt')) { + trElements = $('tr.tanar.first').nextAll('tr.tanar').not('.szurt').get(); + if (trElements.length>0) { + $('tr.tanar.first').removeClass('first'); + $(trElements[0]).addClass('first'); + } else { + // ha nincs lefele látható sor, akkor felfelé keresünk... + trElements = $('tr.tanar.first').prevAll('tr.tanar').not('.szurt').get(); + if (trElements.length>0) { + $('tr.tanar.first').removeClass('first'); + $(trElements[0]).addClass('first').removeClass('csukott'); + $(trElements[0]).nextAll('tr').removeClass('csukott'); + } + } + } + } else if (element.hasClass('unset')) { + element.closest('div').find('input[type=checkbox]:checked').click(); + } else if (element.hasClass('toggleKesz')) { +/* ez meg nem mukodik + $('table#tt td.tankor.kesz').each(function(index) { + className = 'col-'+$(this).data('tankorid'); + $('table#tt td.tantan.'+className).toggleClass('szurt'); + $(this).toggleClass('szurt'); + thTargy = $('table#tt th#thTargy-'+$(this).data('targyid')); + colSpan = $('table#tt td.tdTargy-'+$(this).data('targyid')).not('.szurt').length; + thTargy.prop('colspan',colSpan); + if (colSpan==0) thTargy.addClass('szurt'); + else thTargy.removeClass('szurt'); + }); +*/ + } + + }); + + $('body').change(function(event) { + + element = $(event.target); + + if (element.hasClass('szOsztaly')) { + if (element.prop('checked')) { + $('#szuro').data('szuro').osztalyIds.push( element.val() ); + $(' '+element.next('label').html()+'').insertAfter('div#szOsztaly strong'); + } else { + $('div#szOsztaly span#selOsztalyId-'+element.val()).prev('br').remove(); + $('div#szOsztaly span#selOsztalyId-'+element.val()).remove(); + tmp = $('#szuro').data('szuro').osztalyIds; + $('#szuro').data('szuro').osztalyIds = []; + for (i=0; i '+element.next('label').html()+'').insertAfter('div#szMk strong'); + } else { + $('div#szMk span#selMkId-'+element.val()).prev('br').remove(); + $('div#szMk span#selMkId-'+element.val()).remove(); + tmp = $('#szuro').data('szuro').mkIds; + $('#szuro').data('szuro').mkIds = []; + for (i=0; i '+element.next('label').html()+'').insertAfter('div#szTanar strong'); + } else { + $('div#szTanar span#selTanarId-'+element.val()).prev('br').remove(); + $('div#szTanar span#selTanarId-'+element.val()).remove(); + tmp = $('#szuro').data('szuro').tanarIds; + $('#szuro').data('szuro').tanarIds = []; + for (i=0; i '+element.next('label').html()+'').insertAfter('div#szTargy strong'); + } else { + $('div#szTargy span#selTargyId-'+element.val()).prev('br').remove(); + $('div#szTargy span#selTargyId-'+element.val()).remove(); + tmp = $('#szuro').data('szuro').targyIds; + $('#szuro').data('szuro').targyIds = []; + for (i=0; i input').attr('checked',false); + $('#cell_'+tanarId+'_'+tankorId).animate({backgroundColor: '#ff0000'}, 100).animate({backgroundColor: '#eeeeee'}, 1000); + }); + + } + + }); + + $('body').focusout(function(event) { + var element = $(event.target); + if (element.attr('id')=='tankorNevExtra') { + element.prev('span.tankorNevExtra').html( element.val() ).show(); + element.hide(); + } + }); + + $('#updateWindowSide').on('keydown', 'ul#tankorSzemeszter li:last-child input', function(event) { + + var charKeyCode = event.keyCode ? event.keyCode : event.which; + var shiftKey = event.shiftKey ? event.shiftKey : ((charKeyCode == 16) ? true : false); + var altKey = event.altKey ? event.altKey : ((charKeyCode == 18) ? true : false); + var ctrlKey = event.ctrlKey ? event.ctrlKey : ((charKeyCode == 17) ? true : false); + element = $(event.target); + + if (charKeyCode == 9) { + event.preventDefault(); + tmp = element.attr('name').split('-'); + tanev = 1+parseInt(tmp[1]); + for (szemeszter = 1; szemeszter<3; szemeszter++) { + $('
  • '+tanev+'/'+szemeszter + +'' + +'
  • ').appendTo('ul#tankorSzemeszter'); + } + element.closest('li').next('li').find('input').focus(); + } + + }); + $('#updateWindowSide').on('keydown', 'ul#tankorSzemeszter li:first-child input', function(event) { + + var charKeyCode = event.keyCode ? event.keyCode : event.which; + var shiftKey = event.shiftKey ? event.shiftKey : ((charKeyCode == 16) ? true : false); + var altKey = event.altKey ? event.altKey : ((charKeyCode == 18) ? true : false); + var ctrlKey = event.ctrlKey ? event.ctrlKey : ((charKeyCode == 17) ? true : false); + element = $(event.target); + + if (charKeyCode == 9 && shiftKey) { + event.preventDefault(); + tmp = element.attr('name').split('-'); + tanev = parseInt(tmp[1])-1; + for (szemeszter = 1; szemeszter<3; szemeszter++) { + $('
  • '+tanev+'/'+szemeszter + +'' + +'
  • ').prependTo('ul#tankorSzemeszter'); + } + element.closest('li').prev('li').find('input').focus(); + } + + }); + + + $('body').keydown(function(event) { + + var charKeyCode = event.keyCode ? event.keyCode : event.which; + var shiftKey = event.shiftKey ? event.shiftKey : ((charKeyCode == 16) ? true : false); + var altKey = event.altKey ? event.altKey : ((charKeyCode == 18) ? true : false); + var ctrlKey = event.ctrlKey ? event.ctrlKey : ((charKeyCode == 17) ? true : false); + element = $(event.target); + + if (!$('#updateWindowSide').hasClass('nyitva')) { + if (charKeyCode == 37) { // balra + event.preventDefault(); + firstTh = $('table#tt th.first.targy'); + firstColspan = firstTh.attr('colspan'); + if (firstColspan < firstTh.data('colspan')) { + firstTh.attr('colspan', ++firstColspan); + } else { + if (firstTh.prev('th.targy').length > 0) { + firstTh.removeClass('first'); + firstTh.prev('th.targy').addClass('first').show(); + } + } + firstTd = $('table#tt td.first'); + if ($('table#tt td.first.tankor').prev('td.tankor').length>0) { + firstTd.removeClass('first'); + firstTd.prev('td').addClass('first').show(); + } + } else if (charKeyCode == 39) { // jobb + event.preventDefault(); + firstTh = $('table#tt th.first.targy'); + firstColspan = firstTh.attr('colspan'); + if (firstColspan > 1) { + firstTh.attr('colspan', firstColspan-1); + } else { + if (firstTh.next('th.targy').length > 0) { + firstTh.removeClass('first').hide(); + firstTh.next('th.targy').addClass('first'); + } + } + firstTd = $('table#tt td.first'); + if ($('table#tt td.first.tankor').next('td.tankor').length>0) { + firstTd.removeClass('first').hide(); + firstTd.next('td').addClass('first'); + } + } else if (charKeyCode == 40) { // le + event.preventDefault(); + firstTr = $('table#tt tr.first.tanar'); + nextTrs = firstTr.nextAll('tr').not('.szurt').get(); + if (nextTrs.length>0) { + firstTr.removeClass('first'); + $(nextTrs[0]).prevAll('tr.tanar').addClass('csukott'); + $(nextTrs[0]).addClass('first'); + } + } else if (charKeyCode == 38) { // fel + event.preventDefault(); + firstTr = $('table#tt tr.first.tanar'); + prevTrs = firstTr.prevAll('tr').not('.szurt').get(); + if (prevTrs.length>0) { + firstTr.removeClass('first'); + $(prevTrs[0]).addClass('first').removeClass('csukott'); + $(prevTrs[0]).nextAll('tr.tanar').removeClass('csukott'); + } + }} // updateWindowSide - !nyitva + }); + +}); \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tovabbkepzes.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tovabbkepzes.jquery.min.js new file mode 100644 index 00000000..db9f0830 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/tovabbkepzes.jquery.min.js @@ -0,0 +1,210 @@ +$(function() { + + var sumOsszeg=0; + var sumTamogatas=0; + var sumOsszeg_ok=0; + var sumTamogatas_ok=0; + + checkTamogatasInput(); + $('#ujTovabbkepzes span.ujIntezmeny').click(function() { + var h = 'Intézmény rövidneve: '; + h += 'Intézmény neve: '; + $(this).after(h); + $('#ujTovabbkepzes span.ujIntezmeny').remove(); + $('#ujTovabbkepzes select').hide(); + }); + + $('#tovabbkepzesTerv input[type=text].currency').change(function() { + element = $(event.target); + checkTamogatasInput(); + }); + + $('#tanarTovabbkepzesForduloDt select').click(function() { + $(this).closest('form').find('input').removeClass('ajaxDone').removeClass('ajaxError'); + }); + $('#tanarTovabbkepzesForduloDt select').change(function() { + $(this).next('input').val($(this).val()); + ajaxSetTanarAdat( + $(this).data('tanarid'), + $(this).val(), + $(this).closest('form').find('input.salt').attr('name'), + $(this).closest('form').find('input.salt').val() + ); + console.log($(this).closest("tr").find('th').html('')); + }); + + $('#tovabbkepzesNavi button').click(function() { + idToOpen = $(this).data('nav'); + if (idToOpen=='') $('#tovabbkepzesNavi').siblings('form').fadeIn(); + else { + $('#tovabbkepzesNavi').siblings('form').fadeOut(); + $('#'+idToOpen).fadeIn(); + } + }); + +/* $('#tanarTovabbkepzesForduloDt th.tovabbkepzesCiklus').each(function(i) { + //enum('terv','jóváhagyott','elutasított','megszűnt','megszakadt','teljesített') ; + $this = $(this); + terv = (parseFloat($(this).data('terv'))||0); + teljesitett = (parseFloat($(this).data('teljesített'))||0); + jovahagyott = (parseFloat($(this).data('jóváhagyott'))||0); + $this.find('span.terv').css({'width':terv+'px'}); + $this.find('span.teljesitett').css({'width':teljesitett+'px'}); + $this.find('span.jovahagyott').css({'width':jovahagyott+'px'}); + }); +*/ + + google.load("visualization", "1.1", {callback:drawCharts,language:'hu',packages:["corechart","timeline"]}); + /* -------------------------------------------------------------- */ + function drawIdovonal() { + var container = document.getElementById('timeline'); + var chart = new google.visualization.Timeline(container); + var dataTable = new google.visualization.DataTable(); + dataTable.addColumn({ type: 'string', id: 'tovabbkepzes' }); + dataTable.addColumn({ type: 'string', id: 'oraszam' }); + dataTable.addColumn({ type: 'date', id: 'tolDt' }); + dataTable.addColumn({ type: 'date', id: 'igDt' }); + + $('table.tovabbkepzes tbody tr.tovabbkepzesTanarSor').each(function(i) { + if ($(this).data('igdt')!='0000-00-00') { + var tanarNev = $(this).data('tanarnev'); + var oraszam = $(this).data('oraszam') + " óra"; + var tolDt = new Date( $(this).data('toldt') ); + var igDt = new Date( $(this).data('igdt') ); + dataTable.addRows([ [tanarNev, oraszam, tolDt, igDt] ]); + } + }); + chart.draw(dataTable); + } + /* -------------------------------------------------------------- */ + function drawPie1() { + var data = google.visualization.arrayToDataTable([ + ['Task', 'Támogatás'], + ['Nem támogatott', sumOsszeg-sumTamogatas], + ['Támogatott', sumTamogatas] + ]); + + var options = { + title: 'Támogatás', + slices: { 0: { color: 'red'}, 1: { color: 'green'} }, + legend: {position: 'bottom', textStyle: {color: 'black', fontSize: 10}} + }; + var chart = new google.visualization.PieChart(document.getElementById('grafikonTamogatas')); + chart.draw(data, options); + } + function drawPie2() { + + var dataTable = new google.visualization.DataTable(); + dataTable.addColumn('string', 'tanár'); + dataTable.addColumn('number', 'támogatás'); + $('table.tovabbkepzes tbody tr.tovabbkepzesTESor').each(function(i) { + if ($(this).data('igdt')!='0000-00-00') { + var tanarNev = $(this).data('tanarnev'); + var reszosszeg = Number($(this).data('reszosszeg')); + var tamogatas = $(this).data('tamogatas'); + dataTable.addRows([ [ tanarNev, reszosszeg ] ]); + } + }); + var options = { + title: 'Továbbképzések eloszlása összeg szerint', + pieSliceText: '', + legend: {position: 'labeled', textStyle: {color: 'black', fontSize: 10}} + }; + var chart = new google.visualization.PieChart(document.getElementById('grafikonOsszegEloszlas')); + chart.draw(dataTable, options); + } + /* -------------------------------------------------------------- */ + function checkTamogatasInput() { + sumOsszeg=0; + sumTamogatas=0; + sumOsszeg_ok=0; + sumTamogatas_ok=0; + $('#tovabbkepzesTerv tbody input[type=text].currency').each(function(index) { + element = $(this); + if (element.data('inputtype') == 'tamogatas') { + if (Number($('#reszosszeg_'+element.data('kulcs')).val()) < Number(element.val())) { + element.addClass('hiba'); + } else { + element.removeClass('hiba'); + } + if ($.inArray(element.data('tovabbkepzesstatusz'),['terv','jóváhagyott','teljesített'])>=0) { + sumTamogatas_ok += Number(element.val()); + } + sumTamogatas += Number(element.val()); + } else { + if ($.inArray(element.data('tovabbkepzesstatusz'),['terv','jóváhagyott','teljesített'])>=0) + sumOsszeg_ok += Number(element.val()); + sumOsszeg += Number(element.val()); + } + }); + $('#sumOsszeg').val(sumOsszeg); + $('#sumTamogatas').val(sumTamogatas); + $('#sumOsszeg_ok').val(sumOsszeg_ok); + $('#sumTamogatas_ok').val(sumTamogatas_ok); + + var keretOsszeg = Number($('#keretOsszeg').val()); + if (keretOsszeg'+(keretOsszeg-sumTamogatas_ok)+' Ft.-'); + } else { + $('#sumTamogatas_ok').removeClass('hiba'); + if ((keretOsszeg-sumTamogatas_ok)==0) $('#tamogatasInfo').html(''); + else $('#tamogatasInfo').html(''+(keretOsszeg-sumTamogatas_ok)+' Ft.-'); + } + } + /* -------------------------------------------------------------- */ + + function drawCharts() { + drawIdovonal(); + if ($('#grafikonTamogatas').length>0) drawPie1(); + if ($('#grafikonOsszegEloszlas').length>0) drawPie2(); + } + + var clickedMegjegyzes = false; + $('span.tovabbkepzesMegjegyzes').click(function() { + clickedMegjegyzes = $(this).parent('td'); + $('#updateForm').html($('#tovabbkepzesMegjegyzes_'+$(this).data('kulcs')+"")); + $('#updateForm *').show(); + $('#takaro').show(); + $('#updateWindow').show(); + }); + + hideUpdateLayer = function() { + $('#updateForm div').hide(); + clickedMegjegyzes.append($('#updateForm div')); + }; + +}); + + + +ajaxSetTanarAdat = function(tanarId,forduloDt,salt_name,salt_value) { + postData = {'tanarId':tanarId, + 'forduloDt':forduloDt, + 'sessionID': $('body').data('sessionid'), + 'action':'modTanarTovabbkepzesForduloDt' } + postData[salt_name] = salt_value; + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=intezmeny&f=tovabbkepzes&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + updateSalt(jqXHR.getResponseHeader('Etag')); + processJSONTovabbkepzes(msg); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log(errorThrown); + //console.log(jqXHR.responseJSON); + //displayJSONerror(jqXHR.responseJSON); + updateSalt(jqXHR.getResponseHeader('Etag')); + triggerError(tanarId); + }); +} + +processJSONTovabbkepzes = function (ADAT) { + $('input[data-tanarid='+(ADAT.tanarId)+']').addClass('ajaxDone'); +} + +triggerError = function (tanarId) { + $('input[data-tanarid='+(tanarId)+']').addClass('ajaxError'); +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/zaradek.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/zaradek.jquery.min.js new file mode 100644 index 00000000..7831c469 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/intezmeny/zaradek.jquery.min.js @@ -0,0 +1,13 @@ + +function htmlEncode(value){ + //create a in-memory div, set it's inner text(which jQuery automatically encodes) + //then grab the encoded contents back out. The div never exists on the page. + return $('
    ').text(value).html(); +} + +$(function() { + $('form.zaradek table input[type=text]').change(function(event) { + var element = $(event.target); + $('#'+element.attr('id')+'span').html(htmlEncode(element.val())); + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/naplo.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/naplo.jquery.min.js new file mode 100644 index 00000000..fd9e8336 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/naplo.jquery.min.js @@ -0,0 +1,1249 @@ +var debug=false; +$(function() { + + $('body').bind('submit', mayorNaploSubmitSearch); + + $('.toolBarClear').click(function(event) { + var element = $(event.target); + element.closest('table').find('select').prop('selectedIndex',0); + element.closest('table').find('form').submit(); + }); + + $('.btnSelectNext').on('click',function(event) { + var selectTool = $(this).prev('select'); // közvetlenül az előtte levő elem (select) + $(selectTool).find('option:selected').removeAttr('selected').next('option').attr('selected', 'selected'); + $(selectTool).change(); + }); + $('.btnSelectPrev').on('click',function(event) { + var selectTool = $(this).next('select'); // közvetlenül a mögötte levő elem (select) + $(selectTool).find('option:selected').removeAttr('selected').prev('option').attr('selected', 'selected'); + $(selectTool).change(); + }); + + $('#toolBarHamburgerVezerlo').click(function(event) { + $('#toolBarHamburgerLista').toggle(); + }); + +// if ($('#diakSelectLista option').length == 0){ + $('#diakSelectPattern').closest('form').submit( function(event) { + var $form = $(this); + if ($('#diakSelectLista').val()=="") { + $form.data('submitted',false); + return false; + } + }); + $('#diakSelectIcon').click( function(event) { + $('#diakSelectPattern').toggle().focus(); + //$('#diakSelectIcon').toggle(); + $('#diakSelectLista').toggle().prop('selectedIndex',0); + }); + $('#diakSelectPattern').change( function(event) { + var pattern = $('#diakSelectPattern').val(); + // we need to catch ENTER! + var params = $.parseParams(window.location.toString().split('?')[1] || '' ); + var sessionID=params.sessionID?params.sessionID:''; + $.ajax({ + type: "POST", + url: "?page=naplo&sub=tools&f=kereso&policy=private&skin=ajax&sessionID="+sessionID, + data: { 'pattern': pattern, 'tipus':'diak', 'sessionID':sessionID }, + dataType: 'json' + }).done(function( msg ) { + var listItems = $('#diakSelectLista'); + var D = msg[0]['diakok']; // vajon miért így kell erre hivatkozni? + if (D.length>0) { + listItems.find('option').remove(); + listItems.find('optgroup').remove(); + listItems.append(''); + for (i=0; i'+D[i]['diakNev']+''); + } + $('#diakSelectPattern').hide(); + $('#diakSelectIcon').show(); + $('#diakSelectLista').show().focus(); + if (D.length==1) { + //$("#diakSelectLista").val($("#diakSelectLista option:last").attr('selected',true)); + $("#diakSelectLista option:last").attr('selected',true); + $('#diakSelectTool').submit(); + } + } + }); + }); +// } + + + +/* + $(document).on('click', '.oraErtekel', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('oraid')==true ) { + ajaxSetOraLike(element.data('oraid'),element.data('jovolt')); + } + }); +*/ + $(document).on('click', '.jegyAdat', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('jegyid')==true ) { + ajaxGetJegyAdat(element.data('jegyid')); + } + }); + + $(document).on('click', '.zaroJegyAdat', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('zarojegyid')==true ) { + ajaxGetZaroJegyAdat(element.data('zarojegyid')); + } + }); + + $(document).on('click', '.tankorAdat', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('tankorid')==true ) { + ID = element.data('tankorid'); + } else if ( $(this).data().hasOwnProperty('tankorid')==true ) { + ID = $(this).data('tankorid'); + } + if (ID!='') ajaxGetTankorAdat(ID); + + }); + + $(document).on('click', '.osztalyAdat', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('osztalyid')==true ) { + ID = (element.data('osztalyid')); + } else if ( $(this).data().hasOwnProperty('osztalyid')==true ) { + ID = $(this).data('osztalyid'); + } + if (ID!='') ajaxGetOsztalyAdat(ID); + }); + + mayorNaploEventHandlers(); + +}); + +mayorNaploSubmitSearch = function (event) { + + var element = $(event.target); + if (element.attr('id') == 'mayorSearch') { + var pattern = $('#mayorSearch input[type=text]').val(); + var postData = { 'tipus':'diak','pattern': pattern, 'strict':1, 'mayorToken': ($('body').data('mayortoken')) }; + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=kereso&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONKeresoDiakAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log(jqXHR); + }); + + var postData = { 'tipus':'tanar','pattern': pattern, 'strict':1, 'mayorToken': ($('body').data('mayortoken')) }; + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=kereso&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONKeresoTanarAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log(jqXHR); + }); + + var postData = { 'tipus':'szulo','pattern': pattern, 'strict':1, 'mayorToken': ($('body').data('mayortoken')) }; + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=kereso&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONKeresoSzuloAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log(jqXHR); + }); + + + + } + +} + +processJSONKeresoDiakAdat = function( ADAT ) { +// console.log(JSON.stringify(ADAT)); +// $('#updateWindowSide').addClass('nyitva'); +// $('#updateWindowSideTitle').html(diakAdat['diakNev']); +// $('#mayorSearch').remove(); + var content = ''; + if (ADAT['diakok'].length>0) { + for (i=0; i'+a['diakNev'] + if (a['osztalyJel']!=null) content += ' ('+a['osztalyJel']+')'; + content +=''; + //content += ''; + //content += '
    '; + } + $('#mayorSearch').append(content); + } +} +processJSONKeresoTanarAdat = function( ADAT ) { + var content = ''; + if (ADAT['tanarok'].length>0) { + for (i=0; i'+a['tanarNev']+''; + } + $('#mayorSearch').append(content); + } +} +processJSONKeresoSzuloAdat = function( ADAT ) { + var content = ''; + if (ADAT['szulok'].length>0) { + for (i=0; i'+a['szuloNev']+''; + } + $('#mayorSearch').append(content); + } + +} + + +ajaxGetDiakAdat = function(diakId) { + postData = { 'diakId':diakId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getDiakAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONDiakAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log(jqXHR); + }); +} + +ajaxGetSzuloAdat = function(szuloId) { + postData = { 'szuloId':szuloId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getSzuloAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONSzuloAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log(jqXHR); + }); +} + +ajaxGetTanarAdat = function(tanarId) { + postData = { 'tanarId':tanarId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getTanarAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONTanarAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); + //console.log(jqXHR); + }); +} + +ajaxGetTankorAdat = function(tankorId) { + postData = { 'tankorId':tankorId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getTankorAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONTankorAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); + //console.log(jqXHR); + }); +} +ajaxGetOsztalyAdat = function(osztalyId) { + postData = { 'osztalyId':osztalyId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getOsztalyAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONOsztalyAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); + //console.log(jqXHR); + }); +} + +ajaxGetDolgozatAdat = function(dolgozatId) { + postData = { 'dolgozatId': dolgozatId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ type: "POST", + url: "index.php?page=naplo&sub=tools&f=dolgozatAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONDolgozatAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + alert('Valami hiba történt'); + //console.log('hiba történt!'+textStatus); + //console.log(jqXHR); + }); +} + +ajaxGetJegyAdat = function(jegyId) { + postData = { 'jegyId':jegyId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getJegyAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONJegyAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log(jqXHR); + }); +} +ajaxGetZaroJegyAdat = function(zaroJegyId) { + postData = { 'zaroJegyId':zaroJegyId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getZaroJegyAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONZaroJegyAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log(jqXHR); + }); +} + + +ajaxGetOraAdat = function(oraId) { + mayorLoaderStart(); + postData = { 'oraId':oraId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getOraAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + mayorLoaderStop(); + processJSONOraAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + mayorLoaderStop(); + //console.log('hiba történt!'+textStatus); + //console.log(jqXHR); + }); +} +ajaxGetNapAdat = function(napDt) { + postData = { 'napDt': napDt, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=napAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONNapAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); + //console.log(jqXHR); + }); +} + +ajaxGetJegyzetAdat = function(jegyzetId,refJegyzetDt) { + postData = { 'jegyzetId':jegyzetId, 'refJegyzetDt':refJegyzetDt, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=jegyzetAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONJegyzetAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); console.log(jqXHR); + updateSalt(jqXHR.getResponseHeader('Etag')); + }); +} + +ajaxSetOraAdat = function(adat) { + postData = adat; + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getOraAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONOraAdat(msg); +// updateOraAdat(msg.adat); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); console.log(jqXHR); + updateSalt(jqXHR.getResponseHeader('Etag')); + alert('Sajnos valami hiba történt! Próbáld újra! '+textStatus); + }); +} + +ajaxSetJegyzetAdat = function(adat) { + postData = adat; + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=jegyzetAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONJegyzetAdat(msg); + updateJegyzet(msg.adat); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); console.log(jqXHR); + updateSalt(jqXHR.getResponseHeader('Etag')); + alert('Sajnos valami hiba történt! Próbáld újra! '+textStatus); + }); +} + +ajaxDelJegyzet = function(adat) { + postData = adat; + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=jegyzetAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + removeJegyzet(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); console.log(jqXHR); + updateSalt(jqXHR.getResponseHeader('Etag')); + alert('Sajnos valami hiba történt! Próbáld újra! '+textStatus); + }); +} + +// -------------------------------------------------------------- + +processJSONDiakAdat = function( diakAdat ) { + + //if (diakAdat.visibleData != true) return false; + var content = ''; + content += '
    '; + content += ''; + content += ''; + content += ''; + content += ''; +// content += ''; + content += ''; + content += '
    '; + + if (diakAdat['diakOsztaly']!=undefined) { + content += '

    Osztály ('+diakAdat['tanev']+')

    '; + content += '
      '; + if (diakAdat['diakJogviszony']!=undefined) + for (i=0; i' + + (_osztalyAdat['osztalyJel']) + " " +// + _osztalyAdat['kezdoTanev'] + '-' + _osztalyAdat['vegzoTanev'] + '/' + _osztalyAdat['jel'] +// + ' (' + _osztalyAdat['osztalyId'] + ') ' + + diakAdat['diakOsztaly'][i]['beDt'] + ' – ' + + ((diakAdat['diakOsztaly'][i]['kiDt'] == null) ? '____-__-__':diakAdat['diakOsztaly'][i]['kiDt']) + + ' ('+_osztalyAdat['osztalyId']+')'; + } + content += '
    '; + } + if (diakAdat['diakKepzes']!=undefined) + if (diakAdat['diakKepzes'].length>0) { + content += '

    Képzések

    '; + content += '
      '; + for (i=0; i<(diakAdat['diakKepzes'].length); i++) { + content += '
    • '+diakAdat['diakKepzes'][i]['kepzesNev']+ ' ' + diakAdat['diakKepzes'][i]['tolDt']; + if (diakAdat['diakKepzes'][i]['igDt']!=null) content += ' – ' + diakAdat['diakKepzes'][i]['igDt']; + content += '
    • '; + } + content += '
    '; + } + + content += '

    Jogviszony

    '; + content += '
      '; + if (diakAdat['diakJogviszony']!=undefined) + for (i=0; i'; + } + content += '
    '; + + if (diakAdat['diakFelmentes']!=undefined) + if (diakAdat['diakFelmentes'].length>0) { + content += "

    Felmentések ("+diakAdat['tanev']+")

    "; + content += '
      '; + for (i=0; i" + + d['beDt'] + ' - ' + d['kiDt'] + " " + + "nap: "+d['nap'] + " " + + "óra: "+d['ora'] + " " + + ''; + } + content += '
    '; + } + content += '

    Tankörök ('+diakAdat['tanev']+')

    '; + content += '
      '; + if (diakAdat['diakTankor']!=undefined) + for (i=0; i' +diakAdat['diakTankor'][i]['tankorNev']; + if (diakAdat['diakTankor'][i]['kovetelmeny']!='') content += ' (' + diakAdat['diakTankor'][i]['kovetelmeny'] + ')'; + content += ''; + } + content += '
    '; + content += '

    Egyéb

    '; + content += '
      '; + content += '
    • Egyedi azonosító (diakId): ' + diakAdat['diakId'] + '
    • '; + if (diakAdat['userAccount'] != null) content += '
    • Login azonosító (userAccount): ' + diakAdat['userAccount'] + '
    • '; + if (diakAdat['szuletesiHely'] != null) content += '
    • Született: ' +diakAdat['szuletesiHely'] + ', ' + diakAdat['szuletesiIdo'] +' '+ diakAdat['diakEletkor'] + '
    • '; + if (diakAdat['torzslapszam'] != null) content += '
    • Törzslapszám: ' +diakAdat['torzslapszam'] + '
    • '; + if (diakAdat['mobil'] != null) content += '
    • Telefon: ' +diakAdat['mobil'] + '
    • '; + if (diakAdat['email'] != null) content += '
    • E-mail: ' +diakAdat['email'] + '
    • '; + content += '
    • Lakik: ' +diakAdat['lakhelyIrsz'] + ' ' + +diakAdat['lakhelyHelyseg'] + ', ' + +diakAdat['lakhelyKozteruletNev'] + ' ' + +diakAdat['lakhelyKozteruletJelleg'] + ' ' + +diakAdat['lakhelyHazszam'] + + '
    • '; + if (diakAdat['megjegyzes'] != null) content += '
    • Megjegyzés: ' + diakAdat['megjegyzes'] +'
    • '; + content += '
    '; + content += "

    Szülei

    "; + content += '
      '; + if (diakAdat['diakSzulo']!=undefined) + for (i=0; i'; + content += ''; + content += d['szuloNev'] + ' ('+d['szuloId']+')'; + content += ''; +// if (d['szuleteskoriNev']!=null) content += ' ('+d['szuleteskoriNev']+')'; + content += ''; + } + content += '
    '; + + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='diak' ) { + $('#updateWindowSideSubTitle').html(''+diakAdat['diakNev']+''); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideTitle').html(''+diakAdat['diakNev']+''); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } + + +} + +processJSONTanarAdat = function( adat ) { +// console.log(JSON.stringify(adat)); + var content = ''; + content += '
    '; + content += ''; + if (adat.layerPolicy>0) { + content += ''; + content += ''; + content += ''; + content += ''; + } else { + content += ''; + + } + content += '
    '; +// +// content += '

    Osztály ('+adat['tanev']+')

    '; + +// content += '

    Mai órák

    '; +// content += adat['maiOrak']['html']; + +/* + content += '

    Óraterhelés

    '; +// oraTerheles":{"56":{"munkaido":{"heti":40,"kotott":32,"lekotott":26},"ossz":{"heti":"13","napi":"4"},"kotottEloirt":{"heti":"13","napi":"4"},"kotott":{"heti":"13","napi":"4"},"lekotott":{"heti":"13","napi":"4"}}}} + var OT = adat['oraTerheles'][adat['tanarId']]; + content += '
      '; + content += '
    • Heti munkaidő referencia: '+ OT['munkaido']['heti'] + '-' + OT['munkaido']['kotott'] + '-' + OT['munkaido']['lekotott']; + content += '
    • Össz: '+ OT['ossz']['heti'] + '|' + OT['ossz']['napi']; + content += '
    • Kötött: '+ OT['kotott']['heti'] + '|' + OT['kotott']['napi']; + content += '
    • Kötött-előírt: '+ OT['kotottEloirt']['heti'] + '|' + OT['kotottEloirt']['napi']; + content += '
    • Lekötött: '+ OT['lekotott']['heti'] + '|' + OT['lekotott']['napi']; + content += '
    • '; + content += '
    '; +*/ + + if(adat.layerPolicy>0) { + if (adat.tanarTankor!=undefined) { + content += '

    Tanár tankörei

    '; + content += '
      '; + for (i=0; i' + +adat.tanarTankor[i].tankorNev+''; + } + content += '
    '; + } + + content += '

    Egyéb adatok

    '; + content += '
      '; + if (adat['beDt']!='') content += '
    • Munkaviszony: '+adat['beDt']+ (adat['kiDt']==null?'':' – '+adat['kiDt']) +'
    • '; + if (adat['hetiMunkaora']!='') content += '
    • Heti munkaóra: '+adat['hetiMunkaora']+'
    • '; + if (adat['hetiKotelezoOraszam']!='') content += '
    • Heti kötelező óraszám: '+adat['hetiKotelezoOraszam']+'
    • '; + if (adat['statusz']!='') content += '
    • Státusz: '+adat['statusz']+'
    • '; + if (adat['besorolas']!='') content += '
    • Besorolás: '+adat['besorolas']+'
    • '; + if (adat['tovabbkepzesForduloDt']!='') content += '
    • Továbbképzés forduló dátum: '+adat['tovabbkepzesForduloDt']+'
    • '; + content += '
    '; + } + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='tanar' ) { + $('#updateWindowSideSubTitle').html(''+adat['tanarNev']+''); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideTitle').html(''+adat['tanarNev']+''); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } + +} + +processJSONOraAdat = function(adat) { + + var content = ''; + var dolgozatAdat; + + content += '
    '; + content += ''; + content += ''; + content += '
    '; + + content += '

    A haladási óra adatai

    '; + content += '
      '; + content += '
    • Típus: ' + adat['oraAdat']['tipus'] +'
    • '; + content += '
    • Tankör: ' + adat['oraAdat']['tankorNev']+'
    • '; + if (adat['oraAdat']['kiCn']!='') content += '
    • Tanár: ' + adat['oraAdat']['kiCn'] +'
    • '; +// if (adat['oraAdat']['kiCn']!='') content += '
    • Tanár: ' + adat['oraAdat']['kiCn'] +'
    • '; + if (adat['oraAdat']['kitCn']!='') content += '
    • Helyettesítendő: ' + adat['oraAdat']['kitCn'] +'
    • '; + content += '
    • Terem: ' + (adat['oraAdat']['teremId']==null?'–':adat['oraAdat']['teremId']) +'
    • '; + content += '
    • Leírás: ' + (adat['oraAdat']['leiras']) +'
    • '; + content += '
    '; + + if (adat['oraBeirhato']) content += adat['oraForm']; +// content += '

    Óra kapcsolatai

    '; +// content += '
    • Beírt mulasztások száma: '+'n/a'+'
    • '; +// content += '
    • Beírt jegyek száma: '+'n/a'+'
    • '; +// content += '
    '; + + content += '

    Dolgozatok

    '; + + if (adat['dolgozat']['dolgozatIds'].length>0) { + content += '
      '; + for (i=0; i'+dolgozatAdat['tervezettDt']+': '+ dolgozatAdat.dolgozatNev + ''; + // bejelentesDt, tervettDt, tankor... + } + content += '
    '; + } + if (adat['dolgozatBeirhato']) { + content += adat['dolgozatForm']; + } + if (adat['elozoOrak']!=undefined && adat['elozoOrak'].length>0) { + content += '

    Előző órák

    '; + content += '
      '; + for (i=0; i' + + adat['elozoOrak'][i]['dt'] + ' ' + + adat['elozoOrak'][i]['ora'] + '. óra ' + + mayorLeiras(adat['elozoOrak'][i]['leiras']) + + ''; + } + content += '
    '; + } + +// content += '
    +++++
    '; +// content += '
    -----
    '; + + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='oraAdat' ) { + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSubTitle').html('Haladási napló'); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideContent').html(content); + $('#updateWindowSideTitle').html('Haladási napló órája'); + $('#updateWindowSide').addClass('nyitva'); + } + +} + +processJSONJegyAdat = function(adat) { + + var content = ''; + + content += '
    '; + content += ''; + content += '
    '; + + content += '

    A jegy adatai

    '; + content += '
      '; + content += '
    • Értékelés (rövid): ' + adat['jegyAdat']['rovid'] +'
    • '; + content += '
    • Hivatalos értékelés: ' + adat['jegyAdat']['hivatalos'] +'
    • '; + content += '
    • Diák: ' + adat['diakNev'] +'
    • '; + content += '
    • Diák azonosító: ' + adat['jegyAdat']['diakId'] +'
    • '; + content += '
    • Tárgy: ' + adat['targyNev'] + ' (' + adat['jegyAdat']['targyId'] +')
    • '; + content += '
    • Jegy típus: ' + adat['jegyAdat']['jegyTipus'] +'
    • '; + content += '
    • Jegy érték: ' + adat['jegyAdat']['jegy'] +'
    • '; + if (adat['jegyAdat']['oraId']>0) content += '
    • Kapcsolódó óra: '+ adat['jegyAdat']['oraId'] +'
    • '; + if (adat['jegyAdat']['dolgozatId']>0) content += '
    • Kapcsolódó dolgozat: '+ adat['jegyAdat']['dolgozatId'] +'
    • '; + content += '
    • Megjegyzés: ' + adat['jegyAdat']['megjegyzes'] +'
    • '; + content += '
    • Beírás dátuma: ' + adat['jegyAdat']['dt'] +'
    • '; + if (adat['jegyAdat']['modositasDt']!='0000-00-00 00:00:00') content += '
    • Utolsó módosítás: ' + adat['jegyAdat']['modositasDt'] +'
    • '; + +// if (adat['oraAdat']['kiCn']!='') content += '
    • Tanár: ' + adat['oraAdat']['kiCn'] +'
    • '; +// if (adat['oraAdat']['kitCn']!='') content += '
    • Helyettesítendő: ' + adat['oraAdat']['kitCn'] +'
    • '; + content += '
    '; + + // content += adat['jegySelect']; + + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='jegyAdat' ) { + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSubTitle').html('Jegy adatai'); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideContent').html(content); + $('#updateWindowSideTitle').html('Jegy adatai'); + $('#updateWindowSide').addClass('nyitva'); + } +} + +processJSONZaroJegyAdat = function(adat) { + + var content = ''; + content += '

    A zárójegy adatai

    '; + content += '
      '; + content += '
    • Hivatalos értékelés: ' + adat['zaroJegyAdat']['hivatalos'] +'
    • '; + content += '
    • Értékelés (rövid): ' + adat['zaroJegyAdat']['rovid'] +'
    • '; + content += '
    • Diák: ' + adat['diakNev'] +'
    • '; + content += '
    • Diák azonosító: ' + adat['zaroJegyAdat']['diakId'] +'
    • '; + content += '
    • Tárgy: ' + adat['targyNev'] + ' ' + adat['zaroJegyAdat']['targyId'] +'
    • '; + content += '
    • Évfolyamjel: ' + adat['zaroJegyAdat']['evfolyamJel'] +'
    • '; + content += '
    • Félév: ' + adat['zaroJegyAdat']['felev'] +'
    • '; + content += '
    • Jegy típus: ' + adat['zaroJegyAdat']['jegyTipus'] +'
    • '; + content += '
    • Jegy érték: ' + adat['zaroJegyAdat']['jegy'] +'
    • '; + content += '
    • Megjegyzés: ' + adat['zaroJegyAdat']['megjegyzes'] +'
    • '; + content += '
    • Módosítás dátuma: ' + adat['zaroJegyAdat']['modositasDt'] +'
    • '; + content += '
    • Hivatalos dátum: ' + adat['zaroJegyAdat']['hivatalosDt'] +'
    • '; + content += '
    '; + + if (adat['fotargy']==true) { + content += '

    Főtárgy

    '; + } + if (adat['altargy']==true) { + content += '

    Altárgy

    '; + } + + // content += adat['jegySelect']; + // console.log(adat); + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='zaroJegyAdat' ) { + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSubTitle').html('Osztályzat, zárójegy'); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideContent').html(content); + $('#updateWindowSideTitle').html('Osztályzat, zárójegy'); + $('#updateWindowSide').addClass('nyitva'); + } +} + +processJSONOsztalyAdat = function(adat) { + + if (adat.visibleData != true) return false; + var content = ''; + + content += '
    '; + content += ''; + content += ''; + content += '
    '; + + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='osztaly' ) { + $('#updateWindowSideSubTitle').html(adat['nev']); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideTitle').html(adat['nev']); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } + +} + +processJSONTankorAdat = function(adat) { + + if (adat.visibleData != true) return false; + var content = ''; + + content += '
    '; + content += ''; + content += ''; +// content += ''; + content += ''; + content += ''; + content += ''; + + content += '
    '; + + + if (adat.tankorTanar!=undefined) { + content += '

    Tanárok

    '; + content += '
      '; + for (i=0; i'+adat.tankorTanar[i].tanarNev+' ('+adat.tankorTanar[i]['minBeDt']+'–'+adat.tankorTanar[i]['maxKiDt']+')'; + } + content += '
    '; + } + + content += '

    '+mayorLeiras(adat['leiras'])+'

    '; + content += '
      '; + content += '
    • megjegyzés: '+adat['tankorCn']+'
    • '; + content += '
    • névsor: '+adat['nevsor']+'
    • '; + content += '
    • választható: '+adat['felveheto']+' ('+adat['min']+'-'+adat['max']+')
    • '; + content += '
    • jelenlét: '+adat['jelenlet']+'
    • '; + content += '
    • hiányzás regisztrálandó: '+adat['regisztralando']+'
    • '; + content += '
    • hiányzás beleszámít: '+adat['hianyzasBeleszamit']+'
    • '; + content += '
    • óraszám: '+adat['oraszam']+'
    • '; + content += '
    '; + + if (adat.tankorBlokk.length>0) { + content += '

    Tankörblokk ('+adat.tankorBlokk.length+')

    '; + content += '
      '; + for (i=0; i'; + } + content += '
    '; + } + if (adat.tanmenetId>0) { + content += '

    Tanmenet ('+adat.tanmenetId+')

    '; + content += '
      '; + content += '
    • név: '+adat.tanmenetAdat.tanmenetNev+'
    • '; + content += '
    • évfolyam jel: '+adat.tanmenetAdat.evfolyamJel+'
    • '; + content += '
    • tárgy: '+adat.tanmenetAdat.targyNev+'
    • '; + content += '
    • óraszám: '+adat.tanmenetAdat.oraszam+'
    • '; + content += '
    • státusz: '+adat.tanmenetAdat.statusz+'
    • '; +// for (i=0; i'; +// } + content += '
    '; + } + + + content += '

    Osztályok

    '; + content += '
      '; + if (adat.osztalyIds!=undefined) { + for (i=0; i'+osztalyAdat.osztalyJel+' ('+osztalyAdat.leiras+') '+osztalyAdat.osztalyfonokNev+''; + } + } + content += '
    '; + + content += '

    Névsor ('+adat.tankorDiak.idk.length+')

    '; + content += '
      '; + if (adat.tankorDiak.idk!=undefined) { + var _diakId = 0; + for (i=0; i'+osztalyAdat.osztalyJel+' ('+osztalyAdat.leiras+') '+osztalyAdat.osztalyfonokNev+''; + content += '
    • '+ diakNev +'
    • '; + } + } + content += '
    '; + + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='tankor' ) { +// $('#updateWindowSideSubTitle').html(adat['tankorNev']); + $('#updateWindowSideSubTitle').html(''+adat['tankorNev']+''); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { +// $('#updateWindowSideTitle').html(adat['tankorNev']); + $('#updateWindowSideTitle').html(''+adat['tankorNev']+''); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } + + // IDE + +} + + +processJSONSzuloAdat = function( adat ) { + + var content = ''; + +// content += '
    '; +// content += '
    '; + + content += "

    Elérhetőségek

    "; + content += '
      '; + content += '
    • Felhasználónév: '+adat['userAccount']+'
    • '; + content += '
    • Email: '+adat['email']+'
    • '; + content += '
    • Mobiltelefon: '+adat['mobil']+'
    • '; + content += '
    • Foglalkozás: '+adat['foglalkozas']+'
    • '; + content += '
    • Munkahely: '+adat['munkahely']+'
    • '; + content += '
    • Lakik: ' + +adat['cimIrsz'] + ' ' + +adat['cimHelyseg'] + ', ' + +adat['cimKozteruletNev'] + ' ' + +adat['cimKozteruletJelleg'] + ' ' + +adat['cimHazszam'] + + '
    • '; + + content += '
    '; + + content += "

    Szülő adatai

    "; + content += '
      '; + content += '
    • Státusz: '+adat['statusz']+'
    • '; + content += '
    • Születési adatok: '+'-'+'
    • '; + content += '
    '; + + + content += "

    Gyermekei

    "; + content += '
      '; + if (adat['szuloGyermekei']!=undefined) + for (i=0; i'; + content += d['diakNev']; + content += ''; + content += ''; + } + + content += '
    '; + + content += ''; + content = content.replace(/undefined/g, "-"); // testing + + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='szulo' ) { + //$('#updateWindowSideSubTitle').html(adat['szuloNev']); + $('#updateWindowSideSubTitle').html(''+adat['szuloNev']+''); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideTitle').html(''+adat['szuloNev']+''); + //$('#updateWindowSideTitle').html(adat['szuloNev']); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } + +} + + +processJSONJegyzetAdat = function(adat) { + + if (adat.visibleData != true) return false; + var content = ''; + content += '

    '+adat['jegyzetForm']+'

    '; + + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='jegyzet' ) { + $('#updateWindowSideSubTitle').html(adat['leiras']); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideTitle').html(adat['leiras']); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } + +} + +processJSONNapAdat = function(adat) { + +// if (adat.visibleData != true) return false; + var content = ''; + + content += '
      ' + content += '
    • Tanítási nap: '+adat['tanitasiNapAdat'][adat['dt']]['napszam']+'
    • '; + + for (i=0; i'; + content += '
    • csengetési rend: '+adat.napAdat[i]['csengetesiRendTipus']+'
    • '; + content += '
    • megjegyzés: '+adat.napAdat[i]['megjegyzes']+'
    • '; + content += '
    '; + content += ''; + } + content += ''; + + + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='napAdat' ) { + $('#updateWindowSideSubTitle').html(adat['leiras']); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideTitle').html(adat['leiras']); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } + +} + +processJSONDolgozatAdat = function(adat) { + +// if (adat.visibleData != true) return false; + var content = ''; + var tankorAdat; + content += '
    '; + content += ''; + content += ''; + content += '
    '; + + + content += '
      ' + content += '
    • Leírás: '+adat['dolgozatAdat']['dolgozatNev']+'
    • '; + content += '
    • Bejelentés: '+adat['dolgozatAdat']['bejelentesDt']+'
    • '; + content += '
    • Tervezett: '+adat['dolgozatAdat']['tervezettDt']+'
    • '; + content += '
    '; + + content += '

    Tankörök

    '; + content += '
      '; + for (i=0; i' +tankorAdat['tankorNev']+''; + } + content += '
    '; + + content += '

    Érdemjegy statisztika

    '; + content += '
      ' + content += '
    • Beírt jegy: '+adat['dolgozatAdat']['jegyStatisztika']['db']+'
    • '; + content += '
    • Átlag: '+adat['dolgozatAdat']['jegyStatisztika']['atlag']+'
    • '; + content += '
    '; + + content += ''; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='dolgozatAdat' ) { + $('#updateWindowSideSubTitle').html(adat['leiras']); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideTitle').html(adat['leiras']); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } + +} + + +// ----------------------------------------------------------------- +mayorNaploEventHandlers = function() { + + $('.jegyzetAdat').off('click').on('click', function(event) { + // credits: rpetya (rakolcza.peter@gmail.com) + element = $(event.target); + var elementData = element.data(); + var ID = ''; + var refJegyzetDt = ''; + if ( elementData.hasOwnProperty('jegyzetid')==true ) { + ID = (element.data('jegyzetid')); + refJegyzetDt = (element.data('jegyzetdt')); + } else if ( $(this).data().hasOwnProperty('jegyzetid')==true ) { + ID = $(this).data('jegyzetid'); + refJegyzetDt = $(this).data('jegyzetdt'); + } + //event.stopPropagation(); + if (ID!='') ajaxGetJegyzetAdat(ID,refJegyzetDt); + }); + + $('.setOraAdat').off('click').on('click', function(event) { + ajaxSetOraAdat($(this).parents('form').serialize()); + }); + $('.setJegyzetAdat').off('click').on('click', function(event) { + ajaxSetJegyzetAdat($(this).parents('form').serialize()); + }); + + $('.delJegyzet').off('click').on('click', function(event) { + ajaxDelJegyzet($(this).parents('form').serialize()); + }); + + $('.oraAdat').off('click').on('click', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('oraid')==true ) { + ID = (element.data('oraid')); + } else if ( $(this).data().hasOwnProperty('oraid')==true ) { + ID = $(this).data('oraid'); + } + if (ID!='') ajaxGetOraAdat(ID); + $('.oraAdat').removeClass('activeElement'); + $(this).addClass('activeElement'); + }); + + $('.dolgozatAdat').off('click').on('click', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('dolgozatid')==true ) { + ID = (element.data('dolgozatid')); + } else if ( $(this).data().hasOwnProperty('dolgozatid')==true ) { + ID = $(this).data('dolgozatid'); + } + if (ID!='') ajaxGetDolgozatAdat(ID); + }); + + $('.napAdat').off('click').on('click', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('napdt')==true ) { + ajaxGetNapAdat(element.data('napdt')); + } + }); + + $('.diakNev').off('click').on('click', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('diakid')==true ) { + ID = element.data('diakid'); + } else if ( $(this).data().hasOwnProperty('diakid')==true ) { + ID = $(this).data('diakid'); + } + if (ID!='') ajaxGetDiakAdat(ID); + }); + + $('.tanarNev').off('click').on('click', function(event) { + + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('tanarid')==true ) { + ID = element.data('tanarid'); + } else if ( $(this).data().hasOwnProperty('tanarid')==true ) { + ID = $(this).data('tanarid'); + } + if (ID!='') ajaxGetTanarAdat(ID); + }); + + $('.szuloNev').off('click').on('click', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('szuloid')==true ) { + ajaxGetSzuloAdat(element.data('szuloid')); + } + }); + +} // mayorNaploEventHandlers +// ----------------------------------------------------------------- + +updateJegyzet = function(adat) { + + $('#orarendJegyzetSor').show(); + var jegyzetId = parseInt(adat['jegyzetId']); + $('.jegyzetContainer[data-dt!="'+adat['dt']+'"] div.jegyzetAdat[data-jegyzetid='+jegyzetId+']').remove(); + $('div.jegyzetAdat[data-jegyzetid='+jegyzetId+']').remove(); + var result = $('div.jegyzetAdat[data-jegyzetid="'+(jegyzetId)+'"]').text(adat.jegyzetLeiras); + if (result.length==0) { + var o = '
    '; + $('.jegyzetContainer[data-dt="'+adat['dt']+'"]').append(o); + $('div.jegyzetAdat[data-jegyzetid="'+jegyzetId+'"]').text(adat.jegyzetLeiras); + } + // minden nyitva levőt bezár -- TODO -- altalanos + $('#updateWindowSideSub').removeClass('nyitva'); + $('#updateWindowSide').removeClass('nyitva'); + if ($.isFunction(hideUpdateWindowSide)) hideUpdateWindowSide(); + if ($.isFunction(hideUpdateWindowSideSub)) hideUpdateWindowSideSub(); +} + +removeJegyzet = function(adat) { + var jegyzetId = parseInt(adat['jegyzetId']); + $('div.jegyzetAdat[data-jegyzetid='+jegyzetId+']').remove(); + $('#updateWindowSideSub').removeClass('nyitva'); + $('#updateWindowSide').removeClass('nyitva'); + if ($.isFunction(hideUpdateWindowSide)) hideUpdateWindowSide(); + if ($.isFunction(hideUpdateWindowSideSub)) hideUpdateWindowSideSub(); +} + +hideUpdateWindowSide = function() { + $('.oraAdat').removeClass('activeElement'); +} + +mayorLeiras = function(str) { + if (str==undefined || str=='' || str == false) { + return ''; + } else { + return '' + $('
    ').text(str).html() + ''; + } +} + +mayorLoaderStop = function() { // overwrite orig + mayorNaploEventHandlers(); + mayorLoaderCounter--; + if (mayorLoaderCounter==0) { + $('#poz li:first').removeClass('mayorLoader'); + } +} + +ajaxSetOraLike = function(oraId, jovolt) {} + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarend.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarend.jquery.min.js new file mode 100644 index 00000000..c95aa28b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarend.jquery.min.js @@ -0,0 +1,88 @@ +$(function() { + + function isMobile() { // --TODO -- global namespace + try{ document.createEvent("TouchEvent"); return true; } + catch(e){ return false; } + } + + var origHtmlStr = $('table.orarend thead th.het').html(); + + $('form span.normalTerem').on('click',function(event) { + var el = $(event.target); + var tmpid = ($(el).data('tmpid')); + $("form select[data-tmpid='"+tmpid+"']").toggle(); + event.stopPropagation(); + }); + + $('table.orarend thead tr th').on('click',function() { // tool kezeles mobilon + if ($(this).data('napindex')>0 && isMobile() == true) { + $(this).find('table.orarend span.napLeiras').toggle(); + $(this).find('table.orarend div.orarendTools').toggle(); + } + }); + + + if ($('table.orarend tr th.ma').length>0 && $('html').width()<500) { + for (var i=1; i<=6; i++) $('table.orarend *[data-napindex="'+i+'"]').not('.ma').hide(); + $('table.orarend thead th.het').html('
    '); + } + + + $('table.orarend tbody tr.orarendJegyzetSor th').on('click', function() { + $('table.orarend tbody tr.orarendJegyzetSor').hide(); + $('table.orarend thead th.het').html('
    '); + }); + + $('table.orarend tr th span.bezar').click(function() { + // event.stopPropagation(); + var napindex = ($(this).parents('th').data('napindex')); + if (napindex==undefined) { + //for (var i=1; i<=6; i++) $('table.orarend *[data-napindex="'+i+'"]').not('.ma').toggle('right'); + for (var i=1; i<=6; i++) $('table.orarend *[data-napindex="'+i+'"]').show('right'); + $('table.orarend thead th.het').html(origHtmlStr); + } else { + $('table.orarend *[data-napindex="'+napindex+'"]').hide('left'); + $('table.orarend thead th.het').html('
    '); + } + }); + $('table.orarend tr th.het').click(function(event) { + event.stopPropagation(); + for (var i=1; i<=6; i++) $('table.orarend *[data-napindex="'+i+'"]').show('right'); + $('table.orarend thead th.het').html(origHtmlStr); + $('table.orarend tbody tr.orarendJegyzetSor').show(); + }); + // $(window).resize(orarendResizer); // missing + $('.most').parent('th').addClass('most'); + $('table.orarend td.csr').bind('mouseenter', function(event) { + var el = $(event.target); + var iid = ''; + var thiselement = null; + if (el.is('td') && el.attr('id')!='') { + iid = el.attr('id') + thiselement = el; + } else if (el.parents('td').attr('id')!='') { + iid = el.parents('td').attr('id'); + thiselement = el.parents('td'); + } + if (iid!='undefined' && iid!='') { + var nap = iid.split('_')[2]; + for (var i=1; i<=7; i++) { + if (nap==i) { + $('.csr_'+i).show(); + $('.csr_'+i).parent('th').removeClass('most'); + $('.most').parent('th').addClass('most'); + } + else $('.csr_'+i).hide(); + } + } + // hover + var napindex = thiselement.data('napindex'); + $('table.orarend thead tr th[data-napindex="'+napindex+'"]').addClass('hover'); + var oraindex = thiselement.data('oraindex'); + $('table.orarend tbody tr th[data-oraindex="'+oraindex+'"]').addClass('hover'); + }); + $('table.orarend td.csr').bind('mouseleave', function(event) { + $('table.orarend thead tr th').removeClass('hover'); + $('table.orarend tbody tr th').removeClass('hover'); + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.jquery.min.js new file mode 100644 index 00000000..ceca5176 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.jquery.min.js @@ -0,0 +1,12 @@ +$(function() { + $('#haladasiModositando').bind('click', function(event) { + $target = $(event.target); + $target.parent('div').toggleClass('haladasiModositando'); + //alert('Ez a funkció egy új fejlesztés!'); + //console.log($target); + }); + + $('table.orarend tbody tr td input[type=checkbox]').click(function() { + $(this).closest('div').toggleClass('torlesreJelolve'); + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.js new file mode 100644 index 00000000..25ab35a1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.js @@ -0,0 +1,80 @@ +/* +Event.observe(window, 'load', myPSFLoader, false); + +function myPSFLoader(evt) { + + doOnChange = function(event) { + var element = $(Event.element(event)); + if (element.hasClassName('orarendTankor')) { + var idArray = element.getAttribute('id').split('_'); + var id = idArray[1]+'_'+idArray[2]+'_'+idArray[3]; + var orarendTankor = element.up('table').getElementsBySelector('select.orarendTankor'); + var ertek = $F(element); + $A(orarendTankor).each( + function (elem, index) { + if (elem.getAttribute('id').include(id)) { + elem.setValue(ertek); + } + } + ); + + } + } + + Event.observe(document.body, 'mayor:change', doOnChange); + + Event.observe(document.body, 'change', doOnChange); + +// Sortable.create('test', { tag:'div', overlap:'horizontal',constraint:false }); + Sortable.create('orarend', { tag:'div', only:'draggable' , + tree: true, + treeTag: 'div', + overlap:'vertical', + dropOnEmpty:true, + constraint:false, + onEnd: function(){ + alert('onEnd'); + }, + onChange:function(e){ +// $('infoBox').update( Form.Element.getValue( e.down('input')) ); + + e.addClassName('moved'); + + e.down('input').checked=false; + e.down('input').hide(); + +// e.down('input').value='test'; + + // ez az eredeti helye (het.nap.ora.tanarId) + $('infoBox1').update( (e.down('input').value) ); + // ez az új helye + $('infoBox2').update( e.up('td').getAttribute('id') ); + + } }); + +// new Draggable('draggable', { revert: true }); +// Droppables.add('droppable', { accept: 'draggable' }); + +// Sortable.create( +// 'sortable', +// {onUpdate:function(){$('debug').update(++callsToOnUpdate+' call(s) to onUpdate')}} +// ); + +// $('targySelect').disable(); +// $('targySelect').hide(); $('mozgat').hide(); +// $('action').value='ujSorrend'; +// $('targyUl').show(); $('submit').show(); + + +// Sortable.create( +// "draggable", +// {dropOnEmpty:true,handle:'handle',containment:["draggable"],constraint:false,onChange:function(){}} +// ); + + +// $('serialize').observe('click', function(event) { +// alert(Sortable.serialize('sortable')); +// }); + +} +*/ \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/szabadTerem.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/szabadTerem.jquery.min.js new file mode 100644 index 00000000..55f50fc6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/szabadTerem.jquery.min.js @@ -0,0 +1,17 @@ +$(function() { + + function isMobile() { // --TODO -- global namespace + try{ document.createEvent("TouchEvent"); return true; } + catch(e){ return false; } + } + + $('form.teremKereso span').on('click',function(event) { + var el = $(event.target); + var teremType = ($(el).data('c')); + $("table.orarend span[class='teremAdat "+teremType+"']").toggle(); + el.toggleClass('clk'); + console.log(teremType); + event.stopPropagation(); + }); + +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/termez.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/termez.jquery.min.js new file mode 100644 index 00000000..a19bd03e --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/termez.jquery.min.js @@ -0,0 +1,5 @@ +$(function() { + $('.magic').bind('click', function(event) { + $('.magic').val('Várj, ne nyomj meg még1*! :) épp varázsolunk...'); + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/diak.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/diak.jquery.min.js new file mode 100644 index 00000000..b4a58912 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/diak.jquery.min.js @@ -0,0 +1,93 @@ +$(function() { + + $('#virtualJegyEasterEgg').click(function() { $('.virtual').remove(); $('.eeHidden').fadeToggle(); atlagSzamol(); }); + $('.addVirtualJegy').click(function() { + var x = $(this).prev().val().split('|'); + var tipus = $(this).prev().prev().val(); + var jegy = 0; + for(var i = x.length; i--;) { + var z = x[i].split('='); + if (z[0]=='targyId') { targyId = z[1]; } + if (z[0]=='jegy') { jegy = z[1]; } + } + if (jegy>0) + $(this).parent().next('td').append(' '+parseFloat(jegy).toFixed(2)+''); + atlagSzamol(); + }); + + $('#sulyozas').on('change',function() { + atlagSzamol(); + }); + + $('.jegy1').hover(function(event) { + $('.jegy1').addClass('jegyKiemel'); + }, function(event) { + $('.jegy1').removeClass('jegyKiemel'); + }); + $('.jegy2').hover(function(event) { + $('.jegy2').addClass('jegyKiemel'); + }, function(event) { + $('.jegy2').removeClass('jegyKiemel'); + }); + $('.jegy3').hover(function(event) { + $('.jegy3').addClass('jegyKiemel'); + }, function(event) { + $('.jegy3').removeClass('jegyKiemel'); + }); + $('.jegy4').hover(function(event) { + $('.jegy4').addClass('jegyKiemel'); + }, function(event) { + $('.jegy4').removeClass('jegyKiemel'); + }); + $('.jegy5').hover(function(event) { + $('.jegy5').addClass('jegyKiemel'); + }, function(event) { + $('.jegy5').removeClass('jegyKiemel'); + }); + + $('tfoot .jegy0').click(function(event) {jegyToggleByTipus(0);}); + $('tfoot .jegy1').click(function(event) {jegyToggleByTipus(1);}); + $('tfoot .jegy2').click(function(event) {jegyToggleByTipus(2);}); + $('tfoot .jegy3').click(function(event) {jegyToggleByTipus(3);}); + $('tfoot .jegy4').click(function(event) {jegyToggleByTipus(4);}); + $('tfoot .jegy5').click(function(event) {jegyToggleByTipus(5);}); + +}); + +function jegyToggleByTipus(tipus) { + if (tipus==0) $('tfoot .jegy0').removeClass('icon-refresh'); + else $('tfoot .jegy0').removeClass('icon-search-alt').addClass('icon-refresh'); + $.each([ 1,2,3,4,5 ], function( index, value ) { + if (tipus!=0 && tipus!=value) { + $('tbody .jegy'+value).fadeOut(); + } else { + $('tbody .jegy'+value).fadeIn(); + } + }); +} + +function atlagSzamol() { + $('.atlag').each(function(i) { + targyAtlagSzamol($(this).data('targyid')); + }); +} + +function targyAtlagSzamol(targyid) { + + var SULYOZAS = $('#sulyozas').val().split(':'); + var jegyszam = 0; + var jegyosszeg = 0; + countThese = $('.jegy'); + for(var i = countThese.length; i--;) { + elem = $(countThese[i]); + if (elem!='undefined') { + if (elem.data('targyid')==targyid) { + jegyszam += parseInt(SULYOZAS[elem.data('tipus')-1]); + jegyosszeg += parseFloat(elem.data('jegy'))*SULYOZAS[elem.data('tipus')-1] ; + $('#targyAtlag_'+elem.data('targyid')).html(''+(jegyosszeg/jegyszam).toFixed(2)); + } + } + } + // if (jegyszam!=0) console.log('eredmeny:' + (jegyosszeg/jegyszam)); + return true; +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/dolgozat.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/dolgozat.jquery.min.js new file mode 100644 index 00000000..b5a27219 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/dolgozat.jquery.min.js @@ -0,0 +1,62 @@ +$(function() { + + google.charts.load('current', {'packages':['calendar']}); + google.charts.setOnLoadCallback(drawChart); + function drawChart() { + var data = new google.visualization.DataTable(); + data.addColumn({ type: 'date', id: 'Date' }); + data.addColumn({ type: 'number', id: 'Won/Loss' }); + var DT = {}; + $('.dolgozatDATA').each(function(index) { + egy = $(this).data('dolgozatadat').split(':'); + dt1 = egy[1].split('-'); + dt2 = egy[2].split('-'); + if (egy[2]=="" || egy[2]=='0000-00-00' || dt2=1) DT[x]++; else DT[x] = 1; + data.addRows( + [ + [ new Date(dt2), DT[x] ] + ] + ); + }); + var chart = new google.visualization.Calendar(document.getElementById('chart_div')); + var options = { + title: "Dolgozatok", + height: 350, + colorAxis: {colors:['cornflowerblue','#ff0000']}, + }; + chart.draw(data, options); + } + + +/* google.charts.load('current', {'packages':['timeline']}); + google.charts.setOnLoadCallback(drawChart); + function drawChart() { + var data = new google.visualization.dataTable(); + data.addColumn('string', 'Tankör'); + data.addColumn('date', 'Dolgozat dátum'); + data.addColumn('date', ''); + $('.dolgozatDATA').each(function(index) { + egy = $(this).data('dolgozatadat').split(':'); + dt1 = egy[1].split('-'); + dt2 = egy[2].split('-'); + if (egy[2]=="" || egy[2]=='0000-00-00' || dt2-1) sum = sum + 0.5; + }); + avg=(sum/db); + avgElement = $('#avg-d'+did); + if (avgElement) avgElement.html(avg.toFixed(2)); +} + + +// -- ELAVULT -- de hiányzik a mozgatás!!// + +function myPSFLoader(evt) { + + // Csoportos jegy beírásakor ellenőrizzük, hogy ki lett-e választva dolgozat + var CheckDolgozatObject = Class.create(); + CheckDolgozatObject.prototype = { + initialize: function(element) { + this.element = $(element); + this.eDid = $('did'); + this.element.observe('click',this.checkDolgozat.bindAsEventListener(this)); + }, + + checkDolgozat: function(evt, extraInfo) { + + if (this.eDid.value == '') { + alert(this.eDid.getAttribute('title')); + Event.stop(evt); + } + + } + } + + var checkDolgozatElements = new Array(); + $$('.check').each( + function (elem, index) { + checkDolgozatElements.push(new CheckDolgozatObject(elem)); + } + ); + + Event.observe(document.body, 'keyup', function(event) { + var element = $(Event.element(event)); + var charKeyCode = event.keyCode ? event.keyCode : event.which; + // input elem esetén ne legyen semmi + if(!element.match('input') && !element.match('textarea') && !element.match('select')) { + if (charKeyCode==46 && $('updateWindow').visible()) { // Del gomb + $('jegyTorles').click(); + } + } + }); + +// var mydrag = new Draggable('updateWindow', { scroll: window, handle: $('updateHeader') }); +} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/targySorrend.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/targySorrend.jquery.min.js new file mode 100644 index 00000000..9380d30b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/targySorrend.jquery.min.js @@ -0,0 +1,16 @@ + +$(function() { + + $('#targySelect').prop("disabled","disabled").hide(); + $('#mozgat').hide(); + $('#action').prop("value",'ujSorrend'); + $('#submit').show(); + $("#targyUl").show().disableSelection().sortable({ axis: "y", handle: ".handle", + start: function(event, ui) { + $(event.target).find('li').css('background-color',''); + ui.item.css('background-color','#ffaaaa'); + }, + }); + +}); + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/vizsga.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/vizsga.jquery.min.js new file mode 100644 index 00000000..f3845729 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/vizsga.jquery.min.js @@ -0,0 +1,50 @@ + +hideOptions = function(event) { + element = $(event.target); + if (element.hasClass('jegyTipus')) { + var jegyek = element.next('select'); + if (element.context.selectedIndex == 0) { + jegyek.find('*').prop('disabled',false).show(); + } else { + $(jegyek).val([]); + $(jegyek).find('*').prop('disabled','disabled').hide(); + $(jegyek).find('option:first').prop('disabled',false).show() + var selector='optgroup[label="'+element.val()+'"]'; + jegyek.find(selector).prop('disabled',false).show().find('option').prop('disabled',false).show(); + } + } + if (element.hasClass('jegyAdat')) { + var tipusok = $(element.parents('.hideShowContainer')[0]).find('.jegyTipus')[0]; + var jegyTipus = $(element[0].options[element[0].selectedIndex]).parents('optgroup')[0].label; + index = 0; + while (tipusok.options[index].value != jegyTipus && index < tipusok.options.length && index < 100) index++; + if (index < tipusok.options.length) tipusok.selectedIndex=index; + else tipusok.selecedIndex=0; + } +} + +$(function() { + // Halasztás elrejtése + $('div.rejtett').hide(); + $('body').bind('click', function(event) { + element = $(event.target); + + // értékeléskor... + if (element.hasClass('ertekeles')) { + // ... a halasztasDt üresreállítása + $(element.parents(".hideShowContainer")[0]).find('input.halasztasDt').prop('value',''); + } + // halasztáskor... + + if (element.hasClass('halasztas')) { + // ... a jegytípus/jegy kiválasztást megszüntetjük + // $(element.parents('.hideShowContainer')[0]).find('.jegyTipus')[0].selectedIndex=0; + // $(element.parents('.hideShowContainer')[0]).find('.jegyAdat')[0].selectedIndex=0; + $(element.parents('.hideShowContainer')[0]).find('select').prop('selectedIndex',-1).val([]); + $(element.parents('.hideShowContainer')[0]).find('optgroup, option').prop('disabled',false).show(); + } + + }); + $('body').bind('change', hideOptions); + $('body').bind('mayor:change', hideOptions); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/stat/tantargyFelosztas.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/stat/tantargyFelosztas.jquery.min.js new file mode 100644 index 00000000..b6b664c5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/stat/tantargyFelosztas.jquery.min.js @@ -0,0 +1,15 @@ + +$(function() { + + $('body').click(function(event) { + + element = $(event.target); + + if (element.closest('th').hasClass('slide')) { + element.closest('tbody').find('tr.hide').slideToggle(); + element.closest('th').find('span').toggleClass('icon-chevron-up').toggleClass('icon-chevron-down'); + } + + }); + +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanev/targyBontas.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanev/targyBontas.jquery.min.js new file mode 100644 index 00000000..fd03b778 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanev/targyBontas.jquery.min.js @@ -0,0 +1,823 @@ + + updateTbody = function(tbodyElement) { + /* + * Feltételezzük, hogy egy látható, slideUpAll nélküli nyitó sorral kezdődik a tbody + */ + tbodyElement = $(tbodyElement); + firstTr = tbodyElement.find('tr:first'); + nextTrDb = firstTr.nextAll('tr').length; + // első sorban csak slideUpAll, vagy Down lehet + firstTr.find('.slideUp').remove(); + if (nextTrDb > 0) { + firstTr.find('td.slide').append(''); + if (firstTr.data('db') == nextTrDb) { // Az összes sor az első sor alatt van --> eddig is volt Down, kell UpAll, de rejtve + firstTr.find('.slideUpAll').hide(); + } + } // vannak további sorok + } + + ajaxGetTankorAdat = function(tankorId) { + postData = { 'tankorId':tankorId } + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getTankorAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionID'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONTankorAdat(msg); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('fail'); + //console.log(jqXHR); + }); + + } + + processJSONAddBontas = function( msg ) { + //console.log(JSON.stringify(msg)); + + // utolsó érintett tr + lastTr = $('#tr-'+msg.bontas[msg.bontas.length-1].osztalyId+'-'+msg.bontas[msg.bontas.length-1].kepzesOratervId); + // A tartalmazó tbody id-je... + tbodyId = lastTr.closest('tbody').attr('id'); + // eddigi bontásszám + bontasDb = lastTr.find('div.bontas').length; + // Ha nem az utolsó a tbody-n belül, akkor az őt követő tr-eket külön tbody-ba helyezzük + nextLastTr = lastTr.nextAll('tr'); + if (nextLastTr.length > 0) { + tbodyAfter = $('').attr('id', tbodyId+'-'+bontasDb).insertAfter($('#'+tbodyId)); + nextLastTr.appendTo(tbodyAfter); + updateTbody(tbodyAfter); + } + keszKoDbCsokken = (lastTr.hasClass('kesz')); + // div beszúrása + for (i=0; i'+(bontasDb+1)+'. ' + +msg.targyNev+' csoport ('+msg.bontas[i].bontasId+')' + +'
      ' + +'
    • ' + +parseFloat(selector.closest('tr').data('hetioraszam')) + +'
    • ' + +'
    '); + $('#bontas-'+msg.bontas[i].bontasId).data('tankororaszam', []); + $('#bontas-'+msg.bontas[i].bontasId).data('hetioraszam', 0); + $('#bontas-'+msg.bontas[i].bontasId).data('targyid', msg.bontas[i].targyId); + $('#bontas-'+msg.bontas[i].bontasId).data('key', msg.bontas[i].bontasId); + $('#bontas-'+msg.bontas[i].bontasId).data('keys', msg.bontas[i].bontasId); + // az érintett sorok most biztos nem "kész"-ek, mert van egy tankörök nélküli bontásuk + selector.closest('tr').removeClass('kesz'); + } + // A stat adatok módosítása + $('#statBontas').html( parseInt($('#statBontas').html())+parseInt(msg.bontas.length) ); + if (keszKoDbCsokken) $('#statKoKesz').html( parseInt($('#statKoKesz').html())-msg.bontas.length ); + // a felső bontás keys paraméterének beállítása + keys = $('#bontas-'+msg.bontas[0].bontasId).data('key'); + for (i=1; i 0) { + tbodyModified = $('').attr('id', tbodyId+'-'+(bontasDb+1)).insertAfter($('#'+tbodyId)); + for (i=0; i 0) { + tbodyAfter = $('').attr('id', tbodyId+'-'+bontasDb).insertAfter($('#'+tbodyId)); + nextLastTr.appendTo(tbodyAfter); + updateTbody(tbodyAfter); + } + + // ha kell, akkor a módosított sorok áthelyezése új tbody-ba + firstTr = $('#bontas-'+msg.bontasIds[0]).closest('tr'); + prevFirstTr = firstTr.prevAll('tr'); + if (prevFirstTr.length > 0) { + tbodyModified = $('').attr('id', tbodyId+'-'+(bontasDb-1)).insertAfter($('#'+tbodyId)); + for (i=0; i 0); + if (kesz) lastTr.find('div.bontas').each(function(index) { + if ($(this).data('hetioraszam') != lastTr.data('hetioraszam')) kesz = false; + }); + if (kesz) { + lastTr.closest('tbody').find('tr').addClass('kesz'); + $('#statKoKesz').html( parseInt($('#statKoKesz').html())+lastTr.closest('tbody').find('tr').length ); + if ($('#keszRejt').is(':checked')) lastTr.closest('tbody').hide(); + } + } + + + } + } + + processJSONTankorLista = function( msg, element ) { + //console.log(JSON.stringify(msg)); + + // a blokk tárgy típusa + ttTdElement = element.closest('tr').find('th.targyTipus'); + if (ttTdElement.length==0) targyTipus = 'mintatantervi'; + else targyTipus = ttTdElement.html(); + // a képzésOraterv bejegyzés heti óraszáma + koHetiOraszam = parseFloat(element.closest('tr').data('hetioraszam')); + // a bontás össz-óraszáma és tankorId-i + to = element.data('tankororaszam'); + bontasOraszam = 0; + bontasTankorIds = []; + if ($.isArray(to)) { + for (i=0; i0), (element.closest('tbody').find('.felev2').length>0)]; + + ulKiemeltElement = $('
      ').addClass('kiemelt').addClass('tankorLista'); + ulElement = $('
        ').addClass('tankorLista'); + for (i=0; i kepzesOraterv óraszám, akkor az hiba! - (class="fail") + - ha bontas óraszám < kepzesOraterv óraszám, akkor --> tankör-list, tankörönként: + - hozzárendelt már - akkor nem lehet újra kiválasztani (class="hozzarendelt") + - van targyTipushoz már óraszáma --> csak az az óraszám lehet + - ha ez több, mint a bontás szabad óraszáma, akkor nem lehet hozzárendelni + - ha nem több, akkor pontosan ezt az óraszámot rendelhetjük hozzá + - nincs tárgytípushoz óraszáma, de a tankörnek már nincs fennmaradó -> nem lehet hozzárendelni + - nincs tárgytípushoz és van szabad órája: hozzá-óraszám = min(tankörSzabad[szemeszter?], bontasSzabad[szemeszter?]) + */ + tAdat = msg.tankorok[i]; + // kezdőértékek + classStr='tankorBontas'; + maxOraszam = 0; + vanTargyTipusOraszam = tankorOraszamElfogyott = tankorOraszamSokFail = oraszamFix = false; + // hozzá van-e már rendelve + hozzarendelt = ($.inArray(tAdat.tankorId, bontasTankorIds) > -1); + oStr = ''; + // fontos lenne, hogy csak a szükséges szemesztereken menjen végig a ciklus!! + for (szemeszter=0; szemeszter<2; szemeszter++) { // 0 indexű! hogy js alatt tömb lehessen + if (!vanSzemeszter[szemeszter]) continue; + oraszam = parseFloat(msg.tankorok[i].oraszam[szemeszter]); + oStr += '['+oraszam+'/'; + sum=0; + for (t=0; t'; + } else { + oStr+=hetiOraszam; + } + if (t < msg.tankorok[i].bontasOraszam[szemeszter].length-1) oStr += '+'; + } + oStr += (sum==0?'0]':']'); + tankorSzabadOraszam = oraszam - sum; + if (hozzarendelt) { + oraszamFix = true; + classStr='tiltott hozzarendelt'; + maxOraszam = 0; + } else if (vanTargyTipusOraszam) { + oraszamFix = true; + if (maxOraszam > bontasSzabadOraszam) { // ha túl sok a tankör tárgyTipushoz kötött óraszáma + classStr="tiltott"; + maxOraszam = 0; + } else { + classStr="osszevonasTilt" + } + } else if (tankorSzabadOraszam == 0) { + oraszamFix = true; + classStr='tiltott'; + tankorOraszamElfogyott = true; + maxOraszam = 0; + } else if (tankorSzabadOraszam < 0) { + oraszamFix = true; + classStr='tiltott hibas'; + tankorOraszamSokFail = true; + maxOraszam = 0; + } else if (bontasSzabadOraszam<=0) { + oraszamFix = true; + classStr="tiltott"; + maxOraszam = 0; + } else if (maxOraszam == 0) { // pl. az első szemeszter vizsgálatakor - a második szemeszter esetén már lehet pozitív + maxOraszam = Math.min(tankorSzabadOraszam, bontasSzabadOraszam); + } else { // ha az első szemesztert is figyelembe kell venni... + maxOraszam = Math.min(maxOraszam, tankorSzabadOraszam, bontasSzabadOraszam); + } + } + oStr2 = '
        '; + if (!oraszamFix) oStr2 += ''; + oStr2 += ''+maxOraszam.toFixed(2)+'
        '; + liElement = $('
      • '+oStr2+tAdat.tankorNev+' ('+tAdat.tankorId+') - '+oStr+'
      • ').data({'tankorId':tAdat.tankorId, 'hetiOraszam': maxOraszam, 'maxOraszam': maxOraszam}).attr('id','tankor-'+tAdat.tankorId); + if (tAdat.kiemelt) liElement.appendTo(ulKiemeltElement); + else liElement.appendTo(ulElement); + + } + $('#updateWindowSideContent').html(''); + $('

        Tárgy típus: '+targyTipus+'; heti óraszám: '+koHetiOraszam+'/'+bontasOraszam+'

        ').appendTo($('#updateWindowSideContent')); + if (bontasOraszam==0) $('
        Új tankör   
        ').appendTo($('#updateWindowSideContent')); + else $('
        Új tankör   
        ').appendTo($('#updateWindowSideContent')); + ulKiemeltElement.appendTo($('#updateWindowSideContent')); + ulElement.appendTo($('#updateWindowSideContent')); + $('#updateWindowSide h1 div').html('Tankörök'); + $('#updateWindowSide').data('target', element); + $('#updateWindowSide').addClass('nyitva'); + } + + processJSONTankorMod = function( msg ) { + //console.log(JSON.stringify(msg)); + txt = $('#updateWindowSide').data('target').html(); + s1 = txt.substr(0, txt.indexOf('] ')+2); + s2 = txt.substr(txt.indexOf(' (')); + $('#updateWindowSide').data('target').html(s1+msg.tankorNevTargyNelkul+s2); + //console.log(s1+msg.tankorNevTargyNelkul+s2); + processJSONTankorAdat( msg ); + } + + processJSONBontasTankor = function( msg ) { + //console.log(JSON.stringify(msg)); + + hetiOraszam = parseFloat(msg.hetiOraszam); + tankorId = msg.tankorId; + tankorNev = msg.tankorNev; + for (i=0; i['+hetiOraszam+'] '+tankorNev+' ('+tankorId+')'); + liElement.data('tankorid',tankorId).addClass('tankorAdat').insertBefore(element.find('li.marad')); + element.data('tankororaszam').push({'tankorId': tankorId, 'hetiOraszam': hetiOraszam}); + element.data('hetioraszam', hetiOraszam+element.data('hetioraszam')); + marad = element.closest('tr').data('hetioraszam')-element.data('hetioraszam'); + element.find('li.marad').html(marad); + if (marad<0) classStr='bontas fail'; + else if (marad==0) classStr='bontas ok'; + else classStr='bontas'; + element.attr('class',classStr); + } + // Az új tankör hozzáadásával "kész"-szé válhatott a sor - (element: az utolsó bontás div-je) + { // eddig biztos nem volt kész a sor - mert tudtunk hozzárendelni bontást... + var sorKesz = true; // biztos van legalább egy bontás - hisz hozzárendeltünk egy tankört + trElement = element.closest('tr'); + trElement.find('div.bontas').each(function(index) { + if ($(this).data('hetioraszam') != trElement.data('hetioraszam')) sorKesz = false; + }); + if (element.data('hetioraszam')==trElement.data('hetioraszam')) { // a bontások kész lettek + $('#statBontasKesz').html( parseInt($('#statBontasKesz').html())+msg.bontasIds.length ); + } + if (sorKesz) { + // stat adatok állítása + $('#statKoKesz').html( parseInt($('#statKoKesz').html())+msg.bontasIds.length ); + trElement.closest('tbody').find('tr').addClass('kesz'); + if ($('#keszRejt').is(':checked')) trElement.closest('tbody').hide(); + } + } + } + + processJSONUjTankor = function(msg) { + //console.log(JSON.stringify(msg)); + // A tankört hozzá is rendeltük a bontáshoz + processJSONBontasTankor( msg ); + // Tankör adatainak megjelenítése + ajaxGetTankorAdat(msg.tankorId); + } + + processJSONTankorAdat = function( msg ) { + //console.log(JSON.stringify(msg)); + + $('#updateWindowSideContent').html(''); + $('#updateWindowSideTitle').html('Tankör adatai'); + //$('

        '+msg.tankorNev+' ('+msg.tankorId+')

        ').appendTo('#updateWindowSideContent'); + $('

        ' +msg.tankorNevReszei.evfOszt+' ' + +msg.tankorNevReszei.targyNev + +(msg.tankorNevReszei.tankorJel!=''&&msg.tankorNevReszei.tankorJel!=null?msg.tankorNevReszei.tankorJel+' ':'') + +' '+msg.tankorNevReszei.tankorNevExtra+'' + +'' + +' ('+msg.tankorId+')

        ').appendTo('#updateWindowSideContent'); + $('

        Módosít!

        ').appendTo('#updateWindowSideContent'); + // adatok + ulStr = '
          ' + +'
        • Évközi követelmény: '+msg.kovetelmeny+'
        • ' + +'
        • Létszám korlát: '+msg.min+'-'+msg.max+'
        • ' + +'
        • Tankör-típus: '+msg.rovidNev+' ('+msg.tankorTipusId+')
        • ' + +'
        '; + $(ulStr).appendTo('#updateWindowSideContent'); + // osztályok + ulStr = '
          '; + pStr = '
          Osztályai: '; + for (i=0; i-1) { + ulStr += 'checked="checked" '; + pStr += msg.osztalyok[i].osztalyJel+' ('+msg.osztalyok[i].osztalyId+') '; + } + ulStr += '/> ' + +''; + } + ulStr += '
        '; + pStr += ''+ulStr+''; + $(pStr).appendTo('#updateWindowSideContent'); + // szemeszterek, óraszámok + ulStr = '
          '; + for (i=0; i' + +''; + } + ulStr += '
        '; + pStr = '
        Óraszám: '+msg.oraszam+' ('+msg.tanev+'/'+msg.szemeszter+')' + +'' + +ulStr + +'
        '; + $(pStr).appendTo('#updateWindowSideContent'); + +// $('

        '+JSON.stringify(msg)+'

        ').appendTo($('#updateWindowSideContent')); + if (!$('#updateWindowSide').hasClass('nyitva')) $('#updateWindowSide').addClass('nyitva') + } + + slideUp = function(element) { + // A fedett sorok számát eltároljuk, majd 0-ra állítjuk + trElement = element.closest('tr'); + bontasArray = trElement.find('div.bontas').get(); + prevTrElement = trElement.prevAll('tr').filter(':visible:first'); + prevBontasArray = prevTrElement.find('div.bontas').get(); + + // shadow elvétele, slideUp, Down törlése - vizuális elemek + if (trElement.data('db') < 6) trElement.removeClass('shadow'+trElement.data('db')); + else trElement.removeClass('shadow5'); + trElement.slideUp(100); + trElement.find('.slideDown').remove(); + // db adatok módosítása + origDb = prevTrElement.data('db'); + prevTrElement.data('db',origDb+trElement.data('db')+1); + trElement.data('db',0); + // A fedett sorok kulcsait eltároljuk, majd a sor kulcsára cseréljük + origKeys = prevTrElement.data('keys'); + prevTrElement.data('keys', origKeys+','+trElement.data('keys')); + trElement.data('keys', trElement.data('key')); + // bontások kulcsadatainak módosítása + for (i=0; i'); + // prev - shadow + if (prevTrElement.data('db')<6) prevTrElement.addClass('shadow'+prevTrElement.data('db')); + else prevTrElement.addClass('shadow5'); + // prev - ha minde becsukva, akkor nem kell slideUpAll + if (prevTrElement.data('db') == prevTrElement.nextAll('tr').length) prevTrElement.find('.slideUpAll').hide(); + + } + + slideDown = function(element) { + trElement = element.closest('tr'); + bontasArray = trElement.find('div.bontas').get(); + // becsuk + trElement.nextAll('tr').filter(':hidden').slideDown(); + // shadow leszedése + if (trElement.data('db') < 6) trElement.removeClass('shadow'+trElement.data('db')); + else trElement.removeClass('shadow5'); + // adatok alaphelyzetbe + trElement.data('db',0); + trElement.data('keys', trElement.data('key')); + for (i=0; i'+tanev+'/'+szemeszter + +'' + +'').appendTo('ul#tankorSzemeszter'); + } + element.closest('li').next('li').find('input').focus(); + } + + }); + + $('#updateWindowSide').on('keydown', 'ul#tankorSzemeszter li:first-child input', function(event) { + + var charKeyCode = event.keyCode ? event.keyCode : event.which; + var shiftKey = event.shiftKey ? event.shiftKey : ((charKeyCode == 16) ? true : false); + var altKey = event.altKey ? event.altKey : ((charKeyCode == 18) ? true : false); + var ctrlKey = event.ctrlKey ? event.ctrlKey : ((charKeyCode == 17) ? true : false); + element = $(event.target); + + if (charKeyCode == 9 && shiftKey) { + event.preventDefault(); + tmp = element.attr('name').split('-'); + tanev = parseInt(tmp[1])-1; + for (szemeszter = 1; szemeszter<3; szemeszter++) { + $('
      • '+tanev+'/'+szemeszter + +'' + +'
      • ').prependTo('ul#tankorSzemeszter'); + } + element.closest('li').prev('li').find('input').focus(); + } + + }); + + + $('body').click(function(event) { + var element = $(event.target); + + if (!element.hasClass('addBontasTargy')) { + $('div#targyak').hide(); + $('table.bontas tr.aktiv').removeClass('aktiv'); + } + if (element.hasClass('slideUp')) { + slideUp(element); + } else if (element.hasClass('slideUpAll')) { + $(element.closest('tbody').find('.slideUp:visible').get().reverse()).each(function(index) { + slideUp($(this)); + }); + } else if (element.hasClass('slideDown')) { + slideDown(element); + } else if (element.hasClass('addBontas')) { + + postData = { 'action':'addBontas', 'keys':element.closest('tr').data('keys')} + saltName = $('#bontasForm input.salt').prop('name'); + saltValue = $('#bontasForm input.salt').val(); + postData[saltName] = saltValue; + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tanev&f=targyBontas&policy=private&skin=ajax&sessionID="+sessionID, + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + updateSalt(jqXHR.getResponseHeader('Etag')); + processJSONAddBontas(msg); + }); + + } else if (element.hasClass('addBontasTargy')) { + // Az érintett sor kulcsát eltároljuk - hogy tudjuk hova kell visszatérni + $('div#targyak').data('keys',element.closest('tr').data('keys')); + //tt + eOffset=element.offset(); + //tt + $('#targyak').css({'left':eOffset.left+25}).show(); + element.closest('tr').addClass('aktiv'); + + // $('#targyak ul#targyakUl').appendTo('#updateWindowSideContent').focus(); + // $('#updateWindowSide').addClass('nyitva'); + $('#targyak').show().focus(); + } else if (element.hasClass('selectTargy')) { + + postData = { 'action':'addBontasTargy', 'keys':$('div#targyak').data('keys'), 'targyId':element.data('targyid') } + saltName = $('#bontasForm input.salt').prop('name'); + saltValue = $('#bontasForm input.salt').val(); + postData[saltName] = saltValue; + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tanev&f=targyBontas&policy=private&skin=ajax&sessionID="+sessionID, + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + updateSalt(jqXHR.getResponseHeader('Etag')); + processJSONAddBontas(msg); + }); + + } else if (element.hasClass('delBontas')) { + + postData = { 'action':'delBontas', 'keys':element.closest('div.bontas').data('keys')} + saltName = $('#bontasForm input.salt').prop('name'); + saltValue = $('#bontasForm input.salt').val(); + postData[saltName] = saltValue; + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tanev&f=targyBontas&policy=private&skin=ajax&sessionID="+sessionID, + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + updateSalt(jqXHR.getResponseHeader('Etag')); + processJSONDelBontas(msg); + }); + + } else if (element.hasClass('bontas')) { + + if (element.hasClass('ok')) { + alert('A csoport összes órája tankörhöz van már rendelve!'); + } else if (element.hasClass('fail')) { + alert('Hiba! A bontás összóraszáma nagyobb a képzés-óratervben megadottnál!'); + } { + + postData = { 'targyId':element.data('targyid'), 'bontasIds':element.data('keys').toString().split(',') } + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=tankorLista&policy=private&skin=ajax&sessionID="+sessionID, + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONTankorLista(msg, element); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('fail'); + //console.log(jqXHR); + }); + } + + } else if (element.hasClass('tankorBontas') && !element.hasClass('tiltott')) { + + + postData = { 'action':'bontasTankor', 'keys':$('#updateWindowSide').data('target').data('keys'), + 'tankorId': element.data('tankorId'), 'hetiOraszam':element.data('hetiOraszam') } + saltName = $('#bontasForm input.salt').prop('name'); + saltValue = $('#bontasForm input.salt').val(); + postData[saltName] = saltValue; + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tanev&f=targyBontas&policy=private&skin=ajax&sessionID="+sessionID, + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + updateSalt(jqXHR.getResponseHeader('Etag')); + processJSONBontasTankor(msg); + $('#updateWindowSide').removeClass('nyitva') + $('#updateWindowSideContent').html(''); + }); + + } else if (element.hasClass('osszevonasTilt')) { + element.removeClass('osszevonasTilt').addClass('osszevonasEnged').addClass('tankorBontas'); + } else if (element.hasClass('plusz')) { + if (!element.closest('li').hasClass('tiltott')) { + data = element.closest('li').data(); + if (data.hetiOraszam < data.maxOraszam) { + element.closest('li').data('hetiOraszam', data.hetiOraszam+0.25); + element.closest('div').find('span.data').html(element.closest('li').data('hetiOraszam').toFixed(2)); + } + } + } else if (element.hasClass('minusz')) { + if (!element.closest('li').hasClass('tiltott')) { + data = element.closest('li').data(); + if (data.hetiOraszam > 0.25) { + element.closest('li').data('hetiOraszam', data.hetiOraszam-0.25); + element.closest('div').find('span.data').html(element.closest('li').data('hetiOraszam').toFixed(2)); + } + } + } else if (element.attr('id') == 'addTankor') { + + postData = { 'action':'ujTankor', 'bontasIds':$('#updateWindowSide').data('target').data('keys').toString().split(',') } + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=ujTankor&policy=private&skin=ajax&sessionID="+sessionID, + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + //console.log('ok'); + processJSONUjTankor(msg); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('fail'); + //console.log(jqXHR); + }); + + } else if (element.hasClass('tankorAdat')) { + + $('#updateWindowSide').data('target',element); + ajaxGetTankorAdat(element.data('tankorid')); + } else if (element.hasClass('tankorModosit')) { + + postData = { 'tankorId':$('#updateWindowSide').data('target').data('tankorid'),'osztalyIds': [], 'tankorSzemeszter': [], 'tankorNevExtra': $('#updateWindowSide input#tankorNevExtra').val() } + $('#updateWindowSide ul#tankorOsztaly input:checked').each(function(index){postData.osztalyIds.push($(this).val());}) + $('#updateWindowSide ul#tankorSzemeszter input[type=text]').each(function(index){ + if ($(this).val() != '') { + tmp = $(this).attr('name').split('-'); + postData.tankorSzemeszter.push({'tanev':tmp[1], 'szemeszter': tmp[2], 'oraszam': $(this).val() }); + } + }); + +//console.log(postData.tankorSzemeszter); + + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=tankorMod&policy=private&skin=ajax&sessionID="+sessionID, + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONTankorMod(msg); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('fail'); + //console.log(jqXHR); + }); + } else if (element.hasClass('tankorNevExtra')) { + + element.next('input#tankorNevExtra').show(); + element.hide(); + + } else if (element.hasClass('slideToggleContainer')) { + + element.find('ul').slideToggle(); + } else if (element.hasClass('slideToggle')) { + element.closest('div').find('ul').slideToggle(); + } else if (element.hasClass('evfolyamJel')) { + if (element.find('input').is(':checked')) { + $('div#osztaly div.osztEvf').show(); + $('div#osztaly div.evfolyamJel input').prop('checked',false); + $('div#osztaly span.selectOsztaly input').prop('checked',false); + $('div#kepzes div.kSelect input').prop('checked',false); + $('div#osztaly div.evfolyamJel').removeClass('checked'); + $('div#osztaly span.selectOsztaly').removeClass('checked'); + $('div#kepzes div.kSelect').hide(); + } else { + element.addClass('checked'); + element.find('input').prop('checked',true); + $('div#osztaly div.osztEvf').hide(); + $('div#osztEvf-'+element.find('input').val().replace('/','-')).show(); + } + } else if (element.hasClass('selectOsztaly')) { + isChecked = element.find('input').prop('checked'); + element.find('input').prop('checked', !isChecked); + element.toggleClass('checked'); + evfDiv = element.closest('div.osztEvf').find('div.evfolyamJel'); + kepzesDiv=$('div#kepzes div.ko-'+element.find('input').val()); + if (!isChecked) { + kepzesDiv.show(); + kepzesDiv.find('input').prop('checked',true); + kepzesDiv.each(function(index) { + db = $(this).data('db'); + $(this).data('db', db+1); + }); + if (!evfDiv.hasClass('checked')) { + evfDiv.addClass('checked'); + evfDiv.find('input').prop('checked',true); + $('div#osztaly div.osztEvf').hide(); + $('div#osztEvf-'+evfDiv.find('input').val().replace('/','-')).show(); + } + } else { + kepzesDiv.each(function(index) { + db = $(this).data('db'); + $(this).data('db', db-1); + if ($(this).data('db') == 0) { + $(this).find('input').prop('checked',false); + $(this).hide(); + } + }); + } + } else if (element.closest('td').attr('id') == 'oratervenKivuli') { + element.closest('td').find('ul').slideToggle(); + } + + }); + + + // tárgyak scrollozása + $('div#targyak').mousemove(function(event) { + var h = $('ul#targyakUl').height()+13; + var offset = $($(this)).offset(); + var position = (event.pageY-offset.top)/$(this).height(); + if (position < 0.25) { + $('div#targyakDown').hide(); + if ($('div#targyak').scrollTop() == 0) { + $('div#targyakUp').hide(); + $(this).stop(); + } else { + $('div#targyakUp').show(); + $(this).stop().animate({ scrollTop: 0 }, 5000); + } + } else if (position > 0.75) { + $('div#targyakUp').hide(); + if ($('div#targyak').scrollTop() == h) { + $('div#targyakDown').hide(); + $(this).stop(); + } else { + $('div#targyakDown').show(); + $(this).stop().animate({ scrollTop: h }, 5000); + } + } else { + $('div#targyakUp').hide(); + $('div#targyakDown').hide(); + $(this).stop(); + } + }); + + +}); + + + + + + + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetJovahagyas.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetJovahagyas.jquery.min.js new file mode 100644 index 00000000..7556f12b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetJovahagyas.jquery.min.js @@ -0,0 +1,18 @@ + +showUpdateLayer = function() { + $('#updateWindow').show(); + $('updateForm').prop('tabindex',1); + $('updateForm').focus(); +} +hideUpdateLayer = function() { + $('#tanmenet tr').removeClass('aktiv'); +} + +$(function() { + + $('#tanmenet tr a').click(function(event) { + var element = $(event.target).closest('tr'); + $('#tanmenet tr').removeClass('aktiv'); + element.addClass('aktiv'); + }); +}); \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetModositas.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetModositas.jquery.min.js new file mode 100644 index 00000000..68151721 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/tanmenet/tanmenetModositas.jquery.min.js @@ -0,0 +1,126 @@ + +$(function() { + initTemakorLista(); + // mozgatás + $('#temakor').sortable({ axis: 'y', containment: "#temakor", handle: "span.handle", items: ".sortable", scroll: false, + placeholder: "sortable-placeholder" , + cursor:'move', + opacity:0.2, + stop: function(event, ui) { initTemakorLista(); $('form[name=tanmenetMod]').trigger('change'); } + } ); + // törlés + $('body').click(function(event) { + var element = $(event.target); + if (element.hasClass('close')) { + element.closest('li').remove(); + initTemakorLista(); + $('form[name=tanmenetMod]').trigger('change'); + } + }); + // óraszám vagy szöveg módosítás + $('body').change(doOnTemakorChange); + // a textarea kinyitása és visszacsukása + $('#temakor textarea').focus(function(event) { + $(event.target).css({ 'background-color': '#eed', 'height': '100px' }); + }).blur(function(event) { + $(event.target).css({ 'background-color': '#fff', 'height': '50px' }); + }); + +}); + + +initTemakorLista = function() { + + var oraszam = 0; + var maxoraszam = parseInt($('#tanmenetOraszam').val()); + // Az eddigi összóraszám meghatározása + var osszoraszam = 0; + $('span.handle').each( + function(index, elem) { + selectElem = $(elem).closest('li').find('select'); textElem = $(elem).closest('li').find('textarea'); + if (selectElem.val() != '0' && textElem.val() != '') osszoraszam = osszoraszam+parseInt(selectElem.val()); + } + ); + var szabadoraszam = maxoraszam-osszoraszam; + if (szabadoraszam<0) szabadoraszam=0; + + // Az egyes témakörök sorainak beállítása + $('span.handle').each( + function(index, elem) { + + elem = $(elem); selectElem = elem.closest('li').find('select'); + textElem = elem.closest('li').find('textarea'); oraszamSpan = elem.closest('li').find('span.oraszam'); + if (selectElem.val() != '0' && textElem.val() != '') { // Már kitöltött témakör esetén + // Mivel nem tudjuk, hogy korábban milyen osztályba volt sorolva ezért mindkét osztályból eltávolítjuk + oraszamSpan.removeClass('jo'); // jo: még belefér az óraszámba + oraszamSpan.removeClass('nagy'); // nagy: már nem fér bele az óraszámba + // A témakör által lefoglalt órák kiírása + oraszamSpan.html( (oraszam+1) ); + oraszam = oraszam+parseInt( selectElem.val() ); + oraszamSpan.append('-'+oraszam); + // osztályokba sorolás + if (oraszam > maxoraszam) oraszamSpan.addClass('nagy'); // már nem fér bele a tanmenet óraszámába + else oraszamSpan.addClass('jo'); // még belefér a tanmenet óraszámába + // Az oraszám-select érvényes óraszámokra való leszűkítése + value = parseInt(selectElem.val()); + selectElem[0].options.length = 0; + for (k=0; k0 ) { + $('#postazoButton').show(); + } else { +// $('#postazoButton').hide(); + } + } +// element.closest('table').find('select').prop('selectedIndex',0); +// element.closest('table').find('form').submit(); + }); + + $('body').bind('click', function(evt) { + var uzenoClickedId = $(evt.target).attr('id'); + switch(uzenoClickedId) { + case 'uzenoSearchIcon': + $('#pattern').toggle('fast').focus(); + break; + case 'pattern': +// $('#postazoButton').hide(); +// $('#txt').hide(); +// $('#cimzett').selectedIndex=0; +// $('#cimzett').attr('disabled','disabled'); + break; + case 'postazoButton': + $('#postazoButton').disabled=true; + $('#postazoHash').val('submit'); + break; + case 'cimzett': +// $('shTipus').update($F('cimzett')); +// $('#cimzett').attr('title',$F('cimzett')); + break; + case 'uzenoTxt': + break; + case 'postazoTxt': + if ($("#cimzett option").length==2) { + var v = ($("#cimzett option:eq(1)")).attr('selected','selected'); + $('#postazoButton').show(); + } + break; + default: + break; + } + }); + +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/postas.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/postas.js new file mode 100644 index 00000000..edfefcee --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/postas.js @@ -0,0 +1,54 @@ + +Event.observe(document.body, 'mayor:change', uzenoCheck); +Event.observe(document.body, 'change', uzenoCheck); + +function uzenoCheck(evt) { + + Event.observe('postazoButton', 'click', disableButton); + + var element = $(Event.element(evt)); + var thisid = (element.getAttribute('id')); + switch(thisid) { + case 'pattern': + $('postazoButton').hide(); + $('postazoTxt').hide(); + $('cimzett').selectedIndex=0; + $('cimzett').disable(); + break; + case 'postazoButton': // ezt nem kapja el, nem change esemény + $('postazoButton').disabled=true; + $('postazoHash').setValue('submit'); + break; + case 'cimzett': +// $('shTipus').update($F('cimzett')); + $('cimzett').setAttribute('title',$F('cimzett')); + break; + case 'postazoTxt': + break; + default: + break; + } + + if ($('cimzett').selectedIndex!=0 && $('cimzett').value!='') { + $('postazoButton').show(); + $('postazoTxt').show().focus(); + } else { + $('postazoButton').hide(); + $('postazoTxt').hide(); + } + + //Element.addClassName($('uzenoPostazo'), 'csoport'); + +} + +function disableButton(evt) { + var element = $(Event.element(evt)); + if ($('postazoTxt').value!='') { + var element = $(Event.element(evt)); + $('postazoHash').setValue('submit'); + $('postazoButton').disabled=true; + element.up('form').submit(); + } else { + Event.stop(evt); + } +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/uzeno.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/uzeno.jquery.min.js new file mode 100644 index 00000000..5a9d7121 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/uzeno.jquery.min.js @@ -0,0 +1,23 @@ + +$(document).ready(function() { + $.holdReady(true); + var r = Math.floor(Math.random()*100); + $.getScript("skin/classic/module-naplo/javascript/uzeno/postas.jquery.min.js?rand="+r).done(function() { + $.holdReady(false); + }); + $('#postazoButton').show(); + +// disabled by konczy +// $('.uzenet').click(function(event) { +// var mId = $(this).parent('tr').attr('id'); +// $('#uzenetek').find('tbody tr:not(#'+mId+')').fadeToggle(200); +// }); + +}); + +function checkCR(evt) { + var evt = (evt) ? evt : ((event) ? event : null); + var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null); + if ((evt.keyCode == 13) && (node.type=="text") && (node.id=="pattern")) {return false;} +} +document.onkeypress = checkCR; diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/uzeno.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/uzeno.js new file mode 100644 index 00000000..982aad8d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/uzeno/uzeno.js @@ -0,0 +1,33 @@ + +Event.observe(window, 'load', uzenoPSFLoader); + +function uzenoPSFLoader(evt) { + + var r = Math.floor(Math.random()*100); + includeJS('skin/classic/module-naplo/javascript/uzeno/postas.js?'+r); + +/* + $('cimzettTipus').observe('change', function(event) { + + var someNodeList = $(Event.element(event)).getElementsByTagName('option'); + + $A(someNodeList).each(function(node){ + if (node.selected==true) $(node.value+'Id').show(); + else $(node.value+'Id').hide(); + }); + + }); +*/ + function checkCR(evt) { + var evt = (evt) ? evt : ((event) ? event : null); + var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null); + if ((evt.keyCode == 13) && (node.type=="text")) {return false;} + } + document.onkeypress = checkCR; +/* +var a = document.createElement('script'); +a.setAttribute('type', 'text/javascript'); +a.setAttribute('src', 'skin/classic/module-naplo/javascript/uzeno/postas.js'); +a.insert(document.head); +*/ +} diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/haladasi/haladasi.css b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/haladasi/haladasi.css new file mode 100644 index 00000000..b944c5c2 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/haladasi/haladasi.css @@ -0,0 +1,167 @@ + + table.haladasiBejegyzesek { + background-color: rgb(50,60,80); + margin-top: 30px; + font-size: 10px; + width: 98%; + } + table.haladasiBejegyzesek tbody tr:hover td { + background-color: white; + } + table.haladasiBejegyzesek tbody tr td input:focus { + background-color:rgb(240,210,250); + } + + table.haladasiBejegyzesek tbody.parosNap { + background-color: #cccccc; + } + table.haladasiBejegyzesek tbody.paratlanNap { + background-color: #eeeeee; + } + table.haladasiBejegyzesek tbody td.ora { + text-align: center; + } + +/* TBODY TH */ + + table.haladasiBejegyzesek tbody th.nincsOra { + background-color: rgb(200,200,200); + color: rgb(100,100,100); + text-align: center; + border: none; + font-weight: normal; + } + table.haladasiBejegyzesek tbody th.nap { + text-align: center; + background-color: #666688; + color: white; + border: none; + } + table.haladasiBejegyzesek tbody.szunet th.nap { + background-color: #778877; + } + table.haladasiBejegyzesek tbody.tanitasNelkul th.nap { + background-color: #aaaa44; + } + +/* --- */ + + table.haladasiBejegyzesek tbody td.dolgozat { + background-color: #ffaa44; + padding-left: 20px; + } + table.haladasiBejegyzesek tbody td.dolgozat a { + text-decoration: none; + color: black; + } + + table.haladasiBejegyzesek tbody td.nincsBeirva { + font-style:italic; + } + + table.haladasiBejegyzesek th { + border-style: none none solid none; + border-width: 0 0 2px 0; + border-color: #556677; + background-color: rgb(50,60,80); + color: rgb(210,215,220); + border-style: solid; + border-width: 1px; + } + table.haladasiBejegyzesek th.fejlec8 { + font-size: 14px; + height: 30px; + text-align: center + } + table.haladasiBejegyzesek th.fejlec8 a { color: white } + + +/* table.haladasiBejegyzesek td { background-color: rgb(200,200,200); } */ + table.haladasiBejegyzesek td.osztaly { + text-align:"."; + text-align: center; + } + table.haladasiBejegyzesek select { + font-family: Verdana,Arial; + background-color: rgb(50,60,80); + font-size: 10px; + color: rgb(210,215,220); + border-style: solid; + border-width: 1px; + } + + input { font-family: Verdana,Arial; color: inherit } + input.data { border-style: none none solid none; + border-width: 1px; + border-color: #dddddd; + } + input.data:hover { border: solid 1px #556677; background-color: white } + table.haladasiBejegyzesek tbody.parosNap input.beirva { background-color: #cccccc; } + table.haladasiBejegyzesek tbody.paratlanNap input.beirva { background-color: #eeeeee; } + + table.haladasiBejegyzesek tbody.parosNap input.ajaxRequest { background-color: rgb(200,100,0); } + table.haladasiBejegyzesek tbody.paratlanNap input.ajaxRequest { background-color: rgb(200,100,0); } + table.haladasiBejegyzesek tbody.parosNap input.ajaxRequestDone, + table.haladasiBejegyzesek tbody.paratlanNap input.ajaxRequestDone { color: rgb(0,100,0); } + + + table.haladasiBejegyzesek tbody.parosNap tr.helyettesit td { background-color: #ccccaa; } + table.haladasiBejegyzesek tbody.paratlanNap tr.helyettesit td { background-color: #eeeecc; } + table.haladasiBejegyzesek tbody.parosNap tr.helyettesit input.beirva { background-color: #ccccaa; } + table.haladasiBejegyzesek tbody.paratlanNap tr.helyettesit input.beirva { background-color: #eeeecc; } + + input.gomb { + border: outset 1px #777777; padding: 0px; margin: 0px; + background-color: #009900; + color: white; + } + + input.rejtettGomb { border: none; background-color: rgb(50,60,80); } + + table.haladasiBejegyzesek a.gomb { + padding: 1px; + background-color: #dddddd; + font-size: 10px; + border: outset 1px #556677; + margin: 2px; + text-decoration: none; + } + table.haladasiBejegyzesek a.gomb:hover { + padding: 1px; + background-color: #556677; + font-size: 10px; + border: outset 1px #dddddd; + margin: 2px; + text-decoration: none; + color: white; + } + + table.haladasiBejegyzesek a { + display: block; + text-align: center; + color: red; + text-decoration: none; + border: solid 1px red; + } + table.haladasiBejegyzesek a:hover { + color: green; + border: green 1px solid; + } + + table.haladasiBejegyzesek td.parosOra { background-color: rgb(140,150,160); } + table.haladasiBejegyzesek td.paratlanOra { background-color: rgb(140,130,120); } + + table.haladasiBejegyzesek tr.dolgozat td { + padding: 0px 10px; + background-color: rgb(160,100,120); + } + + table.haladasiBejegyzesek tr.dolgozat td a { + color: white; + text-decoration: none; + } + + table.haladasiBejegyzesek tr.dolgozat td a:hover { + color: rgb(260,200,220); + } + diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/hianyzas/osztaly.css b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/hianyzas/osztaly.css new file mode 100644 index 00000000..959f2056 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/hianyzas/osztaly.css @@ -0,0 +1,135 @@ + + table.hianyzas { + background-color: rgb(180,180,200); + color: white; + } + + table.hianyzas thead th { + background-color: rgb(40,80,120); + } + + table.hianyzas thead th.alcim { + background-color: rgb(255,255,255); + color: rgb(40,80,120); + font-style: italic; + padding: 0px 4px 0px 4px; + } + + table.hianyzas thead th.alcim img { hight: 16px; } + + table.hianyzas tfoot th { + background-color: rgb(80,20,80); + } + + table.hianyzas tbody td.nev { + background-color: rgb(90,90,110); + font-style: italic; + padding: 4px 10px 4px 10px; + } + + table.hianyzas tbody td.nev a { + color: white; + text-decoration: none; + } + + table.hianyzas tbody td.nev a:hover { + color: white; + /* background-color: rgb(180,180,220); */ + text-decoration: underline; + } + + table.hianyzas tbody td.ulezart { + width: 18px; + background-color: rgb(200,200,220); + } + + table.hianyzas tbody td.lezart { + width: 18px; + background-color: rgb(100,100,120); + text-align: center; + } + + table.hianyzas tbody td.uigazolhato { + width: 18px; + background-color: rgb(240,240,260); + } + + table.hianyzas tbody td.igazolhato { + width: 18px; + background-color: rgb(140,140,160); + text-align: center; + } + + table.hianyzas tbody td.uosszes { + width: 18px; + background-color: rgb(220,240,230); + } + + table.hianyzas tbody td.osszes { + width: 18px; + background-color: rgb(120,140,130); + text-align: center; + } + + table.hianyzas tbody td.ufegyelmi { + width: 18px; + background-color: rgb(220,230,240); + } + + table.hianyzas tbody td.fegyelmi { + width: 18px; + background-color: rgb(130,150,150); + text-align: center; + } + + table.hianyzas tbody td.ufokozat { + width: 18px; + background-color: rgb(220,210,200); + } + + table.hianyzas tbody td.fokozat { + background-color: rgb(120,110,100); + } + table.hianyzas tbody td.fokozat form { display: inline; } + table.hianyzas tbody td.fokozat input,select { font-size:11px; } + + table.hianyzas tbody td.oi { + text-align: center; + } + + table.hianyzas tbody td.hianyzas { + border-color: rgb(200,100,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + table.hianyzas tbody td.keses { + border-color: rgb(200,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + table.hianyzas tbody td.felszereles { + border-color: rgb(100,100,200);; + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + table.hianyzas tbody td.felmentes { + border-color: rgb(100,200,100);; + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + table.hianyzas tbody td.igazolt { + color: rgb(55,255,55); + } + + table.hianyzas tbody td.igazolatlan { + color: rgb(255,55,55); + } + + table.hianyzas tbody td.mind { + color: white; + } + diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/naplo.css b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/naplo.css new file mode 100644 index 00000000..2b81dd35 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/naplo.css @@ -0,0 +1,59 @@ + + table.toolBar { width: 100%; border-spacing: 0px; font-size:small; } + table.toolBar form { margin: 0px; padding: 0px; width:100%; } + table.toolBar tr.first td.toolBarTitle, table.toolBar tr.first td.toolBarTool { background-color: #eeeeee; border-bottom: solid 2px rgb(152, 150, 185); padding:2px 4px; } + table.toolBar td.gap { border-spacing: 0px; } + table.toolBar td.toolBarTitle { + background-color: white; + width: 100%; + font-size: 10px; + font-weight: bold; + text-align: center; + } + #toolBarIntezmeny { + color: darkgrey; + font-size: 8px; + background-color: ; + border: solid 1px darkgrey; + border-radius:2px; + padding: 0px 4px; + } + + table.toolBar td.toolBarTool { border: solid 0px #666699; margin: 0px; padding: 0px; } + table.toolBar td.toolBarTool table { border-spacing: 0px; background-color: ; } + table.toolBar td.toolBarTool table th { + background-color: rgb(90,133,184); + text-align: left; + color: white; + font-size:8px; + padding-left: 4px; + + border-color: rgb(21,71,123); + border-width: 1px 0px; + border-style: solid; + } + table.toolBar input.toolSubmit { vertical-align: middle; border: 0px none; background-color: rgb(90,133,184); color: white; width:60px; } + table.toolBar td.toolBarTool select { border: 0px; } + table.toolBar th { + background-color: rgb(90,133,184); + text-align: center; + color: white; + font-size:8px; + padding-left: 4px; + + border-color: rgb(21,71,123); + border-width: 1px 0px 1px 1px; + border-style: solid; + } + table.toolBar td table { margin: 0px;} + table.toolBar img { border: none; } + + form.lapozo input { font-size: 8px; border: solid 1px #555555; } + + table.flipper input {color: white; border: none; background-color: lightblue; } + table.flipper input.step { background-color: rgb(100,80,60); } + + div.beirasAdatok { text-align: center; } + div.beirasAdatok span { font-weight: bold; font-size: 10px; vertical-align: middle; } + div.beirasAdatok img { vertical-align: middle; } + diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/orarend/helyettesites.css b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/orarend/helyettesites.css new file mode 100644 index 00000000..0386b2b1 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/orarend/helyettesites.css @@ -0,0 +1,29 @@ +@media screen { + +table.helyettesitesek { + background-color: #999999; width:100%; + border-collapse: collapse; +} +table.helyettesitesek tr { + background-color: #dddddd; +} +table.helyettesitesek tbody tr td { + background-color: white; +} +table.helyettesitesek tr.plusz td { + background-color: #334450; color: white; + font-style: italic; +} +table.helyettesitesek tfoot tr th { + display:none; + background-color: white; + text-align: right; + font-size:x-small; + font-weight:lighter; + color: #aaaaaa; +} +table.helyettesitesek thead tr th { border-bottom: solid 2px;} + +table.helyettesitesek td,table.helyettesitesek th { + border: solid 1px black; +} \ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/orarend/orarend.css b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/orarend/orarend.css new file mode 100644 index 00000000..17671235 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/orarend/orarend.css @@ -0,0 +1,97 @@ + +h2 { text-align: center; color: red;} +h2.toPrint { display: none; } + +table.toolBar tr td select, table.toolBar tr td option { +} + +table.orarend { + width: 99%; + background-color: #333333; +} +table.orarend tr th { + background-color: #889988; + color: white; +/* border-width: 0px 1px 2px 0px !important; */ + height:30px; + +} +table.orarend thead tr th { + background-color: #889999; + color: white; + border-bottom: solid 1px white; +} +table.orarend tfoot.publikus tr th { + background-color: lightgreen; + color: white; +} +table.orarend tfoot.nempublikus tr th { + background-color: #f06; + color: white; +} +table.orarend tfoot:hover tr th { + background-color: #8f8; +} + + +table.orarend thead tr th.spec { + background-color: red; +} + +table.orarend tr td { + text-align: center; + background-color: #efefef; +/* border-width: 0px 1px 2px 0px;*/ +/* width:18%; */ +} + +table.orarend tr td select { + background-color:#000011; + color: white +} + +div.unfinished { + background-color: yellow; +} + table.orarend tbody tr td hr { width: 80% } + div.normál {} + div.plusz { + background-color: #eeccee; + } + div.elmarad { + color: white; + background-color: black; + } + div.elmarad_máskor { + color: white; + background-color: #555555; + } + div.normál_máskor { + color: white; + background-color: #776699; + } + div.felügyelet { + background-color: #bbaac0; + } + div.helyettesítés { + background-color: #ccffcc; + } + div.összevonás { + background-color: #aabbc0; + } + div.osztályfüggetlen { color: #eeeeee; background-color: rgba(52, 150, 185, 1); } + table.osztalyOrarend div.osztályfüggetlen { display:none; } + table.diakOrarend div.osztályfüggetlen { display:none; } + + span.helyett { + color: gray; + text-decoration: line-through; + } + + table.orarend tr td span.t0 { + background-color: #880000; color:white; + } + table.orarend tr td span.t1 { + } + + diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/osztalyozo/jegy.css b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/osztalyozo/jegy.css new file mode 100644 index 00000000..b46d342d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/css/osztalyozo/jegy.css @@ -0,0 +1,56 @@ + + table.jegyInfo { + width: 85%; + background-color: rgb(200,200,200); + color: white; + } + + + table.jegyInfo thead th { + background-color: rgb(100,120,100); + height:30px; + } + + table.jegyInfo tfoot th { + background-color: rgb(100,120,100); + } + + table.jegyInfo tbody select { background-color: #ffffff; } + table.jegyInfo tbody input { background-color: #ffffff; } + + table.jegyInfo tbody th { + background-color: rgb(140,160,150); + padding: 0px 4px 0px 4px; + text-align: center; + } + + table.jegyInfo tbody td { + background-color: rgb(140,160,150); + padding: 0px 4px 0px 4px; + text-align: center; + } + + table.jegyInfo tbody td a { + color: white; + text-decoration: none; + } + + table.jegyInfo tbody td a:hover { + color: white; + text-decoration: underline; + } + + table.jegyInfo tbody th a { + color: white; + text-decoration: none; + } + + table.jegyInfo tbody th a:hover { + color: white; + text-decoration: underline; + } + + table.jegyInfo tbody td input { + width: 95%; + } + diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/base.phtml b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/base.phtml new file mode 100644 index 00000000..e2295b24 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/base.phtml @@ -0,0 +1,900 @@ + + + _OMKOD(max7): + _ROVIDNEV(sql): + _NEV: + + '; + formEnd(); + } + + function putEszkozSor() { + + global $TOOL; + + echo ''; + + echo ''."\n"; + + echo ''; + + reset($TOOL); +/* + foreach ( $TOOL as $tool => $params ) { + if ( function_exists( $func = "put$tool" ) && $params['tipus']=='cella') { + echo ''; + echo ''."\n"; + echo ''."\n"; + } + } +*/ + // Hibabejelentő +// echo ''."\n"; + + reset($TOOL); + foreach ( $TOOL as $tool => $params ) { +// if ( function_exists( $func = "put$tool" ) && $params['tipus']=='sor') { + if ( function_exists( $func = "put$tool" ) ) { +// echo ''; + echo ''; + } + } + echo '
        '; + if (defined('__PAGETITLE')) echo __PAGETITLE.' '; + echo ''.__INTEZMENY . '' . __TANEV.''; + echo '
        '; + echo ''."\n"; + $title = '__'.nagybetus($tool).'TITLE'; + if (defined($title)) echo ''."\n"; + echo ''."\n"; + echo '
        '.constant($title).'
        '."\n"; + $func(); + echo '
        '."\n"; + echo '
        '; +// $href = href('index.php?page=naplo&sub=hibabejelento&f=hibabejelento'); +// echo ''; +// echo ''._HIBABEJELENTES.''; +// echo ''; +// echo '
        '; + echo '
        '; + echo ''; +// $title = '__'.nagybetus($tool).'TITLE'; +// if (defined($title)) echo ''."\n"; + + echo '
        '.constant($title).''; + $func(); + echo '
        '; +// echo '
        '; + + } + + + /* Toolok */ + + function putIntezmenySelect() { + + global $TOOL; + + $paramName = $TOOL['intezmenySelect']['paramName']; + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['intezmenySelect']['action'])) + echo ''."\n"; + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putTanevSelect() { + + global $TOOL; + + $paramName = $TOOL['tanevSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['tanevSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['tanevSelect']['post']); $i++) { + $postParam = $TOOL['tanevSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putSzemeszterSelect() { + + global $TOOL; + + $paramName = $TOOL['szemeszterSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['szemeszterSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['szemeszterSelect']['post']); $i++) { + $postParam = $TOOL['szemeszterSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putTargySorrendSelect() { + + global $TOOL; + + $paramName = $TOOL['targySorrendSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['targySorrendSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['targySorrendSelect']['post']); $i++) { + $postParam = $TOOL['targySorrendSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putMunkakozossegSelect() { + + global $TOOL; + + $paramName = $TOOL['munkakozossegSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['munkakozossegSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['munkakozossegSelect']['post']); $i++) { + $postParam = $TOOL['munkakozossegSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putTargySelect() { + + global $TOOL; + + $paramName = $TOOL['targySelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['targySelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['targySelect']['post']); $i++) { + $postParam = $TOOL['targySelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putTanarSelect() { + + global $TOOL; + + if (isset($TOOL['tanarSelect']['paramName'])) $paramName = $TOOL['tanarSelect']['paramName']; + else $paramName = 'tanarId'; + + global $$paramName; + // note, action is for incopatible browser... TESZ + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['tanarSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['tanarSelect']['post']); $i++) { + $postParam = $TOOL['tanarSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putDiakSelect() { + + global $TOOL; + + $paramName = $TOOL['diakSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['diakSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['diakSelect']['post']); $i++) { + $postParam = $TOOL['diakSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putTableSelect() { + + global $TOOL; + + $paramName = $TOOL['tableSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['tableSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['tableSelect']['post']); $i++) { + $postParam = $TOOL['tableSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + } + + function putOsztalySelect() { + + global $TOOL; + + $paramName = $TOOL['osztalySelect']['paramName']; + global $$paramName; + + formBegin(array('action'=>href('index.php',array('page','sub','f','lang','skin','sessionID','policy')))); + + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['osztalySelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['osztalySelect']['post']); $i++) { + $postParam = $TOOL['osztalySelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putTankorSelect() { + + global $TOOL; + + $paramName = $TOOL['tankorSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['tankorSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['tankorSelect']['post']); $i++) { + $postParam = $TOOL['tankorSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putTanevLapozo() { + global $TOOL; + $paramName = $TOOL['tanevLapozo']['paramName']; + global $$paramName; + + formBegin(array('class'=>'lapozo')); + echo ''; + echo ''; + echo '
        '; + echo '←'; + echo ''; + echo ''.$TOOL['tanevLapozo']['tanev'].''; + echo ''; + echo '→'; + echo '
        '; + + for ($i = 0; $i < count($TOOL['tanevLapozo']['post']); $i++) { + $postParam = $TOOL['tanevLapozo']['post'][$i]; + echo ''."\n"; + } + + formEnd(); + } + + function putDatumSelect() { + + global $TOOL, $aHetNapjai; + + $paramName = $TOOL['datumSelect']['paramName']; + global $$paramName; + + if ($TOOL['datumSelect']['lapozo']) { + + // Előző és következő dátum meghatározása + $elozo = $kovetkezo = ''; + if (is_array($TOOL['datumSelect']['napok'])) { + for ($i = 0; $i < count($TOOL['datumSelect']['napok']); $i++) { + if ($TOOL['datumSelect']['napok'][$i] == $$paramName) { + $kovetkezo = $TOOL['datumSelect']['napok'][$i+1]; + $elozo = $TOOL['datumSelect']['napok'][$i-1]; + break; + } + } + } else { + $tolTime = strtotime($TOOL['datumSelect']['tolDt']); + $igTime = strtotime($TOOL['datumSelect']['igDt']); + $count = $TOOL['datumSelect']['hanyNaponta']; + for ($t = $tolTime; $t < $igTime; $t = strtotime("$count days", $t)) { + $d = date('Y-m-d', $t); + if ($d == $$paramName) { + if (strtotime("$count days", $t) <= $igTime) $kovetkezo = date('Y-m-d', strtotime("$count days", $t)); + break; + } + $elozo = $d; + } + } + + echo ''; + if ($elozo!='') { + echo ''; + } + echo ''; + if ($kovetkezo!='') { + echo ''; + } + echo '
        '; + formBegin(); + echo '
        '; + if (isset($TOOL['datumSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['datumSelect']['post']); $i++) { + $postParam = $TOOL['datumSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; + echo '
        '; + formEnd(); + echo '
        '; + + } + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['datumSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['datumSelect']['post']); $i++) { + $postParam = $TOOL['datumSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + if ($TOOL['datumSelect']['lapozo']) { + + echo '
        '; + + formBegin(); + echo '
        '; + if (isset($TOOL['datumSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['datumSelect']['post']); $i++) { + $postParam = $TOOL['datumSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; + echo '
        '; + formEnd(); + + echo '
        '; + } + + + } + + function putDatumTolIgSelect() { + + global $TOOL, $aHetNapjai; + + $tolParamName = $TOOL['datumTolIgSelect']['tolParamName']; + global $$tolParamName; + $igParamName = $TOOL['datumTolIgSelect']['igParamName']; + global $$igParamName; + + + formBegin(); + echo '
        '; + if (isset($TOOL['datumTolIgSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['datumTolIgSelect']['post']); $i++) { + $postParam = $TOOL['datumTolIgSelect']['post'][$i]; + echo ''."\n"; + } + + echo ''; + + echo ' - '; + + echo ''; + + echo ''; + echo ''; + echo '
        '; + formEnd(); + + } + + + function putOraSelect() { + + global $TOOL; + + $paramName = $TOOL['oraSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['oraSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['oraSelect']['post']); $i++) { + $postParam = $TOOL['oraSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putTeremSelect() { + + global $TOOL; + + $paramName = $TOOL['teremSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['teremSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['teremSelect']['post']); $i++) { + $postParam = $TOOL['teremSelect']['post'][$i]; + echo ''."\n"; + } + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + } + + function putOrarendiHetSelect() { + + global $TOOL; + + $paramName = $TOOL['orarendiHetSelect']['paramName']; + global $$paramName; + + formBegin(); + echo '
        '; +echo ''; +echo ''; + if (isset($TOOL['orarendiHetSelect']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['orarendiHetSelect']['post']); $i++) { + $postParam = $TOOL['orarendiHetSelect']['post'][$i]; + echo ''."\n"; + } + $_DS = (isset($TOOL['orarendiHetSelect']['disabled']) && $TOOL['orarendiHetSelect']['disabled']===true) ? 'readonly="readonly" disabled="disabled"' : ''; + echo ''; +// echo ''; +// echo ''; + echo '
        '; + formEnd(); + + + } + + function putTanarOraLapozo() { + global $TOOL; + $paramName = $TOOL['tanarOraLapozo']['paramName']; + global $$paramName; // most oraId + if ((is_array($TOOL['tanarOraLapozo']['elozo'])) || (is_array($TOOL['tanarOraLapozo']['kovetkezo']))) { + formBegin(array('class'=>'lapozo')); + echo ''; + echo '
        '; + if (is_array($TOOL['tanarOraLapozo']['elozo'])) { + $_leiras = '←'.($TOOL['tanarOraLapozo']['elozo']['ora']).'. '._ORA; + if ($TOOL['tanarOraLapozo']['elozo']['leiras']!='') $_leiras .= ' ('.$TOOL['tanarOraLapozo']['elozo']['leiras'].')'; + echo ''; + } + echo ''; + if (is_array($TOOL['tanarOraLapozo']['kovetkezo'])) { + $_leiras = ($TOOL['tanarOraLapozo']['kovetkezo']['ora']).'. '._ORA; + if ($TOOL['tanarOraLapozo']['kovetkezo']['leiras']!='') $_leiras .= ' ('.$TOOL['tanarOraLapozo']['kovetkezo']['leiras'].')'; + $_leiras .=' →'; + echo ''; + } + echo '
        '; + + for ($i = 0; $i < count($TOOL['tanarOraLapozo']['post']); $i++) { + $postParam = $TOOL['tanarOraLapozo']['post'][$i]; + echo ''."\n"; + } + + formEnd(); + echo "\n"; + } + } + + function putHonapLapozo() { + + global $TOOL,$Honapok; + + $paramName = $TOOL['honapLapozo']['paramName']; + global $$paramName; + formBegin(array('class'=>'lapozo')); + echo ''; + echo ''; + echo '
        '; + echo '&larr'; + echo ''; + echo ''.$Honapok[$$paramName-1].''; + echo ''; + echo '→'; + echo '
        '; + + for ($i = 0; $i < count($TOOL['honapLapozo']['post']); $i++) { + $postParam = $TOOL['honapLapozo']['post'][$i]; + echo ''."\n"; + } + + formEnd(); + + } + + function putOldalFlipper() { + + global $TOOL; + $paramName = $TOOL['oldalFlipper']['paramName']; + global $$paramName; + + $stepCount = count($TOOL['oldalFlipper']['url']); + if (isset($TOOL['oldalFlipper']['step'])) $step = $TOOL['oldalFlipper']['step']; + for ($i = 0; $i < count($TOOL['oldalFlipper']['titleConst']); $i++) { + if (defined($TOOL['oldalFlipper']['titleConst'][$i])) + $TOOL['oldalFlipper']['title'][$i] = constant($TOOL['oldalFlipper']['titleConst'][$i]); + else + $TOOL['oldalFlipper']['title'][$i] = ''; + } + + echo ''; + if ($stepCount > 1 && isset($step) && $step > 0) { + echo ''; + } + if ($stepCount > 1) + for ($j = 0; $j < $stepCount; $j++) { + echo ''; + } + if ($stepCount == 1 || (isset($step) && $step < $stepCount-1)) { + if (!isset($step)) $step = 0; else $step++; + echo ''; + } + echo '
        '; + formBegin(array('action'=>href($TOOL['oldalFlipper']['url'][$step-1]))); + if (isset($TOOL['oldapFlipper']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['oldalFlipper']['post']); $i++) { + $postParam = $TOOL['oldalFlipper']['post'][$i]; + echo ''."\n"; + } + if (isset($TOOL['oldalFlipper']['paramName'])) + echo ''."\n"; + echo ''."\n"; + formEnd(); + + echo ''; + formBegin(array('action'=>href($TOOL['oldalFlipper']['url'][$j]))); + if (isset($TOOL['oldapFlipper']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['oldalFlipper']['post']); $i++) { + $postParam = $TOOL['oldalFlipper']['post'][$i]; + echo ''."\n"; + } + if (isset($TOOL['oldalFlipper']['paramName'])) + echo ''."\n"; + + if (isset($step) && $step == $j) + echo ''."\n"; + else + echo ''."\n"; + formEnd(); + echo ''; + formBegin(array('action'=>href($TOOL['oldalFlipper']['url'][$step]))); + if (isset($TOOL['oldapFlipper']['action'])) + echo ''."\n"; + for ($i = 0; $i < count($TOOL['oldalFlipper']['post']); $i++) { + $postParam = $TOOL['oldalFlipper']['post'][$i]; + echo ''."\n"; + } + if (isset($TOOL['oldalFlipper']['paramName'])) + echo ''."\n"; + + echo ''."\n"; + formEnd(); + echo '
        '."\n"; + + } + + function putIgazolasOsszegzo() { + // EZ A FÜGGVÉNY NINCS IMPLEMENTÁLVA A SKIN PDA_BAN + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/haladasi/haladasi.phtml b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/haladasi/haladasi.phtml new file mode 100644 index 00000000..7aa36aad --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/haladasi/haladasi.phtml @@ -0,0 +1,392 @@ +href('index.php?page=naplo&sub=haladasi&f=haladasi'), 'name'=>"haladasiOrabeiras", 'class'=>"onChangeRequest")); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + // ------------------------------- + $toTime = strtotime(_SHOW_DAYS_TO); + $fromTime = strtotime(_SHOW_DAYS_FROM); + + if ($order == 'ASC') { + for ($time = $fromTime; $time <= $toTime; $time = strtotime('1 day',$time)) { + + $dt = date('Y-m-d',$time); + $count = count($data[$dt]); + if ($tankorId == '') { + putNap($dt, $data[$dt], $data['napok'][$dt], $data['dolgozatok']); + } elseif ($count > 0) { + putTankorNap($dt, $data[$dt], $data['dolgozatok'], $order); + } // kirakjuk-e a napot + + } // for $dt + } else { + for ($time = $toTime; $time >= $fromTime; $time = strtotime('-1 day',$time)) { + + $dt = date('Y-m-d',$time); + $count = count($data[$dt]); + + if ($tankorId == '') { + putNap($dt, $data[$dt], $data['napok'][$dt], $data['dolgozatok']); + } elseif ($count > 0) { + putTankorNap($dt, $data[$dt], $data['dolgozatok'], $order); + } // kirakjuk-e a napot + + } // for $dt + } + // --------------------------------- + + echo '
        '; + echo $title; + echo '
        '; + if (_SHOW_DAYS_FROM > $_TANEV['kezdesDt']) echo ''."\n"; + echo ' '._IDOSZAK.': '.str_replace('-','.',_SHOW_DAYS_FROM) . '. - '. str_replace('-','.', _SHOW_DAYS_TO) .'. '."\n"; + if (_SHOW_DAYS_TO < date('Y-m-d')) echo ''."\n"; + echo '
        '."\n"; + formEnd(); + + } + + + function putNap($dt, $dNap, $napInfo, $doga) { + + global $aHetNapjai; + + $time = strtotime($dt); + $count = count($dNap); + + if ($napInfo['tipus'] == 'tanítási szünet') echo ''."\n"; + elseif ($napInfo['típus'] == 'tanítás nélküli munkanap') echo ''."\n"; + elseif (date('w',$time) % 2 == 0) echo ''."\n"; + else echo ''."\n"; + + echo ''; + // Az első cella a dátum/nap + echo ''; + echo str_replace('-','.',$dt) .'. '. $aHetNapjai[date('w',$time)-1]; + if ($napInfo['orarendiHet'] != 0) echo ' ('.$napInfo['orarendiHet'] . '. '. _HET .')'; + if ($napInfo['megjegyzés'] != '' ) echo ' - '.$napInfo['megjegyzés']; + echo ''; + echo ''; + + putHaladasiDolgozat($dt,$doga); + + if ($count > 0) { + for ($i=0; $i<$count; $i++) { + if ($i % 2 == 0) $dNap[$i]['class'] = 'parosOra'; + else $dNap[$i]['class'] = 'paratlanOra'; + putOra($dNap[$i]); + } // órák kiírása + } else { + echo ''._NINCS_ORAJA.''; + } + + echo ''."\n"; + + } + + + function putTankorNap($dt, $dNap, $doga, $order) { + + $time = strtotime($dt); + $count = count($dNap); + + if (date('w',$time) % 2 == 0) echo ''."\n"; + else echo ''."\n"; + + putHaladasiDolgozat($dt,$doga); + + for ($i=0; $i<$count; $i++) { + if ($order == 'DESC') putTankorOra($dNap[$count-$i-1]); + else putTankorOra($dNap[$i]); + } // órák kiírása + + echo ''."\n"; + + } + + + function putHaladasiDolgozat($dt,$doga) { + + for ($i=0;$i'; + echo ''; + $href = href('index.php?page=naplo&sub=osztalyozo&f=dolgozat&dolgozatId='.$did); + echo ''; + echo _BEJELENTETT_DOLGOZAT . ': '. $doga[$did]['dolgozatNev']; + echo ' (' ; + for ($j=0;$j'; + echo ''; + echo ''."\n"; + } + + } + + function putOra($dOra) { + + $modosithatoOra = modosithatoOra($dOra); + + if (!in_array($dOra['tipus'],array('normál','normál máskor'))) { + if ($dOra['tipus'] == 'összevonás') $tipus = 'Ö'; + else $tipus = nagybetus(substr($dOra['tipus'],0,1)); + $tr_class = ' class="helyettesit"'; + } else { + $tipus = ''; + $tr_class = ''; + } + echo ''; + + // ----- óra ---------------------------------- + echo ''; + echo $dOra['ora'].'.'; + echo ''."\n"; + + + // ----- Tankör ------------------------------- + echo ''; + // ------------------------------------------------------------------------- + // Csoportok kezelése - Váltható tankörök (egy csoportba és egy tanárhoz tartozó tankörök + // ------------------------------------------------------------------------- + if ( + is_array($dOra['csoport']) && count($dOra['csoport'])>1 + && $modosithatoOra + ) { + + echo ''; + } else { // nincs választási lehetőség, vagy a módosítási határidő lejárt + echo $dOra['tankorNev']; + } + // ------------------------------------------------------------------------- + + echo ''."\n"; + + // ----- Hiányzók ------------------------------- + echo ''; + if ( __DIAK) { + $href = href('index.php?page=naplo&sub=hianyzas&f=diak&dt='.$dOra['dt'].'&diakId='.$diakId); + } else { + $href = href('index.php?page=naplo&sub=hianyzas&f=ora&oraId='.$dOra['oraId']); + } + echo ''; + echo 'H >>'; + echo ''; + echo ''."\n"; + + echo ''; + + + // ----- Tanár(ok) ------------------------------- + echo ''; + // Ha egy normál órának több tanára is van, és módosítható az óra, akkor lehet választani a tanárok közül + if (count($dOra['tanar']) > 1 and $modosithatoOra) { + $_SEL = array($dOra['ki'] => 'selected="selected" '); + echo ''; + } else { + echo $dOra['kiCn']; + } + echo ''."\n"; + + echo ''; + echo $dOra['oraszam']; + if ($tipus != '') echo '/'.$tipus; + + echo ''."\n"; + + + echo ''; + + // ----- Leírás --------------------------------- + if ($modosithatoOra) { + if ($dOra['leiras']!='') { // beírva + echo ''; + echo ''; + echo ''; + echo ''; + } else { + echo ''; + echo ''; + echo ''; + echo ''; + } + echo ''; + } else { + if ($dOra['leiras']!='') { + echo ''.$dOra['leiras']; + } else { + echo ''._NINCS_BEIRVA; + } + } + echo ''."\n"; + + + echo ''."\n"; + + + } + + + function putTankorOra($dOra) { + + global $aHetNapjai; + + $modosithatoOra = modosithatoOra($dOra); + + if (!in_array($dOra['tipus'],array('normál','normál máskor'))) { +// if (substr($dOra['tipus'],0,6) != 'normál') { + $tipus = nagybetus(substr($dOra['tipus'],0,1)); + $tr_class = ' class="helyettesit"'; + } else { + $tipus = ''; + $tr_class = ''; + } + + echo ''; + + // ----- óra ---------------------------------- + echo ''; + echo str_replace('-','.',$dOra['dt']) .'. '. $aHetNapjai[date('w',strtotime($dOra['dt']))-1].' '; + echo $dOra['ora'].'.'; + echo ''."\n"; + + // ----- Tankör ------------------------------- + echo ''; + // ------------------------------------------------------------------------- + // Csoportok kezelése - Váltható tankörök (egy csoportba és egy tanárhoz tartozó tankörök + // ------------------------------------------------------------------------- + if ( + is_array($dOra['csoport']) && count($dOra['csoport']) > 1 + && $modosithatoOra + ) { + + echo ''; + } else { // nincs választási lehetőség, vagy a módosítási határidő lejárt + echo $dOra['tankorNev']; + } + // ------------------------------------------------------------------------- + echo ''."\n"; + + echo ''; + echo $tipus; + echo ''."\n"; + + + // ----- Tanör(ok) ------------------------------- + echo ''; + // Ha egy normál órának több tanára is van, és módosítható az óra, akkor lehet választani a tanárok közül + if (count($dOra['tanár']['id']) > 1 and $modosithatoOra) { + $_SEL = array($dOra['kiId'] => 'selected="selected" '); + echo ''; + } else { + echo $dOra['kiCn']; + } + echo ''."\n"; + + echo ''; + echo $dOra['oraszam']; + echo ''."\n"; + + // ----- Leíráás --------------------------------- + if ($modosithatoOra) { + echo ''; + if ($dOra['leiras']!='') { // beírva + echo ''; + echo ''; + } else { + echo ''; + echo ''; + } + echo ''; + } else { + if ($dOra['leiras']!='') { + echo ''.$dOra['leiras']; + } else { + echo ''._NINCS_BEIRVA; + } + } + echo ''."\n"; + + // ----- Hiányzók ------------------------------- + echo ''; + if ( __DIAK) { + $href = href('index.php?page=naplo&sub=hianyzas&f=diak&dt='.$dOra['dt'].'&diakId='.$diakId); + } else { + $href = href('index.php?page=naplo&sub=hianyzas&f=ora&oraId='.$dOra['oraId']); + } + echo ''; + echo _HIANYZOK; + echo ''; + echo ''."\n"; + + echo ''."\n"; + + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/hianyzas/ora.phtml b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/hianyzas/ora.phtml new file mode 100644 index 00000000..42e45a1d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/hianyzas/ora.phtml @@ -0,0 +1,215 @@ +"vissza", 'action'=>href('index.php?page=naplo&sub=haladasi&f=haladasi'))); + echo ''; + echo ''; + echo ''; + formEnd(); + + if ($ADAT['tankorAdat']['oratervi'] != 'óratervi') $class = 'delutani'; + formBegin(array('method' => 'post', 'action' => '','class' => $class)); + + echo ''."\n"; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + $i=0; + foreach($NEVEK as $_diakId => $DA) { + $JOG = $ADAT['jogosultsag'][$_diakId]['orak'][$ORAADAT['ora']]; + $JOGADAT = $ADAT['jogosultsag'][$_diakId]['igazolas']; + echo ''; +// echo ''; + echo ''; + if ( + $ADAT['tankorAdat']['regisztralando']=='igen' + && +// $RESZLETEK[$_diakId][0]['jelenlet'] != 'nem kötelező' // az elnevezés félrevezető. Napközi? ILYEN MÁR NINCS!!! + !in_array($ADAT['tankorAdat']['tankorId'], $ADAT['felmentes'][$_diakId]) + ) { + $_igtipus=''; + /* prepare data */ + reset($HTIPUSOK1); + $__jelen=true; + foreach ($HTIPUSOK1 as $j => $_tipus) { + if ($HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['hianyzasId']!='') $__jelen=false; + } + /* -- */ + reset($HTIPUSOK1); + foreach ($HTIPUSOK1 as $j => $_tipus) { + $_hid = $HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['hianyzasId']; + if ($_hid!='') $_igtipus = $_tipus; + if ($_tipus=='') $_csstipus = 'jelen'; else $_csstipus=$_tipus; + echo ''; + } + /* === */ + echo ''; +// echo ''; + } else { + echo ''."\n"; + } + + echo ''; + $i++; + } + echo ''; + echo '
        '; + _putOraAdat($ORAADAT); + echo '
        '. + ''.$ADAT['tankorAdat']['oratervi'].''; + echo '
        '._NEV.''._J.''._K.''._H.''._F.''._FM.'
        '; + echo ''; + echo ''; + echo ''; + echo '
        '; +// _putHianyzasKistabla($ADAT['napiHianyzasok'][$_diakId], $ORAADAT, array('napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra)); +// echo ''; + echo ''; + //printf("%2s. ", $i+1); + echo $DA['diakNev']; + echo ''; + echo ''; + if ($JOG['beirhato']==true) { + $_radio = ($_hid!='' || ($_tipus=='' && $__jelen)) ?'checked="checked"' : ''; + //echo $_diakId.'/'.$_tipus.'/'.$_hid; + echo ''; + if ($_tipus=='késés') { + $_perc = intval(($HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['perc'])); + echo ''; + } + } else { + if (($__jelen && $_tipus=='') || $_hid!='') { + if ($_hid!='') echo ''; + if ($_tipus=='késés' && ($_perc = intval(($HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['perc']))) != 0) { + echo ''.$_perc.''; + } else { + _putImg($_tipus,$__jelen); + } + } + } + echo ''; + if ($JOG['fbeirhato']==true) { + echo ''; + } else { + foreach ($HTIPUSOK2 as $j => $_tipus) { + $_hid = $HADAT[$ORAADAT['oraId']][$_diakId][$_tipus]['hianyzasId']; + if ($_hid!='') { + echo ''; + echo $_tipus; + } + } + } + echo ''; +// _putIgazolasSelect($HADAT[$ORAADAT['oraId']][$_diakId][$_igtipus], $ITIPUSOK,$JOG,$JOGADAT,array('diakId'=>$_diakId,'oraId'=>$ORAADAT['oraId'],'hianyzasId'=>$_hid)); +// echo ''; + // echo _ORARA_NEM_KOTELEZO_BEJARNIA; + echo _NEM_REGISZTRALANDO; + echo '
        '; + + formEnd(); + + } + + function _putIgazolasSelect($ADAT,$TIPUSOK,$JOG,$JOGADAT,$SET) { + //"'.$_diakId.'/'.$dt.'/'.$ora.'/'.$_tipus.'/'.$_hid.'" + if (is_array($ADAT)) { + if ($JOG['igazolhato']===true) { + echo ''."\n"; + } else { + echo $ADAT['igazolas']; + } + } + + } + + function _putOraAdat($ORAADAT) { + echo ''; + echo ''; + echo ''; + echo '
        '; + echo $ORAADAT['dt'].', '.$ORAADAT['ora'].'. ('.$ORAADAT['oraId'].')'; + echo ''; + echo $ORAADAT['tankorNev'].' - '.$ORAADAT['kiCn']; + echo '
        '; + if ($ORAADAT['tankorTipus'] == 'délutáni') echo nagybetus($ORAADAT['tankorTipus']); + echo $ORAADAT['leiras']; + echo '
        '; + } + + + function putOraAdatok($oraAdat) { + + list($evf,$oszt,$targy,$targycsoport,$tipus,$index) = explode('_',$oraAdat['tankor']); + + #echo '
        '; + echo ''; + echo ''; + echo ''; + echo ''; + echo ""; + echo ''; + echo ''; + echo '
        '.str_replace('-','.',$oraAdat['dt']).'.'.$oraAdat['ora'].'. óra ~ $evf.$oszt $targy, $tipus $targycsoport ~ '.$oraAdat['tanarCn'].'
        '."\n"; + #echo '
        '."\n"; + #echo '
        '; + } + + function _putImg($tipus,$jelen) { + if ($jelen && $tipus=='') echo 'x'; + elseif ($tipus=='késés') echo 'x'; + elseif ($tipus=='hiányzás') echo 'x'; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/hianyzas/osztaly.phtml b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/hianyzas/osztaly.phtml new file mode 100644 index 00000000..6835e45f --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/hianyzas/osztaly.phtml @@ -0,0 +1,465 @@ +'; + + echo ''; + echo '
        '; + echo ''; + echo '
        '; + echo ''; + echo ' '; + echo ''.'
        '; + + echo ' '._REFERENCIADT.' '; + echo ''."\n"; + + echo ''; + formEnd(); + + echo ''; + + /* ----------- Fejléc ----------- */ + + echo ''."\n"; + echo ''; + echo ''; + + if (in_array('lezárt',$View)) { + echo ''; + $_cols+=7; + } + + if (in_array('igazolható',$View)) { + echo ''; + $_cols+=6; + } + + if (in_array('összes',$View)) { + echo ''; + $_cols+=7; + } + + if (in_array('fegyelmi utáni',$View)) { + echo ''; + $_cols+=3; + } + + if (in_array('fegyelmi fokozatok',$View)) { + echo ''; + $_cols+=3; + } + + echo ''; + + if (in_array('lezárt',$View)) { + echo ''; + echo ''; + } + + if (in_array('igazolható',$View)) { + echo ''; + echo ''; + } + + if (in_array('összes',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + } + + if (in_array('fegyelmi utáni',$View)) { + echo ''; + echo ''; + echo ''; + } + + if (in_array('fegyelmi fokozatok',$View)) { + echo ''; + echo ''; + echo ''; + } + + echo ''; + + if (in_array('lezárt',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + if (in_array('igazolható',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + if (in_array('összes',$View)) { + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + + if (in_array('fegyelmi utáni',$View)) { + } + + if (in_array('fegyelmi fokozatok',$View)) { + } + + + echo ''; + + + echo ''."\n"; + + /* ----------- Fejléc vége ------------- */ + + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + +// for($i = 0; $i < count($H['névsor']); $i++) { + foreach ($H['névsor'] as $diakId => $dAdat) { + + echo ''; + + echo ''; + + if (in_array('lezárt',$View)) { + # Lezártak + + // Lezárt igazolatlan hiányzás + $lhigazolatlan = $H[$diakId]['lezárt']['hiányzás']['igazolatlan']; + if (intval($lhigazolatlan) == 0) $class = 'ulezart'; + else $class = 'lezart igazolatlan hianyzas'; + echo ''; + + // Lezárt igazolt hiányzás + $lhigazolt = $H[$diakId]['lezárt']['hiányzás']['igazolt']; + if (intval($lhigazolt) == 0) $class = 'ulezart'; + else $class = 'lezart igazolt hianyzas'; + echo ''; + + // Lezárt összes hiányzás + $osszeg = intval($lhigazolt) + intval($lhigazolatlan); + if ($osszeg == 0) { + $osszeg = ''; + $class = 'ulezart'; + } else { + $class = 'lezart mind hianyzas'; + } + echo ''; + + // Lezárt igazolatlan késés + $lkigazolatlan = $H[$diakId]['lezárt']['késés']['igazolatlan']['db']; + $lkigazolatlanIdo = $H[$diakId]['lezárt']['késés']['igazolatlan']['ido']; + if ($lkigazolatlan == 0) $class = 'ulezart'; + else $class = 'lezart igazolatlan keses'; + echo ''; + + // Lezárt igazolt késés + $lkigazolt = $H[$diakId]['lezárt']['késés']['igazolt']['db']; + if ($lkigazolt == 0) $class = 'ulezart'; + else $class = 'lezart igazolt keses'; + echo ''; + + // Lezárt igazolatlan késés + $osszeg = intval($lkigazolt) + intval($lkigazolatlan); + if ($osszeg == 0) { + $osszeg = ''; + $class = 'ulezart'; + } else { + $class = 'lezart mind keses'; + } + echo ''; + ## ------ + } + + if (in_array('igazolható',$View)) { + ## Lezárt utáni = Igazolható + + // Igazolható igazolatlan hiányzás + $ihigazolatlan = $H[$diakId]['összes']['hiányzás']['igazolatlan'] - $H[$diakId]['lezárt']['hiányzás']['igazolatlan']; + if ($ihigazolatlan == 0) { + $ihigazolatlan = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato igazolatlan hianyzas'; + } + echo ''; + + // Igazolható igazolt hiányzás + $ihigazolt = $H[$diakId]['összes']['hiányzás']['igazolt'] - $H[$diakId]['lezárt']['hiányzás']['igazolt']; + if ($ihigazolt == 0) { + $ihigazolt = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato igazolt hianyzas'; + } + echo ''; + + // Igazolható összes hiányzás + $osszeg = $iigazolt+$iigazolatlan; + if ($osszeg == 0) { + $osszeg = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato mind hianyzas'; + } + echo ''; + + // Igazolható igazolatlan késés + $ikigazolatlan = $H[$diakId]['összes']['késés']['igazolatlan']['db'] - $H[$diakId]['lezárt']['késés']['igazolatlan']['db']; + $ikigazolatlanIdo = $H[$diakId]['összes']['késés']['igazolatlan']['ido'] - $H[$diakId]['lezárt']['késés']['igazolatlan']['ido']; + if ($ikigazolatlan == 0) { + $ikigazolatlan = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato igazolatlan keses'; + } + echo ''; + + // Igazolható igazolt késés + $ikigazolt = $H[$diakId]['összes']['késés']['igazolt']['db'] - $H[$diakId]['lezárt']['késés']['igazolt']['db']; + if ($ikigazolt == 0) { + $ikigazolt = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato izagolt keses'; + } + echo ''; + + // Igazolható összes késés + $osszeg = $iigazolt+$iigazolatlan; + if ($osszeg == 0) { + $osszeg = ''; + $class = 'uigazolhato'; + } else { + $class = 'igazolhato mind keses'; + } + echo ''; + ## ------ + } + + if (in_array('összes',$View)) { + ## Összes + + // Összes igazolatlan hiányzás + $ohigazolatlan = $H[$diakId]['összes']['hiányzás']['igazolatlan']; + if ($ohigazolatlan == 0) $class = 'uosszes'; + else $class = 'osszes igazolatlan hianyzas'; + echo ''; + + // Összes igazolt hiányzás + $ohigazolt=$H[$diakId]['összes']['hiányzás']['igazolt']; + if ($ohigazolt == 0) $class = 'uosszes'; + else $class = 'osszes igazolt hianyzas'; + echo ''; + + // Összes hiányzás + $osszeg = $ohigazolt+$ohigazolatlan; + if ($osszeg == 0) { + $osszeg = ''; + $class = 'uosszes'; + } else { + $class = 'osszes mind hianyzas'; + } + echo ''; + + // Összes igazolatlan késés + $okigazolatlan = $H[$diakId]['összes']['késés']['igazolatlan']['db']; + $okigazolatlanIdo = $H[$diakId]['összes']['késés']['igazolatlan']['ido']; + if ($okigazolatlan == 0) $class = 'uosszes'; + else $class = 'osszes igazolatlan keses'; + echo ''; + + // Összes igazolt késés + $okigazolt=$H[$diakId]['összes']['késés']['igazolt']['db']; + if ($okigazolt == 0) $class = 'uosszes'; + else $class = 'osszes igazolt keses'; + echo ''; + + // Összes késés + $osszeg = $okigazolt + $okigazolatlan; + if ($osszeg == 0) { + $osszeg = ''; + $class = 'uosszes'; + } else { + $class = 'osszes mind keses'; + } + echo ''; + + // Összes felszerelés hiány + $ofelszereles = $H[$diakId]['összes']['felszerelés hiány']['igazolatlan']; + if ($ofelszereles == 0) $class = 'uosszes'; + else $class = 'osszes felszereles'; + echo ''; + + // Összes felmentés hiány + $ofelmentes = $H[$diakId]['összes']['felmentés']['igazolatlan']; + if ($ofelmentes == 0) $class = 'uosszes'; + else $class = 'osszes felmentes'; + echo ''; + ## ------ + } + + if (in_array('fegyelmi utáni',$View)) { + ## Fegyelmi után + // Fegyelmi utáni igazolatlan hiányzás + $fih = $H[$diakId]['fegyelmi']['hiányzás']['igazolatlan']; + if ($fih == 0) $class = 'ufegyelmi'; + else $class = 'fegyelmi igazolatlan hianyzas'; + echo ''; + + // Fegyelmi utáni igazolatlan késés + $fik = $H[$diakId]['fegyelmi']['késés']['igazolatlan']['db']; + $fikIdo = $H[$diakId]['fegyelmi']['késés']['igazolatlan']['ido']; + if ($fik == 0) $class = 'ufegyelmi'; + else $class = 'fegyelmi igazolatlan keses'; + echo ''; + + // Fegyelmi utáni felszereléshiány + $ff = $H[$diakId]['fegyelmi']['felszerelés']['igazolatlan']; + if ($ff == 0) $class = 'ufegyelmi'; + else $class = 'fegyelmi felszereles'; + echo ''; + ## ------ + } + + if (in_array('fegyelmi fokozatok',$View)) { + ## Fokozatok + + $igazolatlanok_szama = $H[$diakId]['összes igazolatlan']; + if ($igazolatlanok_szama == 0) { + $igazolatlanok_szama = ''; + $class = 'ufokozat'; + } else { + $class = 'fokozat oi igazolatlan'; + } + echo ''; + + // Jelenlegi fegyelmi fokozat + $aktFokozat = intval($H[$diakId]['fegyelmi']['fokozat']); + $hianyzasDb = intval($H[$diakId]['fegyelmi']['hianyzasDb']); + $diakReferenciaDt = $H[$diakId]['fegyelmi']['referenciaDt']; + if ($aktFokozat == 0) $class = 'ufokozat'; + else $class = 'fokozat'; + echo ''; // kapott már + dt + + // Adandó fegyelmi fokozat szempontjából érdekes, már lezárt hiányzások és késésekből, felszereléshiányokból "átváltott" hiányzások + $fegyelmiIgazolatlanDb = $lhigazolatlan; + if (_KESESI_IDOK_OSSZEADODNAK === true) { + $fegyelmiIgazolatlanDb += floor($lkigazolatlanIdo / 45); + } else { + if (intval(_HANY_KESES_IGAZOLATLAN) > 0) + $fegyelmiIgazolatlanDb += floor($lkigazolatlan / intval(_HANY_KESES_IGAZOLATLAN)); + if (intval(_HANY_FSZ_IGAZOLATLAN) > 0) + $fegyelmiIgazolatlanDb += floor($ofelszereles / intval(_HANY_FSZ_IGAZOLATLAN)); + } + // keressük visszafele az első adandó fokozatot... + $j = count($ADAT['összes fokozat'])-1; + while($ADAT['összes fokozat'][$j]['hianyzasDb'] > $fegyelmiIgazolatlanDb && $j >= 0) $j--; + $megerdemeltFokozat = $ADAT['összes fokozat'][$j]['fokozat']; + $megerdemeltBejegyzesTipusId = $ADAT['összes fokozat'][$j]['bejegyzesTipusId']; + + // Fegyelmi utáni igazolatlanok összesítése + $fegyelmi = $fih; + if (_KESESI_IDOK_OSSZEADODNAK === true) { + // a fegyelmikbe beleszámítható az igazolatlanok száma rev2222+ + $fegyelmi += floor($fikIdo / 45); + } else { + if (intval(_HANY_KESES_IGAZOLATLAN) > 0) + $fegyelmi += floor($fik / intval(_HANY_KESES_IGAZOLATLAN)); + if (intval(_HANY_FSZ_IGAZOLATLAN) > 0) + $fegyelmi += floor($ff / intval(_HANY_FSZ_IGAZOLATLAN)); + } + + $_talalat = ($fegyelmi > 0 || $megerdemeltFokozat>$aktFokozat); + + if (($_talalat)&& $_TANEV['statusz']=='aktív') $class = 'fokozat'; + else $class = 'ufokozat'; + echo ''."\n"; + ## ----- + } + + echo ''; + } + # + echo ''."\n"; + + echo '
        '._NEV.''._LEZART.''._IGAZOLHATO.''._OSSZES.''._FEGYELMI_UTANI.''._FEGYELMI_FOKOZATOK.'
        '._HIANYZAS.''._KESES.''._HIANYZAS.''._KESES.''._HIANYZAS.''._KESES.''._FSZ.''._FM.''._H.''._K.''._FSZ.''._O.''._AKTUALIS_FOKOZAT.''._BEIRANDO_FOKOZAT.'
        '._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.''._IGAZOLATLAN.''._IGAZOLT.''._OSSZES.'
        '._HIANYZASMENTESNAPOKSZAMA.': '.$ADAT['hianyzasmentesNapokSzama'].'
        '; + echo ''; + echo $dAdat['diakNev']; + echo ''; + echo ''.$lhigazolatlan.''.$lhigazolt.''.$osszeg.''.$lkigazolatlan.''.$lkigazolt.''.$osszeg.''.$ihigazolatlan.''.$ihigazolt.''.$osszeg.''.$ikigazolatlan.''.$ikigazolt.''.$osszeg.''.$ohigazolatlan.''.$ohigazolt.''.$osszeg.''.$okigazolatlan.''.$okigazolt.''.$osszeg.''.$ofelszereles.''.$ofelmentes.''.$fih.''.$fik.''.$ff.''.$igazolatlanok_szama.''; + echo $ADAT['fokozat2bejegyzesTipus'][$aktFokozat]['bejegyzesTipusNev']; + echo ''; + + ## FORM + if ( + ($_talalat) && $_TANEV['statusz']=='aktív' + && in_array($dAdat['aktualisStatusz'], array('jogviszonyban van','vendégtanuló')) + ) { + + formBegin(); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + if ($ADAT['referenciaDt'] == '') echo ''; + else echo ''; + echo ''; + echo ''; + formEnd(); + } + echo '
        '; + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/diak.phtml b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/diak.phtml new file mode 100644 index 00000000..a886ba3d --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/diak.phtml @@ -0,0 +1,79 @@ + $ev, + 'hó' => $ho + ); + $HO['count']++; + $aktDt = date('Y-m-01',strtotime('next month',strtotime($aktDt))); + } + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + foreach ($Targyak as $targyId => $targyAdat) { + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + /* ------------------- */ + + echo ''."\n"; + } + echo ''."\n"; + + echo '
        '.$diakNev.' '.$_osztalystr.'
        '._TARGY.''._ATLAG.'
          
        '.$targyAdat['targyNev'].''; + for ($j = 0; $j < $HO['count']; $j++) { + $honapJegyei = $targyAdat[$HO[$j]['év']][$HO[$j]['hó']]; + + for ($k = 0; $k < count($honapJegyei); $k++) { + $jegyAdat = $Jegyek['jegyek'][$honapJegyei[$k]]; + $href = href('index.php?page=naplo&sub=osztalyozo&f=jegy&jegyId='.$jegyAdat['jegyId']); + $title = $jegyAdat['tankorNev'].' ('.$jegyAdat['dt'].')'; + echo ''; + echo $Osztalyzatok[$jegyAdat['jegy']]['num']; + echo ' '; + } + } + echo ''.$targyAdat['atlag'].'
        '."\n"; + + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/dolgozat.phtml b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/dolgozat.phtml new file mode 100644 index 00000000..92c685d5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/dolgozat.phtml @@ -0,0 +1,273 @@ +'; + echo ''; + echo ''._DOLGOZATOK.''; + echo ''; + echo ''; + echo ''._DOLGOZAT.''; + echo ''._TANKOR.''; + echo ''._BEJELENTES.''; + echo ''._TERVEZETT.''; + echo ''; + if (count($Dolgozat['dolgozatIds']) > 0) { + for ($i = 0; $i < count($Dolgozat['dolgozatIds']); $i++) { + $dolgozatId = $Dolgozat['dolgozatIds'][$i]; + echo ''; + echo ''; + echo ''; + if ($Dolgozat[$dolgozatId]['dolgozatNev'] != '') echo $Dolgozat[$dolgozatId]['dolgozatNev']; + else echo _NINCS_KITOLTVE; + echo ''; + echo ''; + echo ''; + + $Tankorok = $Dolgozat[$dolgozatId]['tankor']; + $TankorLista = array(); + for ($t = 0; $t < count($Tankorok); $t++) $TankorLista[] = $Tankorok[$t]['tankorNev']; + echo implode('
        ',$TankorLista); + + echo ''; + echo ''; + $_dt = $Dolgozat[$dolgozatId]['bejelentesDt']; + $_dow = date('w', strtotime($_dt)); + echo str_replace('-', '. ', $_dt).'. '; + echo $aHetNapjai[($_dow - 1)]; + echo ''; + echo ''; + $_dt = $Dolgozat[$dolgozatId]['tervezettDt']; + if ($_dt != '0000-00-00' && $_dt != '') { + $_dow = date('w', strtotime($_dt)); + echo str_replace('-', '. ', $_dt).'. '; + echo $aHetNapjai[($_dow - 1)]; + } + echo ''; + echo ''; + flush(); + } + } else { + echo ''; + echo ''._NINCS_DOLGOZAT.''; + echo ''; + } + echo ''; + } + + function putDolgozat($Dolgozat, $valaszthatoTankorok, $Tanarok) { + + global $_TANEV, $Osztalyzatok; + + if (__MODOSITHAT) $disabled = ''; + else $disabled=' disabled="disabled" '; + + // -------------- A dolgozat adatai -------------- // + + formBegin(); + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo '
        '._DOLGOZAT_ADATAI.'
        '; + if ($disabled == '') echo ''; + echo '
        '._MEGNEVEZES.'
        '._BEJELENTES.''.$Dolgozat['bejelentesDt'].'
        '._TERVEZETT.''; + list($ev,$ho,$nap) = explode('-',$Dolgozat['tervezettDt']); + list($kEv,$semmi) = explode('-',$_TANEV['kezdesDt']); + list($vEv,$semmi) = explode('-',$_TANEV['zarasDt']); + $SEL = array($ev => 'selected="selected"'); + + echo ''; + + echo ''; + + echo ''; + + echo'
        '; + formEnd(); + + echo ''; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + // tankör választás + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + echo '
        '._TANKOROK.'
        '."\n"; + formBegin(); + echo ''."\n"; + echo ''."\n"; + echo '
        '."\n"; + echo ''."\n"; + formEnd(); + echo '
        '."\n"; + + // -------------- A dolgozat jegyei -------------- // + + if (__NAPLOADMIN || __VEZETOSEG || __TANAR) { + + $colspan = count($Dolgozat['tankor'])*2; + formBegin(); + + echo ''."\n"; + echo ''."\n"; + echo ''; + + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + $maxDiakSzam = 0; + for ($j = 0; $j < count($Dolgozat['tankor']); $j++) { + if ($maxDiakSzam < ($_count = count($Dolgozat['tankor'][$j]['diakok']['idk']))) + $maxDiakSzam = $_count; + echo ''; + } + echo ''; + echo ''; + for ($j = 0; $j < count($Dolgozat['tankor']); $j++) { + echo ''; + echo ''; + } + echo ''; + echo ''; + + echo ''; + echo ''; + for ($j = 0; $j < count($Dolgozat['tankor']); $j++) { + $tankorAdat = $Dolgozat['tankor'][$j]; + $tankorId = $tankorAdat['tankorId']; + echo ''; + } + echo ''; + + echo ''; + + echo ''."\n"; + for ($i = 1; $i < $maxDiakSzam; $i++) { + echo ''."\n"; + + for ($j = 0; $j < count($Dolgozat['tankor']); $j++) { + $tankorAdat = $Dolgozat['tankor'][$j]; + $tankorId = $tankorAdat['tankorId']; + if (is_array($Dolgozat['tankor'][$j]['diakok']['nevek'])) { + reset($Dolgozat['tankor'][$j]['diakok']['nevek']); + for ($d = 0; $d < $i; $d++) + list($diakId, $diakAdat) = each($Dolgozat['tankor'][$j]['diakok']['nevek']); + $diakNev = $diakAdat['nev']; + } else { $diakNev = ''; } + echo ''."\n"; + echo ''."\n"; + + } + echo ''."\n"; + } + echo ''."\n"; + + echo '
        '._JEGYEK.'
        '; + echo ''; + echo $Dolgozat['tankor'][$j]['tankorNev']; + echo ''; + echo '
        '._NEV.''._JEGY.'
        '; + echo ''."\n"; + echo '
        '.$diakNev.''; + if (is_array($tankorAdat['jegyek'][$diakId])) { + for ($k = 0; $k < count($tankorAdat['jegyek'][$diakId]);$k++) { + $jegy = $tankorAdat['jegyek'][$diakId][$k]; + $href = href('index.php?page=naplo&sub=osztalyozo&f=jegy&jegyId='.$jegy['jegyId']); + $title = $jegy['dt'].' '.$jegy['megjegyzes']; + echo ''; + echo $Osztalyzatok[$jegy['jegy']]['num'].' '; + echo ''; + } + } + echo '
        '."\n"; + formEnd(); + + } // csak admin, tanár és igazgató láthatja az összes jegyet! + } + + function putDolgozatBejelento($tankorId) { + + formBegin(array('class'=>'dolgozat')); + echo ''; + echo ''; + echo ''; + formEnd(); + + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/jegy.phtml b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/jegy.phtml new file mode 100644 index 00000000..8298bc30 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/jegy.phtml @@ -0,0 +1,135 @@ +href('index.php?page=naplo&sub=osztalyozo&f=jegy'))); + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''; + echo ''."\n"; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + // -------- Óra hozzárendelés -------- // + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + + // -------- Ha dolgozat jegy - a dolgozat adatai -------- // + + if ($jegy['tipus'] > 2) { + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + } + echo '
        '._JEGY_ADATAI.'
        '."\n"; + if (_MODOSITHAT) { + echo ''."\n"; + echo ''."\n"; + } + echo '
        '; + echo ''; + echo $jegy['diakNev']; + echo ''; + echo '
        '."\n"; + echo ''; + $tanarLista = ''; + for ($i = 0; $i < count($jegy['tanár']['idk']); $i++) $tanarLista .= $jegy['tanár'][$i]['tanarNev'].', '; + echo $jegy['tankör'][0]['tankorNev'].' ('.substr($tanarLista, 0, -2).')'; + echo ''."\n"; + echo '
        '."\n"; + + $SEL = array($jegy['jegy'] => ' selected="selected" '); + echo ''."\n"; + + $SEL = array($jegy['tipus'] => ' selected="selected"'); + echo ''."\n"; + + echo ' '.$jegy['dt'].'
        '._MEGJ.''."\n"; + echo ''."\n"; + echo '
        '._ORA.''."\n"; + $SEL = array($jegy['oraId'] => ' selected="selected"'); + echo ''."\n"; + echo '
        '._DOLGOZAT.''."\n"; + $SEL = array($jegy['dolgozatId'] => ' selected="selected"'); + echo ''."\n"; + echo '
        '; + + if ($skin != 'ajax') formEnd(); + + } +?> diff --git a/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/tankor.phtml b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/tankor.phtml new file mode 100644 index 00000000..7e179003 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/pda/module-naplo/html/osztalyozo/tankor.phtml @@ -0,0 +1,307 @@ + $ev, + 'hó' => $ho, + 'colspan' => 1+count($Jegyek['dolgozatok']['dátum szerint'][$ev][$ho]) + ); + $HO['count']++; +// $colSpan += 1+count($Jegyek['dolgozatok']['dátum szerint'][$ev][$ho]); + $aktDt = date('Y-m-01',strtotime('+1 month',strtotime($aktDt))); + } + + formBegin(array('name'=>'beir')); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + echo ''; + + echo ''; + + echo ''; + + echo ''; + + // bizonyítvány +// echo ''; + + echo ''; +// echo ''; +// foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdat) { +// echo ''; +// } +// echo ''; + echo ''; + + echo ''; + + echo ''; + echo ''; + echo ''; + + echo ''; + + // ---------- Tanulónként a jegyek ------------- // + + echo ''; + + if (is_array($Diakok['nevek'])) foreach ($Diakok['nevek'] as $diakId => $DIAKADAT) { + $_BIZONYITVANY = $Jegyek[$diakId]['bizonyitvany']; + $diakKovetelmeny = $Diakok['adatok'][$diakId][count($Diakok['adatok'][$diakId])-1]['kovetelmeny']; + + echo ''; + + echo ''; + if (__JEGYET_ADHAT) if ($diakKovetelmeny == 'jegy') { + echo ''."\n"; + } else { + echo ''."\n"; + } + // Hónaponként végigmenve + echo ''; + + for ($k = 0; $k < count($Jegyek['dolgozatok']['dátum szerint'][$_ev][$_ho]); $k++) { + $did = $Jegyek['dolgozatok']['dátum szerint'][$_ev][$_ho][$k]; +// if (in_array($tankorId, $Jegyek['dolgozatok'][$did]['tankorIds'])) echo ''; + } + + } + echo ''; + + if ($Jegyek[$diakId]['átlag'] != 0) { + $atlag = number_format($Jegyek[$diakId]['átlag'],2,',',''); + $class = 'atlag'; + } else { + $atlag = ''; + $class = ''; + } + echo ''; + +/* + //Bizonyítvány ($_BIZONYITVANY[1][matematika tanóra]) + $oszlopSzam = 0; + foreach ($_TANEV['szemeszter'] as $szemeszter => $szAdatok) { + $oszlopSzam++; + echo ''."\n"; + } +*/ + echo ''; + + } + +/* + // Dolgozat átlagok + echo ''; + echo ''; + for ($j = 0; $j < $HO['count']; $j++) { + + $_ho = $HO[$j]['hó']; + $_ev = $HO[$j]['év']; + + // Normál jegyek alatt... + echo ''; + for ($k=0;$k'; + $did = $Jegyek['dolgozatok']['dátum szerint'][$_ev][$_ho][$k]; + echo number_format($Jegyek['dolgozatok'][$did]['átlag'],2,',',''); + echo ''; + } + + } + echo ''; + + // Félévi átlagok + echo ''; + + echo ''; +*/ + echo ''; + + echo '
        '."\n"; + echo $Jegyek['tankörök'][$tankorId]['tankorNev']; + echo ' ('.implode(', ',$Jegyek['tanárok']['tanarNevek']).')'; + echo '
        '; + $SEL = array($nevsor => ' selected="selected" '); + echo ''; + echo ''; + echo 'Jegyek'; + echo ''; + echo _ATLAG.'
        '; +// $SEL = array($sulyozas => ' selected="selected"'); +// echo ''; + echo '
        '._BIZONYITVANY.'
        '.$szemeszter.'
        '; + + if (__JEGYET_ADHAT) { + + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + + echo ''."\n"; + } + echo '
        '; + echo ''; + echo $DIAKADAT['nev']; + echo ''; + echo ''; + echo ''."\n"; + echo ''; + + for ($j = 0; $j < $HO['count']; $j++) { + + $_ho = $HO[$j]['hó']; + $_ev = $HO[$j]['év']; + $_JEGYEK = $Jegyek[$diakId][$_ev][$_ho]['jegyek']; + $_DOGA = $Jegyek[$diakId][$_ev][$_ho]['dolgozat']; + +// echo ''; + for ($k = 0; $k < count($_JEGYEK); $k++) { + $title = ''; + $href = href('index.php?page=naplo&sub=osztalyozo&f=jegy&jegyId='.$_JEGYEK[$k]['jegyId']); + if ($_JEGYEK[$k]['tankorId'] == $tankorId) $class = 'jegy'.$_JEGYEK[$k]['tipus']; + else $class = 'jegy'.$_JEGYEK[$k]['tipus'].'mase'; + $title .= str_replace('-', '.', $_JEGYEK[$k]['dt']) + . ' - '.$Jegyek['tankörök'][$_JEGYEK[$k]['tankorId']]['tankorNev'] + . ' ('; + for ($t = 0; $t < count($Jegyek['tankörök'][$_JEGYEK[$k]['tankorId']]['tanárok']); $t++) { + $title .= $Jegyek['tankörök'][$_JEGYEK[$k]['tankorId']]['tanárok'][$t]['tanarNev'] . ', '; + } + $title = substr($title,0,-2) . ') ' . $_JEGYEK[$k]['megjegyzes']; + echo ''; + echo $Osztalyzatok[$_JEGYEK[$k]['jegy']]['num'] .' '; + echo ''; + } +// echo ''; +// else echo ''; + for ($l = 0; $l < count($_DOGA[$did]); $l++) { + $href = href('index.php?page=naplo&sub=osztalyozo&f=jegy&jegyId='.$_DOGA[$did][$l]['jegyId']); + if ($_DOGA[$did][$l]['tankorId'] == $tankorId) $class = 'jegy'.$_DOGA[$did][$l]['tipus']; + else $class = 'jegy'.$_DOGA[$did][$l]['tipus'].'mase'; + $title = str_replace('-', '.', $_DOGA[$did][$l]['dt']) + . ' - '.$Jegyek['tankörök'][$_DOGA[$did][$l]['tankorId']]['tankorNev'] + . ' ('; + for ($t = 0; $t < count($Jegyek['tankörök'][$_DOGA[$did][$l]['tankorId']]['tanárok']); $t++) { + $title .= $Jegyek['tankörök'][$_DOGA[$did][$l]['tankorId']]['tanárok'][$t]['tanarNev'] . ', '; + } + $title = substr($title,0,-2) . ') ' . $_DOGA[$did][$l]['megjegyzes']; + echo ''; + echo $Osztalyzatok[$_DOGA[$did][$l]['jegy']]['num']; + echo ' '; + } +// echo ''.$atlag.''; + if ( + __JEGYET_ADHAT + && $diakKovetelmeny != 'aláírás' + && (__NAPLOADMIN || count($tanevIdoszak[$szemeszter]['zárás']) > 0) // a szemeszter zárási időszakában vagyunk + ) { + putJegySelect($diakId, 'zaroJegy', 'bizonyítvány', + $_BIZONYITVANY[$szemeszter]['jegy'], + $_BIZONYITVANY[$szemeszter]['megjegyzes'], + $szemeszter, + ($i+$oszlopSzam*count($Diakok['idk']))); + } else { + echo $Osztalyzatok[$_BIZONYITVANY[$szemeszter]['jegy'].'.0']['txt']; + echo ' '.$bizonyitvanyMegjegyzesek[$_BIZONYITVANY[$szemeszter]['megjegyzes']]; + } + echo '
        '._ATLAG.''._ATLAG.''; + if (__JEGYET_ADHAT) echo ''; + echo '
        '; + formEnd(); + + } + + function putJegySelect($diakId, $var, $tipus, $jegy, $megj, $felev, $tabindex = '') { + + global $Osztalyzatok; + + $jegy .= '.0'; + // melyik típushoz melyik megjelenési forma tartozik. + $txt = array( + 'osztályzatok' => 'num', + 'bizonyítvány'=> 'txt', + 'magatartás' => 'magatartás', + 'szorgalom' => 'szorgalom' + ); + if ($tabindex != '') $tabindex_str = 'tabindex="'.$tabindex.'" '; else $tabindex_str = ''; + + echo "\n".''."\n"; + } + +?> diff --git a/mayor-orig/mayor-naplo/www/skin/rpc/module-naplo/html/base.phtml b/mayor-orig/mayor-naplo/www/skin/rpc/module-naplo/html/base.phtml new file mode 100644 index 00000000..e3208ad5 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/rpc/module-naplo/html/base.phtml @@ -0,0 +1,6 @@ + diff --git a/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/haladasi/haladasi.css b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/haladasi/haladasi.css new file mode 100644 index 00000000..efe8d51a --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/haladasi/haladasi.css @@ -0,0 +1,187 @@ + + table.haladasiBejegyzesek { + background-color: rgb(50,60,80); + margin-top: 30px; + width: 98%; + } + table.haladasiBejegyzesek tbody tr:hover td { + background-color: white; + } + table.haladasiBejegyzesek tbody tr td input:focus { + background-color: white !important; + } + table.haladasiBejegyzesek tbody tr td input.gomb:focus { + background-color: red; + } + + table.haladasiBejegyzesek tbody.parosNap { + background-color: #cccccc; + } + table.haladasiBejegyzesek tbody.paratlanNap { + background-color: #eeeeee; + } + table.haladasiBejegyzesek tbody td.ora { + text-align: center; + } + +/* TBODY TH */ + + table.haladasiBejegyzesek tbody th.nincsOra { + background-color: rgb(200,200,200); + color: rgb(100,100,100); + text-align: center; + border: none; + font-weight: normal; + } + table.haladasiBejegyzesek tbody th.nap { + text-align: center; + background-color: #666688; + color: white; + border: none; + } + table.haladasiBejegyzesek tbody.szunet th.nap { + background-color: #778877; + } + table.haladasiBejegyzesek tbody.tanitasNelkul th.nap { + background-color: #aaaa44; + } + +/* --- */ + + table.haladasiBejegyzesek tbody td.dolgozat { + background-color: #ffaa44; + padding-left: 20px; + } + table.haladasiBejegyzesek tbody td.dolgozat a { + text-decoration: none; + color: black; + } + + table.haladasiBejegyzesek tbody td.nincsBeirva { + font-style:italic; + } + + table.haladasiBejegyzesek th { + border-style: none none solid none; + border-width: 0 0 2px 0; + border-color: #556677; + background-color: rgb(50,60,80); + color: rgb(210,215,220); + border-style: solid; + border-width: 1px; + } + table.haladasiBejegyzesek th.fejlec8 { + height: 30px; + text-align: center + } + table.haladasiBejegyzesek th.fejlec8 a { color: white } + + + table.haladasiBejegyzesek td.osztaly { text-align: center; } + table.haladasiBejegyzesek select { + font-family: Verdana,Arial; + background-color: rgb(50,60,80); + color: rgb(210,215,220); + border-style: solid; + border-width: 1px; + } + + input { font-family: Verdana,Arial; color: inherit; } + input.data { border-style: none none solid none; + border-width: 1px; + border-color: #dddddd; + width:85%; + } + input.data:hover { border-bottom: solid 1px #556677; background-color: white } + table.haladasiBejegyzesek tbody.parosNap input.data { border-left: solid 2px #cccccc; } + table.haladasiBejegyzesek tbody.paratlanNap input.data { border-left: solid 2px #eeeeee; } + table.haladasiBejegyzesek tbody.parosNap input.beirva { background-color: #cccccc; } + table.haladasiBejegyzesek tbody.paratlanNap input.beirva { background-color: #eeeeee; } + + table.haladasiBejegyzesek tbody.parosNap input.data.ajaxRequest, + table.haladasiBejegyzesek tbody.paratlanNap input.data.ajaxRequest { border-left: solid 2px orange; } + table.haladasiBejegyzesek tbody.parosNap input.gomb.ajaxRequest, + table.haladasiBejegyzesek tbody.paratlanNap input.gomb.ajaxRequest { background-color: orange; } + table.haladasiBejegyzesek tbody select option.ajaxRequestDone, + table.haladasiBejegyzesek tbody.parosNap input.ajaxRequestDone, + table.haladasiBejegyzesek tbody.paratlanNap input.ajaxRequestDone { border-left: solid 2px green; } + + table.haladasiBejegyzesek tbody.parosNap tr.helyettesit td { background-color: #ccccaa; } + table.haladasiBejegyzesek tbody.paratlanNap tr.helyettesit td { background-color: #eeeecc; } + table.haladasiBejegyzesek tbody.parosNap tr.helyettesit input.beirva { background-color: #ccccaa; } + table.haladasiBejegyzesek tbody.paratlanNap tr.helyettesit input.beirva { background-color: #eeeecc; } + + input.gomb { + border: outset 1px #777777; padding: 0px; margin: 0px; + background-color: #009900; + color: white; + } + + input.rejtettGomb { border: none; background-color: rgb(50,60,80); } + + table.haladasiBejegyzesek a.gomb { + padding: 1px; + background-color: #dddddd; + border: outset 1px #556677; + margin: 2px; + text-decoration: none; + } + table.haladasiBejegyzesek a.gomb:hover { + padding: 1px; + background-color: #556677; + border: outset 1px #dddddd; + margin: 2px; + text-decoration: none; + color: white; + } + + table.haladasiBejegyzesek a { + display: block; + text-align: center; + color: black; + text-decoration: none; + } + table.haladasiBejegyzesek a:hover { + color: green; + text-decoration: underline; + } + + table.haladasiBejegyzesek tr.dolgozat td { + padding: 0px 10px; + background-color: rgb(160,100,120); + } + + table.haladasiBejegyzesek tr.dolgozat td a { + color: white; + text-decoration: none; + } + + table.haladasiBejegyzesek tr.dolgozat td a:hover { + color: rgb(260,200,220); + } + + table.haladasiBejegyzesek tbody tr td.mg { + text-align: center; + } + + table.haladasiBejegyzesek tr td.mg span.latogatott { + background-color: rgb(100,150,100); + color: white; + text-decoration: none; + padding-left:5px; + padding-right:5px; + border-bottom: solid 1px green; + margin:0px; + } + + + form.hetes { + border: solid 1px #008800; + background-color: rgb(100,200,100); text-align: center; color: white; margin: 15px 13px; font-weight: bold; + } + form.hetes input { color: black; border: none; margin: 4px; border: solid 1px #008800; } + form.hetes span { padding-right:2em; } + form.hetes select option { + background-color:# white; + border: solix 1px #00aa00; + } diff --git a/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/hianyzas/ora.css b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/hianyzas/ora.css new file mode 100644 index 00000000..0b920c4b --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/hianyzas/ora.css @@ -0,0 +1,106 @@ + + table.csoportNevsorHianyzok { + background-color: #eeeeee; + color: white; + } + table.csoportNevsorHianyzok thead { background-color: #440055; } + table.csoportNevsorHianyzok thead a { color: white; text-decoration: none } + table.csoportNevsorHianyzok thead a:hover { color: white; text-decoration: underline; } + + table.csoportNevsorHianyzok thead.oraAdat table.oraAdat { + width:100%; + background-color: #eeeeee; + } + table.csoportNevsorHianyzok thead.oraAdat table.oraAdat td { font-weight: normal; } + + table.csoportNevsorHianyzok tfoot { background-color: #440055; } + table.csoportNevsorHianyzok tfoot input { background-color: #eeeeee; } + + table.csoportNevsorHianyzok tbody { + color: black + } + table.csoportNevsorHianyzok tbody a { color: black; text-decoration: none } + table.csoportNevsorHianyzok tbody a:hover { color: black; text-decoration: underline; } + + table.csoportNevsorHianyzok tbody th { + /* background-color: rgb(80,100,120); */ + } + + table.csoportNevsorHianyzok td { text-align: left; } + table.csoportNevsorHianyzok td.késés { text-align: center; } + table.csoportNevsorHianyzok tbody tr:hover { background-color: #ffffff;} + table.csoportNevsorHianyzok td a { color: inherit; } + + table.csoportNevsorHianyzok select { border: solid 1px #888888; background-color: #eeeeee; } + table.csoportNevsorHianyzok select.igazolatlan { color: red } + table.csoportNevsorHianyzok select.igazolt { color: green } + table.csoportNevsorHianyzok td.igazolatlan { color: red } + table.csoportNevsorHianyzok td.igazolt { color: green } + table.csoportNevsorHianyzok th.radio { width: 28px; } + + table.csoportNevsorHianyzok tr td input.perc { + vertical-align: top; + border: solid 1px #aabb99; + text-align: right; + width:1.5em; + } + + + .jelen { + border-color: rgb(100,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .hianyzas, .hiányzás { + border-color: rgb(200,100,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .keses, .késés { + border-color: rgb(200,200,100); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + span.perc { + border-color: rgb(200,200,100); + border-width: 1px 1px 1px 1px; + border-style: solid; + background-color: rgb(230,210,130); + color: rgb(100,80,0); + } + + .felszereles_hiany { + color: white; + background-color:blue; + } + + .felmentes { + background-color: #eeeeee; + color: purple; + } + .fbetus { + border-color: rgb(100,100,200); + border-width: 0px 1px 3px 1px; + border-style: solid; + } + + .igazolt { background-color: #008800; } + .igazolatlan { background-color: #880000; } + + + + + table.hianyzasNaptar { + background-color: #778890; + } + + table.hianyzasNaptar {background-color: #778877; } + table.hianyzasNaptar th {background-color: #889988; } + table.hianyzasNaptar a { color: #eeeee0; text-decoration: none } + table.hianyzasNaptar a:hover { background-color: #667766; } + table.hianyzasNaptar td.felszerelesHiany { background-color: rgb(100,100,200); } + + form.vissza { background-color: white; width: 570px; margin: 0px auto; } + form.vissza input { border: none; background-color: white; cursor: pointer; } diff --git a/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/naplo.css b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/naplo.css new file mode 100644 index 00000000..64f55ecd --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/naplo.css @@ -0,0 +1,71 @@ + + table.toolBar { width: 95%; border-spacing: 0px; margin: 1em auto; } + table.toolBar form { margin: 0px; padding: 0px; } + table.toolBar tr.first td.toolBarTitle, table.toolBar tr.first td.toolBarTool { border: solid 1px #333333; } + table.toolBar td.gap { width: 50%; border-spacing: 0px; } + table.toolBar td.toolBarTitle { + background-color: white; + width: 100%; + font-size: 18px; + font-weight: bold; + } + #toolBarIntezmeny, #toolBarHelpButton { + display:none; + } + + table.toolBar td.toolBarTool { + border: solid 1px #666699; + background-color: #666699; + margin: 0px; + padding: 0px; + } + table.toolBar td.toolBarTool table { border-spacing: 0px; width: 100%; } + table.toolBar td.toolBarTool table th { + background-color: rgb(90,133,184); + text-align: left; + color: white; + + padding: 0px 0px 0px 4px; + border-color: rgb(21,71,123); + border-width: 1px 0px; + border-style: solid; + } + table.toolBar input.toolSubmit { vertical-align: middle; border: 0px none; } + table.toolBar td.toolBarTool select { border: 0px; } + table.toolBar th { + background-color: rgb(90,133,184); + text-align: center; + color: white; + padding: 0px 0px 0px 4px; + + border-color: rgb(21,71,123); + border-width: 1px 0px 1px 1px; + border-style: solid; + } + table.toolBar img { border: none; } + + table.toolBar table.hianyzasOsszegzo { width:100%; } + table.toolBar table.hianyzasOsszegzo th { + text-align: center !important; + border-style: none none solid none; + border-color: #888888; + border-width: 0px 0px 1px 0px; + } + table.toolBar table.hianyzasOsszegzo td { width: 18%; border-bottom: solid 1px rgb(60,80,100); background-color: #dddddd; text-align: center; } + + form.lapozo input { border: solid 1px #555555; } + + table.flipper input {height: 38px; width: 16px; color: white; + border-top: solid 1px black; + border-bottom: solid 1px black; + border-left: none; + border-right: none; + background-color: rgb(90,133,184); + } + table.flipper input.step { background-color: rgb(100,100,60); } + + div.beirasAdatok { text-align: center; } + div.beirasAdatok span { font-weight: bold; font-size: 20pt; vertical-align: middle; } + div.beirasAdatok img { vertical-align: middle; } + + table.toolBar input { } diff --git a/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/osztalyozo/diak.css b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/osztalyozo/diak.css new file mode 100644 index 00000000..4028dad7 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/osztalyozo/diak.css @@ -0,0 +1,24 @@ + + table.osztalyozo { background-color: rgb(220,220,220); color: white; } + table.osztalyozo a { color: white; text-decoration:none } + table.osztalyozo a:hover { color: white; text-decoration:underline } + table.osztalyozo thead th { background-color: #660077; padding: 2px 4px 2px 4px; } + table.osztalyozo thead th.nev { background-color: #660077; height:30px; } + table.osztalyozo thead td { background-color: #440055; text-align: center; padding: 0px 4px 0px 4px; } + table.osztalyozo thead th.biz { background-color: #224433; } + + table.osztalyozo tfoot th { background-color: rgb(100,120,120); padding: 2px; vertical-align: center; } + table.osztalyozo tfoot th span { padding: 1px 10px; font-weight: normal; background-color: rgb(220,220,220); } + + table.osztalyozo tbody th { background-color: rgb(130,140,150); font-weight: normal; padding: 4px 4px 4px 4px; } + table.osztalyozo tbody th a { color: white; text-decoration: none; } + table.osztalyozo tbody th.atlag { background-color: rgb(100,100,130); padding: 0px 4px 0px 4px; } + table.osztalyozo tbody td { background-color: #eeeeee; } + table.osztalyozo tbody td.biz { background-color: #446655; text-align: center; padding-right:3px; padding-left:3px; } + table.osztalyozo tbody td a { text-decoration: none; } + + table.osztalyozo tbody td a.jegy1, table.osztalyozo tfoot th span.jegy1 { color: blue; } + table.osztalyozo tbody td a.jegy2, table.osztalyozo tfoot th span.jegy2 { color: black; } + table.osztalyozo tbody td a.jegy3, table.osztalyozo tfoot th span.jegy3 { color: green; } + table.osztalyozo tbody td a.jegy4, table.osztalyozo tfoot th span.jegy4 { color: red; } + table.osztalyozo tbody td a.jegy5, table.osztalyozo tfoot th span.jegy5 { color: purple; } diff --git a/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/uzeno/uzeno.css b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/uzeno/uzeno.css new file mode 100644 index 00000000..ab1e9cf6 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/css/uzeno/uzeno.css @@ -0,0 +1,79 @@ + + + table.uzeno, table.ujUzenet, table.egyUzenet { + width:90%; + background-color: rgb(50,50,100); + margin-top:1em; + margin-bottom:1em; + font-size:large; + } + table.uzeno thead tr th, table.ujUzenet tr th { color: white; border-bottom: solid 1px #ffffff; background-color: rgb(100,100,150); padding:0.5em; } + + table.ujUzenet select { border: solid 1px #888888; } + table.ujUzenet tr td { text-align: center } + table.ujUzenet textarea { width:98%; height: 100px; border: solid 1px rgb(100,100,90); background-color:#eeeeee; } + + table.ujUzenet tr.admin td textarea { background-color: green; color: white; } + + table.uzeno thead tr th.dt { width:180px; } + table.uzeno thead tr th.cimzett { width:200px; } + + table.uzeno tfoot tr th, table.uzeno tfoot tr th a { color:white; } + + table.uzeno tbody tr td { padding-left:4px; background-color: #dddddd; } + table.uzeno tbody tr th { padding-left:4px; text-align:left; font-weight: normal; } + + table.uzeno tbody tr td.content { padding:10px; background-color:#eeeeee; } + table.uzeno tbody tr.uj td { background-color: #eeeeee; } + table.uzeno tbody tr.olvasott td { background-color: #bbbbbb;} + + table.uzeno tbody tr td.face { width:1%; } + + tr.diak th { background-color: #998899;} + tr.tanar th { background-color: #88ccff;} + tr.szulo th { background-color: #ccaabb;} + + tr.diak.asterix th { background-color: #aaaaff;} + tr.tanar.asterix th { background-color: #aaaaff;} + tr.szulo.asterix th { background-color: #aaaaff;} + + tr.munkakozosseg th { background-color: #99aacc;} + tr.tankor th { background-color: #aaccaa; } + tr.tankorSzulo th { background-color: #aacccc; } + + tr.osztaly th { background-color: #bbcc99; } + tr.osztalySzulo th { background-color: #bbcccc; } + tr.osztalyTanar th { background-color: rgb(140,200,100); } + + table.uzeno a { color: black; text-decoration: none;} + table.uzeno a:hover { text-decoration: underline; } + + span.dt { color: #888888; } + a.more { + color: black !important; + background-color: #eeeeee; + text-decoration: none; + border: solid 1px #999999; margin:1px; padding:1px; + height:10px; + } + a.more img { vertical-align: bottom; } + a.more:hover { background-color: white; } + + a.more.uj { background-color: #ffeeaa; } + a.more.olvasott { background-color: #bbcc99; } + + a.del { + color: red !important; + background-color: #880000; + text-decoration: none; + border: solid 1px black; margin:1px; padding:1px; + } + + table.lapozo { width: 80%; } + table.lapozo table { background-color: #cccccc; border: solid 1px #778890; } + table.lapozo table th.title { background-color: navy; color: white; padding-left: 4px; padding-right:4px;} + table.lapozo table td { text-align: center; background-color: #eeeeee; } + table.lapozo table td.aktiv { background-color: #ffffff; font-weight: bold; } + table.lapozo table td.nav { background-color: #aaaaaa; } + table.lapozo a {color:black; text-decoration: none; } + diff --git a/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/html/haladasi/haladasi.phtml b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/html/haladasi/haladasi.phtml new file mode 100644 index 00000000..5800afb9 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/vakbarat/module-naplo/html/haladasi/haladasi.phtml @@ -0,0 +1,457 @@ + +
        X'._TANMENET_RESZLETEI.'
        '; + formBegin(array('action'=>href('index.php?page=naplo&sub=tanmenet&f=tanmenetInfo'), 'class'=>"onSubmitUpdate", 'id'=>"inform")); + echo ''."\n"; + formEnd(); + echo ''."\n"; + + // tankör haladási + echo ''."\n"; + + + if ($ADAT['title']=='') return; + + $FORM = array('action'=>href('index.php?page=naplo&sub=haladasi&f=haladasi'), 'name'=>'haladasiOrabeiras', 'class'=>''); + formBegin($FORM); + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + echo ''."\n"; + if ($tankorId != '') echo ''."\n"; + + if (_SHOW_DAYS_FROM > $_TANEV['kezdesDt']) echo ''."\n"; + echo ' '._IDOSZAK.': '.str_replace('-','.',_SHOW_DAYS_FROM) . '. - '. str_replace('-','.', _SHOW_DAYS_TO) .'. '."\n"; + if (_SHOW_DAYS_TO < date('Y-m-d')) echo ''."\n"; + echo '
        '; + + // ------------------------------- + $toTime = strtotime(_SHOW_DAYS_TO); + $fromTime = strtotime(_SHOW_DAYS_FROM); + + if ($order == 'ASC') { + for ($time = $fromTime; $time <= $toTime; $time = strtotime('1 day',$time)) { + + $dt = date('Y-m-d',$time); + $count = count($data[$dt]); + if ($tankorId == '') { + putNap($dt, $data[$dt], $data['napok'][$dt], $data['dolgozatok'], $ADAT['tanitasiNap'][$dt]); + } elseif ($count > 0) { + putTankorNap($dt, $data[$dt], $data['dolgozatok'], $order); + } // kirakjuk-e a napot + + } // for $dt + } else { + for ($time = $toTime; $time >= $fromTime; $time = strtotime('-1 day',$time)) { + + $dt = date('Y-m-d',$time); + $count = count($data[$dt]); + if ($tankorId == '') { + putNap($dt, $data[$dt], $data['napok'][$dt], $data['dolgozatok'], $ADAT['tanitasiNap'][$dt]); + } elseif ($count > 0) { + putTankorNap($dt, $data[$dt], $data['dolgozatok'], $order); + } // kirakjuk-e a napot + + } // for $dt + } + // --------------------------------- + + formEnd(); + + } + + + function putNap($dt, $dNap, $napInfos, $doga, $napInfo2) { + + global $aHetNapjai,$ADAT; + + $time = strtotime($dt); + $count = count($dNap); + + $tipus = $orarendiHet = $megjegyzes = array(); + if (is_array($napInfos)) foreach ($napInfos as $ni) { + if (!in_array($ni['tipus'], $tipus)) $tipus[] = $ni['tipus']; + if ($ni['orarendiHet'] != 0 && !in_array($ni['orarendiHet'], $orarendiHet)) $orarendiHet[] = $ni['orarendiHet']; + if ($ni['megjegyzes'] != '' && !in_array($ni['megjegyzes'], $megjegyzes)) $megjegyzes[] = $ni['megjegyzes']; + } + $tanitasiNap = false; + if (in_array('tanítási nap', $tipus) || in_array('speciális tanítási nap', $tipus)) { + $tanitasiNap = true; + } + + + echo '

        '; + echo str_replace('-','.',$dt) .'. '. $aHetNapjai[date('w',$time)-1]; + if ($napInfo2['napszam']!='' || $napInfo['orarendiHet'] != 0) echo ' ('; + if ($tanitasiNap) { + echo $napInfo2['napszam'] . '. ' . _TANITASI_NAP; + if ($napInfo['orarendiHet'] != 0) echo '/'; + } + if (count($orarendiHet) > 0) echo ' - '.implode('./',$orarendiHet).'. '._HET; + if (count($megjegyzes) > 0) echo ' - '.implode('/', $megjegyzes); + if ($napInfo2['napszam']!='' || $napInfo['orarendiHet'] != 0) echo ')'; + echo '

        '; + + putHaladasiDolgozat($dt,$doga); + + $o = 0; + $_UJORA = array(); + if ($count > 0) { + for ($i=0; $i<$count; $i++) { + while ($o < $dNap[$i]['ora']) { + if (__PLUSZBEIRHAT===true) $_UJORA[] = array('dt'=>$dt, 'ora'=>intval($o)); + $o++; + } + $o=$dNap[$i]['ora']+1; + putOra($dNap[$i]); + } // órák kiírása + for($j=$dNap[$i-1]['ora']+1; $j<=$ADAT['maxOra']; $j++) { + if (__PLUSZBEIRHAT===true) $_UJORA[] =array('dt'=>$dt, 'ora'=>$j); + } + } else { + echo _NINCS_ORAJA.'
        '; + for($j=1; $j<=$ADAT['maxOra']; $j++) { + if (__PLUSZBEIRHAT===true) $_UJORA[] = array('dt'=>$dt, 'ora'=>$j); + } + } + echo '

        '._PLUSZ_FELADATOK.'

        '; + echo '