aboutsummaryrefslogtreecommitdiffstats
path: root/mayor-orig/www/policy/private
diff options
context:
space:
mode:
authorM.Gergo2018-07-06 11:14:41 +0200
committerM.Gergo2018-07-06 11:14:41 +0200
commit43de9af71f7f4ca5731b94a06d688ae8412ba427 (patch)
tree54835de1dfcda504c02da261f0dc26885aed2e89 /mayor-orig/www/policy/private
parent50310b0e4513ee3fcce67351ae61e8fff851130e (diff)
downloadmayor-43de9af71f7f4ca5731b94a06d688ae8412ba427.tar.gz
mayor-43de9af71f7f4ca5731b94a06d688ae8412ba427.zip
2018/Feb/28 -i állapot hozzáadva, mint a módosítások kiindulási állapota
Diffstat (limited to 'mayor-orig/www/policy/private')
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/admin-pre.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/admin.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/azonositok-pre.php133
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/azonositok.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/checksql-pre.php22
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/checksql.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/csoportok-pre.php68
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/csoportok.php14
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/fillhaladasi-pre.php30
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/fillhaladasi.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/import-pre.php49
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/import.php19
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/install-pre.php47
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/install.php31
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/intezmenyek-pre.php79
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/intezmenyek.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/rpcPrivilege-pre.php45
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/rpcPrivilege.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/szemeszterek-pre.php80
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/szemeszterek.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/szuloiAzonositok-pre.php171
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/szuloiAzonositok.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/tanevek-pre.php151
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/tanevek.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/tankorok-pre.php39
-rw-r--r--mayor-orig/www/policy/private/naplo/admin/tankorok.php16
-rw-r--r--mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesTipus-pre.php59
-rw-r--r--mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesTipus.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesek-pre.php73
-rw-r--r--mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesek.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/bejegyzesek/info-pre.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/bejegyzesek/info.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/bejegyzesek/ujBejegyzes-pre.php60
-rw-r--r--mayor-orig/www/policy/private/naplo/bejegyzesek/ujBejegyzes.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/error-pre.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/error.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/ertekeles/ertekeles-pre.php205
-rw-r--r--mayor-orig/www/policy/private/naplo/ertekeles/ertekeles.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/ertekeles/export-pre.php33
-rw-r--r--mayor-orig/www/policy/private/naplo/ertekeles/export.php27
-rw-r--r--mayor-orig/www/policy/private/naplo/ertekeles/kerdoivBetoltes-pre.php149
-rw-r--r--mayor-orig/www/policy/private/naplo/ertekeles/kerdoivBetoltes.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/ertekeles/osszesites-pre.php97
-rw-r--r--mayor-orig/www/policy/private/naplo/ertekeles/osszesites.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/esemeny/esemeny-pre.php7
-rw-r--r--mayor-orig/www/policy/private/naplo/esemeny/esemeny.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/esemeny/esemenyDiak-pre.php83
-rw-r--r--mayor-orig/www/policy/private/naplo/esemeny/esemenyDiak.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/esemeny/jelentkezes-pre.php45
-rw-r--r--mayor-orig/www/policy/private/naplo/esemeny/jelentkezes.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/esemeny/ujEsemeny-pre.php91
-rw-r--r--mayor-orig/www/policy/private/naplo/esemeny/ujEsemeny.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/export/bizonyitvany-pre.php114
-rw-r--r--mayor-orig/www/policy/private/naplo/export/bizonyitvany.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/export/diakExport-pre.php68
-rw-r--r--mayor-orig/www/policy/private/naplo/export/diakExport.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/export/kirBizonyitvanyExport-pre.php132
-rw-r--r--mayor-orig/www/policy/private/naplo/export/kirBizonyitvanyExport.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/export/kreta-pre.php176
-rw-r--r--mayor-orig/www/policy/private/naplo/export/kreta.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/export/sulix-pre.php26
-rw-r--r--mayor-orig/www/policy/private/naplo/export/sulix.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/export/tanarOsztalyOraszam-pre.php106
-rw-r--r--mayor-orig/www/policy/private/naplo/export/tanarOsztalyOraszam.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/export/tantargyFelosztas-pre.php61
-rw-r--r--mayor-orig/www/policy/private/naplo/export/tantargyFelosztas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/elmaradas-pre.php17
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/elmaradas.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/elszamolas-pre.php59
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/elszamolas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/haladasi-pre.php387
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/haladasi.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/helyettesites-pre.php194
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/helyettesites.php46
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/hetes-pre.php260
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/hetes.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/minuszora-pre.php75
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/minuszora.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/ora-pre.php33
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/ora.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/oralatogatas-pre.php102
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/oralatogatas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/osszevonas-pre.php109
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/osszevonas.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/pluszora-pre.php177
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/pluszora.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/specialis-pre.php95
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/specialis.php17
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/stat-pre.php54
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/stat.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/tankor-pre.php29
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/tankor.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/teremModositas-pre.php102
-rw-r--r--mayor-orig/www/policy/private/naplo/haladasi/teremModositas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php212
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/diak.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/diakIgazolatlan-pre.php26
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/diakIgazolatlan.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/diakLista-pre.php101
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/diakLista.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/hianyzas-pre.php7
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/hianyzas.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/info-pre.php32
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/info.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php161
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/nap.php14
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/oktstat-pre.php33
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/oktstat.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php165
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/ora.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php124
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/osztaly.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/osztalyNap-pre.php53
-rw-r--r--mayor-orig/www/policy/private/naplo/hianyzas/osztalyNap.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/hibabejelento/admin-pre.php80
-rw-r--r--mayor-orig/www/policy/private/naplo/hibabejelento/admin.php16
-rw-r--r--mayor-orig/www/policy/private/naplo/hibabejelento/hibabejelento-pre.php24
-rw-r--r--mayor-orig/www/policy/private/naplo/hibabejelento/hibabejelento.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/hirnok/cronFutar-pre.php32
-rw-r--r--mayor-orig/www/policy/private/naplo/hirnok/cronFutar.php45
-rw-r--r--mayor-orig/www/policy/private/naplo/hirnok/hirnok-pre.php53
-rw-r--r--mayor-orig/www/policy/private/naplo/hirnok/hirnok.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/hirnok/hirnokFeliratkozas-pre.php47
-rw-r--r--mayor-orig/www/policy/private/naplo/hirnok/hirnokFeliratkozas.php7
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diak-pre.php247
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diak.php30
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakExport-pre.php56
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakExport.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakFelmentes-pre.php325
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakFelmentes.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakStatusz-pre.php117
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakStatusz.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakSzulo-pre.php98
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakSzulo.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakTankor-pre.php116
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakTankor.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakTankorJelentkezes-pre.php113
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/diakTankorJelentkezes.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/felmentes-pre.php67
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/felmentes.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/intezmeny-pre.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/intezmeny.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/kepesitesek-pre.php92
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/kepesitesek.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/kepzes-pre.php60
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/kepzes.php14
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/kepzesOraterv-pre.php114
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/kepzesOraterv.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/munkakozosseg-pre.php110
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/munkakozosseg.php27
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/osztaly-pre.php323
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/osztaly.php40
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/szulo-pre.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/szulo.php24
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tanar-pre.php108
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tanar.php27
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankor-pre.php219
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankor.php20
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorDiak-pre.php162
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorDiak.php17
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorLetszam-pre.php101
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorLetszam.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorSzemeszter-pre.php122
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorSzemeszter.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorTanar-pre.php114
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorTanar.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles-pre.php64
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tantargyFelosztas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/terem-pre.php42
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/terem.php13
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tovabbkepzes-pre.php112
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/tovabbkepzes.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/valtas-pre.php58
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/valtas.php7
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/verseny-pre.php54
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/verseny.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/zaradek-pre.php76
-rw-r--r--mayor-orig/www/policy/private/naplo/intezmeny/zaradek.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/koszi/esemenyAdmin-pre.php83
-rw-r--r--mayor-orig/www/policy/private/naplo/koszi/esemenyAdmin.php21
-rw-r--r--mayor-orig/www/policy/private/naplo/koszi/koszi-pre.php49
-rw-r--r--mayor-orig/www/policy/private/naplo/koszi/koszi.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/koszi/kosziAdmin-pre.php93
-rw-r--r--mayor-orig/www/policy/private/naplo/koszi/kosziAdmin.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/naplo-pre.php22
-rw-r--r--mayor-orig/www/policy/private/naplo/naplo.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/beiskolazasiTerv-pre.php37
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/beiskolazasiTerv.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php88
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/diakAdatlap-pre.php135
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/diakAdatlap.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes-pre.php71
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/ertesito-pre.php101
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/ertesito.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/haladasinaplo-pre.php212
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/haladasinaplo.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/helyettesitesinaplo-pre.php39
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/helyettesitesinaplo.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/nyomtatas-pre.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/nyomtatas.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php157
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/osztalyozonaplo.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php105
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv.php1
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv-pre.php93
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv.php1
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/szovegesErtekeles-pre.php78
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/szovegesErtekeles.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles-pre.php58
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/torzslap-pre.php165
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/torzslap.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat-pre.php40
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/zaradekok-pre.php49
-rw-r--r--mayor-orig/www/policy/private/naplo/nyomtatas/zaradekok.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/ascExport-pre.php110
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/ascExport.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/helyettesites-pre.php80
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/helyettesites.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarend-pre.php281
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarend.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendBetolto-pre.php80
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendBetolto.php14
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendEllenorzes-pre.php56
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendEllenorzes.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendModosito-pre.php277
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendModosito.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendTankor-pre.php56
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendTankor.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendTeremModositas-pre.php86
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendTeremModositas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendUtkozes-pre.php77
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/orarendUtkozes.php47
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php31
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/szabadTerem.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/tanarOrarend-pre.php49
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/tanarOrarend.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/termez-pre.php173
-rw-r--r--mayor-orig/www/policy/private/naplo/orarend/termez.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/bizelomenetel-pre.php111
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/bizelomenetel.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/bizonyitvany-pre.php166
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/bizonyitvany.php16
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/diak-pre.php100
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/diak.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/dolgozat-pre.php168
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/dolgozat.php16
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/jegy-pre.php120
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/jegy.php12
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/osztalyozo-pre.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/osztalyozo.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/stat-pre.php307
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/stat.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/szempontRendszer-pre.php51
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/szempontRendszer.php16
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/szovegesErtekeles-pre.php258
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/szovegesErtekeles.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/tankor-pre.php332
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/tankor.php17
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/targySorrend-pre.php47
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/targySorrend.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/vizsga-pre.php91
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/vizsga.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes-pre.php37
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/zaroJegyCheck-pre.php82
-rw-r--r--mayor-orig/www/policy/private/naplo/osztalyozo/zaroJegyCheck.php4
-rw-r--r--mayor-orig/www/policy/private/naplo/sni/diakAllapot-pre.php127
-rw-r--r--mayor-orig/www/policy/private/naplo/sni/diakAllapot.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/sni/fejlesztesiTerv-pre.php110
-rw-r--r--mayor-orig/www/policy/private/naplo/sni/fejlesztesiTerv.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/sni/sni-pre.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/sni/sni.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/sni/tantargyiFeljegyzesek-pre.php113
-rw-r--r--mayor-orig/www/policy/private/naplo/sni/tantargyiFeljegyzesek.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/stat/lemorzsolodas-pre.php38
-rw-r--r--mayor-orig/www/policy/private/naplo/stat/lemorzsolodas.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/stat/letszam-pre.php88
-rw-r--r--mayor-orig/www/policy/private/naplo/stat/letszam.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/stat/tantargyFelosztas-pre.php127
-rw-r--r--mayor-orig/www/policy/private/naplo/stat/tantargyFelosztas.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/szulinap-pre.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/szulinap.php44
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/checkStatus-pre.php7
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/checkStatus.php6
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/diakTanarai-pre.php54
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/diakTanarai.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/fogadoOra-pre.php142
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/fogadoOra.php26
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/munkaterv-pre.php102
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/munkaterv.php26
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/tanev-pre.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/tanev.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/tankorBlokk-pre.php114
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/tankorBlokk.php14
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/tankorCsoport-pre.php132
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/tankorCsoport.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/targyBontas-pre.php175
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/targyBontas.php19
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/targyOraszam-pre.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/targyOraszam.php7
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/vegzosOrarendLezaras-pre.php72
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/vegzosOrarendLezaras.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/vegzosTankorLezaras-pre.php77
-rw-r--r--mayor-orig/www/policy/private/naplo/tanev/vegzosTankorLezaras.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenet-pre.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenet.php0
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetInfo-pre.php35
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetInfo.php15
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetJovahagyas-pre.php88
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetJovahagyas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetLeadas-pre.php51
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetLeadas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetModositas-pre.php83
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetModositas.php9
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetTankor-pre.php95
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/tanmenetTankor.php11
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/ujTanmenet-pre.php72
-rw-r--r--mayor-orig/www/policy/private/naplo/tanmenet/ujTanmenet.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/ajax.php7
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/ajaxExample.php29
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/dolgozatAdat-pre.php19
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/getDiakAdat-pre.php61
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/getJegyAdat-pre.php36
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/getOraAdat-pre.php79
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/getOsztalyAdat-pre.php39
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/getSzuloAdat-pre.php27
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/getTanarAdat-pre.php56
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/getTankorAdat-pre.php38
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/getZaroJegyAdat-pre.php41
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/intezmenyNev-pre.php10
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/intezmenyNev.php8
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/jegyzetAdat-pre.php165
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/kereso-pre.php25
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/napAdat-pre.php23
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/oid.php1
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/oraAdat-pre.php2
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/tankor-pre.php39
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/tankorLista-pre.php66
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/tankorMod-pre.php40
-rw-r--r--mayor-orig/www/policy/private/naplo/tools/ujTankor-pre.php114
-rw-r--r--mayor-orig/www/policy/private/naplo/uzeno/postas-pre.php89
-rw-r--r--mayor-orig/www/policy/private/naplo/uzeno/postas.php5
-rw-r--r--mayor-orig/www/policy/private/naplo/uzeno/uzeno-pre.php187
-rw-r--r--mayor-orig/www/policy/private/naplo/uzeno/uzeno.php12
-rw-r--r--mayor-orig/www/policy/private/password/changePassword-pre.php60
-rw-r--r--mayor-orig/www/policy/private/password/changePassword.php9
-rw-r--r--mayor-orig/www/policy/private/portal/start.php0
-rw-r--r--mayor-orig/www/policy/private/session/accountInfo-pre.php51
-rw-r--r--mayor-orig/www/policy/private/session/accountInfo.php15
-rw-r--r--mayor-orig/www/policy/private/session/admin/knownNodes-pre.php39
-rw-r--r--mayor-orig/www/policy/private/session/admin/knownNodes.php10
-rw-r--r--mayor-orig/www/policy/private/session/admin/registration-pre.php123
-rw-r--r--mayor-orig/www/policy/private/session/admin/registration.php16
-rw-r--r--mayor-orig/www/policy/private/session/createAccount-pre.php110
-rw-r--r--mayor-orig/www/policy/private/session/createAccount.php12
-rw-r--r--mayor-orig/www/policy/private/session/createGroup-pre.php49
-rw-r--r--mayor-orig/www/policy/private/session/createGroup.php12
-rw-r--r--mayor-orig/www/policy/private/session/download-pre.php66
-rw-r--r--mayor-orig/www/policy/private/session/download.php9
-rw-r--r--mayor-orig/www/policy/private/session/facebookConnect-pre.php91
-rw-r--r--mayor-orig/www/policy/private/session/facebookConnect.php7
-rw-r--r--mayor-orig/www/policy/private/session/googleapi-pre.php100
-rw-r--r--mayor-orig/www/policy/private/session/googleapi.php28
-rw-r--r--mayor-orig/www/policy/private/session/groupInfo-pre.php43
-rw-r--r--mayor-orig/www/policy/private/session/groupInfo.php12
-rw-r--r--mayor-orig/www/policy/private/session/search/searchAccount-pre.php28
-rw-r--r--mayor-orig/www/policy/private/session/search/searchAccount.php16
-rw-r--r--mayor-orig/www/policy/private/session/search/searchGroup-pre.php25
-rw-r--r--mayor-orig/www/policy/private/session/search/searchGroup.php16
-rw-r--r--mayor-orig/www/policy/private/session/session-pre.php5
-rw-r--r--mayor-orig/www/policy/private/session/session.php0
-rw-r--r--mayor-orig/www/policy/private/session/sessionAdmin-pre.php24
-rw-r--r--mayor-orig/www/policy/private/session/sessionAdmin.php9
378 files changed, 19365 insertions, 0 deletions
diff --git a/mayor-orig/www/policy/private/naplo/admin/admin-pre.php b/mayor-orig/www/policy/private/naplo/admin/admin-pre.php
new file mode 100644
index 00000000..5cb70fd2
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/admin-pre.php
@@ -0,0 +1,5 @@
+<?php
+
+ header('Location: '.location('index.php?page=naplo&sub=admin&f=import'));
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/admin.php b/mayor-orig/www/policy/private/naplo/admin/admin.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/admin.php
diff --git a/mayor-orig/www/policy/private/naplo/admin/azonositok-pre.php b/mayor-orig/www/policy/private/naplo/admin/azonositok-pre.php
new file mode 100644
index 00000000..19622167
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/azonositok-pre.php
@@ -0,0 +1,133 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+
+ $tanev = readVariable($_POST['tanev'],'numeric',__TANEV);
+ $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null);
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/session/search/searchGroup.php');
+ require_once('include/modules/session/search/searchAccount.php');
+ require_once('include/modules/session/createAccount.php');
+
+ if (isset($osztalyId)) {
+ $osztalyAdat = getOsztalyAdat($osztalyId, $tanev, $lr);
+ $osztalyTagok = getOsztalyNevsorEsOid($osztalyId);
+ $oIds = $Tagok = array();
+ for ($i = 0; $i < count($osztalyTagok); $i++) {
+ $oIds[] = $oId = $osztalyTagok[$i]['oId'];
+ $Tagok[$oId] = $osztalyTagok[$i];
+ $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];
+ $_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/www/policy/private/naplo/admin/azonositok.php b/mayor-orig/www/policy/private/naplo/admin/azonositok.php
new file mode 100644
index 00000000..50df705e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/azonositok.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $osztalyId, $osztalyTagok, $Tagok, $ldapTagok, $tanev;
+
+ if (is_array($osztalyTagok)) putCreateAzonositoForm($osztalyId, $osztalyTagok, $tanev, $Tagok);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/checksql-pre.php b/mayor-orig/www/policy/private/naplo/admin/checksql-pre.php
new file mode 100644
index 00000000..e952a01b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/checksql-pre.php
@@ -0,0 +1,22 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+ /* Attach shared lib */
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $Q_ERR = array();
+ $queryFile = fileNameNormal(__INTEZMENY_DB_FILE); // __ALAP|__TANEV
+ $db = 'naplo_intezmeny';
+ checkSqlConsistency($queryFile,$db,$Q_ERR);
+
+ $queryFile = fileNameNormal(__TANEV_DB_FILE); // __ALAP|__TANEV
+ $db = 'naplo';
+ checkSqlConsistency($queryFile,$db,$Q_ERR);
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/checksql.php b/mayor-orig/www/policy/private/naplo/admin/checksql.php
new file mode 100644
index 00000000..7ad8e3b9
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/checksql.php
@@ -0,0 +1,15 @@
+<?php
+
+ global $Q_ERR;
+
+ if (is_array($Q_ERR) && count($Q_ERR)>0) {
+ echo '<table border="1">';
+ for($i=0; $i<count($Q_ERR); $i++) {
+ echo '<tr><th>'.$i.'</th></tr><tr><td>';
+ echo htmlDiff($Q_ERR[$i]['inDb'],$Q_ERR[$i]['inFile']); //filenamenormal checked
+ echo '</td><td>';
+ echo '</td></tr>'."\n";
+ }
+ echo '</table>';
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/csoportok-pre.php b/mayor-orig/www/policy/private/naplo/admin/csoportok-pre.php
new file mode 100644
index 00000000..63a1e0d5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/csoportok-pre.php
@@ -0,0 +1,68 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ if (isset($_POST['osztalyId'])) {
+ $osztalyId = $_POST['osztalyId'];
+ $Csoportok = getCsoportok($osztalyId);
+ $Tankorok = getOsztalyTankorei($osztalyId);
+ }
+ if (isset($_POST['csoportId'])) {
+ $csoportId = $_POST['csoportId'];
+ $csoportAdatok = getCsoportAdatok($csoportId);
+ }
+
+ if ($action == 'ujCsoport') {
+
+ if (!is_array($_POST['tankorId'])) {
+ $_SESSION['alert'][] = 'message:empty_field:tankorId[]';
+ } else {
+ $tankorIds = $_POST['tankorId'];
+ if ($_POST['csoportNev'] != '') {
+ $csoportNev = $_POST['csoportNev'];
+ } else {
+ $csNev = array();
+ for ($i = 0; $i < count($Tankorok); $i++) {
+ if (in_array($Tankorok[$i]['tankorId'],$tankorIds)) {
+ $csNev[] = $Tankorok[$i]['tankorNev'] ;
+ }
+ }
+ $csoportNev = implode(', ',$csNev);
+ }
+ $csoportId = ujCsoport($csoportNev, $tankorIds);
+ $Csoportok = getCsoportok($osztalyId);
+ if ($csoportId) $csoportAdatok = getCsoportAdatok($csoportId);
+ }
+ } elseif ($action == 'csoportModositas') {
+
+ if (!is_array($_POST['tankorId'])) {
+ $_SESSION['alert'][] = 'message:empty_field:tankorId[]';
+ } else {
+ $tankorIds = $_POST['tankorId'];
+ if (csoportModositas($csoportId, $_POST['csoportNev'], $tankorIds)) {
+ $Csoportok = getCsoportok($osztalyId);
+ $csoportAdatok = getCsoportAdatok($csoportId);
+ }
+ }
+ } elseif ($action == 'csoportTorlese') {
+
+ if (csoportTorles($csoportId)) {
+ $Csoportok = getCsoportok($osztalyId);
+ unset($csoportId);
+ unset($csoportAdatok);
+ }
+
+ }
+
+
+ $TOOL['osztalySelect'] = array('tipus'=>'cella');
+ getToolParameters();
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/csoportok.php b/mayor-orig/www/policy/private/naplo/admin/csoportok.php
new file mode 100644
index 00000000..6ad4d67a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/csoportok.php
@@ -0,0 +1,14 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $osztalyId, $Csoportok, $csoportId, $Tankorok, $csoportAdatok;
+
+ if (is_array($Csoportok) && count($Csoportok) > 0) putCsoportLista($Csoportok, $osztalyId, $csoportId);
+ if (isset($csoportId) && $csoportId != '') {
+ putCsoportModositoForm($csoportAdatok, $Tankorok, $osztalyId);
+ putCsoportTorlesForm($csoportId, $osztalyId);
+ }
+ putUjCsoportForm($osztalyId, $Tankorok);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/fillhaladasi-pre.php b/mayor-orig/www/policy/private/naplo/admin/fillhaladasi-pre.php
new file mode 100644
index 00000000..493b08fe
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/fillhaladasi-pre.php
@@ -0,0 +1,30 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+
+ $tolDt = readVariable($_POST['tolDt'],'date',$_TANEV['kezdesDt']);
+ $igDt = readVariable($_POST['igDt'],'date',date('Y-m-d'));
+ if ($action != '') {
+ $q = "SELECT DISTINCT dt FROM nap WHERE dt BETWEEN '%s' AND '%s' AND tipus='tanítási nap'";
+ $NAPOK = db_query($q, array('fv'=>'fillhaladasi-pre','modul'=>'naplo','values'=>array($tolDt,$igDt),'result'=>'indexed'));
+ for ($i=0; $i<count($NAPOK);$i++) {
+ $res = (checkNaplo($NAPOK[$i]['dt']));
+ if ($res===false) $_SESSION['alert'][] = '::hiba:'.$NAPOK[$i]['dt'];
+ else $SUCCESS[] = " + ".$NAPOK[$i]['dt'];
+ }
+ if (count($SUCCESS)>=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/www/policy/private/naplo/admin/fillhaladasi.php b/mayor-orig/www/policy/private/naplo/admin/fillhaladasi.php
new file mode 100644
index 00000000..c6d1a8c0
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/fillhaladasi.php
@@ -0,0 +1,6 @@
+<?php
+
+ global $tolDt, $igDt;
+ fillHaladasiForm($tolDt, $igDt);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/import-pre.php b/mayor-orig/www/policy/private/naplo/admin/import-pre.php
new file mode 100644
index 00000000..bb34046f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/import-pre.php
@@ -0,0 +1,49 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+require_once('include/modules/naplo/share/file.php');
+
+if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+} else {
+
+ $mezo_elvalaszto = ' ';
+ if (isset($_POST['dbtable'])) {
+ $dbtable = $_POST['dbtable'];
+ list($db,$table) = explode(':',$dbtable);
+ }
+ //IDEIGLENESEN if (isset($_POST['fileName'])) $fileName = fileNameNormal($_POST['fileName']);
+ if (isset($_POST['fileName'])) $fileName = ($_POST['fileName']);
+ $ADATOK = array();
+
+ if (isset($table)) {
+ if ($fileName != '') {
+ define('_SKIP_ON_DUP',readVariable($_POST['skipOnDup'],'bool'));
+
+ if (file_exists($fileName)) {
+ $MEZO_LISTA = $_POST['MEZO_LISTA'];
+ $KULCS_MEZOK = $_POST['KULCS_MEZOK'];
+ if (!is_array($MEZO_LISTA)) {
+
+ $ADATOK = readUpdateFile($fileName);
+ if (count($ADATOK) > 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/www/policy/private/naplo/admin/import.php b/mayor-orig/www/policy/private/naplo/admin/import.php
new file mode 100644
index 00000000..8edc7d3e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/import.php
@@ -0,0 +1,19 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+global $table, $dbtable, $fileName, $ADATOK, $attrList, $MEZO_LISTA;
+
+if (isset($table)) {
+ if ($fileName == '') {
+ putFileSelectForm($dbtable);
+ } elseif ($MEZO_LISTA == '') {
+ if (count($ADATOK) > 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/www/policy/private/naplo/admin/install-pre.php b/mayor-orig/www/policy/private/naplo/admin/install-pre.php
new file mode 100644
index 00000000..1a655c4e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/install-pre.php
@@ -0,0 +1,47 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+// if (__NAPLO_INSTALLED !== false) die('A __NAPLO_INSTALLED konstans már true? ('._CONFIGDIR.'/module-naplo/config.php)');
+
+ function checkInstall($force = false) {
+
+ global $group_ok, $admin_ok, $db_ok, $MYSQL_DATA;
+
+ // naploadmin?
+ $group_ok = true;
+ $admin_ok = memberOf(_USERACCOUNT,'naploadmin');
+
+ if (!$admin_ok) {
+ if (strpos($_SESSION['alert'][count($_SESSION['alert'])-1], 'no_group:naploadmin')) {
+ $group_ok = false;
+ array_pop($_SESSION['alert']);
+ }
+ // Nincs naploadmin csoport
+ if (!$group_ok && $force===true) {
+ require_once('include/modules/session/createGroup.php');
+ if (createGroup('naploadmin','Napló adminisztrátorok',_USERACCOUNT,'egyéb')) {
+ $group_ok = true;
+ $admin_ok = true;
+ }
+ }
+ }
+
+ // mayor_naplo adatbázis van?
+ $db_ok = db_connect('naplo_base');
+ if ($db_ok) db_close($db_ok);
+ else $_SESSION['alert'][] = '::naplo_base';
+
+ }
+
+ if ($action === 'createDatabase') {
+
+ require_once('include/modules/naplo/share/mysql.php');
+ $dbNev = $MYSQL_DATA['naplo_base']['db'];
+ //createDatabase($dbNev, __ALAP_DB_FILE, $_POST['rootUser'], $_POST['rootPassword']);
+
+ }
+
+ checkInstall();
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/install.php b/mayor-orig/www/policy/private/naplo/admin/install.php
new file mode 100644
index 00000000..11400c3c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/install.php
@@ -0,0 +1,31 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $db_ok, $admin_ok, $group_ok;
+
+if (defined('__NAPLO_INSTALLED') && __NAPLO_INSTALLED === false) {
+ if (!$admin_ok) {
+ echo 'Nem vagy a <code>naploadmin</code> csoport tagja!</p>';
+ }
+ if (!$group_ok) {
+ echo '<p>Még nem hoztál létre <q>naploadmin</q> csoportot!</p>';
+ echo '<p>Hozd létre a <q>Felhasználói adatok/Új csoport</q> menüpont alatt!</p>';
+ } elseif (!$db_ok) {
+ echo '<p>Létre kell hoznunk a naplo modul alap adatbázisát!</p>';
+ echo '<p>Ehhez szükség lesz a MySQL root jelszó megadására.</p>';
+ echo '<form method="post" action="">'; // --TODO
+ echo '<input type="hidden" name="action" value="createDatabase" />';
+ echo 'User: ';
+ echo '<input type="text" name="rootUser" value="root" /><br/>';
+ echo 'Jelszó: ';
+ echo '<input type="password" name="rootPassword" value="" /><br/>';
+ echo '<input type="submit" value="OK" />';
+ echo '</form>'; // --TODO
+ } else {
+ echo '<p>Úgy tűnik a modul telepítése kész. Az <code>base/config.php</code>-ben módosítsuk a <code>__NAPLO_INSTALLED</code> értékét true-ra és kész.</p>';
+ }
+} else {
+ echo '<p>Már telepítve!</p>';
+}
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/intezmenyek-pre.php b/mayor-orig/www/policy/private/naplo/admin/intezmenyek-pre.php
new file mode 100644
index 00000000..e2dcc43d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/intezmenyek-pre.php
@@ -0,0 +1,79 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/file.php');
+ $ADAT['fenntartok'] = getEnumField('naplo_base', 'intezmeny', 'fenntarto');
+ $ADAT['intezmeny'] = $intezmeny = readVariable($_POST['intezmeny'], 'strictstring', defined('__INTEZMENY') ? __INTEZMENY : null);
+
+ if ($action == 'ujIntezmeny') {
+
+ require_once('include/modules/naplo/share/mysql.php');
+
+ $rovidnev = readVariable($_POST['rovidnev'], 'strictstring', null);
+ if (isset($rovidnev)) {
+ $dbNev = intezmenyDbNev($rovidnev);
+ $rootUser = readVariable($_POST['rootUser'], 'strictstring', null);
+ $rootPassword = readVariable($_POST['rootPassword'], 'string', null); // nincs ellenőrzés!
+ if (createDatabase($dbNev, __INTEZMENY_DB_FILE, $rootUser, $rootPassword)) {
+ $OMKod = readVariable($_POST['OMKod'], 'numeric unsigned', null);
+ $nev = readVariable($_POST['nev'], 'sql', null);
+ $rovidnev = readVariable($_POST['rovidnev'], 'strictstring', null);
+ intezmenyBejegyzese($OMKod, $nev, $rovidnev);
+ updateNaploSession($sessionID,$rovidnev);
+ header('Location: ' . location('index.php?page=naplo&sub=admin&f=tanevek'));
+ }
+ }
+
+ } elseif ($action == 'intezmenyModositas') {
+
+ $ADAT['nev'] = readVariable($_POST['nev'], 'sql', null);
+ $ADAT['OMKod'] = readVariable($_POST['OMKod'], 'numeric unsigned', null);
+ $ADAT['alapertelmezett'] = readVariable($_POST['alapertelmezett'], 'numeric unsigned', 0, array(0,1));
+ $ADAT['fenntarto'] = readVariable($_POST['fenntarto'], 'enum','állami',$ADAT['fenntartok']);
+ // A readVariable hívások a függvénybe kerültek!
+ intezmenyModositas($ADAT);
+
+ } elseif ($action == 'intezmenyTorles') {
+
+ intezmenyTorles(__INTEZMENY);
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ if (updateSessionIntezmeny('')) {
+ header('Location: '.location('index.php?page=naplo&sub=admin&f=intezmenyek'));
+ }
+ header('Location: '.location('index.php?page=naplo&sub=admin&f=intezmenyek'));
+
+ } elseif ($action == 'intezmenyValasztas') {
+
+ if (isset($intezmeny) && $intezmeny !== __INTEZMENY) {
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ if (updateSessionIntezmeny($intezmeny)) {
+ header('Location: '.location('index.php?page=naplo&sub=admin&f=intezmenyek'));
+ }
+ }
+ } elseif ($action == 'telephelyModositas') {
+
+ telephelyModositas($_POST);
+
+ } elseif ($action == 'ujTelephely') {
+
+ ujTelephely($_POST);
+
+ } // action
+
+ // Az aktuális intézmény adatainak lekérdezése
+ if (defined('__INTEZMENY') and __INTEZMENY != '') {
+ $ADAT['intezmenyAdat'] = getIntezmeny(__INTEZMENY);
+ }
+
+ $TOOL['intezmenySelect'] = array('tipus'=>'cella', 'action' => 'intezmenyValasztas', 'post'=>array());
+ getToolParameters();
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/intezmenyek.php b/mayor-orig/www/policy/private/naplo/admin/intezmenyek.php
new file mode 100644
index 00000000..22c35361
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/intezmenyek.php
@@ -0,0 +1,13 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (defined('__INTEZMENY') && __INTEZMENY != '') {
+ putIntezmenyModositasForm($ADAT);
+ putIntezmenyTorlesForm($ADAT);
+ }
+ putUjIntezmenyForm();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/rpcPrivilege-pre.php b/mayor-orig/www/policy/private/naplo/admin/rpcPrivilege-pre.php
new file mode 100644
index 00000000..d33879c1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/rpcPrivilege-pre.php
@@ -0,0 +1,45 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/share/ssl/ssl.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/rpc.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $ADAT['privileges'] = getSetField('naplo_base', 'rpcJogosultsag', 'priv');
+
+ $ADAT['nodes'] = reindex(getPublicDataFromLocalKeychain(), array('nodeId'));
+ $ADAT['intezmenyek'] = reindex(getIntezmenyek(), array('OMKod'));
+ $ADAT['privs'] = getRPCPrivileges();
+
+ if ($action == 'addNode') {
+
+ $DATA['nodeId'] = readVariable($_POST['nodeId'], 'id');
+ $DATA['userAccount'] = readVariable($_POST['userAccount'], 'string');
+ $DATA['OMKod'] = readVariable($_POST['OMKod'], 'numeric unsigned');
+
+ addNodeToRPCPrivs($DATA);
+ $ADAT['privs'] = getRPCPrivileges();
+
+ } elseif ($action == 'setPriv') {
+
+ $DATA['nodeId'] = readVariable($_POST['nodeId'], 'id');
+ $DATA['userAccount'] = readVariable($_POST['userAccount'], 'string');
+ $DATA['OMKod'] = readVariable($_POST['OMKod'], 'numeric unsigned');
+ $DATA['priv'] = readVariable($_POST['priv'], 'enum', 'OMKod', $ADAT['privileges']);
+
+ setPrivileges($DATA);
+ $ADAT['privs'] = getRPCPrivileges();
+
+ }
+
+//dump($ADAT['privileges']);
+ }
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/admin/rpcPrivilege.php b/mayor-orig/www/policy/private/naplo/admin/rpcPrivilege.php
new file mode 100644
index 00000000..1f928d21
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/rpcPrivilege.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putAddNodeForm($ADAT);
+ putPrivilegesForm($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/admin/szemeszterek-pre.php b/mayor-orig/www/policy/private/naplo/admin/szemeszterek-pre.php
new file mode 100644
index 00000000..6edd8674
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/szemeszterek-pre.php
@@ -0,0 +1,80 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = "page:insufficient_access";
+ } else {
+
+/*
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+ BUG - zárás és írás időszak kezdődjön együtt!!!!!!!!!
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+*/
+
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ define('_TIME', time());
+ $szemeszterId = readVariable($_POST['szemeszterId'], 'id', readVariable($_GET['szemeszterId'], 'id'));
+ // melyik szemeszter adatait nézzük
+// if (isset($_POST['szemeszterId']) && $_POST['szemeszterId'] != '') {
+// $szemeszterId = $_POST['szemeszterId'];
+// } elseif (!isset($_POST['szemeszterId'])) {
+ if (!isset($szemeszterId)) {
+ for ($i = 1; $i <= count($_TANEV['szemeszter']); $i++) {
+ if (
+ strtotime($_TANEV['szemeszter'][$i]['kezdesDt']) <= _TIME
+ && strtotime($_TANEV['szemeszter'][$i]['zarasDt']) >= _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.'<hr>';
+ idoszakTorles($iId);
+ } elseif (
+ $iAdat['tolDt'] != $Mod[$iId]['tolDt']
+ || $iAdat['igDt'] != $Mod[$iId]['igDt']
+ ) {
+// echo '<br>'.$iId.' : '.$iAdat['tolDt'].' -- '.$_POST['tolDt'][$i].'<hr>';
+ 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/www/policy/private/naplo/admin/szemeszterek.php b/mayor-orig/www/policy/private/naplo/admin/szemeszterek.php
new file mode 100644
index 00000000..f5132dfd
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/szemeszterek.php
@@ -0,0 +1,13 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT)) {
+ putSzemeszterAdat($ADAT);
+ putUjIdoszak($ADAT['szemeszterAdat']['szemeszterId'], $ADAT['idoszakTipusok']);
+ }
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/szuloiAzonositok-pre.php b/mayor-orig/www/policy/private/naplo/admin/szuloiAzonositok-pre.php
new file mode 100644
index 00000000..68dde965
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/szuloiAzonositok-pre.php
@@ -0,0 +1,171 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+} else {
+
+
+ $tanev = readVariable($_POST['tanev'],'numeric',__TANEV);
+ $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null);
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/session/search/searchGroup.php');
+ require_once('include/modules/session/search/searchAccount.php');
+ require_once('include/modules/session/createAccount.php');
+
+ if (isset($osztalyId)) {
+
+ $osztalyTagok = getOsztalyNevsorEsSzulo($osztalyId);
+ $Tagok = array();
+ 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];
+ }
+ }
+ // 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/www/policy/private/naplo/admin/szuloiAzonositok.php b/mayor-orig/www/policy/private/naplo/admin/szuloiAzonositok.php
new file mode 100644
index 00000000..50df705e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/szuloiAzonositok.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $osztalyId, $osztalyTagok, $Tagok, $ldapTagok, $tanev;
+
+ if (is_array($osztalyTagok)) putCreateAzonositoForm($osztalyId, $osztalyTagok, $tanev, $Tagok);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/tanevek-pre.php b/mayor-orig/www/policy/private/naplo/admin/tanevek-pre.php
new file mode 100644
index 00000000..a842f97e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/tanevek-pre.php
@@ -0,0 +1,151 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/modules/naplo/share/osztalyModifier.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/diakModifier.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/jegyModifier.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/mysql.php');
+
+ $Tanevek = getTanevek($tervezett = true);
+ $Intezmenyek = getIntezmenyek();
+ $IntezmenyRoividNevek = array();
+ for ($i = 0; $i < count($Intezmenyek); $i++) $IntezmenyRovidNevek[] = $Intezmenyek[$i]['rovidNev'];
+ $intezmeny = readVariable($_POST['intezmeny'], 'strictstring', defined('__INTEZMENY') ? __INTEZMENY : null, $IntezmenyRovidNevek);
+
+ $tanev = readVariable($_POST['tanev'], 'numeric unsigned', null, $Tanevek);
+ if (!isset($tanev) && defined('__TANEV')) $tanev = __TANEV;
+ if (isset($tanev)) {
+ $ADAT['tanev'] = $tanev;
+ $ADAT['tanevAdat'] = getTanevAdat($tanev);
+ if ($ADAT['tanevAdat']['statusz'] == 'aktív') {
+ $Osztalyok = getOsztalyok($tanev);
+ $ADAT['vegzoOsztalyok'] = array();
+ for ($i = 0; $i < count($Osztalyok); $i++) {
+ if ($Osztalyok[$i]['vegzoTanev'] == $tanev) $ADAT['vegzoOsztalyok'][] = $Osztalyok[$i];
+ }
+ $ADAT['dt'] = readVariable($_POST['dt'], 'datetime', date('Y-m-d', strtotime('+7 days', strtotime($ADAT['tanevAdat']['zarasDt']))));
+ }
+ }
+ $rootUser = readVariable($_POST['rootUser'], 'strictstring', 'root');
+ $rootPassword = readVariable($_POST['rootPassword'], 'emptystringnull', null); // lehet benne bármilyen karakter
+
+ if ( $action == 'ujTanev' ) {
+
+ $tanev = readVariable($_POST['ujTanev'], 'numeric unsigned', null);
+ if ( isset($tanev) ) {
+
+ $DATA = array(); $j = 0;
+ for ($i = 0; $i < count($_POST['kezdesDt']); $i++) {
+ $kezdesDt = readVariable($_POST['kezdesDt'][$i], 'datetime', null);
+ $zarasDt = readVariable($_POST['zarasDt' ][$i], 'datetime', null);
+ if (isset($kezdesDt) && isset($zarasDt)) {
+ $DATA[$j++] = array(
+ 'tanev' => $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/www/policy/private/naplo/admin/tanevek.php b/mayor-orig/www/policy/private/naplo/admin/tanevek.php
new file mode 100644
index 00000000..769a1686
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/tanevek.php
@@ -0,0 +1,13 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $Szemeszterek, $ADAT, $tanev, $aktivTanev;
+
+ putUjTanevForm();
+ putTanevSzemeszterekForm($Szemeszterek);
+ if ($aktivTanev) putTanevLezarasForm($ADAT);
+ else putTanevAktivalForm($tanev);
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/admin/tankorok-pre.php b/mayor-orig/www/policy/private/naplo/admin/tankorok-pre.php
new file mode 100644
index 00000000..d1369674
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/tankorok-pre.php
@@ -0,0 +1,39 @@
+<?php
+{
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+ require_once('include/modules/naplo/share/file.php');
+
+ $mezo_elvalaszto = ' ';
+ if (isset($_POST['fileName'])) $fileName = fileNameNormal($_POST['fileName']);
+ $ADATOK = array();
+
+ if ($fileName != '') {
+
+ if (file_exists($fileName)) {
+
+ $MEZO_LISTA = $_POST['MEZO_LISTA'];
+ $KULCS_MEZOK = $_POST['KULCS_MEZOK'];
+ if (!is_array($MEZO_LISTA)) {
+
+ $ADATOK = readUpdateFile($fileName);
+ if (count($ADATOK) > 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/www/policy/private/naplo/admin/tankorok.php b/mayor-orig/www/policy/private/naplo/admin/tankorok.php
new file mode 100644
index 00000000..d667b706
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/admin/tankorok.php
@@ -0,0 +1,16 @@
+<?php
+{
+ if (_RIGHTS_OK !== true) die();
+
+ global $fileName, $ADATOK, $attrList, $MEZO_LISTA;
+
+ if ($fileName == '') {
+ putFileSelectForm('naplo_intezmeny:tankor');
+ } elseif ($MEZO_LISTA == '') {
+ if (count($ADATOK) > 0) putFieldSelectForm($fileName, $ADATOK, $attrList, 'naplo_intezmeny:tankor');
+ else echo 'NINCS ADAT!';
+ } else {
+ echo 'Adatfeldolgozás kész.';
+ }
+}
+?>
diff --git a/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesTipus-pre.php b/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesTipus-pre.php
new file mode 100644
index 00000000..9277b65d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesTipus-pre.php
@@ -0,0 +1,59 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/bejegyzes.php');
+
+ $dt = $ADAT['dt'] = readVariable($_POST['dt'], 'date', date('Y-m-d'));
+ $ADAT['jogosult'] = getSetField('naplo_intezmeny','bejegyzesTipus','jogosult');
+ $ADAT['bejegyzesTipusok'] = getBejegyzesTipusok($dt);
+
+ if ($action == 'modositas') {
+
+ $M['btId'] = readVariable($_POST['bejegyzesTipusId'], 'id', null);
+ $M['btNev'] = readVariable($_POST['bejegyzesTipusNev'], 'string', '');
+ for ($i = 0; $i < count($M['btId']); $i++) {
+ $btId = $M['btId'][$i];
+ $B[$btId]['bejegyzesTipusNev'] = $M['btNev'][$i];
+
+ }
+ if (is_array($_POST['jogosult'])) foreach ($_POST['jogosult'] as $value) {
+ list($id, $jogosult) = explode('-', $value);
+ if (in_array($jogosult, $ADAT['jogosult'])) $B[$id]['jogosult'][] = $jogosult;
+ }
+ if (is_array($_POST['hianyzasDb'])) foreach ($_POST['hianyzasDb'] as $value) {
+ list($id, $hianyzasDb) = explode('-', $value);
+ $B[$id]['hianyzasDb'] = $hianyzasDb;
+ }
+ // Végigmenve a jelenlegi bejegyzesTipus-okon - van-e változás?
+ foreach ($ADAT['bejegyzesTipusok'] as $tipus => $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/www/policy/private/naplo/bejegyzesek/bejegyzesTipus.php b/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesTipus.php
new file mode 100644
index 00000000..9213d95d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesTipus.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putBejegyzesTipusForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesek-pre.php b/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesek-pre.php
new file mode 100644
index 00000000..42c0ba03
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesek-pre.php
@@ -0,0 +1,73 @@
+<?php
+/*
+ module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__DIAK && !__TANAR && !__VEZETOSEG && !__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/ertekeles.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tanar.php');
+
+ $tanarId = readVariable($_POST['tanarId'], 'id', null);
+
+ $Osztalyok = getOsztalyok(__TANEV);
+ $osztalyIds = array(); for ($i = 0; $i < count($Osztalyok); $i++) $osztalyIds[] = $Osztalyok[$i]['osztalyId'];
+ if (!$tanarId)
+ $osztalyId = readVariable($_POST['osztalyId'], 'id', null, $osztalyIds);
+
+ // TODO!!!
+
+ $DIAKOK = getDiakok(array('tanev' => __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/www/policy/private/naplo/bejegyzesek/bejegyzesek.php b/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesek.php
new file mode 100644
index 00000000..083bed25
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/bejegyzesek/bejegyzesek.php
@@ -0,0 +1,15 @@
+<?php
+/*
+ module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $diakId, $osztalyId, $tanarId, $BEJEGYZESEK, $osztalyBejegyzesek, $Diakok;
+ global $DIAKOK;
+
+ if ($diakId != '') putBejegyzesLista($diakId, $BEJEGYZESEK);
+ elseif (isset($osztalyId)) putOsztalyBejegyzesek($osztalyBejegyzesek, $Diakok);
+ elseif (isset($tanarId)) putBejegyzesLista('',$BEJEGYZESEK, $DIAKOK);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/bejegyzesek/info-pre.php b/mayor-orig/www/policy/private/naplo/bejegyzesek/info-pre.php
new file mode 100644
index 00000000..21d05060
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/bejegyzesek/info-pre.php
@@ -0,0 +1,10 @@
+<?php
+
+
+ require_once('include/modules/naplo/share/bejegyzes.php');
+ if (__DIAK) $diakId = $ADAT['diakId'] = __USERDIAKID;
+
+ $ADAT['tolDt'] = date('Y-m-d 00:00:00', strtotime('-7 days'));
+ if (isset($ADAT['diakId'])) $ADAT['db'] = getDarabBejegyzes($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/bejegyzesek/info.php b/mayor-orig/www/policy/private/naplo/bejegyzesek/info.php
new file mode 100644
index 00000000..c0e13920
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/bejegyzesek/info.php
@@ -0,0 +1,5 @@
+<?php
+
+ global $ADAT;
+ if (isset($ADAT['diakId'])) putBejegyzesInfo($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/bejegyzesek/ujBejegyzes-pre.php b/mayor-orig/www/policy/private/naplo/bejegyzesek/ujBejegyzes-pre.php
new file mode 100644
index 00000000..c6db7843
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/bejegyzesek/ujBejegyzes-pre.php
@@ -0,0 +1,60 @@
+<?php
+/*
+ module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__TANAR && !__VEZETOSEG && !__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/bejegyzesModifier.php');
+ require_once('include/modules/naplo/share/bejegyzes.php');
+
+ $diakId = readVariable($_POST['diakId'], 'id');
+ $osztalyId = readVariable($_POST['osztalyId'], 'id');
+
+
+ if (isset($diakId)) {
+ $DIAKOSZTALYAI = getDiakokOsztalyai(array($diakId));
+ define(__OFO, ( is_array($_OSZTALYA) && count(array_intersect($DIAKOSZTALYAI[$diakId],$_OSZTALYA)) > 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/www/policy/private/naplo/bejegyzesek/ujBejegyzes.php b/mayor-orig/www/policy/private/naplo/bejegyzesek/ujBejegyzes.php
new file mode 100644
index 00000000..0de20502
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/bejegyzesek/ujBejegyzes.php
@@ -0,0 +1,12 @@
+<?php
+/*
+ module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $diakId, $osztalyId;
+
+ if (is_numeric($diakId)) putUjBejegyzesForm($diakId);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/error-pre.php b/mayor-orig/www/policy/private/naplo/error-pre.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/error-pre.php
diff --git a/mayor-orig/www/policy/private/naplo/error.php b/mayor-orig/www/policy/private/naplo/error.php
new file mode 100644
index 00000000..25d0f284
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/error.php
@@ -0,0 +1,6 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ echo 'ERROR PAGE';
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/ertekeles/ertekeles-pre.php b/mayor-orig/www/policy/private/naplo/ertekeles/ertekeles-pre.php
new file mode 100644
index 00000000..8e9903bd
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/ertekeles/ertekeles-pre.php
@@ -0,0 +1,205 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ $tanev = __TANEV;
+
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/kerdoiv.php');
+
+ if (_POLICY == 'parent') {
+ $cimzettTipusok = array('szulo','tankorSzulo','osztalySzulo');
+ $feladoTipus = 'szulo';
+ $feladoId = __USERSZULOID;
+ $diakId = __USERDIAKID;
+ $cimzett['szulo'] = array(__USERSZULOID);
+ $ret = getTankorByDiakId($diakId, $tanev);
+ $cimzett['tankorSzulo'] = array(); $tankorAdat = array();
+ for ($i = 0; $i < count($ret); $i++) {
+ if (!in_array($ret[$i]['tankorId'], $cimzett['tankorSzulo'])) {
+ $cimzett['tankorSzulo'][] = $ret[$i]['tankorId'];
+ $tankorAdat[ $ret[$i]['tankorId'] ] = $ret[$i];
+ }
+ }
+ $cimzett['osztaly'] = getDiakOsztalya($diakId, array('tanev' => $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/www/policy/private/naplo/ertekeles/ertekeles.php b/mayor-orig/www/policy/private/naplo/ertekeles/ertekeles.php
new file mode 100644
index 00000000..e69607b7
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/ertekeles/ertekeles.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $kerdoivId, $ADAT;
+
+ if (isset($kerdoivId) && isset($ADAT['cimzettId'])) putKerdoiv($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/ertekeles/export-pre.php b/mayor-orig/www/policy/private/naplo/ertekeles/export-pre.php
new file mode 100644
index 00000000..df76b3d1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/ertekeles/export-pre.php
@@ -0,0 +1,33 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/kerdoiv.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+
+ $ADAT['kerdoiv'] = getOsszesKerdoiv($tanev);
+ $ADAT['kerdoivIds'] = array();
+ for ($i = 0; $i < count($ADAT['kerdoiv']); $i++) $ADAT['kerdoivIds'][] = $ADAT['kerdoiv'][$i]['kerdoivId'];
+
+ $ADAT['kerdoivId'] = $kerdoivId = readVariable($_POST['kerdoivId'], 'numeric', null, $ADAT['kerdoivIds']);
+ if (isset($kerdoivId)) {
+
+ $ADAT['stat'] = getKerdoivStat($kerdoivId, $tanev);
+
+ }
+
+ }
+//echo '<pre>'; var_dump($ADAT['stat']['kerdes'][1]); echo '</pre>';
+
+ $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/www/policy/private/naplo/ertekeles/export.php b/mayor-orig/www/policy/private/naplo/ertekeles/export.php
new file mode 100644
index 00000000..f2f7171d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/ertekeles/export.php
@@ -0,0 +1,27 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ function exportKerdoiv($ADAT) {
+
+ formBegin();
+
+ echo '<textarea name="export" style="width: 80%; height: 200px;">';
+ foreach ($ADAT['stat']['kerdes'] as $kerdesId => $kAdat) {
+ echo $kAdat['kerdes']."\n";
+ foreach ($kAdat['valasz'] as $valaszId => $valasz) {
+ echo $valasz."\n";
+ }
+ echo "\n";
+ }
+
+ echo '</textarea>'."\n";
+ formEnd();
+
+ }
+
+ exportKerdoiv($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/ertekeles/kerdoivBetoltes-pre.php b/mayor-orig/www/policy/private/naplo/ertekeles/kerdoivBetoltes-pre.php
new file mode 100644
index 00000000..0d633fc8
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/ertekeles/kerdoivBetoltes-pre.php
@@ -0,0 +1,149 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/kerdoiv.php');
+
+ $ADAT['feladoTipusok'] = array('tanar','diak','szulo');
+ $ADAT['cimzettTipusok'] = array('diak','szulo','tanar','tankor','tankorSzulo','munkakozosseg','osztaly');
+
+ $ADAT['feladoTipus'] = readVariable($_POST['feladoTipus'], 'enum', null, $ADAT['feladoTipusok']);
+ $ADAT['cimzettTipus'] = readVariable($_POST['cimzettTipus'], 'enum', null, $ADAT['cimzettTipusok']);
+// !!!!
+ $kerdoivId = $ADAT['kerdoivId'] = readVariable($_POST['kerdoivId'], 'id');
+ if (isset($kerdoivId)) {
+ $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'];
+ }
+
+ 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/www/policy/private/naplo/ertekeles/kerdoivBetoltes.php b/mayor-orig/www/policy/private/naplo/ertekeles/kerdoivBetoltes.php
new file mode 100644
index 00000000..4b7c5287
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/ertekeles/kerdoivBetoltes.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (!isset($ADAT['kerdoivId'])) putKerdoivForm($ADAT);
+ else putCimzettForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/ertekeles/osszesites-pre.php b/mayor-orig/www/policy/private/naplo/ertekeles/osszesites-pre.php
new file mode 100644
index 00000000..0b537ffe
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/ertekeles/osszesites-pre.php
@@ -0,0 +1,97 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__TANAR && !__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/kerdoiv.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/share/print/pdf.php');
+
+ $ADAT['kerdoiv'] = getOsszesKerdoiv();
+ $ADAT['kerdoivIds'] = array();
+ for ($i = 0; $i < count($ADAT['kerdoiv']); $i++) $ADAT['kerdoivIds'][] = $ADAT['kerdoiv'][$i]['kerdoivId'];
+
+ $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'numeric unsigned');
+ if (__TANAR && !__NAPLOADMIN && !__VEZETOSEG) $tanarId = __USERTANARID;
+ $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'], 'numeric unsigned');
+
+ $ADAT['kerdoivId'] = $kerdoivId = readVariable($_POST['kerdoivId'], 'numeric', null, $ADAT['kerdoivIds']);
+
+ if (isset($kerdoivId)) {
+
+ $ADAT['kerdoivStat'] = getKerdoivStat($kerdoivId);
+
+// if (isset($tankorId)) {
+// } else {
+ $Table = array();
+ foreach (array('tankor','tankorSzulo') as $key => $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/www/policy/private/naplo/ertekeles/osszesites.php b/mayor-orig/www/policy/private/naplo/ertekeles/osszesites.php
new file mode 100644
index 00000000..c24a85d5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/ertekeles/osszesites.php
@@ -0,0 +1,5 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/esemeny/esemeny-pre.php b/mayor-orig/www/policy/private/naplo/esemeny/esemeny-pre.php
new file mode 100644
index 00000000..42808fe9
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/esemeny/esemeny-pre.php
@@ -0,0 +1,7 @@
+<?php
+
+ if (__DIAK) header('Location: '.location('index.php?page=naplo&sub=esemeny&f=jelentkezes'));
+ elseif (__NAPLOADMIN) header('Location: '.location('index.php?page=naplo&sub=esemeny&f=ujEsemeny'));
+ else header('Location: '.location('index.php?page=naplo&sub=esemeny&f=esemenyDiak'));
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/esemeny/esemeny.php b/mayor-orig/www/policy/private/naplo/esemeny/esemeny.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/esemeny/esemeny.php
diff --git a/mayor-orig/www/policy/private/naplo/esemeny/esemenyDiak-pre.php b/mayor-orig/www/policy/private/naplo/esemeny/esemenyDiak-pre.php
new file mode 100644
index 00000000..080fb0ca
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/esemeny/esemenyDiak-pre.php
@@ -0,0 +1,83 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/esemeny.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ $ADAT['esemenyKategoriak'] = getEnumField('naplo','esemeny','esemenyKategoria');
+ $ADAT['esemenyId'] = readVariable($_POST['esemenyId'],'id', readVariable($_GET['esemenyId'],'id'));
+ $_POST['esemenyId'] = $ADAT['esemenyId'];
+ if ($ADAT['esemenyId'] != '') $ADAT['esemenyAdat'] = getEsemenyAdat($ADAT['esemenyId']);
+ define('__MODOSITHAT',(
+ __NAPLOADMIN || __VEZETOSEG
+ || (
+ __TANAR
+ && ( $ADAT['esemenyId'] == '' || in_array(__USERTANARID, $ADAT['esemenyAdat']['tanarIds']))
+ )
+ ));
+
+ if (__MODOSITHAT) {
+ if ($action == 'nevsorModositas') {
+ $ujDiakIds = readVariable($_POST['ujDiakId'], 'id');
+ // TODO: ellenőrizni, hogy a diák jelentkezhet-e az eseményre (esemenyOsztaly, osztalyDiak)
+ if (is_array($ujDiakIds)) foreach ($ujDiakIds as $diakId) esemenyJelentkezes($diakId, $ADAT['esemenyId']);
+ $torolDiakId = readVariable($_POST['torolDiakId'], 'id');
+ if (isset($torolDiakId)) esemenyLeadas($torolDiakId, $ADAT['esemenyId']);
+
+ $jovahagyDiakId = readVariable($_POST['jovahagyDiakId'], 'id');
+ if (isset($jovahagyDiakId)) jelentkezesJovahagyas($jovahagyDiakId, $ADAT['esemenyId']);
+
+ $elutasitDiakId = readVariable($_POST['elutasitDiakId'], 'id');
+ if (isset($elutasitDiakId)) jelentkezesElutasitas($elutasitDiakId, $ADAT['esemenyId']);
+
+ }
+ }
+
+ if ($ADAT['esemenyId'] != '') {
+ $ADAT['esemenyAdat'] = getEsemenyAdat($ADAT['esemenyId']);
+ $ADAT['tanarok'] = getTanarok();
+ $ADAT['osztalyok'] = getosztalyok();
+
+ $ADAT['osztalyId2osztalyJel'] = array();
+ foreach ($ADAT['esemenyAdat']['osztalyIds'] as $_osztalyId) {
+ // osztályJelek lekérdezése
+ $i=0;
+ while ($i < count($ADAT['osztalyok']) && $ADAT['osztalyok'][$i]['osztalyId'] != $_osztalyId) $i++;
+ if (count($i<$ADAT['osztalyok'])) $ADAT['osztalyId2osztalyJel'][$_osztalyId] = $ADAT['osztalyok'][$i]['osztalyJel'];
+ $statuszLista = array('jogviszonyban van','magántanuló');
+ $tmp = getDiakokByOsztaly($_osztalyId, array('statusz' => $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/www/policy/private/naplo/esemeny/esemenyDiak.php b/mayor-orig/www/policy/private/naplo/esemeny/esemenyDiak.php
new file mode 100644
index 00000000..789fd5dd
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/esemeny/esemenyDiak.php
@@ -0,0 +1,8 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if ($ADAT['esemenyId'] != '') esemenyNevsor($ADAT);
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/esemeny/jelentkezes-pre.php b/mayor-orig/www/policy/private/naplo/esemeny/jelentkezes-pre.php
new file mode 100644
index 00000000..9d1de532
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/esemeny/jelentkezes-pre.php
@@ -0,0 +1,45 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__DIAK) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/esemeny.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ if (__DIAK) $ADAT['diakId'] = __USERDIAKID;
+ else $ADAT['diakId'] = readVariable($_POST['diakId'], 'id');
+
+ if (isset($ADAT['diakId'])) {
+ $ADAT['diakOsztaly'] = getDiakokOsztalyai(array($ADAT['diakId']));
+ $ADAT['esemenyek'] = getAktualisEsemenyByOsztaly($ADAT['diakOsztaly'][ $ADAT['diakId'] ]);
+ $ADAT['esemenyIds'] = array();
+ if (is_array($ADAT['esemenyek'])) foreach ($ADAT['esemenyek'] as $eAdat) $ADAT['esemenyIds'][] = $eAdat['esemenyId'];
+ $ADAT['valasztottEsemenyek'] = getValasztottEsemenyek($ADAT['diakId'], array('esemenyIds' => $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/www/policy/private/naplo/esemeny/jelentkezes.php b/mayor-orig/www/policy/private/naplo/esemeny/jelentkezes.php
new file mode 100644
index 00000000..b6286bf4
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/esemeny/jelentkezes.php
@@ -0,0 +1,8 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT['esemenyIds'])) putJelentkezesForm($ADAT);
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/esemeny/ujEsemeny-pre.php b/mayor-orig/www/policy/private/naplo/esemeny/ujEsemeny-pre.php
new file mode 100644
index 00000000..c1bffff8
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/esemeny/ujEsemeny-pre.php
@@ -0,0 +1,91 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/esemeny.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ $ADAT['esemenyKategoriak'] = getEnumField('naplo','esemeny','esemenyKategoria');
+ $ADAT['esemenyId'] = readVariable($_POST['esemenyId'],'id');
+ if ($ADAT['esemenyId'] != '') $ADAT['esemenyAdat'] = getEsemenyAdat($ADAT['esemenyId']);
+
+ define('__MODOSITHAT',(
+ __NAPLOADMIN || __VEZETOSEG
+ || (
+ __TANAR
+ && ( $ADAT['esemenyId'] == '' || in_array(__USERTANARID, $ADAT['esemenyAdat']['tanarIds']))
+ )
+ ));
+
+ if ($action == 'esemenyTorles') {
+
+ if (__MODOSITHAT && $ADAT['esemenyId'] != '') {
+ if (esemenyTorles($ADAT['esemenyId'])) {
+ $_SESSION['alert'][] = 'info:success';
+ unset($ADAT);
+ }
+ } else {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ }
+
+ } elseif ($action != '') {
+
+ $ADAT['esemenyRovidnev'] = readVariable($_POST['esemenyRovidnev'],'string');
+ $ADAT['esemenyNev'] = readVariable($_POST['esemenyNev'],'string');
+ $ADAT['esemenyKategoria'] = readVariable($_POST['esemenyKategoria'],'enum',null,$ADAT['esemenyKategoriak']);
+ $ADAT['esemenyLeiras'] = readVariable($_POST['esemenyLeiras'],'string');
+ $ADAT['jelentkezesTolDt'] = readVariable($_POST['jelentkezesTolDt'],'datetime');
+ $ADAT['jelentkezesIgDt'] = readVariable($_POST['jelentkezesIgDt'],'datetime');
+ $ADAT['min'] = readVariable($_POST['min'],'numeric unsigned');
+ $ADAT['max'] = readVariable($_POST['max'],'numeric unsigned');
+
+ if (
+ $ADAT['esemenyRovidnev']!='' && $ADAT['esemenyKategoria']!='' && $ADAT['jelentkezesTolDt']!='' && $ADAT['jelentkezesIgDt']!=''
+ && ($action == 'ujEsemeny' || $ADAT['esemenyId']!='')
+ ) {
+
+ if ($action == 'ujEsemeny') {
+ $ADAT['esemenyId'] = ujEsemeny($ADAT);
+ if (is_numeric($ADAT['esemenyId'])) $_SESSION['alert'][] = 'info:success';
+ } elseif ($action == 'esemenyModositas') {
+ $ADAT['esemenyTanar'] = readVariable($_POST['esemenyTanar'],'id',array());
+ $ADAT['esemenyOsztaly'] = readVariable($_POST['esemenyOsztaly'],'id',array());
+ $ADAT['esemenyTanar'] = readVariable($_POST['esemenyTanar'],'id',array());
+ // TODO: jogosultságok! Tanár csak a hozzárendeltet!
+ if (__MODOSITHAT) {
+ esemenyModositas($ADAT);
+ $_SESSION['alert'][] = 'info:success';
+ } else $_SESSION['alert'][] = 'message:insufficient_access';
+ }
+
+ } else {
+ $_SESSION['alert'][] = 'message:wrong_data';
+ } // wrong_data
+ } // action
+
+ if ($ADAT['esemenyId'] != '') {
+ $ADAT['esemenyAdat'] = getEsemenyAdat($ADAT['esemenyId']);
+ $ADAT['tanarok'] = getTanarok();
+ $ADAT['osztalyok'] = getosztalyok();
+ }
+ $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=esemenyDiak'),
+ 'titleConst' => array('_ESEMENYJELENTKEZOK'), 'post' => array('esemenyId'),
+ );
+ }
+ getToolParameters();
+
+ }
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/esemeny/ujEsemeny.php b/mayor-orig/www/policy/private/naplo/esemeny/ujEsemeny.php
new file mode 100644
index 00000000..fdb37417
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/esemeny/ujEsemeny.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ esemenyForm($ADAT);
+ //if ($ADAT['esemenyId'] == '') esemenyLista($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/export/bizonyitvany-pre.php b/mayor-orig/www/policy/private/naplo/export/bizonyitvany-pre.php
new file mode 100644
index 00000000..b71adf7b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/bizonyitvany-pre.php
@@ -0,0 +1,114 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME',strtotime(date('Y-m-d')));
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/osztalyozo/stat.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $ADAT['formatum'] = readVariable($_POST['formatum'], 'enum', 'ods', array('csv','ods','xml'));
+ if ($ADAT['formatum'] == 'xml') $ADAT['mime'] = 'application/vnd.ms-excel';
+
+ if (file_exists($file = _MAYOR_DIR.'/export/module-naplo/'.__INTEZMENY.'/bizonyitvany.php'))
+ require_once($file);
+ elseif (file_exists($file = _MAYOR_DIR.'/export/module-naplo/default/bizonyitvany.php'))
+ require_once($file);
+
+ $ADAT['magatartasIdk'] = getMagatartas();
+ $ADAT['szorgalomIdk']= 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('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/www/policy/private/naplo/export/bizonyitvany.php b/mayor-orig/www/policy/private/naplo/export/bizonyitvany.php
new file mode 100644
index 00000000..b87c8a05
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/bizonyitvany.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putExportForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/export/diakExport-pre.php b/mayor-orig/www/policy/private/naplo/export/diakExport-pre.php
new file mode 100644
index 00000000..eb3d95e5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/diakExport-pre.php
@@ -0,0 +1,68 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__TANAR) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['formatum'] = isset($_POST['html'])?'html':(isset($_POST['csv'])?'csv':(isset($_POST['xml'])?'xml':null));
+ if (is_null($ADAT['formatum'])) $ADAT['formatum'] = readVariable($_POST['formatum'], 'enum', null, array('csv','xml','html'));
+ $_POST['formatum'] = $ADAT['formatum'];
+ if ($ADAT['formatum'] == 'xml') {
+ $ADAT['mime'] = 'application/vnd.ms-excel';
+ $ADAT['formatum'] = 'xml';
+ }
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null);
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'datetime', date('Y-m-d'));
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+ if ($tanev != __TANEV) $TA = getTanevAdat($tanev); else $TA = $_TANEV;
+
+ $ret = getTableFields('diak','naplo_intezmeny',array('osztalyJel','diakNaploSorszam'), array('withType' => 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/www/policy/private/naplo/export/diakExport.php b/mayor-orig/www/policy/private/naplo/export/diakExport.php
new file mode 100644
index 00000000..30066c3f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/diakExport.php
@@ -0,0 +1,12 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putDiakExportForm($ADAT);
+ if (is_array($ADAT['export']) && count($ADAT['export']) > 0) {
+ putDiakTabla($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/export/kirBizonyitvanyExport-pre.php b/mayor-orig/www/policy/private/naplo/export/kirBizonyitvanyExport-pre.php
new file mode 100644
index 00000000..0e0bd72f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/kirBizonyitvanyExport-pre.php
@@ -0,0 +1,132 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME',strtotime(date('Y-m-d')));
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/osztalyozo/stat.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/targy.php');
+
+ $INTEZMENY = getIntezmenyByRovidnev(__INTEZMENY);
+
+ {
+ $q = "SELECT targyId,kirTargyId FROM targy WHERE kirTargyId IS NOT NULL";
+ $TARGYID2KIR = db_query($q, array('fv'=>'...','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<count($ADAT['diakIds']); $i++) {
+ $_diakId = $ADAT['diakIds'][$i];
+ $FORPRINT['diak'][$_diakId]['oId'] = $ADAT['diakok'][$ADAT['diakIds'][$i]]['oId'];
+// if (in_array($ADAT['jegyek']...
+ if (is_array($ADAT['jegyek'][$_diakId])) {
+ foreach ($ADAT['jegyek'][$_diakId] as $_targyId => $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/www/policy/private/naplo/export/kirBizonyitvanyExport.php b/mayor-orig/www/policy/private/naplo/export/kirBizonyitvanyExport.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/kirBizonyitvanyExport.php
diff --git a/mayor-orig/www/policy/private/naplo/export/kreta-pre.php b/mayor-orig/www/policy/private/naplo/export/kreta-pre.php
new file mode 100644
index 00000000..89129607
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/kreta-pre.php
@@ -0,0 +1,176 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'] = 'page:insufficient_access';
+} else {
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/file.php');
+ // !!!!!!!!!!!!!!!!!!!!!!!!!!!!! XROSS-LINK
+ require_once('include/modules/naplo/intezmeny/tankorTanarHozzarendeles.php'); // !!! link!
+
+ $ADAT['telephelyId'] = $telephelyId = readVariable($_POST['telephelyId'], 'id');
+ if (isset($telephelyId)) $filter = array('telephelyId'=>$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<count($TANAROK); $i++) {
+ $EXPORT[$j][]=$TANAROK[$i]['oId'];
+ $EXPORT[$j][]=$TANAROK[$i]['viseltNevElotag'];
+ $EXPORT[$j][]=$TANAROK[$i]['viseltCsaladinev'];
+ $EXPORT[$j][]=$TANAROK[$i]['viseltUtonev'];
+ $EXPORT[$j][]=''; // névsorrend
+ $EXPORT[$j][]=''; // Anyja Neve
+ $EXPORT[$j][]=''; // Anyja Neve
+ $EXPORT[$j][]=''; // Anyja Neve
+ $EXPORT[$j][]=''; // Anyja Neve
+ $EXPORT[$j][]=strval($TANAROK[$i]['szuletesiIdo']);
+ $EXPORT[$j][]=strval($TANAROK[$i]['szuletesiHely']);
+ //for ($_x=count($EXPORT[$j]); $_x<count($EXPORT[0]); $_x++) $EXPORT[$j][]='';
+ $j++;
+ }
+ $ADAT['EXPORT'] = $EXPORT;
+ //dump($ADAT);
+ $ADAT['formatum'] = readVariable($_POST['formatum'], 'enum', null, array('csv','ods','xml'));
+ if ($ADAT['formatum'] == 'xml') $ADAT['mime'] = 'application/vnd.ms-excel';
+ if (isset($ADAT['formatum'])) {
+ $file = _DOWNLOADDIR.'/private/naplo/export/kreta_mayor_TANAR_'.date('Ymd');
+ if (exportKretaTanarAdat($file, $ADAT)) {
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/export/&file='.$file.'.'.$ADAT['formatum'].'&mimetype='.$ADAT['mime']));
+ }
+ }
+
+ } elseif ($action=='tankorTanarExport') {
+
+ /* KRÉTA tanárok */
+
+ // echo 'A KIR rendszerből az alábbi módon letöltött táblázat a megfelelő: A KIR rendszerben az Alkalmazott keresése menüpontra kattintva, a Keresés ablakban a keresés találatait az Összes találat listába gombbal rakja át a Kérelemhez felvett személyek ablakba. Az ott található lista alján kattintson az Adatok exportálása gombra. A felugró ablakban válassza ki mindhárom listát (Személyes adatok, Jogviszony adatok, Képzettségek), majd töltse le a dokumentumot.';
+ /* KRÉTA hagyományos táblázat */
+ /*
+ Az első oszlopba (A oszlop) az Osztály nevét kell beírni, abban az esetben, ha a tanóra a teljes
+ osztálynak kerül megtartásra.
+ A második oszlopba (B oszlop) a Csoport neveket kell beírni, abban az esetben, ha a tanóra
+ csoportbontásban kerül megtartásra.
+ A harmadik oszlopba (C oszlop) a Tantárgy nevét kell megadni.
+ A negyedik, Csoportbontás nevű oszlopban (D oszlop) lehet jelezni, ha a tanóra
+ csoportbontásban kerül megtartásra. Ennek jelzése az előzetes tantárgyfelosztás esetén nem
+ kötelező!
+ Az ötödik oszlopba (E oszlop) az egyes pedagógusok adott tantárgyra, ill. osztályra/csoportra
+ vonatkozó heti óraszámát kell megadni.
+ Az utolsó oszlop (F oszlop) a pedagógus nevét tartalmazza!
+ */
+
+ $q = "select tanarId FROM tanar WHERE CONCAT(viseltNevElotag,viseltCsaladinev,viseltUtonev) = (select CONCAT(viseltNevElotag,viseltCsaladinev,viseltUtonev) AS nev from tanar GROUP BY nev HAVING count(*)>1)";
+ $utkozoNevuTanarok = db_query($q, array('fv'=>'','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<count($ADAT['tankorok']); $i++) {
+ if ($ADAT['tankorok'][$i]['bontasOk']===false) {
+ $_SESSION['alert'][] = 'info:tankör bontás hiba:'.$ADAT['tankorok'][$i]['tankorNev'];
+ //dump($ADAT['tankorok'][$i]);
+ // ha azt szeretnénk, hogy ne legyenek benne a "hibás" (bontasOk===false), akkor ez kell: } else {
+ }
+ if ($ADAT['tankorok'][$i]['hetiOraszam'] == 0) continue; // a heti nullás órákat kihagyjuk
+ if (!in_array($ADAT['tankorok'][$i]['tankorTipusId'],$exportalandoTankorTipusIdk)) continue;
+ for ($t=0; $t<count($ADAT['tankorok'][$i]['tanarIds']); $t++) {
+ $_tanarId = $ADAT['tankorok'][$i]['tanarIds'][$t];
+ $_szulDt = $TANARADAT[intval($_tanarId)][0]['szuletesiIdo'];
+ $_tanarNev = $TANARADAT[intval($_tanarId)][0]['tanarNev'];
+ $EXPORT[$j][] = ''; // A oszlop: egész osztály
+ $EXPORT[$j][] = $ADAT['tankorok'][$i]['tankorNev'] . ' ('.$ADAT['tankorok'][$i]['tankorId'].')'; // B oszlop: csoport név
+ $EXPORT[$j][] = $ADAT['targyAdat'][ $ADAT['tankorok'][$i]['targyId'] ]['targyNev']; // C oszlop: tantárgy neve
+ // $EXPORT[$j][] = ''; // D oszlop: TRUE/FALSE???
+ $EXPORT[$j][] = $ADAT['tankorok'][$i]['hetiOraszam']/count($ADAT['tankorok'][$i]['tanarIds']); // E oszlop: heti óraszám
+ if (is_array($utkozoNevuTanarok[$_tanarId]) && $_szulDt != '0000-00-00' && $_szulDt != '') $_tanarNev .= ' ('.$_szulDt.')'; // E oszlop: pedagógus neve
+ $EXPORT[$j][] = $_tanarNev; // F oszlop
+ $j++;
+ }
+ }
+ $ADAT['EXPORT'] = $EXPORT;
+
+ $ADAT['formatum'] = readVariable($_POST['formatum'], 'enum', null, array('csv','ods','xml'));
+ if ($ADAT['formatum'] == 'xml') $ADAT['mime'] = 'application/vnd.ms-excel';
+ if (isset($ADAT['formatum'])) {
+ $file = _DOWNLOADDIR.'/private/naplo/export/kreta_ETTF_telephely'.intval($telephelyId).'_'.date('Ymd');
+ if (exportTankorTanar($file, $ADAT)) {
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/export/&file='.$file.'.'.$ADAT['formatum'].'&mimetype='.$ADAT['mime']));
+ }
+ }
+ } // end of tankorTanarExport
+
+ $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'post'=>array());
+ getToolParameters();
+
+}
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/export/kreta.php b/mayor-orig/www/policy/private/naplo/export/kreta.php
new file mode 100644
index 00000000..ea276fd1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/kreta.php
@@ -0,0 +1,11 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ echo '<img src="skin/classic/module-naplo/img/io/kreta.svg" style="height:50px; padding:10px; display:table-cell; margin:auto;"/>';
+ putKretaTanarExportForm($ADAT);
+ putKretaTankorTanarExportForm($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/export/sulix-pre.php b/mayor-orig/www/policy/private/naplo/export/sulix-pre.php
new file mode 100644
index 00000000..c0e961c2
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/sulix-pre.php
@@ -0,0 +1,26 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/session/search/searchAccount.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ if ($action == 'sulixExport') {
+ $ADAT['diak'] = getDiakAccounts();
+ $ADAT['tanar'] = getTanarAccounts();
+ if (createTGZ($ADAT)) {
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/export/sulix&file=mayor2sulix.tgz&mimetype=text/csv'));
+ }
+ }
+
+
+ }
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/export/sulix.php b/mayor-orig/www/policy/private/naplo/export/sulix.php
new file mode 100644
index 00000000..b87c8a05
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/sulix.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putExportForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/export/tanarOsztalyOraszam-pre.php b/mayor-orig/www/policy/private/naplo/export/tanarOsztalyOraszam-pre.php
new file mode 100644
index 00000000..addd994f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/tanarOsztalyOraszam-pre.php
@@ -0,0 +1,106 @@
+<?php
+if (_RIGHTS_OK !== true) die();
+if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'] = 'page:insufficient_access';
+} else {
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/file.php');
+
+
+ $lr = db_connect('naplo_intezmeny');
+
+ $OSZTALYOK = getOsztalyok();
+ $TANAROK = getTanarok();
+ $TARGYAK = getTargyak();
+ $TARGYAK = reindex($TARGYAK,array('targyId'));
+//dump($OSZTALYOK);
+ for ($i=0; $i<count($OSZTALYOK); $i++) {
+ $osztalyIdk[] = $OSZTALYOK[$i]['osztalyId'];
+ }
+
+ $q = "SELECT tankorId, count(szemeszter), avg(oraszam), sum(oraszam)/count(szemeszter) AS szummaOra, targyId from tankorSzemeszter
+ LEFT JOIN tankor USING (tankorId)
+ WHERE oraszam!=0 AND tanev=".__TANEV.' GROUP BY tankorId';
+ $r = db_query($q, array('modul'=>'naplo_intezmeny','result'=>'indexed'));
+// dump($r);
+ for ($i=0; $i<count($r); $i++) {
+ $tankorAdat = $r[$i];
+ $tankorId = $tankorAdat['tankorId'];
+ //dump($tankorAdat);
+ ($T_OSZTALY = getTankorOsztalyaiByTanev($tankorId,__TANEV, null, $lr));
+ ($T_TANAR = getTankorTanaraiByInterval($tankorId,array('tanev'=>__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<count($TANAROK); $i++) {
+ $tanarId = $TANAROK[$i]['tanarId'];
+ $TANAR_ADATOK[$tanarId] = $TANAROK[$i];
+ }
+
+ /* HEADER */
+ $EXPORT[0][] = 'Név';
+ $EXPORT[0][] = 'MaYoR Tanár Id';
+ $EXPORT[0][] = 'MaYoR Tárgy név';
+ $EXPORT[0][] = 'MaYoR Tárgy Id';
+ $EXPORT[0][] = 'MaYoR Státusz';
+ $EXPORT[0][] = 'MaYoR heti kötelező óraszám';
+ $EXPORT[0][] = 'MaYoR heti munkaóra';
+ for ($i=0; $i<count($OSZTALYOK); $i++) {
+// $osztalyIdk[] = $OSZTALYOK[$i]['osztalyId'];
+ $EXPORT[0][] = $OSZTALYOK[$i]['osztalyJel'];
+ }
+ $EXPORT[0][] = 'MaYoR Sorösszeg';
+
+ for ($i=0; $i<count($SOR); $i++) {
+ list($tanarId,$targyId) = explode('_',$SOR[$i]);
+ $tanarTargyak = array();
+ foreach($ADAT[$tanarId] as $_targyId => $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<count($OSZTALYOK); $j++) {
+ $osztalyAdat = $OSZTALYOK[$j];
+ $osztalyId = $osztalyAdat['osztalyId'];
+ $SZUM = 0;
+ for ($k=0; $k<count($ADAT[$tanarId][$targyId][$osztalyId]); $k++) {
+ $SZUM += $ADAT[$tanarId][$targyId][$osztalyId][$k];
+ }
+ $EXPORT[($i+1)][] =$SZUM;
+ $tanarSzum += $SZUM;
+ }
+ $EXPORT[($i+1)][] = "=".$tanarSzum;
+ }
+ $ADAT['EXPORT'] = $EXPORT;
+
+
+
+ $ADAT['formatum'] = readVariable($_POST['formatum'], 'enum', null, array('csv','ods','xml'));
+ if ($ADAT['formatum'] == 'xml') $ADAT['mime'] = 'application/vnd.ms-excel';
+ if (isset($ADAT['formatum'])) {
+ $file = _DOWNLOADDIR.'/private/naplo/export/tanarOsztalyOraszam'.'_'.date('Ymd');
+ if (exportTanarOsztalyOraszam($file, $ADAT)) {
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/export/&file='.$file.'.'.$ADAT['formatum'].'&mimetype='.$ADAT['mime']));
+ }
+ }
+
+}
+
+dump($EXPORT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/export/tanarOsztalyOraszam.php b/mayor-orig/www/policy/private/naplo/export/tanarOsztalyOraszam.php
new file mode 100644
index 00000000..a31e1b9f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/tanarOsztalyOraszam.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+// dump($ADAT);
+ putTanarOsztalyOraszamForm($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/export/tantargyFelosztas-pre.php b/mayor-orig/www/policy/private/naplo/export/tantargyFelosztas-pre.php
new file mode 100644
index 00000000..9de0f8f6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/tantargyFelosztas-pre.php
@@ -0,0 +1,61 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/kepesites.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $ADAT['formatum'] = readVariable($_POST['formatum'], 'enum', null, array('csv','ods','xml'));
+ if ($ADAT['formatum'] == 'xml') $ADAT['mime'] = 'application/vnd.ms-excel';
+
+ if (isset($ADAT['formatum'])) {
+
+ // tanárok
+ $ADAT['tanarok'] = getTanarok(array('extraAttrs'=> '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']));
+
+ }
+
+ }
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/export/tantargyFelosztas.php b/mayor-orig/www/policy/private/naplo/export/tantargyFelosztas.php
new file mode 100644
index 00000000..c75ffff4
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/export/tantargyFelosztas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putExportForm($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/elmaradas-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/elmaradas-pre.php
new file mode 100644
index 00000000..ea3a2959
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/elmaradas-pre.php
@@ -0,0 +1,17 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ $Tanarok = getTanarok(array('tanev' => __TANEV, 'beDt'=>$_TANEV['kezdesDt'],'kiDt'=>$_TANEV['zarasDt'],'result' => 'assoc'));
+ $Elmaradas = getHaladasiElmaradas();
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/elmaradas.php b/mayor-orig/www/policy/private/naplo/haladasi/elmaradas.php
new file mode 100644
index 00000000..8b4019bf
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/elmaradas.php
@@ -0,0 +1,12 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $Elmaradas, $Tanarok;
+
+ if (
+ (is_array($Elmaradas['lezart']) && count($Elmaradas['lezart']) > 0)
+ || (is_array($Elmaradas['beirando']) && count($Elmaradas['beirando']) > 0)
+ ) putElmaradas($Elmaradas, $Tanarok);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/elszamolas-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/elszamolas-pre.php
new file mode 100644
index 00000000..37078c30
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/elszamolas-pre.php
@@ -0,0 +1,59 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/share/date/names.php');
+
+ $dt = readVariable($_POST['dt'],'date');
+ $igDt = readVariable($_POST['igDt'],'date');
+ $tolDt = readVariable($_POST['tolDt'],'date');
+ if (!isset($dt) && !isset($tolDt) && !isset($igDt)) {
+ $dt = date('Y-m-d',strtotime('Saturday', strtotime(date('Y-m-d'))));
+ $igDt = $dt;
+ $tolDt = getTanitasiNapVissza(5,$dt);;
+ } elseif (isset($dt)) {
+ $igDt = $dt;
+ $tolDt = getTanitasiNapVissza(5,$dt);;
+ } else {
+ $igDt = readVariable($_POST['igDt'],'date',$_TANEV['zarasDt']);
+ $tolDt = readVariable($_POST['tolDt'],'date',$_TANEV['kezdesDt']);
+ }
+
+ if (__VEZETOSEG || __NAPLOADMIN) {
+ $ADAT = getElszamolas($tolDt, $igDt);
+ } elseif (defined('__USERTANARID')) {
+ $ADAT = getElszamolas($tolDt, $igDt, __USERTANARID);
+ } else {
+ // hiba
+ }
+ $ADAT['tanarok'] = getTanarok();
+ $ADAT['napTipusok'] = getNapTipusok();
+
+ $TOOL['datumSelect'] = array(
+ 'tipus'=>'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/www/policy/private/naplo/haladasi/elszamolas.php b/mayor-orig/www/policy/private/naplo/haladasi/elszamolas.php
new file mode 100644
index 00000000..8e2635d6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/elszamolas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putElszamolas($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/haladasi-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/haladasi-pre.php
new file mode 100644
index 00000000..f6a59939
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/haladasi-pre.php
@@ -0,0 +1,387 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__TANAR && !__DIAK && !__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/oraModifier.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+ require_once('include/modules/naplo/share/hetes.php');
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/share/date/names.php');
+
+
+ $ADAT['csakUres'] = $csakUres = readVariable($_POST['csakUres'],'bool',false,null);
+ $ADAT['teremId' ] = $teremId = readVariable($_POST['teremId'],'id');
+
+
+if ( $skin == 'ajax'
+ && $_TANEV['szemeszter'][1]['statusz'] == 'aktív'
+// Év végén komoly gond, ha nem tudják a kollégák az utolsó napok óráit beírni...
+// && ( __NAPLOADMIN || __VEZETOSEG || ((__TANAR || __VEZETOSEG ) && __FOLYO_TANEV))
+ && ( __NAPLOADMIN || __VEZETOSEG || ((__TANAR || __VEZETOSEG )))
+ && $action == 'haladasiNaploBeiras' && is_array($_POST['oraId'])
+) {
+ $_JSON['result'] = true; //default
+ $oraIds = readVariable($_POST['oraId'],'id');
+ $lr = db_connect('naplo');
+ for ($i = 0; $i < count($oraIds); $i++) {
+ if (is_numeric($oraIds[$i])) {
+ $oraId = $oraIds[$i];
+ $_ki = readVariable($_POST['K_'.$oraId], 'id', '');
+ $_leiras = readVariable($_POST['L_'.$oraId],'string', '');
+ $_csoportAdat = readVariable($_POST['M_'.$oraId], 'string', '');
+ if (isset($_POST['L_'.$oraId]))
+ $_JSON['result'] = $_JSON['result'] && updateHaladasiNaploOra($oraId, $_leiras, $_csoportAdat, $_ki, $lr);
+ }
+ }
+ // ez DUPlikátum, a nem ajaxnál is ezt tesszük ám!
+
+ $ORATOROL = readVariable($_POST['ORATOROL'],'id');
+ for ($i=0; $i<count($ORATOROL); $i++) {
+ if ($ORATOROL[$i]!='') {
+ oraElmarad($ORATOROL[$i],$lr);
+ }
+ }
+ // szintén DUP
+ $TEREMVALT = readVariable($_POST['TEREMVALT'],'string');
+ for ($i=0; $i<count($TEREMVALT); $i++) {
+ if ($TEREMVALT[$i]!='') {
+ //oraId_teremId
+ list($oraId,$teremId) = explode('_',$TEREMVALT[$i]);
+ haladasiTeremModositas($oraId,$teremId,$lr);
+ }
+ }
+
+ db_close($lr);
+} else {
+
+ // Egy tankör haladási naplójához
+ $tankorId = readVariable($_POST['tankorId'],'id',readVariable($_GET['tankorId'],'id'));
+
+ // Ha diák nézi, akkor csak a saját tanköreit láthatja
+ if (__DIAK) $diakId = __USERDIAKID;
+ else $diakId = readVariable($_POST['diakId'],'id');
+
+ $osztalyId = readVariable($_POST['osztalyId'],'id');
+
+ if (isset($diakId)) {
+ // A diák már nem határozza meg egyértelműen az osztályt! --> 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<count($UJORA); $i++) {
+ if ($UJORA[$i]!='') {
+ //2013-08-30_2_egyéb_1
+ list($_dt,$_ora,$_tipus,$_feladatTipusId) = explode('_',$UJORA[$i]);
+ if (__VEZETOSEG===true || __NAPLOADMIN===true) {
+ $_eredet='órarend';
+ $_ki = $tanarId;
+ } else {
+ $_eredet = 'plusz';
+ $_ki = __USERTANARID;
+ }
+ $UJORAIDK[$_dt][$_ora] = ujOraFelvesz(array('dt'=>$_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<count($ORATOROL); $i++) {
+ if ($ORATOROL[$i]!='') {
+ oraElmarad($ORATOROL[$i],$lr);
+ }
+ }
+ $TEREMVALT = readVariable($_POST['TEREMVALT'],'string');
+ for ($i=0; $i<count($TEREMVALT); $i++) {
+ if ($TEREMVALT[$i]!='') {
+ //oraId_teremId
+ list($oraId,$teremId) = explode('_',$TEREMVALT[$i]);
+ haladasiTeremModositas($oraId,$teremId,$lr);
+ }
+ }
+
+ db_close($lr);
+
+ } 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);
+
+// } elseif (strtotime($igDt)<=strtotime('+1 week')) {
+// $_NAPOK = _genNapok($tolDt,$igDt);
+// for ($i=0; $i<count($_NAPOK); $i++) {
+// checkNaplo($_NAPOK[$i]);
+// }
+ }
+ }
+
+ 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<count($_NAPOK); $i++) {
+ checkNaplo($_NAPOK[$i]);
+ }
+
+ }
+ /* ------------------------------------------------- */
+
+// Ezt nem használja a getHaladási...
+
+ if (isset($osztalyId) && !isset($diakId)) $ADAT['hetesek'] = getHetes($osztalyId, _SHOW_DAYS_FROM);
+
+/*
+ $_Porder = readVariable( $_POST['order'], 'enum', null, array('ASC','DESC') );
+ $_PorderInvert = readVariable($_POST['orderInvert'], 'notempty');
+ // rendezési záradék
+ if (
+ ($_Porder == 'ASC' and $_PorderInvert == false) or
+ ($_Porder == 'DESC' and $_PorderInvert == true)
+ ) {
+ $orderBy = array('dt','ora'); // A lekérdezéshez
+ $order = 'ASC'; // A megjelenítéshez
+ } else {
+ $orderBy = array('dt DESC','ora DESC'); // A lekérdezéshez
+ $order = 'DESC'; // A megjelenítéshez
+ }
+*/
+ 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<count($Tankorok); $i++) {
+ if ($tankorId == $Tankorok[$i]['tankorId']) { $allowed=true; break; }
+ }
+ } else $allowed = true;
+ if ($allowed) {
+ $Tankorok = getTankorById($tankorId, __TANEV); // felül kell írnunk
+ $ADAT['haladasi'] = getHaladasi($Tankorok, $ADAT['munkaterv'], $orderBy, $csakUres);
+ }
+ } elseif ($teremId!='') {
+ $ADAT['haladasi'] = getHaladasi($Tankorok, '', $orderBy, '', $csakUres,$teremId);
+ } else {
+ $ADAT['haladasi'] = getHaladasi($Tankorok, $ADAT['munkaterv'], $orderBy, $tanarId, $csakUres);
+ }
+ $ADAT['ORAIDK'] = array();
+ if (is_array($ADAT['haladasi'])) {
+ reset($ADAT['haladasi']);
+ foreach($ADAT['haladasi'] as $_k => $_v) {
+ for ($i=0; $i<count($_v); $i++) {
+ if (!is_null($ADAT['haladasi'][$_k][$i]['oraId'])) $ADAT['ORAIDK'][] = $ADAT['haladasi'][$_k][$i]['oraId'];
+ }
+ }
+ }
+ $ADAT['oraLatogatasok'] = getOralatogatasByOraIds($ADAT['ORAIDK']);
+ foreach ($ADAT['oraLatogatasok'] as $olId => $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/www/policy/private/naplo/haladasi/haladasi.php b/mayor-orig/www/policy/private/naplo/haladasi/haladasi.php
new file mode 100644
index 00000000..11e1b8c3
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/haladasi.php
@@ -0,0 +1,15 @@
+<?php
+/*
+ module: naplo
+ version: 3.1
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT,$skin;
+
+ putHaladasiBejegyzesek($ADAT);
+ if ($ADAT['title']!='') {
+ if (isset($ADAT['osztalyId'])) putHetesForm($ADAT);
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/helyettesites-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/helyettesites-pre.php
new file mode 100644
index 00000000..5f7d600c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/helyettesites-pre.php
@@ -0,0 +1,194 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN and !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/tankor.php'); // Mozgatás, csere
+ require_once('include/modules/naplo/share/diak.php'); // Mozgatás, csere
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/modules/naplo/share/terem.php');
+
+ global $_TANEV;
+
+ $napiMinOra = getMinOra();
+ $napiMaxOra = getMaxOra();
+
+ $dt = readVariable($_POST['dt'], 'datetime', null);
+ if (!isset($dt)) $dt = readVariable($_GET['dt'], 'datetime', null);
+ if (!isset($dt)) $dt = date('Y-m-d');
+
+ if ($_TANEV['statusz']!='aktív') $_SESSION['alert'][] = 'page:wrong_data:nem aktív a tanev:'.$_TANEV['tanev'];
+ if (__FOLYO_TANEV || __NAPLOADMIN) { // Tanéven kívül már csak admin módosítson
+
+ if (
+ strtotime($_TANEV['kezdesDt']) <= strtotime($dt)
+ && strtotime($dt) <= strtotime($_TANEV['zarasDt'])
+ ) {
+ // itt egy ciklussal ellenőrizzük ne csak dt-t, hanem vissza a mai napig (ha jövő dátum van kiválasztva)
+ checkNaplo($dt);
+ $_dt = $dt;
+ while (strtotime($_dt)>time()) {
+ $_dt = date('Y-m-d',strtotime('-1 day',strtotime($_dt)));
+ checkNaplo($_dt);
+ }
+ }
+ // -------------- action --------------//
+
+ if ($action == 'hianyzoModositas') {
+
+ /* Régi megoldás
+ $hianyzok = $_POST['hianyzok'];
+ if (!is_array($hianyzok)) $hianyzok = array();
+ $voltHianyzok = getHianyzok($dt);
+
+ $ujHianyzok = array_diff($hianyzok, $voltHianyzok);
+ $toroltHianyzok = array_diff($voltHianyzok, $hianyzok);
+ */
+ $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) {
+ $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/www/policy/private/naplo/haladasi/helyettesites.php b/mayor-orig/www/policy/private/naplo/haladasi/helyettesites.php
new file mode 100644
index 00000000..5707092c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/helyettesites.php
@@ -0,0 +1,46 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $dt, $HELYETTESITES;
+ global $manual, $Tanarok, $Termek;
+ global $mozgat, $csere, $orarend;
+ global $oraAdat, $ujDt, $TANAR_DT_NAPI_ORAK, $TANAR_UJDT_NAPI_ORAK, $tanarId;
+ global $csTanarId, $csDt, $CSTANAR_CSDT_NAPI_ORAK;
+ global $Orak;
+ global $tools;
+ global $_TANEV;
+
+if ($_TANEV['statusz']=='aktív') {
+
+ if ($manual != '') {
+
+ // Kézi adatmódosítás
+
+ putKeziBeallitas($oraAdat, $Termek, $Tanarok);
+
+ } elseif ($mozgat != '') {
+
+ putMozgatas($tanarId, $oraAdat, $TANAR_DT_NAPI_ORAK, $ujDt, $TANAR_UJDT_NAPI_ORAK);
+
+ } elseif ($csere != '') {
+
+ putCsere($tanarId, $oraAdat, $TANAR_DT_NAPI_ORAK, $csTanarId, $csDt, $CSTANAR_CSDT_NAPI_ORAK, $Tanarok);
+
+ } elseif (isset($_POST['csereAttekintes']) && $_POST['csereAttekintes'] != '') {
+ putCsereAttekintes($oraId, $Orak);
+ } elseif ($orarend != '') {
+ } else {
+
+ // A szokásos helyettesítés oldal...
+// putHianyzoTanarok($HELYETTESITES['tanarok'], $HELYETTESITES['helyettesites']['tanarIds'], $dt);
+ putHianyzoTanarForm($HELYETTESITES['tanarok'], $HELYETTESITES['helyettesites']['tanarIds'], $dt);
+ putHianyzoOrak($HELYETTESITES, $dt);
+
+ }
+
+}
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/hetes-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/hetes-pre.php
new file mode 100644
index 00000000..8adbc979
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/hetes-pre.php
@@ -0,0 +1,260 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__TANAR && !__DIAK && !__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+ require_once('include/modules/naplo/share/hetes.php');
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/share/date/names.php');
+
+
+ $ADAT['csakUres'] = $csakUres = readVariable($_POST['csakUres'],'bool',false,null);
+ $ADAT['teremId' ] = $teremId = readVariable($_POST['teremId'],'id');
+
+ // Egy tankör haladási naplójához
+ $tankorId = readVariable($_POST['tankorId'],'id');
+
+ // Ha diák nézi, akkor csak a saját tanköreit láthatja
+ if (__DIAK) $diakId = __USERDIAKID;
+ else $diakId = readVariable($_POST['diakId'],'id');
+
+ $osztalyId = readVariable($_POST['osztalyId'],'id');
+
+ if (isset($diakId)) {
+ // A diák már nem határozza meg egyértelműen az osztályt! --> 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<count($_NAPOK); $i++) {
+ checkNaplo($_NAPOK[$i]);
+ }
+ }
+
+ /* ------------------------------------------------- */
+
+ //if (isset($osztalyId) && !isset($diakId))
+ $ADAT['diakok'] = getDiakok(array('osztalyId' => $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<count($Tankorok); $i++) {
+ if ($tankorId == $Tankorok[$i]['tankorId']) { $allowed=true; break; }
+ }
+ } else $allowed = true;
+ if ($allowed) {
+ $Tankorok = getTankorById($tankorId, __TANEV); // felül kell írnunk
+ //$ADAT['haladasi'] = getHaladasi($Tankorok, $ADAT['munkaterv'], $orderBy, $csakUres);
+ }
+ } elseif ($teremId!='') {
+ //$ADAT['haladasi'] = getHaladasi($Tankorok, '', $orderBy, '', $csakUres,$teremId);
+ } else {
+ //$ADAT['haladasi'] = getHaladasi($Tankorok, $ADAT['munkaterv'], $orderBy, $tanarId, $csakUres);
+ }
+ $ADAT['ORAIDK'] = array();
+ if (is_array($ADAT['haladasi'])) {
+ reset($ADAT['haladasi']);
+ foreach($ADAT['haladasi'] as $_k => $_v) {
+ for ($i=0; $i<count($_v); $i++) {
+ if (!is_null($ADAT['haladasi'][$_k][$i]['oraId'])) $ADAT['ORAIDK'][] = $ADAT['haladasi'][$_k][$i]['oraId'];
+ }
+ }
+ }
+ $ADAT['oraLatogatasok'] = getOralatogatasByOraIds($ADAT['ORAIDK']);
+ foreach ($ADAT['oraLatogatasok'] as $olId => $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/www/policy/private/naplo/haladasi/hetes.php b/mayor-orig/www/policy/private/naplo/haladasi/hetes.php
new file mode 100644
index 00000000..5aeb1001
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/hetes.php
@@ -0,0 +1,9 @@
+<?php
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT,$skin;
+ //if ($ADAT['title']!='') {
+ // if (isset($ADAT['osztalyId']))
+ putHetesForm($ADAT);
+ //}
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/minuszora-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/minuszora-pre.php
new file mode 100644
index 00000000..f2abcd4c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/minuszora-pre.php
@@ -0,0 +1,75 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ global $_TANEV;
+ if ($_TANEV['statusz']!='aktív') $_SESSION['alert'][] = 'page:nem_aktív_tanev:'.$_TANEV['tanev'];
+
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'datetime', date('Y-m-d'));
+// $ora = readVariable($_POST['ora'], 'numeric unsigned', null);
+ $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'numeric unsigned', null);
+ if (!isset($tanarId)) $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null);
+// $tankorId = readVariable($_POST['tankorId'], 'numeric unsigned', null);
+// $teremId = readVariable($_POST['teremId'], 'numeric unsigned', null);
+// $SzabadOrak = '';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['napiMinOra'] = getMinOra();
+ $ADAT['napiMaxOra'] = getMaxOra();
+
+ if (defined('__MAXORA_MINIMUMA') && $ADAT['napiMaxOra'] < __MAXORA_MINIMUMA) $ADAT['napiMaxOra'] = __MAXORA_MINIMUMA; // Hogy lehessen "törölni" későbbi órákat is
+ if (isset($dt)) {
+
+ // órarendiÓrák betöltése - ha szükséges - a fv. maga ellenőrzi, hogy kell-e betölteni adatokat...
+ checkNaplo($dt);
+
+ // órák lekérdezése
+ if (isset($tanarId)) $ADAT['orak'] = getTanarNapiOrak($tanarId, $dt);
+ elseif (isset($osztalyId)) $ADAT['orak'] = getOsztalyNapiOrak($osztalyId, $dt);
+
+ // Action
+ if ($action == 'oraElmaradas') {
+
+ if (is_array($_POST['oraId'])) {
+ for ($i = 0; $i < count($_POST['oraId']); $i++) {
+ $oraId = readVariable($_POST['oraId'][$i], 'numeric unsigned');
+ if (isset($oraId)) {
+ oraElmarad($oraId);
+ // órák újra lekérdezése
+ if (isset($tanarId)) $ADAT['orak'] = getTanarNapiOrak($tanarId, $dt);
+ elseif (isset($osztalyId)) $ADAT['orak'] = getOsztalyNapiOrak($osztalyId, $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)) {
+ 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/www/policy/private/naplo/haladasi/minuszora.php b/mayor-orig/www/policy/private/naplo/haladasi/minuszora.php
new file mode 100644
index 00000000..b0c15eaf
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/minuszora.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['tanarId']) || isset($ADAT['osztalyId'])) putOrak($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/ora-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/ora-pre.php
new file mode 100644
index 00000000..83f041cb
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/ora-pre.php
@@ -0,0 +1,33 @@
+<?php
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:illegal_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/share/date/names.php');
+
+ $oraId = readVariable($_POST['oraId'],'id');
+ $oraElmarad = readVariable($_POST['oraElmarad'],'string');
+ $oraMegtartva = readVariable($_POST['oraMegtartva'],'string');
+ if (isset($oraElmarad)) {
+ $_JSON['toDo'] = 'oraElmarad'; // processJSON js-ben használjuk
+ $_JSON['oraId'] = $oraId;
+ } elseif (isset($oraMegtartva)) {
+ $_JSON['toDo'] = 'oraMegtartva'; // processJSON js-ben használjuk
+ $_JSON['oraId'] = $oraId;
+ }
+
+ $ADAT['oraAdat'] = getOraAdatById($oraId);
+// $_JSON['html'] = putOraAdat($ADAT);
+ $ADAT['oraAdat']['debug'] = serialize($_POST);
+
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/ora.php b/mayor-orig/www/policy/private/naplo/haladasi/ora.php
new file mode 100644
index 00000000..95e6a821
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/ora.php
@@ -0,0 +1,9 @@
+<?php
+/*
+ module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+ global $ADAT;
+ putOraAdat($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/oralatogatas-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/oralatogatas-pre.php
new file mode 100644
index 00000000..810ee183
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/oralatogatas-pre.php
@@ -0,0 +1,102 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/ora.php');
+
+// $tankorId = readVariable($_POST['tankorId'], 'id');
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'datetime', date('Y-m-d'));
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ if (!isset($osztalyId)) {
+ $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'numeric unsigned', $tanarId = readVariable($_GET['tanarId'],'numeric unsigned'));
+ if (!isset($tanarId) && __USERTANARID!==false && __TANAR) $ADAT['tanarId'] = $tanarId = __USERTANARID;
+ }
+ $ADAT['tanarok'] = getTanarok(array('tanev' => __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/www/policy/private/naplo/haladasi/oralatogatas.php b/mayor-orig/www/policy/private/naplo/haladasi/oralatogatas.php
new file mode 100644
index 00000000..6fde9cb6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/oralatogatas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT['orak']) && count($ADAT['orak']) > 0) putOralatogatasForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/osszevonas-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/osszevonas-pre.php
new file mode 100644
index 00000000..f140e7fd
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/osszevonas-pre.php
@@ -0,0 +1,109 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ global $_TANEV;
+ if ($_TANEV['statusz'] != 'aktív') $_SESSION['alert'][] = 'page:nem_aktív_tanev:'.$_TANEV['tanev'];
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/share/date/names.php');
+
+ $napiMinOra = getMinOra();
+ $napiMaxOra = getMaxOra();
+
+ $dt = readVariable($_POST['dt'], 'datetime', date('Y-m-d'));
+ $ora = readVariable($_POST['ora'], 'numeric unsigned', null);
+ $tanarId = readVariable($_POST['tanarId'], 'id', null);
+ $tankorId = readVariable($_POST['tankorId'], 'id', null);
+ // $teremId = readVariable($_POST['teremId'], 'id', null);
+
+ if (isset($dt)) {
+ checkNaplo($dt); // a fv. maga ellenőrzi, hogy kell-e, lehet-e órákat betölteni
+ if (isset($tankorId)) {
+ // A tankör tanárainak lekérdezése (tanarSelect számára)
+ $Tanarok = getTankorTanaraiByInterval($tankorId, array('tanev' => __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<count($ADAT['torlendoTankorok']); $i++) {
+ $ADAT['tankorIds'][] = $ADAT['torlendoTankorok'][$i]['tankorId'];
+ }
+ $ADAT['tankorok'] = getTankorAdatByIds($ADAT['tankorIds']);
+ }
+ $Tanarok = getFoglaltTanarok($dt,$ora);
+ } // ora
+ } // dt
+
+ $ADAT['dt'] = $dt;
+ $ADAT['ora'] = $ora;
+ $ADAT['tanarId'] = $tanarId;
+ $ADAT['tankorId'] = $tankorId;
+
+ // Action
+ if ($ok && $action == 'oraFelvetele') {
+ for ($i=0; $i<count($ADAT['torlendoTankorok']); $i++) {
+ $oraId = $ADAT['torlendoTankorok'][$i]['oraId'];
+ HianyzasEsJegyHozzarendelesTorles($oraId);
+ oraElmarad($oraId);
+ }
+ $eredet = 'plusz';
+ $tipus = 'összevonás';
+ if (oraFelvetele($dt, $ora, $tanarId, $tankorId, $teremId, $tipus, $eredet)) {
+ $_SESSION['alert'][] = 'info:change_success';
+ $Orak = getTanarNapiOrak($tanarId, $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', '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/www/policy/private/naplo/haladasi/osszevonas.php b/mayor-orig/www/policy/private/naplo/haladasi/osszevonas.php
new file mode 100644
index 00000000..5d04f19b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/osszevonas.php
@@ -0,0 +1,13 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ok, $dt, $ora, $tanarId, $tankorId, $teremId, $Orak;
+ global $ADAT;
+
+ if ($ok) putOraFelvetelForm($ADAT);
+
+ if (is_array($Orak)) if (isset($tanarId)) putOrak($Orak, _TANAR);
+ else putOrak($Orak, _OSZTALY);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/pluszora-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/pluszora-pre.php
new file mode 100644
index 00000000..55914d4a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/pluszora-pre.php
@@ -0,0 +1,177 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ global $_TANEV;
+ if ($_TANEV['statusz']!='aktív') $_SESSION['alert'][] = 'page:nem_aktív_tanev:'.$_TANEV['tanev'];
+
+ $ADAT['dt']=$dt = readVariable($_POST['dt'], 'datetime', date('Y-m-d'));
+ $ADAT['ora']=$ora = readVariable($_POST['ora'], 'numeric', null);
+ $tanarId = readVariable($_POST['tanarId'], 'numeric unsigned', null);
+ if (!isset($tanarId)) $osztalyId = readVariable($_POST['osztalyId'], 'id', null);
+ $tankorId = readVariable($_POST['tankorId'], 'id', null);
+ $blokkId = readVariable($_POST['tankorBlokkId'], 'id', null);
+ $teremId = readVariable($_POST['teremId'], 'id', null);
+ $SzabadOrak = '';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/oraModifier.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/share/date/names.php');
+
+ $napiMinOra = getMinOra();
+ $napiMaxOra = getMaxOra();
+
+ if ($napiMaxOra < __MAXORA_MINIMUMA) $napiMaxOra = __MAXORA_MINIMUMA;
+ $ADAT['napiMinOra'] = $napiMinOra;
+ $ADAT['napiMaxOra'] = $napiMaxOra;
+
+ $ADAT['tanarok'] = getTanarok();
+ $ADAT['feladatTipus'] = getFeladatTipus();
+
+ if (isset($dt)) {
+ // órarendiÓrák betöltése - ha szükséges - a fv. maga ellenőrzi, hogy kell-e/lehet-e órákat betölteni...
+ checkNaplo($dt);
+
+ $ADAT['tankorBlokkok'] = getTankorBlokkok();
+
+ if (isset($tankorId)) {
+ // A tankör tanárainak lekérdezése (tanarSelect számára)
+ $Tanarok = getTankorTanaraiByInterval($tankorId, array('tanev' => __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<count($tanarIdk); $i++) {
+ $_ki=$tanarIdk[$i];
+ $_tipus='egyéb';
+ $_eredet='órarend';
+ $UJORAIDK[] = ujOraFelvesz(
+ array('dt'=>$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/www/policy/private/naplo/haladasi/pluszora.php b/mayor-orig/www/policy/private/naplo/haladasi/pluszora.php
new file mode 100644
index 00000000..abec9a9f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/pluszora.php
@@ -0,0 +1,15 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ok, $dt, $ora, $tanarId, $tankorId, $teremId, $Orak, $ADAT;
+
+ if ($ok) putOraFelvetelForm($tankorId ,$tanarId, $dt, $ora, $teremId, $ADAT);
+
+ if (is_array($Orak)) if (isset($tanarId)) putOrak($Orak, _TANAR, $ADAT);
+ else {
+ putOrak($Orak, _OSZTALY, $ADAT);
+ }
+ if ($dt!='' && $ora!='') putLila($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/specialis-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/specialis-pre.php
new file mode 100644
index 00000000..8b42b475
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/specialis-pre.php
@@ -0,0 +1,95 @@
+<?php
+/*
+ module: naplo
+
+ TODO:
+ Egy-egy osztály hiányzását is meg lehetne valósítani - vegyük ki az osztályhoz - és csak az osztályhoz
+ tartozó órákat...
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:illegal_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/nap.php');
+
+ global $_TANEV;
+ if ($_TANEV['statusz']!='aktív') $_SESSION['alert'][] = 'page:nem_aktív_tanev:'.$_TANEV['tanev'];
+
+ if (isset($_POST['dt']) && $_POST['dt'] != '') $dt = $_POST['dt'];
+ elseif (__FOLYO_TANEV) $dt = getTanitasiNap(array('direction'=>'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/www/policy/private/naplo/haladasi/specialis.php b/mayor-orig/www/policy/private/naplo/haladasi/specialis.php
new file mode 100644
index 00000000..d855fd36
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/specialis.php
@@ -0,0 +1,17 @@
+<?php
+/*
+ module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $tools, $dt, $szabadOrak, $Hetek, $napTipusok, $napAdat, $vanTanitasiNap, $munkatervek;
+
+ putNapInfo($napAdat, $munkatervek);
+ napiOrakTorleseForm($napAdat, $napTipusok);
+ if ($vanTanitasiNap) specialisNapForm($dt, $szabadOrak, $Hetek);
+ // Csak akkor tölthetünk be órát, ha nincs óra még az adott napon
+ if (count($szabadOrak) == getMaxOra() - getMinOra() + 1) orakBetolteseForm($napAdat, $Hetek);
+ else orakTorleseForm($dt, $szabadOrak);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/stat-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/stat-pre.php
new file mode 100644
index 00000000..4596c54a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/stat-pre.php
@@ -0,0 +1,54 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ // Az oldalt minden jogosultsági szinten látjuk
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/nap.php');
+
+ $tanarId = readVariable($_POST['tanarId'],'numeric unsigned');
+ $osztalyId = readVariable($_POST['osztalyId'],'numeric unsigned');
+ if (__DIAK) $diakId = __USERDIAKID;
+ else $diakId = readVariable($_POST['diakId'], 'numeric unsigned', readVariable($_GET['diakId'], 'numeric unsigned'));
+
+ $tankorId = readVariable($_POST['tankorId'],'numeric unsigned');
+
+ if (!isset($tanarId) && !isset($diakId) && !isset($osztalyId) && __TANAR) $tanarId = __USERTANARID;
+ // tankörök lekérdzése
+ if (isset($diakId)) $Tankorok = getTankorByDiakId($diakId, __TANEV, array('tolDt' => $_TANEV['kezdesDt']));
+ 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'];
+
+ 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'));
+ }
+ }
+ 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/www/policy/private/naplo/haladasi/stat.php b/mayor-orig/www/policy/private/naplo/haladasi/stat.php
new file mode 100644
index 00000000..5cce9b8e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/stat.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $Tankorok, $tankorIds, $tankorStat;
+
+ if (is_array($tankorStat)) putTankorStat($tankorStat);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/tankor-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/tankor-pre.php
new file mode 100644
index 00000000..afb9671b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/tankor-pre.php
@@ -0,0 +1,29 @@
+<?php
+ if (_RIGHTS_OK !== true) die();
+
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/share/date/names.php');
+
+ $tankorId = readVariable($_POST['tankorId'],'id');
+/* $oraElmarad = readVariable($_POST['oraElmarad'],'string');
+ $oraMegtartva = readVariable($_POST['oraMegtartva'],'string');
+ if (isset($oraElmarad)) {
+ $_JSON['toDo'] = 'oraElmarad'; // processJSON js-ben használjuk
+ $_JSON['oraId'] = $oraId;
+ } elseif (isset($oraMegtartva)) {
+ $_JSON['toDo'] = 'oraMegtartva'; // processJSON js-ben használjuk
+ $_JSON['oraId'] = $oraId;
+ }
+*/
+ $ADAT['tankorStat'] = getOraStatByTankorId($tankorId);
+// $_JSON['html'] = putOraAdat($ADAT);
+// $ADAT['oraAdat']['debug'] = serialize($_POST);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/tankor.php b/mayor-orig/www/policy/private/naplo/haladasi/tankor.php
new file mode 100644
index 00000000..2841606e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/tankor.php
@@ -0,0 +1,10 @@
+<?php
+/*
+ module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+ global $ADAT;
+ putTankorStat($ADAT);
+echo '..';
+?>
diff --git a/mayor-orig/www/policy/private/naplo/haladasi/teremModositas-pre.php b/mayor-orig/www/policy/private/naplo/haladasi/teremModositas-pre.php
new file mode 100644
index 00000000..b7bcf782
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/teremModositas-pre.php
@@ -0,0 +1,102 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ global $_TANEV;
+ if ($_TANEV['statusz']!='aktív') $_SESSION['alert'][] = 'page:nem_aktív_tanev:'.$_TANEV['tanev'];
+
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'datetime', date('Y-m-d'));
+ $ADAT['ora'] = $ora = readVariable($_POST['ora'], 'numeric', null);
+ $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'numeric unsigned', null);
+ if (!isset($tanarId)) $osztalyId = readVariable($_POST['osztalyId'], 'id', null);
+ $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'], 'id', null);
+ $ADAT['teremId'] = $teremId = readVariable($_POST['teremId'], 'id', null);
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['napiMinOra'] = $napiMinOra = getMinOra();
+ $ADAT['napiMaxOra'] = $napiMaxOra = getMaxOra();
+
+ if (isset($dt)) {
+ // órarendiÓrák betöltése - ha szükséges
+ //checkNaplo($dt);
+ /* Az órákat nem töltjük itt be! */
+
+ if ($action=="teremModosit") {
+ $oraId = readVariable($_POST['oraId'],'id',null);
+ $ujTeremId = readVariable($_POST['ujTeremId'],'id',null);
+ $ADAT['oraAdat'] = getOraAdatById($oraId);
+ $lr = db_connect('naplo');
+ db_start_trans($lr);
+ if (($x = checkHaladasiSzabadTerem($dt,$ora,$ujTeremId,$lr)) === true)
+ haladasiTeremModositas($oraId,$ujTeremId,$lr);
+ else
+ if ($ujTeremId != $ADAT['oraAdat']['teremId']) $_SESSION['alert'][] = 'info:nem_szabadTerem:'.$ADAT['oraAdat']['teremId'].' -- '.$ujTeremId;
+ db_commit($lr);
+ db_close($lr);
+
+ }
+
+ if (isset($tankorId)) {
+ // A tankör tanárainak lekérdezése (tanarSelect számára)
+ $Tanarok = getTankorTanaraiByInterval($tankorId, array('tanev' => __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/www/policy/private/naplo/haladasi/teremModositas.php b/mayor-orig/www/policy/private/naplo/haladasi/teremModositas.php
new file mode 100644
index 00000000..d1ddccb6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/haladasi/teremModositas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if ($ADAT['oraId']>0) putTeremModositas($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php
new file mode 100644
index 00000000..adbf65d0
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php
@@ -0,0 +1,212 @@
+<?php
+/*
+ Module: naplo
+*/
+ global $_TANEV;
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__TANAR && !__DIAK && !__VEZETOSEG && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/nap.php');
+
+ require_once('skin/classic/module-naplo/html/share/hianyzas.phtml');
+
+ $napiMinOra = getMinOra();
+ $napiMaxOra = getMaxOra();
+
+ if (__DIAK) {
+ $diakId = defined('__USERDIAKID') ? __USERDIAKID : null;
+ } else {
+ $diakId = readVariable($_POST['diakId'], 'numeric unsigned', readVariable($_GET['diakId'], 'numeric unsigned'));
+ $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', readVariable($_GET['osztalyId'], 'numeric unsigned'));
+
+ if (!isset($osztalyId) && !isset($diakId) && __TANAR && __OSZTALYFONOK) $osztalyId = $_OSZTALYA[0];
+ if ($diakId!='' && $osztalyId=='') {
+ $OI = getDiakOsztalya($diakId, array('tolDt'=>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'][] = 'tanulmányi verseny';
+ if (__NAPLOADMIN || __OFO || __VEZETOSEG) $ITIPUSOK['engedelyezett'][] = 'nyelvvizsga';
+ 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<count($ADAT['napok']); $i++)
+ $_NAPOK[] = $ADAT['napok'][$i]['dt'];
+ $ADAT['hianyzasok'] = getHianyzasByDt(array($diakId),$_NAPOK);
+ $ADAT['diak']['kepzes'] = getKepzesByDiakId($diakId, array('result'=>'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...
+
+} // 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/www/policy/private/naplo/hianyzas/diak.php b/mayor-orig/www/policy/private/naplo/hianyzas/diak.php
new file mode 100644
index 00000000..5eb61423
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/diak.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+ global $tools,$tolDt,$igDt,$diakId,$igazolas;
+
+ if (is_array($ADAT) && $diakId!='') putDiakHianyzasNaptar($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/diakIgazolatlan-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/diakIgazolatlan-pre.php
new file mode 100644
index 00000000..5ffb0899
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/diakIgazolatlan-pre.php
@@ -0,0 +1,26 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__TANAR && !__DIAK && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ $ADAT['diakId'] = $diakId = readVariable($_POST['diakId'], 'id', readVariable($_GET['diakId'], 'id'));
+
+ if (isset($diakId)) {
+ $ADAT['diakNev'] = getDiakNevById($diakId);
+ $ADAT['igazolatlan'] = getDiakIgazolatlan($diakId);
+ }
+
+ $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array('ho'));
+ $TOOL['diakSelect'] = array('tipus'=>'cella', 'diakId' => $diakId, 'post'=>array('tolDt','osztalyId','ho'));
+ getToolParameters();
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/diakIgazolatlan.php b/mayor-orig/www/policy/private/naplo/hianyzas/diakIgazolatlan.php
new file mode 100644
index 00000000..c934b7c8
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/diakIgazolatlan.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['diakId'])) putDiakIgazolatlan($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/diakLista-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/diakLista-pre.php
new file mode 100644
index 00000000..4818d84d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/diakLista-pre.php
@@ -0,0 +1,101 @@
+<?php
+/*
+ Module: naplo
+
+ --TODO :: check (diak-prev2?
+*/
+ global $_TANEV;
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__TANAR && !__DIAK && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/orarend.php');
+
+ require_once('skin/classic/module-naplo/html/share/hianyzas.phtml');
+
+ $napiMinOra = getMinOra();
+ $napiMaxOra = getMaxOra();
+
+ if (__DIAK) {
+ $diakId = defined('__USERDIAKID') ? __USERDIAKID : 0;
+ } else {
+ $diakId = readVariable($_POST['diakId'], 'numeric unsigned', readVariable($_GET['diakId'], 'numeric unsigned'));
+
+ $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', readVariable($_GET['osztalyId'], 'numeric unsigned'));
+
+ if (!isset($osztalyId) && !isset($diakId) && __TANAR && __OSZTALYFONOK) $osztalyId = $_OSZTALYA[0];
+ if (isset($diakId) && !isset($osztalyId)) {
+ $OI = getDiakOsztalya($diakId);
+ $_POST['osztalyId'] = $osztalyId = $OI[0]['osztalyId'];
+ }
+ if ($osztalyId!='') {
+ $ADAT['osztalyId'] = $osztalyId;
+ $ADAT['osztaly'] = getOsztalyAdat($osztalyId);
+ }
+ }
+
+
+if (isset($diakId) && $diakId != '') {
+
+ $_POST['diakId'] = $ADAT['diakId'] = $diakId;
+ $_POST['osztalyId'] = $ADAT['osztalyId'] = $osztalyId;
+ $ADAT['diak']['nev'] = getDiakNevById($diakId);
+
+ /* --- igDt, tolDt --- */
+ $tolDt = readVariable($_POST['tolDt'], 'datetime', 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
+ $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));
+ define(__OFO, ( is_array($_OSZTALYA) && count(array_intersect($DIAKOSZTALYAI[$diakId],$_OSZTALYA)) > 0 ));
+
+ /* --- tanuló hiányzásai (figyelem! dátumok!) --- */
+ // --TODO: 9!!!
+
+ $ADAT['napok'] = getHonapNapjai($ho);
+ for ($i=0; $i<count($ADAT['napok']); $i++)
+ $_NAPOK[] = $ADAT['napok'][$i]['dt'];
+ $ADAT['hianyzasok'] = getHianyzasByDt(array($diakId),$_NAPOK);
+
+} // ha van nem üres diakId
+
+ if (!__DIAK) {
+
+ $TOOL['osztalySelect'] = array('tipus' => '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/www/policy/private/naplo/hianyzas/diakLista.php b/mayor-orig/www/policy/private/naplo/hianyzas/diakLista.php
new file mode 100644
index 00000000..f85c9f9b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/diakLista.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+ global $tools,$tolDt,$igDt,$diakId,$igazolas;
+
+ if (is_array($ADAT) && $diakId!='') putDiakHianyzasLista($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/hianyzas-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/hianyzas-pre.php
new file mode 100644
index 00000000..ea204c20
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/hianyzas-pre.php
@@ -0,0 +1,7 @@
+<?php
+
+ if (__DIAK) header('Location: '.location('index.php?page=naplo&sub=hianyzas&f=diak'));
+ elseif (__TITKARSAG) header('Location: '.location('index.php?page=naplo&sub=hianyzas&f=info'));
+ else header('Location: '.location('index.php?page=naplo&sub=hianyzas&f=osztaly'));
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/hianyzas.php b/mayor-orig/www/policy/private/naplo/hianyzas/hianyzas.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/hianyzas.php
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/info-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/info-pre.php
new file mode 100644
index 00000000..0ee4c280
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/info-pre.php
@@ -0,0 +1,32 @@
+<?php
+
+ require_once('include/modules/naplo/share/hianyzas.php');
+
+ $SSSHH .= '<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js" async defer></script>';
+
+ $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/www/policy/private/naplo/hianyzas/info.php b/mayor-orig/www/policy/private/naplo/hianyzas/info.php
new file mode 100644
index 00000000..ab5bb381
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/info.php
@@ -0,0 +1,5 @@
+<?php
+
+ global $ADAT;
+ putDiakHianyzasInfo($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php
new file mode 100644
index 00000000..7eb2592a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php
@@ -0,0 +1,161 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__TANAR && !__NAPLOADMIN && !__DIAK && !__VEZETOSEG)
+ $_SESSION['alert'][] = 'page:illegal_access';
+
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/share/date/names.php');
+
+ require_once('skin/classic/module-naplo/html/share/hianyzas.phtml');
+
+ if (__DIAK) $diakId = __USERDIAKID;
+ else {
+ $diakId = readVariable($_POST['diakId'],'numeric',readVariable($_GET['diakId'],'id'));
+ if ($diakId=='') return false;
+ }
+ $ADAT['diakId'] = $diakId;
+
+ $dt = readVariable($_POST['dt'],'datetime',readVariable($_GET['dt'],'datetime'));
+ if ($dt=='') return false;
+ $nap = date('w',strtotime($dt));
+
+ define('__MAX_ORA',getMaxOra());
+ define('__MIN_ORA',getMinOra());
+
+ $ADAT['nevsor'] = array(
+ 'idk' => 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<count($_ertek); $i++) {
+ list($_diakId,$ures1,$ures2,$_igtip,$_hid) = explode('/',$_ertek[$i]);
+ if ($_hid!='' && !in_array($_hid,$TORLENDOK)) {
+ if ($_igtip!='') $_statusz='igazolt' ; else $_statusz ='igazolatlan';
+ $IGAZOLANDOK[] = array('id'=> $_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'];
+ // 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/www/policy/private/naplo/hianyzas/nap.php b/mayor-orig/www/policy/private/naplo/hianyzas/nap.php
new file mode 100644
index 00000000..de542e68
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/nap.php
@@ -0,0 +1,14 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__TANAR && !__NAPLOADMIN && !__DIAK)
+ $_SESSION['alert'][] = 'page:illegal_access';
+
+
+ global $ORAADAT,$ADAT;
+
+ if (is_array($ADAT))
+ putHianyzok($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/oktstat-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/oktstat-pre.php
new file mode 100644
index 00000000..2fce3e26
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/oktstat-pre.php
@@ -0,0 +1,33 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__TANAR && !__NAPLOADMIN && !__DIAK && !__VEZETOSEG)
+ $_SESSION['alert'][] = 'page:illegal_access';
+
+# require_once('include/modules/naplo/share/ora.php');
+# require_once('include/modules/naplo/share/orarend.php');
+# require_once('include/modules/naplo/share/tankor.php');
+# require_once('include/modules/naplo/share/diak.php');
+# require_once('include/modules/naplo/share/tanar.php');
+# require_once('include/modules/naplo/share/hianyzas.php');
+# require_once('include/modules/naplo/share/hianyzasModifier.php');
+# require_once('include/modules/naplo/share/szemeszter.php');
+# require_once('include/modules/naplo/share/osztaly.php');
+# require_once('include/modules/naplo/share/kepzes.php');
+# require_once('include/share/date/names.php');
+#
+# require_once('skin/classic/module-naplo/html/share/hianyzas.phtml');
+
+ $tanev = readVariable($_POST['tanev'],'numeric unsigned',__TANEV);
+
+ $ADAT = getOktoberiStatisztika($tanev);
+
+ $TOOL['tanevSelect'] = array('tipus' => 'cella', 'action' => 'tanevValasztas', 'post' => array('tanev'));
+
+ getToolParameters();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/oktstat.php b/mayor-orig/www/policy/private/naplo/hianyzas/oktstat.php
new file mode 100644
index 00000000..ec4b017a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/oktstat.php
@@ -0,0 +1,12 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__TANAR && !__NAPLOADMIN && !__DIAK && !__VEZETOSEG)
+ $_SESSION['alert'][] = 'page:illegal_access';
+
+ global $ADAT;
+
+ if (is_array($ADAT))
+ putOktoberiStatisztika($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php
new file mode 100644
index 00000000..9a472287
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php
@@ -0,0 +1,165 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (__VEZETOSEG !==true && __TANAR!==true && __NAPLOADMIN!==true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/share/date/names.php');
+
+ require_once('skin/classic/module-naplo/html/share/hianyzas.phtml');
+
+ $napiMaxOra = getMaxOra();
+ $napiMinOra = getMinOra();
+
+ $oraId = readVariable($_POST['oraId'],'id',readVariable($_GET['oraId'],'id'));
+ $tanarId = readVariable($_POST['tanarId'],'id',readVariable($_GET['tanarId'],'id'));
+
+ if (is_null($oraId) && !is_null($tanarId)) {
+ $_tolDt = $_igDt = date('Y-m-d');
+ $tanarOrak = getTanarOrak(
+ $tanarId,array('tolDt' => $_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; $i<count($ADAT['nevsor']['idk']); $i++) {
+ $_diakId = ($ADAT['nevsor']['idk'][$i]);
+ $ADAT['felmentes'][$_diakId] = getTankorDiakFelmentes($_diakId,__TANEV,array('csakId'=>true,'tolDt'=>$tolDt, 'igDt'=>$igDt, 'nap'=>$nap, 'ora'=>$ora));
+ }
+ $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<count($_ertek); $i++) {
+ list($_diakId,$ures1,$ures2,$_igtip,$_hid) = explode('/',$_ertek[$i]);
+ if ($_hid!='' && !in_array($_hid,$TORLENDOK)) {
+ if ($_igtip!='') $_statusz='igazolt' ; else $_statusz ='igazolatlan';
+ $IGAZOLANDOK[] = array('id'=> $_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/www/policy/private/naplo/hianyzas/ora.php b/mayor-orig/www/policy/private/naplo/hianyzas/ora.php
new file mode 100644
index 00000000..5c1acffc
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/ora.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ORAADAT,$ADAT;
+
+ if (is_array($ORAADAT) && is_array($ADAT))
+ putHianyzok($ORAADAT,$ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php
new file mode 100644
index 00000000..9e7e9418
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php
@@ -0,0 +1,124 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG) {
+
+ $_SESSION['alert'][] = 'page:illegal_access';
+
+ } elseif (!_TANKOROK_OK) {
+
+ $_SESSION['alert'][] = 'page:hianyzo_tankorok:'._HIANYZO_TANKOROK_SZAMA;
+
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/ertekeles.php');
+ require_once('include/modules/naplo/share/bejegyzesModifier.php');
+ require_once('include/modules/naplo/share/bejegyzes.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include//share/date/names.php');
+
+ global $_TANEV;
+
+
+ $ADAT['nevsor'] = $nevsor = readVariable($_POST['nevsor'],'emptystringnull','aktualis',array('aktualis','teljes'));
+ $osztalyId = readVariable($_POST['osztalyId'],'numeric', readVariable($_GET['osztalyId'],'numeric'));
+ if (!isset($osztalyId) && __TANAR && __OSZTALYFONOK) $osztalyId = $_OSZTALYA[0];
+ $ADAT['tolDt'] = $tolDt = readVariable($_POST['tolDt'], 'date', $_TANEV['kezdesDt']);
+ $ADAT['igDt'] = $igDt = readVariable($_POST['igDt'], 'date', date('Y-m-d'));
+
+ //if (isset($_POST['referenciaDt']) && strtotime($_POST['referenciaDt'])>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ó','összes');
+ $View = readVariable($_POST['View'], 'enum', array('összes'), $OPT);
+ } else {
+ $OPT = array('hozott','lezárt','igazolható','összes','fegyelmi utáni','fegyelmi fokozatok');
+ $View = readVariable($_POST['View'], 'enum', ($skin != 'pda')?array('összes','fegyelmi fokozatok'):array('összes'), $OPT);
+ }
+
+// elseif ($skin != 'pda') $View = array('összes','fegyelmi fokozatok');
+// else $View = array('összes');
+
+ 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);
+ }
+
+ } // 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/www/policy/private/naplo/hianyzas/osztaly.php b/mayor-orig/www/policy/private/naplo/hianyzas/osztaly.php
new file mode 100644
index 00000000..50f5873a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/osztaly.php
@@ -0,0 +1,13 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT, $View;
+
+ if (isset($ADAT['osztalyId']) && count($ADAT['stat']['névsor']) > 0)
+ putOsztalyOsszesito($ADAT, $View);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/osztalyNap-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/osztalyNap-pre.php
new file mode 100644
index 00000000..608f94d4
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/osztalyNap-pre.php
@@ -0,0 +1,53 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG) {
+
+ $_SESSION['alert'][] = 'page:illegal_access';
+
+ } elseif (!_TANKOROK_OK) {
+
+ $_SESSION['alert'][] = 'page:hianyzo_tankorok:'._HIANYZO_TANKOROK_SZAMA;
+
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/tankor.php');
+
+ $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'], 'id');
+ if (!isset($osztalyId) && __TANAR && __OSZTALYFONOK) $osztalyId = $_OSZTALYA[0];
+
+ $dt = $ADAT['dt'] = readVariable($_POST['dt'], 'date', date('Y-m-d'));
+
+ if (isset($dt) && isset($osztalyId)) {
+
+ $ADAT['diakok'] = getDiakok(array('osztalyId' => $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/www/policy/private/naplo/hianyzas/osztalyNap.php b/mayor-orig/www/policy/private/naplo/hianyzas/osztalyNap.php
new file mode 100644
index 00000000..10534428
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hianyzas/osztalyNap.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT['hianyzas']) && count($ADAT['hianyzas'])>0) {
+ putOsztalyHianyzas($ADAT);
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hibabejelento/admin-pre.php b/mayor-orig/www/policy/private/naplo/hibabejelento/admin-pre.php
new file mode 100644
index 00000000..60de869a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hibabejelento/admin-pre.php
@@ -0,0 +1,80 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/kerelem.php');
+
+ $_telephelyIdDefault = (isset($_POST['telephelyId'])?null:__TELEPHELYID);
+ $telephelyId = readVariable($_POST['telephelyId'],'id', $_telephelyIdDefault);
+ $kerelemId = readVariable($_POST['kerelemId'],'id',readVariable($_GET['kerelemId'],'id'));
+ $tolDt = readVariable($_POST['tolDt'],'date',date('Y-m-d'));
+
+ if ($action == 'hibabejelentes') {
+ $ADAT['txt'] = readVariable($_POST['txt'], 'string');
+ $ADAT['kategoria'] = readVariable($_POST['kategoria'],'string','', $KERELEM_TAG);
+ $ADAT['telephelyId'] = $telephelyId;
+ if ( $ADAT['txt'] != '' && ($kerelemId = hibabejelentes($ADAT)) ) $_SESSION['alert'][] ='info:success:'.$kerelemId;
+ }
+
+ if ((is_array($hibaAdmin) && in_array(_USERACCOUNT,$hibaAdmin)) || (!is_array($hibaAdmin) && (__VEZETOSEG || __NAPLOADMIN))) {
+ define('__HIBAADMIN',true);
+ } else {
+ define('__HIBAADMIN',false);
+ }
+ if (__HIBAADMIN === TRUE) {
+
+ if ($action == 'hibaAdminRogzites') {
+ $_ADAT['kerelemId'] = $kerelemId;
+ $_ADAT['kerelemTelephelyId'] = $_ADAT['telephelyId'] = $telephelyId;
+ $_ADAT['valasz'] = readVariable($_POST['valasz'],'string');
+ $_ADAT['jovahagy'] = readVariable($_POST['jovahagy'],'string');
+ $_ADAT['nemHagyJova'] = readVariable($_POST['nemHagyJova'],'string');
+ $_ADAT['lezar'] = readVariable($_POST['lezar'],'string');
+ $_ADAT['kategoria'] = readVariable($_POST['kategoria'],'string','', $KERELEM_TAG);
+ hibaAdminRogzites($_ADAT);
+
+ //if ($_ADAT['lezar'])
+ unset($kerelemId);
+ unset($_ADAT);
+ }
+
+ // Összes lezáratlan kérelem lekérdezése
+ if ($kerelemId>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/www/policy/private/naplo/hibabejelento/admin.php b/mayor-orig/www/policy/private/naplo/hibabejelento/admin.php
new file mode 100644
index 00000000..f34d5eed
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hibabejelento/admin.php
@@ -0,0 +1,16 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $Kerelmek,$telephelyId,$TELEPHELY;
+
+ if ($skin=='classic') putHibabejelento($telephelyId);
+
+ if (is_array($Kerelmek) && count($Kerelmek)>0) {
+ if ($_GET['view']==2){
+ putKerelmekValasszal($Kerelmek,$telephelyId,$TELEPHELY);
+ } else {
+ putKerelmek($Kerelmek,$telephelyId,$TELEPHELY);
+ }
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hibabejelento/hibabejelento-pre.php b/mayor-orig/www/policy/private/naplo/hibabejelento/hibabejelento-pre.php
new file mode 100644
index 00000000..da2f215e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hibabejelento/hibabejelento-pre.php
@@ -0,0 +1,24 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/kerelem.php');
+ $telephelyId = readVariable($_POST['telephelyId'],'id',__TELEPHELYID);
+ $kerelemId = readVariable($_GET['kerelemId'],'id');
+
+ if ($action == 'hibabejelentes') {
+
+ $ADAT['telephelyId'] = readVariable($_POST['kerelemTelephelyId'], 'id', $telephelyId);
+ $ADAT['txt'] = readVariable($_POST['txt'], 'string');
+ $ADAT['kategoria'] = readVariable($_POST['kategoria'],'string','', $KERELEM_TAG);
+ if ( $ADAT['txt'] != '' && ($kerelemId = hibabejelentes($ADAT)) ) $_SESSION['alert'][] ='info:success:'.$kerelemId;
+
+ }
+
+ if ($kerelemId>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/www/policy/private/naplo/hibabejelento/hibabejelento.php b/mayor-orig/www/policy/private/naplo/hibabejelento/hibabejelento.php
new file mode 100644
index 00000000..dffac292
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hibabejelento/hibabejelento.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $telephelyId;
+
+ putHibabejelento($telephelyId);
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/hirnok/cronFutar-pre.php b/mayor-orig/www/policy/private/naplo/hirnok/cronFutar-pre.php
new file mode 100644
index 00000000..5691de0f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hirnok/cronFutar-pre.php
@@ -0,0 +1,32 @@
+<?php
+
+ if (_RUNLEVEL!=='cron') die('not valid RUNLEVEL! Exiting.');
+ if (__EMAIL_ENABLED!==true) die('EMAIL_ENABLED is false! Exiting.');
+
+ require_once('include/modules/naplo/share/hirnok.php');
+ require_once('include/share/net/phpmailer.php');
+
+ global $_TANEV;
+
+ $refDt = date('Y-m-d H:i:s');
+ $q = "SELECT naploId,naploTipus,utolsoEmailDt,userAccount,policy,email FROM hirnokFeliratkozas WHERE utolsoEmailDt IS NULL or utolsoEmailDt<'%s'";
+ $v = array($refDt);
+ $r = db_query($q,array('fv'=>'cron','modul'=>'naplo_intezmeny','result'=>'indexed','values'=>$v));
+
+ for ($i=0; $i<count($r); $i++) {
+ $d = $r[$i];
+ $TOLDTBYUSER[$d['naploTipus']][$d['naploId']] = ($d['utolsoEmailDt']=='') ? $_TANEV['kezdesDt'] : $d['utolsoEmailDt']; // setDt
+ if (!in_array($d['naploId'],$USER[$d['naploTipus']])) $USER[$d['naploTipus']][] = $d['naploId'];
+ $ADAT['feliratkozas'][$d['naploTipus']][$d['naploId']][] = array('userAccount'=>$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/www/policy/private/naplo/hirnok/cronFutar.php b/mayor-orig/www/policy/private/naplo/hirnok/cronFutar.php
new file mode 100644
index 00000000..605e8eaa
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hirnok/cronFutar.php
@@ -0,0 +1,45 @@
+<?php
+
+ global $ADAT;
+ require_once('skin/classic/module-naplo/html/hirnok/hirnok.phtml');
+ require_once('skin/classic/module-naplo/html/share/email.phtml');
+
+ for ($i=0; $i<count($ADAT['hirnokFolyam']); $i++) {
+ $D = $ADAT['hirnokFolyam'][$i];
+ $_data = $D['hirnokFolyamAdatok'];
+ $cn = $_data['cn'];
+
+ for ($j=0; $j<count($ADAT['feliratkozas'][$_data['tipus']][$_data['id']]); $j++) {
+ $_toUser = $ADAT['feliratkozas'][$_data['tipus']][$_data['id']][$j];
+ $_toEmail = $_toUser['email'];
+ // if ($_toEmail=='') continue;;
+
+ $body = generateFutarEmailTorzs(array('hirnokFolyam'=>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/www/policy/private/naplo/hirnok/hirnok-pre.php b/mayor-orig/www/policy/private/naplo/hirnok/hirnok-pre.php
new file mode 100644
index 00000000..adc18ddc
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hirnok/hirnok-pre.php
@@ -0,0 +1,53 @@
+<?php
+
+ require_once('include/modules/naplo/share/hirnok.php');
+ global $_TANEV;
+
+ if (isset($_SESSION['lastLogin']) && strtotime(getTanitasinapvissza(2))>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/www/policy/private/naplo/hirnok/hirnok.php b/mayor-orig/www/policy/private/naplo/hirnok/hirnok.php
new file mode 100644
index 00000000..ce3b7f72
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hirnok/hirnok.php
@@ -0,0 +1,6 @@
+<?php
+
+ global $ADAT;
+ putHirnokFolyam($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/hirnok/hirnokFeliratkozas-pre.php b/mayor-orig/www/policy/private/naplo/hirnok/hirnokFeliratkozas-pre.php
new file mode 100644
index 00000000..d8fb3d33
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hirnok/hirnokFeliratkozas-pre.php
@@ -0,0 +1,47 @@
+<?php
+
+ require_once('include/modules/naplo/share/hirnok.php');
+ global $_TANEV;
+
+ if (__EMAIL_ENABLED!==true) $_SESSION['alert'][] = 'page:hiba:az e-mail küldés nincs engedélyezve, keresd az üzemeltetőt!';
+
+ $tolDt = readVariable($_POST['tolDt'],'date',readVariable($_GET['tolDt'], 'date', getTanitasinapvissza(7)));
+ if (strtotime($tolDt)>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/www/policy/private/naplo/hirnok/hirnokFeliratkozas.php b/mayor-orig/www/policy/private/naplo/hirnok/hirnokFeliratkozas.php
new file mode 100644
index 00000000..a5c9056b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/hirnok/hirnokFeliratkozas.php
@@ -0,0 +1,7 @@
+<?php
+
+ global $ADAT;
+ if (__NAPLOADMIN ===true) putHirnokFeliratkozas($ADAT);
+ else putHirnokFeliratkozas_user($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/diak-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/diak-pre.php
new file mode 100644
index 00000000..09d59501
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diak-pre.php
@@ -0,0 +1,247 @@
+<?php
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__TANAR && !__DIAK) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/share/net/upload.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/jegy.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/diakModifier.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/jegyModifier.php');
+ require_once('include/modules/naplo/share/osztalyModifier.php');
+ require_once('include/share/print/pdf.php');
+
+ global $_JSON;
+
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', defined('__TANEV')?__TANEV:null );
+ if (__DIAK) $ADAT['diakId'] = $diakId = readVariable(__USERDIAKID,'id',null);
+ else $ADAT['diakId'] = $diakId = readVariable($_POST['diakId'],'id',readVariable($_GET['diakId'],'id',null));
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'],'id');
+
+ $ADAT['szocialisHelyzet'] = getSetField('naplo_intezmeny', 'diak', 'szocialisHelyzet');
+ $ADAT['penzugyiStatusz'] = getEnumField('naplo_intezmeny', 'diak', 'penzugyiStatusz');
+ $ADAT['lakohelyiJellemzo'] = getEnumField('naplo_intezmeny', 'diak', 'lakohelyiJellemzo');
+ $ADAT['torvenyesKepviselo'] = getSetField('naplo_intezmeny', 'diak', 'torvenyesKepviselo');
+ $ADAT['fogyatekossag'] = getSetField('naplo_intezmeny', 'diak', 'fogyatekossag');
+ $ADAT['kozteruletJelleg'] = getEnumField('naplo_intezmeny', 'diak', 'lakhelyKozteruletJelleg');
+ $ADAT['statusz'] = getEnumField('naplo_intezmeny', 'diak', 'statusz');
+// EZ MI????
+ $ADAT['zaradek'] = $ZaradekIndex['jogviszony megnyitás'];
+ $ADAT['iktatoszam'] = readVariable($_POST['iktatoszam'], 'string' );
+ //$ZaradekIndex['jogviszony']['megnyitas'|'változás'|'lezárás']
+
+ $ADAT['bekerulesModja'] = array_keys($ADAT['zaradek']);
+ array_push($ADAT['bekerulesModja'],'beiratkozásra vár','vendégtanuló');
+ define('_MODOSITHAT',(__NAPLOADMIN || __TITKARSAG));
+ //define('_KERELMEZHET',(__DIAK===true));
+ define('_KERELMEZHET',false);
+ if (isset($diakId)) {
+ // A SET típusú attribútumok string reprezentációja
+ if ($action == 'diakSzocialisAdatModositas') {
+ $tk = $szH = $fgy = array(); // ilyenkor kell definiálni - legalább üresként - így lehet törölni
+ if (isset($_POST['szocialisHelyzet'])) {
+ $szH = readVariable($_POST['szocialisHelyzet'], 'enum', null, $ADAT['szocialisHelyzet']);
+ }
+ if (isset($_POST['fogyatekossag'])) {
+ $fgy = readVariable($_POST['fogyatekossag'], 'enum', null, $ADAT['fogyatekossag']);
+ }
+ if (isset($_POST['torvenyesKepviselo'])) {
+ $tk = readVariable($_POST['torvenyesKepviselo'], 'enum', null, $ADAT['torvenyesKepviselo']);
+ }
+ // A törlés miatt mindenképp kell legyen beállítva valami
+ $_POST['szocialisHelyzet'] = is_array($szH) ? implode(',', $szH) : null;
+ $_POST['fogyatekossag'] = is_array($fgy) ? implode(',', $fgy) : null;
+ $_POST['torvenyesKepviselo'] = is_array($tk) ? implode(',', $tk) : null;
+ }
+ // diák adatainak lekérdezése
+ $ADAT['diakAdat'] = getDiakAdatById($diakId); // csak a státusz miatt kell...
+ // action
+ if (_MODOSITHAT) {
+ $LZI = array_values($ZaradekIndex['jogviszony lezárás']);
+ $ADAT['jogviszonyLezarasZaradek'] = getZaradekokByIndexes($LZI);
+ if ($action == 'jogviszonyValtas') {
+ $ADAT['jogviszonyValtasDt'] = readVariable($_POST['jogviszonyValtasDt'], 'datetime');
+ $ADAT['ujStatusz'] = readVariable($_POST['statusz'], 'enum', null, $ADAT['statusz']);
+ if ($ADAT['ujStatusz'] == 'jogviszonya felfüggesztve') {
+ $ADAT['felfuggesztesOk'] = readVariable($_POST['felfuggesztesOk'], 'string');
+ $ADAT['felfuggesztesIgDt'] = readVariable($_POST['felfuggesztesIgDt'], 'string');
+ } elseif ($ADAT['ujStatusz'] == 'jogviszonya lezárva') {
+ /* A lezárás záradékolása sokféle lehet, userinterakció */
+ $ADAT['lezarasZaradekIndex'] = readVariable($_POST['lezarasZaradekIndex'], 'numeric unsigned', null, $LZI);
+ $ADAT['lezarasIgazolatlanOrakSzama'] = readVariable($_POST['lezarasIgazolatlanOrakSzama'], 'numeric unsigned');
+ $ADAT['lezarasIskola'] = readVariable($_POST['lezarasIskola'], 'string');
+ }
+ diakJogviszonyValtas($ADAT);
+ } elseif ( $action == 'diakAlapadatModositas'
+ || $action == 'diakSzuletesiAdatModositas'
+ || $action == 'diakCimModositas'
+ || $action == 'diakElerhetoseg'
+ || $action == 'diakElerhetosegModositas'
+ || $action == 'diakTanulmanyiAdatModositas'
+ || $action == 'diakSzocialisAdatModositas'
+ ) {
+ $_JSON['result'] = diakAdatModositas($_POST);
+ } elseif ($action== 'diakHozottHianyzas') {
+ diakHozottHianyzas($_POST);
+ } elseif ($action== 'diakTorol' && $ADAT['diakAdat']['statusz'] == 'felvételt nyert' ) { // csak a felvételt nyert
+ if (diakTorol($ADAT['diakAdat'])) { // csak a felvételt nyert
+ unset($ADAT['diakAdat']);
+ unset($diakId);
+ }
+ } elseif ($action == 'diakKepUpload') {
+ // --TODO könyvtár létrehozás?
+ mayorFileUpload(array('subdir'=>_DOWNLOADDIR.'/private/naplo/face/'.__TANEV,'filename'=>$diakId.'.jpg'));
+ } 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) {
+//dump('Success');
+ } else {
+//dump($ret['http']['status']);
+//dump($ret);
+ }
+*/
+ }
+ }
+ } 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);
+ 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));
+
+ // 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/www/policy/private/naplo/intezmeny/diak.php b/mayor-orig/www/policy/private/naplo/intezmeny/diak.php
new file mode 100644
index 00000000..b6ca1349
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diak.php
@@ -0,0 +1,30 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__TANAR && !__DIAK) {
+ return;
+ }
+
+ global $fileName, $ADATOK, $MEZO_LISTA, $Szulok, $tanev, $magantanuloUtkozes, $tolDt, $igDt, $ADAT;
+ global $osztalyId,$diakId;
+
+
+ if (is_array($ADAT['diakAdat']) && $skin!='ajax') {
+ putBizonyitvanyTorzslap($ADAT);
+ putDiakAdatForm($ADAT, $Szulok, $tanev);
+ if (_MODOSITHAT===true) {
+ putDiakJogviszonyValtozas($ADAT); //['diakAdat']
+ if ($ADAT['diakAdat']['statusz']=='felvételt nyert') putDiakTorol($ADAT);
+ }
+ if (__NAPLOADMIN && __ALLOW_SULIX_REST===true) putSuliXRESTForm($ADAT);
+
+ } elseif (_MODOSITHAT) {
+ // Új diák felvétele
+ putUjDiak($ADAT);
+ }
+ if (_MODOSITHAT===true || _VEZETOSEG===true) {
+ putDiakExportForm($ADAT);
+ }
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/diakExport-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakExport-pre.php
new file mode 100644
index 00000000..05d8f5d8
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakExport-pre.php
@@ -0,0 +1,56 @@
+<?php
+
+ return true;
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__TANAR) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['formatum'] = readVariable($_POST['formatum'], 'emptystringnull', 'csv', array('csv','xml','pdf'));
+ if ($ADAT['formatum'] == 'xml') {
+ $ADAT['mime'] = 'application/vnd.ms-excel';
+ $ADAT['formatum'] = 'xml';
+ }
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null);
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'datetime', date('Y-m-d'));
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+ if ($tanev != __TANEV) $TA = getTanevAdat($tanev); else $TA = $_TANEV;
+
+ $ADAT['fields'] = getTableFields('diak','naplo_intezmeny',array('osztalyJel','diakNaploSorszam'));
+ $szuloMezok = getTableFields('szulo');
+ foreach (array('anya','apa','gondviselő','nevelő') as $szulo)
+ foreach ($szuloMezok as $attr => $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/www/policy/private/naplo/intezmeny/diakExport.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakExport.php
new file mode 100644
index 00000000..fd1c30f9
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakExport.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+// putDiakExportForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/diakFelmentes-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakFelmentes-pre.php
new file mode 100644
index 00000000..d08aa5f6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakFelmentes-pre.php
@@ -0,0 +1,325 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__TANAR && !__DIAK) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/zaroJegyModifier.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'],'date',date('Y-m-d'));
+
+ if (__DIAK===true) {
+ $ADAT['diakId'] = $diakId = __USERDIAKID;
+ } else {
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'],'id');
+ $ADAT['diakId'] = $diakId = readVariable($_POST['diakId'],'id');
+ if ($diakId!='') {
+ $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'],'id');
+ } else {
+ $ADAT['diakId'] = $_POST['diakId'] = $diakId = readVariable($_GET['diakId'],'id');
+ if ($diakId!='') {
+ $_r = getDiakOsztalya($diakId,array('result'=>'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<count($ADAT['diakTankor']); $i++) {
+ if ($ADAT['diakTankor'][$i]['targyId'] == $_POST['targyId']) {
+ $_tankorId = $ADAT['diakTankor'][$i]['tankorId'];
+ $FM = array('diakId'=>$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<count($SZEMESZTEREK); $i++) {
+ $_szemeszter = $SZEMESZTEREK[$i]['szemeszter'];
+ $_hivatalosDt = $SZEMESZTEREK[$i]['zarasDt'];
+ $_evfolyamJel = generateDiakEvfolyamJel($diakId,__TANEV,$szemeszter);
+ // ellenőrizzük a zárójegy táblát, van-e bejegyzése, DE csak a beírandó szemeszter számít
+ {
+ $q = "SELECT count(zaroJegyId) AS db FROM zaroJegy WHERE diakId=%u AND targyId=%u AND evfolyamJel='%s' AND felev=%u AND hivatalosDt='%s'";
+ $v = array($diakId,$targyId,$_evfolyamJel,$_szemeszter,$_hivatalosDt);
+ $count = db_query($q, array('fv'=>'-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<tolDt';
+ unset($igDt);
+ }
+ if ($igDt=='')
+ $_SESSION['alert'][] = 'info:wrong_data:kötelező igDt paraméter';
+ else {
+
+ $SQL_fail=false;
+ $lr = db_connect('naplo_intezmeny');
+ db_start_trans($lr);
+
+ // Teendő: * tankörben FM: óralátogatás alól és értékelés alól, de zárójegyet kap (!)
+ $FM = array('diakId'=>$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<count($ADAT['diakTankor']); $i++) {
+ /* Jó lenne azért ellenőrizni, hogy van-e már ilyen felmentése */
+ if ($ADAT['diakTankor'][$i]['targyId'] == $_POST['targyId']) {
+ $_SESSION['alert'][] = 'info::Kiléptettük:'.$ADAT['diakTankor'][$i]['tankorNev'];
+ $_tankorId = $ADAT['diakTankor'][$i]['tankorId'];
+ $DEL = array(
+ 'tolDt'=>$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<count($SZEMESZTEREK); $i++) {
+ $_szemeszter = $SZEMESZTEREK[$i]['szemeszter'];
+ $_hivatalosDt= $SZEMESZTEREK[$i]['zarasDt'];
+ $_evfolyamJel = generateDiakEvfolyamJel($diakId,__TANEV,$szemeszter);
+ // ellenőrizzük a zárójegy táblát, van-e bejegyzése
+ {
+ $q = "SELECT count(zaroJegyId) AS db FROM zaroJegy WHERE diakId=%u AND targyId=%u AND evfolyamJel='%s' AND felev=%u AND hivatalosDt='%s'";
+ $v = array($diakId,$targyId,$_evfolyamJel,$_szemeszter,$_hivatalosDt);
+ $count = db_query($q, array('fv'=>'-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<count($DELFMID); $i++) {
+ tankorDiakFelmentesLezar(array('tankorDiakFelmentesId'=>$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/www/policy/private/naplo/intezmeny/diakFelmentes.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakFelmentes.php
new file mode 100644
index 00000000..5628ebe8
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakFelmentes.php
@@ -0,0 +1,13 @@
+<?php
+
+ global $ADAT;
+
+ if ($ADAT['diakId']!='') {
+ if (__NAPLOADMIN===true || __VEZETOSEG===true) {
+ putDiakFelmentesForm($ADAT);
+ } else {
+ putDiakFelmentesAdatok($ADAT);
+ }
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/diakStatusz-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakStatusz-pre.php
new file mode 100644
index 00000000..6e8e23b3
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakStatusz-pre.php
@@ -0,0 +1,117 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/diakModifier.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', defined('__TANEV')?__TANEV:null );
+ $ADAT['diakId'] = $diakId = readVariable($_POST['diakId'],'id', readVariable($_GET['diakId'], 'id'));
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'],'numeric unsigned');
+ $ADAT['statusz'] = getEnumField('naplo_intezmeny', 'diak', 'statusz');
+
+ if (isset($diakId)) {
+
+ $ADAT['statusz2zaradek'] = array(
+ 'jogviszonyban van' => 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/www/policy/private/naplo/intezmeny/diakStatusz.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakStatusz.php
new file mode 100644
index 00000000..68403bac
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakStatusz.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['diakId'])) putDiakJogviszonyForm($ADAT);
+ else putHibasJogviszony($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/diakSzulo-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakSzulo-pre.php
new file mode 100644
index 00000000..f16dc808
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakSzulo-pre.php
@@ -0,0 +1,98 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__TANAR && !__DIAK) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/szulo.php');
+
+ $Tipusok = array('anya','apa','gondviselo','nevelo');
+ $ADAT['statuszTipusok'] = getEnumField('naplo_intezmeny', 'szulo', 'statusz');
+
+ if (__DIAK===true) $ADAT['diakId'] = $diakId = __USERDIAKID;
+ else $ADAT['diakId'] = $diakId = readVariable($_POST['diakId'], 'numeric unsigned', readVariable($_GET['diakId'], 'numeric unsigned', null));
+ $ADAT['$szuloId'] = $szuloId = readVariable($_POST['szuloId'], 'numeric unsigned', readVariable($_GET['szuloId'], 'numeric unsigned', null));
+ $ADAT['tipus'] = $tipus = readVariable($_POST['tipus'], 'enum', readVariable($_GET['tipus'], 'enum', null, $Tipusok), $Tipusok);
+ $ADAT['kozteruletJelleg'] = getEnumField('naplo_intezmeny', 'diak', 'lakhelyKozteruletJelleg');
+
+ if (isset($szuloId)) {
+ $ret = getSzulokDiakjai(array($szuloId));
+ $ADAT['szuloDiakjai'] = $ret[$szuloId];
+ $szDiakIds = array();
+ for ($i = 0; $i < count($ADAT['szuloDiakjai']); $i++) $szDiakIds[] = $ADAT['szuloDiakjai'][$i]['diakId'];
+ if (!isset($diakId)) $ADAT['diakId'] = $diakId = $ADAT['szuloDiakjai'][0]['diakId'];
+ elseif (!in_array($diakId, $szDiakIds)) {
+ unset($szuloId); unset($ADAT['$szuloId']); unset($_POST['szuloId']); unset($ADAT['szuloDiakjai']);
+ }
+ }
+ if (isset($diakId)) {
+ $diakAdat = getDiakAdatById($diakId);
+ if (isset($szuloId) && $diakAdat[$tipus.'Id'] != $szuloId) {
+ if ($diakAdat['anyaId'] == $szuloId) $tipus='anya';
+ elseif ($diakAdat['apaId'] == $szuloId) $tipus='apa';
+ elseif ($diakAdat['gondviseloId'] == $szuloId) $tipus='gondviselo';
+ elseif ($diakAdat['neveloId'] == $szuloId) $tipus='nevelo';
+ }
+ }
+
+ if (!isset($_POST['semmi'])) {
+ if (isset($_POST['anya'])) $tipus = 'anya';
+ elseif (isset($_POST['apa'])) $tipus = 'apa';
+ elseif (isset($_POST['gondviselo'])) $tipus = 'gondviselo';
+ elseif (isset($_POST['nevelo'])) $tipus = 'nevelo';
+ }
+ $ADAT['$szuloId'] = $szuloId = $_POST['szuloId'] = $diakAdat[$tipus.'Id'];
+
+ define('_MODOSITHAT',(__NAPLOADMIN || __TITKARSAG));
+ // ------------- action ------------------ //
+ if (_MODOSITHAT && $action=='diakSzuloModositas') {
+
+ if (
+ !isset($_POST['semmi']) &&
+ (isset($_POST['anya']) || isset($_POST['apa']) || isset($_POST['gondviselo']) || isset($_POST['nevelo']))
+ ) {
+ // echo 'lap váltás';
+ } else {
+
+// if (!isset($_POST['szuloId']) || $_POST['szuloId'] == '') {
+ $FIELDS = getTableFields('szulo');
+ foreach ($FIELDS as $attr => $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/www/policy/private/naplo/intezmeny/diakSzulo.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakSzulo.php
new file mode 100644
index 00000000..12a53b54
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakSzulo.php
@@ -0,0 +1,13 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $Szulok, $tipus, $diakAdat, $ADAT;
+
+ if (is_array($diakAdat)) putDiakSzulo($diakAdat, $Szulok, $tipus, $ADAT);
+// if (isset($tipus));
+// else
+// echo 'KERESŐ, vagy ÚJ';
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/diakTankor-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakTankor-pre.php
new file mode 100644
index 00000000..f4ef9295
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakTankor-pre.php
@@ -0,0 +1,116 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+# require_once('include/modules/naplo/share/targy.php');
+# require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/jegyModifier.php');
+ require_once('include/modules/naplo/share/jegy.php');
+
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/share/date/names.php');
+
+ $refDt = readVariable($_POST['refDt'],'datetime',$_TANEV['kezdesDt']);
+ $osztalyId = readVariable($_POST['osztalyId'],'id',null);
+ $ADAT['osztalyId'] = $osztalyId;
+ $forceDel = (readVariable($_POST['forceDel'],'numeric unsigned',null)=='1') ? true:false;
+
+ $diakId = readVariable($_POST['diakId'], 'id', readVariable($_GET['diakId'],'id'));
+ $ADAT['diakId'] = $diakId;
+ if (isset($_POST['tanev']) && $_POST['tanev'] != '') $tanev = $_POST['tanev'];
+ if (!isset($tanev)) $tanev=__TANEV;
+ $ADAT['tanev'] = $tanev;
+
+ //$igDt = date('Y-m-d', strtotime('-1day',strtotime($refDt)));
+
+ if ($tanev!=__TANEV) $TA = getTanevAdat($tanev); else $TA = $_TANEV;
+
+if (isset($refDt)) {
+
+ $ADAT['refDt'] = $refDt;
+
+ define('__MODOSITHATO',(( (__NAPLOADMIN || __VEZETOSEG) && ($TA['statusz']=='aktív' || (__FOLYO_TANEV && $tanev==__TANEV)))));
+
+ if ($action=='do' && __MODOSITHATO) {
+ for($i=0; $i<count($_POST['UJtankorId']); $i++) {
+ $_D = array('tankorId'=>$_POST['UJtankorId'][$i],'diakId'=>$diakId,'tolDt'=>$refDt,'jelenlet'=>'kötelező','kovetelmeny'=>'jegy');
+ tankorDiakFelvesz($_D);
+ }
+ for($i=0; $i<count($_POST['DELtankorId']); $i++) {
+ $_D = array('tankorId'=>$_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<count($result); $i++) {
+
+ }
+
+ } elseif ($action=='do') {
+ $_SESSION['alert'][] = 'info:deadline_expired:';
+ }
+
+
+ if ($diakId!='') {
+ $ADAT['osztalyok'] = $osztalyIdk = getDiakOsztalya($diakId, array('tanev'=>$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; $i<count($osztalyIdk); $i++) {
+ $ADAT['tankorok']['osztalye'][ $osztalyIdk[$i]['osztalyId'] ] = getTankorByOsztalyId($osztalyIdk[$i]['osztalyId'],$tanev,array('tanarral'=>true));
+ }
+ }
+
+}
+
+ // -------------------------------------------------------------------------
+
+ $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/www/policy/private/naplo/intezmeny/diakTankor.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakTankor.php
new file mode 100644
index 00000000..de5d2785
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakTankor.php
@@ -0,0 +1,13 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (__USERADMIN || __VEZETOSEG || __TANAR) {
+
+ if (is_array($ADAT['osztalyok'])) putDiakTankorForm($ADAT);
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/diakTankorJelentkezes-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakTankorJelentkezes-pre.php
new file mode 100644
index 00000000..0c6f8821
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakTankorJelentkezes-pre.php
@@ -0,0 +1,113 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__DIAK && !__TANAR) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/share/date/names.php');
+
+ if (__DIAK) $diakId = __USERDIAKID;
+ else $diakId = readVariable($_POST['diakId'],'id');
+
+ $ADAT['diakId'] = $diakId;
+
+ global $_TANEV;
+
+ if (isset($_POST['szemeszterId']) && $_POST['szemeszterId'] != '')
+ $szemeszterId = readVariable($_POST['szemeszterId'],'id');
+ else {
+ if (__FOLYO_TANEV) $_felev = getFelevByDt(date('Y-m-d')); else $_felev = count($_TANEV['szemeszter']);
+ $szemeszterId = getKovetkezoSzemeszterId($_TANEV['szemeszter'][$_felev]['tanev'],$_TANEV['szemeszter'][$_felev]['szemeszter'], true);
+ if (is_null($szemeszterId)) $szemeszterId = getSzemeszterIdByDt(date('Y-m-d'));
+ }
+ $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId);
+ $ADAT['tanev'] = $tanev = $ADAT['szemeszterAdat']['tanev'];
+ $ADAT['szemeszterId'] = $szemeszterId;
+
+ //igaziból nem kéne blokkba szervezni... var_dump($ADAT['szemeszterAdat']['statusz']=='aktív');
+ $refDt = ($ADAT['szemeszterAdat']['kezdesDt']);
+ // csak a félévhez tartozó időszakok érnek, a tanév más szemesztereihez nem!
+ $IDO = getIdoszakByTanev(array('tanev' => $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<count($ADAT['diakKepzes'][$diakId]); $i++) {
+ $K = $ADAT['diakKepzes'][$diakId][$i];
+ /* Évfolyam meghatározás ha lehet (adott tanév!) */
+ $ADAT['diakOsztaly'] = getDiakokOsztalyai(array($diakId), array('tanev' => $tanev));
+ for($j=0; $j<count($ADAT['diakOsztaly'][$diakId]); $j++) {
+ $ADAT['diakEvfolyam'][] = getEvfolyam($ADAT['diakOsztaly'][$diakId][$j], $tanev);
+ }
+ if (count($ADAT['diakEvfolyam'])>1) $_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/www/policy/private/naplo/intezmeny/diakTankorJelentkezes.php b/mayor-orig/www/policy/private/naplo/intezmeny/diakTankorJelentkezes.php
new file mode 100644
index 00000000..52819ca3
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/diakTankorJelentkezes.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putDiakTankorJelentkezesForm($ADAT);
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/felmentes-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/felmentes-pre.php
new file mode 100644
index 00000000..3dfae44a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/felmentes-pre.php
@@ -0,0 +1,67 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__TANAR && !__DIAK) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/zaroJegyModifier.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'],'date',date('Y-m-d'));
+
+ if (__DIAK===true) {
+ $ADAT['diakId'] = $diakId = __USERDIAKID;
+ } else {
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'],'id');
+ $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'],'id');
+ $ADAT['diakId'] = $diakId = readVariable($_POST['diakId'],'id');
+ }
+ $tolDt = readVariable($_POST['tolDt'],'date',$dt);
+
+ $ADAT['diakAdat'] = getDiakok(array('result'=>'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/www/policy/private/naplo/intezmeny/felmentes.php b/mayor-orig/www/policy/private/naplo/intezmeny/felmentes.php
new file mode 100644
index 00000000..84bcb21d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/felmentes.php
@@ -0,0 +1,11 @@
+<?php
+
+ global $ADAT;
+
+ if (__NAPLOADMIN===true || __VEZETOSEG===true) {
+ putFelmentes($ADAT);
+ } else {
+ //putFelmentes($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/intezmeny-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/intezmeny-pre.php
new file mode 100644
index 00000000..46805e9e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/intezmeny-pre.php
@@ -0,0 +1,5 @@
+<?php
+
+ header('Location: '.location('index.php?page=naplo&sub=intezmeny&f=valtas'));
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/intezmeny.php b/mayor-orig/www/policy/private/naplo/intezmeny/intezmeny.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/intezmeny.php
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/kepesitesek-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/kepesitesek-pre.php
new file mode 100644
index 00000000..2fc0ba1c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/kepesitesek-pre.php
@@ -0,0 +1,92 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/kepesites.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tanar.php');
+
+ $ADAT['targyak'] = getTargyak();
+ foreach ($ADAT['targyak'] as $idx => $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/www/policy/private/naplo/intezmeny/kepesitesek.php b/mayor-orig/www/policy/private/naplo/intezmeny/kepesitesek.php
new file mode 100644
index 00000000..76b8e11b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/kepesitesek.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['kepesitesId'])) putKepesitesAdat($ADAT);
+ else putUjKepesites($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/kepzes-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/kepzes-pre.php
new file mode 100644
index 00000000..152e8e75
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/kepzes-pre.php
@@ -0,0 +1,60 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ $tanev = __TANEV;
+
+ $kepzesId = readVariable($_POST['kepzesId'], 'numeric unsigned', null);
+ if (isset($kepzesId)) {
+ $ADAT['kepzesAdat'] = getKepzesAdatById($kepzesId);
+ }
+ $ADAT['osztalyok'] = getOsztalyok($tanev, array('result' => '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/www/policy/private/naplo/intezmeny/kepzes.php b/mayor-orig/www/policy/private/naplo/intezmeny/kepzes.php
new file mode 100644
index 00000000..c55395ac
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/kepzes.php
@@ -0,0 +1,14 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT['kepzesAdat'])) {
+ putKepzesForm($ADAT);
+ kepzesElesForm($ADAT);
+ }
+ ujKepzesForm($ADAT);
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/kepzesOraterv-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/kepzesOraterv-pre.php
new file mode 100644
index 00000000..f82ea1cf
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/kepzesOraterv-pre.php
@@ -0,0 +1,114 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $tanev = __TANEV;
+ $ADAT['kepzesId'] = $kepzesId = readVariable($_POST['kepzesId'], 'id', null);
+
+ $ADAT['kepzesOraterv.kovetelmeny'] = getEnumField('naplo_intezmeny','kepzesOraterv','kovetelmeny');
+ $KOT = $ADAT['kepzesOraterv.tipus'] = getEnumField('naplo_intezmeny','kepzesOraterv','tipus');
+
+ function _escape($val,$A=null) {
+ global $KOT;
+ if (is_null($A) || !is_array($A)) $A = $KOT;
+ for ($i=0; $i<count($A); $i++) {
+ if ($A[$i]==$val) { return 'E'.$i; }
+ }
+ }
+ function _unescape($val,$A=null) {
+ global $KOT;
+ if (!is_array($A)) $A = $KOT;
+ for ($i=0; $i<count($A); $i++) {
+ if ($i==intval(substr($val,1))) { return $A[$i]; }
+ }
+ }
+
+ if ($action == 'oratervMasolas') {
+ $masolandoKepzesId = readVariable($_POST['masolandoKepzesId'],'id');
+ if (isset($masolandoKepzesId) && isset($kepzesId)) kepzesOratervMasolas($masolandoKepzesId, $kepzesId);
+ } else if ($action == 'do') {
+ // prepare for walk
+ $submit_done = false;
+ reset($_POST);
+ foreach($_POST as $key => $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/www/policy/private/naplo/intezmeny/kepzesOraterv.php b/mayor-orig/www/policy/private/naplo/intezmeny/kepzesOraterv.php
new file mode 100644
index 00000000..d56f4019
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/kepzesOraterv.php
@@ -0,0 +1,12 @@
+<?php
+
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+// putKepzesInfo($ADAT);
+ if ($ADAT['oraterv']==array() && count($ADAT['hasonloKepzesek']) > 1) putOratervMasolas($ADAT);
+ putKepzesOraterv($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/munkakozosseg-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/munkakozosseg-pre.php
new file mode 100644
index 00000000..f8524925
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/munkakozosseg-pre.php
@@ -0,0 +1,110 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $ADAT['targyJellegENUM'] = getEnumField('naplo_intezmeny','targy','targyJelleg');
+ $ADAT['targy.evkoziKovetelmeny'] = getEnumField('naplo_intezmeny','targy','evkoziKovetelmeny');
+ $ADAT['targy.zaroKovetelmeny'] = getEnumField('naplo_intezmeny','targy','zaroKovetelmeny');
+
+ $ADAT['mkId'] = $mkId = readVariable($_POST['mkId'],'id');
+ $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'],'id');
+ $ADAT['targyJelleg'] = $targyJelleg = readVariable($_POST['targyJelleg'],'sql');
+
+ $ADAT['kirTargyak'] = getKirTargyak();
+
+ if (__NAPLOADMIN) {
+ switch ($action) {
+ case 'ujMunkakozosseg':
+ if ($_POST['leiras'] != '')
+ if ( ($mkId=ujMunkakozosseg($_POST['leiras'],$_POST['mkVezId']))===false )
+ unset($mkId); unset($ADAT['mkId']);
+ break;
+ case 'modMunkakozosseg':
+ if ($_POST['mkId']!='' && $_POST['leiras'] != '')
+ modMunkakozosseg($_POST['mkId'],$_POST['leiras'],$_POST['mkVezId'],$_POST['mkUjTagok'],$_POST['mkTagok']);
+ break;
+ case 'ujTargy':
+ if ($_POST['targyleiras']!='') {
+ $_ADAT['mkId'] = readVariable($_POST['mkId'],'id');
+ $_ADAT['leiras']=readVariable($_POST['targyleiras'],'string');
+ $_ADAT['targyJelleg']=readVariable($_POST['targyJelleg'],'string');
+ $_ADAT['evkoziKovetelmeny']=readVariable($_POST['evkoziKovetelmeny'],'string');
+ $_ADAT['zaroKovetelmeny']=readVariable($_POST['zaroKovetelmeny'],'string');
+ $_ADAT['kirTargyId'] = readVariable($_POST['kirTargyId'],'id',null, $ADAT['kirTargyak']);
+ $_ti=ujTargy($_ADAT);
+ if ($_ti!==false && is_numeric($_ti)) $targyId=$_ti;
+ unset($_ti);
+ unset($_ADAT);
+ }
+ break;
+ case 'targyValtoztat':
+ $_ADAT['targyId'] = $targyId;
+ $_ADAT['targyJelleg'] = $targyJelleg;
+ $_ADAT['evkoziKovetelmeny'] = readVariable($_POST['evkoziKovetelmeny'],'sql');
+ $_ADAT['zaroKovetelmeny'] = readVariable($_POST['zaroKovetelmeny'],'sql');
+ $_ADAT['targyRovidNev'] = readVariable($_POST['targyRovidNev'],'sql');
+ $_ADAT['kirTargyId'] = readVariable($_POST['kirTargyId'],'id',null);
+ targyModosit($_ADAT);
+ break;
+ case 'targyTorol':
+ if (targyTorol($_POST['targyId'],$_POST['mkId']))
+ unset($targyId);
+ break;
+ case 'munkakozossegTorol':
+ if (munkakozossegTorol($_POST['mkId']))
+ unset($mkId); unset($ADAT['mkId']);
+ break;
+ case 'targyAtnevezes':
+ $ADAT['ujTargyNev'] = readVariable($_POST['ujTargyNev'],'string');
+ if ($ADAT['ujTargyNev'] != '') targyAtnevezes($ADAT);
+ break;
+ case 'targyMkValtas':
+ $ADAT['befogadoMkId'] = readVariable($_POST['befogadoMkId'], 'id');
+ if (targyMkValtas($ADAT)) {
+ unset($mkId); unset($ADAT['mkId']);
+ }
+ break;
+ case 'targyBeolvasztas':
+ $ADAT['befogadoTargyId'] = readVariable($_POST['befogadoTargyId'], 'id');
+ $ADAT['tankorJeloles'] = readVariable($_POST['tankorJeloles'], 'enum', null, array_values($TANKOR_TIPUS));
+ if (isset($ADAT['befogadoTargyId'])) {
+ if (targyBeolvasztas($ADAT)) {
+ $_SESSION['alert'][] = 'info:success';
+ unset($targyId); unset($ADAT['targyId']);
+ }
+ }
+ break;
+ }
+ }
+
+ $TANAROK = getTanarok();
+
+ // ha csak tággyId adott, kérdezzük le a mkId-t is...
+
+ $ADAT['munkakozossegek'] = getMunkakozossegek();
+ $ADAT['targyTargy'] = getTargyTargy();
+ if ($targyId!='') {
+ $ADAT['targyAdat'] = getTargyById($targyId);
+ if ($mkId=='') $ADAT['mkId'] = $mkId = $ADAT['targyAdat']['mkId'];
+ }
+
+ if (isset($mkId) && $mkId!='') {
+ if (defined('__TANEV')) $__TANEV = __TANEV; else $__TANEV = '';
+ $TANAROK_INMK = getTanarok(array('mkId' => $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/www/policy/private/naplo/intezmeny/munkakozosseg.php b/mayor-orig/www/policy/private/naplo/intezmeny/munkakozosseg.php
new file mode 100644
index 00000000..82ca17ea
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/munkakozosseg.php
@@ -0,0 +1,27 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $targyId;
+ global $TANAROK,$TANAROK_INMK;
+ global $ADAT;
+
+ if (__NAPLOADMIN) {
+ if (isset($targyId) && $targyId!='') {
+ putTargyValtoztatForm($ADAT);
+ putTargyAtnevezes($ADAT);
+ putTargyMkValtas($ADAT);
+ putTargyTorolForm($targyId,$ADAT['mkId']);
+ putTargyBeolvasztasForm($ADAT);
+ putTargyTargyForm($ADAT);
+ } else {
+ putUjMunkakozossegForm($TANAROK);
+ if (isset($ADAT['mkId']) && $ADAT['mkId']!='') {
+ putMunkakozossegForm($ADAT['mkAdat'],$TANAROK,$TANAROK_INMK);
+ putMunkakozossegTorolForm($ADAT['mkId']);
+ putUjTargyForm($ADAT['mkId'], $ADAT);
+ }
+ }
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/osztaly-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/osztaly-pre.php
new file mode 100644
index 00000000..ddc17765
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/osztaly-pre.php
@@ -0,0 +1,323 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+if (__NAPLOADMIN!==true) $_SESSION['alert'][]='page:insufficient_access';
+
+require_once('include/share/date/names.php');
+require_once('include/modules/naplo/share/file.php');
+require_once('include/modules/naplo/share/osztaly.php');
+require_once('include/modules/naplo/share/osztalyModifier.php');
+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/kepzes.php');
+require_once('include/modules/naplo/share/szemeszter.php');
+require_once('include/modules/naplo/share/tankor.php');
+require_once('include/modules/naplo/share/tankorModifier.php');
+require_once('include/modules/naplo/share/tankorDiakModifier.php');
+require_once('include/modules/naplo/share/hianyzasModifier.php');
+require_once('include/modules/naplo/share/jegyModifier.php');
+require_once('include/modules/naplo/share/jegy.php');
+
+
+if (defined('__INTEZMENY') and __INTEZMENY != '') {
+ $ADAT['tanevek'] = getTanevek(true);
+ $ADAT['tanarok'] = getTanarok();
+ $ADAT['kepzesek'] = getKepzesek();
+ $ADAT['telephely'] = getTelephelyek();
+ $ADAT['telephelyIds'] = array();
+ foreach ($ADAT['telephely'] as $i => $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));
+
+ 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<ktanev és nem lehet az osztály évfolyamok száma > 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));
+ 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));
+ 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));
+ $ADAT['osztalyNevsor'] = array();
+ 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));
+
+ 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/www/policy/private/naplo/intezmeny/osztaly.php b/mayor-orig/www/policy/private/naplo/intezmeny/osztaly.php
new file mode 100644
index 00000000..c4f0ca80
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/osztaly.php
@@ -0,0 +1,40 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT, $fileName, $ADATOK, $MEZO_LISTA, $attrList;
+
+ // Osztályhoz rendelés
+ if (isset($ADAT['osztalyId']) && ($ADAT['osztalyAdat']["kezdoTanev"]<=$ADAT['tanev'] && $ADAT['osztalyAdat']["vegzoTanev"]>=$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/www/policy/private/naplo/intezmeny/szulo-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/szulo-pre.php
new file mode 100644
index 00000000..a54ad8aa
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/szulo-pre.php
@@ -0,0 +1,15 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (isset($_POST['szuloId']) && $_POST['szuloId'] != '') $szuloId = $_POST['szuloId'];
+ elseif (isset($_GET['szuloId']) && $_GET['szuloId'] != '') $szuloId = $_GET['szuloId'];
+
+ if (isset($_POST['attr']) && $_POST['attr'] != '') $attr = $_POST['attr'];
+ elseif (isset($_GET['attr']) && $_GET['attr'] != '') $attr = $_GET['attr'];
+
+ require_once('include/modules/naplo/share/szulo.php');
+
+ $Szulok = getSzulok();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/szulo.php b/mayor-orig/www/policy/private/naplo/intezmeny/szulo.php
new file mode 100644
index 00000000..25b61d7f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/szulo.php
@@ -0,0 +1,24 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $Szulok, $szuloId, $attr;
+
+ if ($skin == 'ajax') {
+ putSzuloSelect($Szulok, $szuloId, $attr);
+ } else echo $skin;
+
+ function putSzuloSelect($Szulok, $value, $attr) {
+ formBegin();
+ echo '<select name="'.$attr.'">'."\n";
+ $SEL = array($value => ' selected="selected" ');
+ echo '<option value="NULL"> - </option>'."\n";
+ for ($i = 0; $i < count($Szulok['szuloIds']); $i++) {
+ $szuloId = $Szulok['szuloIds'][$i];
+ echo '<option value="'.$szuloId.'"'.$SEL[$szuloId].'>'.
+ $Szulok[$szuloId]['szuloNev'].'</option>'."\n";
+ }
+ echo '</select>'."\n";
+ formEnd();
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/tanar-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/tanar-pre.php
new file mode 100644
index 00000000..daa02fef
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tanar-pre.php
@@ -0,0 +1,108 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/net/upload.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/kepesites.php');
+
+ $tanarId = readVariable($_POST['tanarId'],'id',readVariable($_GET['tanarId'],'id'));
+ // Adatok frissítése adatállományból
+ if ($action == 'kepUpload') {
+ mayorFileUpload(array('subdir'=>_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/www/policy/private/naplo/intezmeny/tanar.php b/mayor-orig/www/policy/private/naplo/intezmeny/tanar.php
new file mode 100644
index 00000000..604f1d48
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tanar.php
@@ -0,0 +1,27 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $fileName, $ADATOK, $MEZO_LISTA, $attrList;
+ global $ADAT;
+
+ if (is_array($ADAT) && $skin != 'ajax') {
+
+ putTanarAdatForm($ADAT);
+
+ } else {
+ putUjTanar();
+ if ($fileName == '') {
+ putFileSelectForm('naplo_intezmeny:tanar',array('mkId','tanev'));
+ } elseif ($MEZO_LISTA == '') {
+ if (count($ADATOK) > 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/www/policy/private/naplo/intezmeny/tankor-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankor-pre.php
new file mode 100644
index 00000000..d6c92121
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankor-pre.php
@@ -0,0 +1,219 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorModifier.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $ADAT['mkId'] = $mkId = readVariable($_POST['mkId'],'id',null);
+ $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'],'id',null);
+ $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'],'id',readVariable($_GET['tankorId'],'id',null));
+ $_POST['tanev'] = $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'],'numeric unsigned',__TANEV);
+
+ if ($tanev!=__TANEV) $_SESSION['alert'][] = 'info:nem az alapértelmezett tanévben vagyunk!';
+
+ $ADAT['tankor.kovetelmeny'] = getEnumField('naplo_intezmeny','tankor','kovetelmeny');
+ if (defined('__AKG_TANKORNEV') && __AKG_TANKORNEV === true) {
+ $ADAT['tankorNevMegorzes'] = $_POST['tankorNevMegorzes'] = readVariable($_POST['tankorNevMegorzes'],'bool',false);
+ }
+ /* */
+ //$_TA = getTanevAdat($tanev);
+ //$_TA['statusz'];
+
+ if (__NAPLOADMIN || __VEZETOSEG) {
+ switch ($action) {
+ case 'ujTankor': // VAGY MÓDOSÍTÁS!!!
+ if ($tanev != '') {
+ $ADAT['tankorId'] = $tankorId = ujTankor($_POST);
+ if (readVariable($_POST['forceTankorTipusValtas'],'id')==1) {
+ $ADAT['tankorTipusId'] = readVariable($_POST['tankorTipusId'],'id');
+ $erintettHianyzasDb = hianyzasTankorTipusValtas($ADAT['tankorId'],$ADAT['tankorTipusId'],array('tanev'=>$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<count($_tanevek); $i++) {
+ $_tanev = $_tanevek[$i];
+ $_tanevDb = tanevDbNev(__INTEZMENY, $_tanev);
+
+ // A lezárási dátum utáni bejegyzések törlése
+ $q = "DELETE FROM $_tanevDb.orarendiOra WHERE tolDt >= '%s' AND (tanarId,osztalyJel,targyJel) IN (
+ SELECT tanarId,osztalyJel,targyJel FROM $_tanevDb.orarendiOraTankor WHERE tankorId = %u
+ )";
+ $v = array($lezarDt,$tankorId);
+ $r[] = db_query($q, array('fv' => '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<count($_oraIdk); $j++) {
+ $r[] = oraElmarad($_oraIdk[$j], $lr, $_tanev);
+ }
+
+ // jegyek törlése
+ $q = "DELETE FROM $_tanevDb.jegy WHERE tankorId = %u AND dt>='%s'";
+ $v = array($tankorId,$lezarDt);
+ $r[] = db_query($q, array('fv'=>'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/www/policy/private/naplo/intezmeny/tankor.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankor.php
new file mode 100644
index 00000000..998fafec
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankor.php
@@ -0,0 +1,20 @@
+<?php
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN || __VEZETOSEG) {
+
+ global $mkId,$targyId,$tankorId, $tanev;
+ global $MKADAT,$TARGYADAT,$TANAROK,$OSZTALYOK,$SZEMESZTEREK,$TOPOST;
+ global $ADAT;
+
+ if (isset($tankorId) && $tankorId!='' && $ADAT['tanev']==__TANEV) {
+ putTankornevForm($ADAT);
+ }
+ putUjTankorForm($MKADAT,$TARGYADAT,$TANAROK,$OSZTALYOK,$SZEMESZTEREK,$TOPOST,$ADAT);
+ if (isset($tankorId) && $tankorId!='') {
+ putTankorTargyForm($ADAT);
+ putTankorLezarForm($tankorId, $mkId, $targyId, $tanev);
+ putTankorTorolForm($tankorId, $mkId, $targyId, $tanev);
+
+ }
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/tankorDiak-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorDiak-pre.php
new file mode 100644
index 00000000..70e5df7b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorDiak-pre.php
@@ -0,0 +1,162 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ require_once('include/modules/naplo/share/kepzes.php');
+
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/jegy.php');
+ require_once('include/modules/naplo/share/jegyModifier.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+
+ require_once('include/share/date/names.php');
+
+ if (isset($_POST['mkId']) && $_POST['mkId'] != '') $mkId = $_POST['mkId'];
+ if (isset($_POST['targyId']) && $_POST['targyId'] != '') $targyId = $_POST['targyId'];
+ if (isset($_POST['tankorId']) && $_POST['tankorId'] != '') $tankorId = $_POST['tankorId'];
+ elseif (isset($_GET['tankorId']) && $_GET['tankorId'] != '') $tankorId = $_GET['tankorId'];
+ if (isset($_POST['tanev']) && $_POST['tanev'] != '') $tanev = $_POST['tanev'];
+
+ if (!isset($tanev)) $tanev=__TANEV;
+ $dt = date('Y-m-d');
+ $ret = getIdoszakByTanev(array('tanev' => $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()<strtotime($TA['kezdesDt'])) $refDt = $TA['kezdesDt'];
+ else $refDt = date('Y-m-d');
+
+ $ADAT['refDt'] = $refDt;
+
+ if (isset($_POST['igDt']) && $_POST['igDt'] != '') $ADAT['igDt'] = $igDt = $_POST['igDt'];
+ $_POST['tolDt']=$_POST['refDt'];
+
+
+ // Le kell kérdeznünk, hogy tanára-e a tankörnek...
+ if (isset($tankorId) && checkTankorInTanev($tankorId, $tanev)) {
+ $ADAT['tankor']['tanarai'] = getTankorTanaraiByInterval($tankorId,array('tanev'=>$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<count($_POST['diakId']); $i++) {
+ $D = $_POST;
+ $D['diakId'] = $_POST['diakId'][$i];
+ tankorDiakFelvesz($D);
+ }
+ break;
+ case 'tankorDiakMod':
+ $oldCount = count($_SESSION['alert']);
+ tankorDiakModify($_POST); // és törlés
+ $ADAT['voltUtkozes'] = ($oldCount < count($_SESSION['alert']));
+ break;
+ } // switch
+ } // __NAPLOADMIN - mégegyszer - hátha később két szinten szét akarjuk bontani
+
+ // force variables to reload
+ if (isset($tankorId)) {
+ $TANKORADAT = getTankorAdat($tankorId,$tanev);
+ $TANKORADAT[0] = $TANKORADAT[$tankorId][0];
+ $ADAT['tankorAdat'] = $TANKORADAT[0];
+ $targyId = $TANKORADAT[0]['targyId'];
+ }
+ if (isset($targyId)) {
+ $TARGYADAT = getTargyById($targyId);
+ $mkId = $TARGYADAT['mkId'];
+ }
+
+ if (isset($tankorId) && checkTankorInTanev($tankorId, $tanev)) {
+ $ADAT['tankorId'] = $tankorId;
+ $ADAT['tanevadat'] = getTanevAdat($tanev);
+ $ADAT['tankor']['diakjai'] = getTankorDiakjaiByInterval($tankorId, $tanev, $ADAT['refDt'], $ADAT['refDt']);
+ $ADAT['tankor']['osztalyai'] = getTankorOsztalyaiByTanev($tankorId, $tanev, array('tagokAlapjan' => 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<count($_D); $i++) $DIAKIDK[] = $_D[$i]['diakId'];
+ $ADAT['diakOsztaly'] = getDiakokOsztalyai($ADAT['tankor']['diakjai']['idk'], array('tanev'=>__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/www/policy/private/naplo/intezmeny/tankorDiak.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorDiak.php
new file mode 100644
index 00000000..e2b054df
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorDiak.php
@@ -0,0 +1,17 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (__MODOSITHATO === true) {
+ if (is_array($ADAT)) {
+ putTankorDiakForm($ADAT);
+ putUjDiakForm($ADAT);
+ putUjDiakForm2($ADAT);
+ }
+ } elseif (is_numeric($ADAT['tankorId'])) {
+ putTankorDiakTablazat($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/tankorLetszam-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorLetszam-pre.php
new file mode 100644
index 00000000..fce99fcb
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorLetszam-pre.php
@@ -0,0 +1,101 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/jegy.php');
+ require_once('include/modules/naplo/share/jegyModifier.php'); //????
+ require_once('include/share/date/names.php');
+
+ $mkId = readVariable($_POST['mkId'],'id');
+ $targyId = readVariable($_POST['targyId'],'id');
+ $tankorId = readVariable($_POST['tankorId'],'id', readVariable($_GET['tankorId'],'id') );
+ $tanev = readVariable($_POST['tanev'],'numeric');
+
+ $ADAT['osztalyonkent'] = readVariable($_POST['osztalyonkent'],'bool');
+ $ADAT['tankorLetszamLimit'] = readVariable($_POST['tankorLetszamLimit'],'numeric');
+ $ADAT['targyId'] = readVariable($_POST['targyId'],'id');
+ $ADAT['mkId'] = readVariable($_POST['mkId'],'id');
+
+ if (!isset($tanev)) $tanev=__TANEV;
+
+ 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()<strtotime($TA['kezdesDt'])) $refDt = $TA['kezdesDt'];
+ else $refDt = date('Y-m-d');
+
+ $ADAT['refDt'] = $refDt;
+
+ if (isset($_POST['igDt']) && $_POST['igDt'] != '') $ADAT['igDt'] = $igDt = $_POST['igDt'];
+ $_POST['tolDt']=$_POST['refDt'];
+
+ // tankörök lekérdzése
+ if (isset($mkId)) {
+ $ADAT['tankorok'] = getTankorByMkId($mkId, $tanev);
+ } elseif (isset($targyId)) {
+ $ADAT['tankorok'] = getTankorByTargyId($targyId, $tanev, array('idonly'=>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<count($ADAT['tankorok']); $i++) {
+ $_tankorId = $ADAT['tankorok'][$i]['tankorId'];
+ $ADAT['tankorok'][$i]['letszam'] = getTankorLetszam($_tankorId, array('refDt'=>$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/www/policy/private/naplo/intezmeny/tankorLetszam.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorLetszam.php
new file mode 100644
index 00000000..a1e7e6ef
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorLetszam.php
@@ -0,0 +1,8 @@
+<?php
+
+ global $ADAT;
+
+ putTankorLetszam($ADAT);
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/tankorSzemeszter-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorSzemeszter-pre.php
new file mode 100644
index 00000000..d2131894
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorSzemeszter-pre.php
@@ -0,0 +1,122 @@
+<?php
+
+// 3.1
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (__NAPLOADMIN) {
+ /* Including shared libraries */
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/intezmeny/tankorTanar.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+
+ /* Input Variables */
+ $mkId = readVariable($_POST['mkId'],'numeric unsigned');
+ $tanarId = readVariable($_POST['tanarId'],'numeric unsigned');
+ $osztalyId = readVariable($_POST['osztalyId'],'numeric unsigned');
+ $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+
+ /* Setting default data */
+ if ($tanev != __TANEV) $TA = getTanevAdat($tanev);
+ else $TA = $_TANEV;
+
+ $ADAT['tanev'] = $tanev;
+
+ // tankörök lekérdzése
+ if (isset($mkId)) {
+ $TANKOROK = getTankorByMkId($mkId, $tanev);
+ } elseif (isset($osztalyId)) {
+ $TANKOROK = getTankorByOsztalyId($osztalyId, $tanev, array('tanarral' => 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<count($ADAT['tankorok']); $i++) {
+ $_tankorId=$ADAT['tankorok'][$i]['tankorId'];
+ $ADAT['tankorTanarok'][$_tankorId] = getTankorTanarai($_tankorId);
+ }
+ }
+
+ } // van Tankorok
+
+
+ // ToolBar
+ $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['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/www/policy/private/naplo/intezmeny/tankorSzemeszter.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorSzemeszter.php
new file mode 100644
index 00000000..c9b5209a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorSzemeszter.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT['tankorok'])) putTankorSzemeszterForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanar-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanar-pre.php
new file mode 100644
index 00000000..19fa11ba
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanar-pre.php
@@ -0,0 +1,114 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/intezmeny/tankorTanar.php');
+ require_once('include/share/date/names.php');
+
+ $kuuk = $_COOKIE['mayorNaploUzen'];
+
+ $tanev = $ADAT['tanev'] = readVariable($_POST['tanev'], 'numeric unsigned', readVariable($_GET['tanev'], 'numeric unsigned', __TANEV));
+ if ($tanev == __TANEV) $TA = $_TANEV;
+ else $TA = getTanevAdat($tanev);
+
+//?? Ez mi is ??
+ if ($kuuk==$_GET['kuuk']) {
+ $_POST['tankorId'] = $ADAT['tankorId'] = $tankorId = readVariable($_GET['tankorId'],'numeric');
+ } else {
+ $_POST['tankorId'] = $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'], 'id', readVariable($_GET['tankorId'], 'id'));
+ }
+
+ if (isset($ADAT['tankorId'])) {
+ $_POST['mkId'] = $ADAT['mkId'] = $mkId = getTankorMkId($ADAT['tankorId']);
+ $tmp = current(getTankorAdat($tankorId));
+ $ADAT['tankorAdat'] = $tmp[0];
+ } else {
+ $_POST['mkId'] = $ADAT['mkId'] = $mkId = readVariable($_POST['mkId'], 'id', readVariable($_GET['mkId'], 'id'));
+ }
+
+ /* Dátumok */
+ $_POST['refDt'] = $ADAT['refDt'] = $refDt = readVariable($_POST['refDt'], 'date', readVariable($_GET['refDt'], 'date', $TA['kezdesDt']));
+
+// if (isset($_POST['igDt']) && $_POST['igDt'] != '') $ADAT['igDt'] = $igDt = $_POST['igDt'];
+// else $ADAT['igDt'] = $igDt = $TA['zarasDt'];
+ $ADAT['igDt'] = $igDt = readVariable($_POST['igDt'], 'date', $TA['zarasDt']);
+ if (strtotime($igDt) < strtotime($refDt)) $ADAT['igDt'] = $igDt = $refDt;
+
+ $tankorIds = $_POST['tankorok'];
+ $tankorTanarIds = array();
+ foreach ($_POST as $name => $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<count($ADAT['tankorok']); $i++) {
+ $_tankorId=$ADAT['tankorok'][$i]['tankorId'];
+ $ADAT['tankorTanarok'][$_tankorId] = getTankorTanarai($_tankorId);
+ $ADAT['tankorTanarBejegyzesek'][$_tankorId] = getTankorTanarBejegyzesek($_tankorId);
+ }
+ }
+
+ $ADAT['kuuk'] = rand();
+ setcookie('mayorNaploUzen',$ADAT['kuuk']);
+
+ $tolDt = (strtotime($TA['kezdesDt'])<time()) ? date('Y-m-d', strtotime('-1 month', strtotime($TA['kezdesDt']))) : date('Y-m-d');
+
+ $TOOL['tanevSelect'] = array(
+ 'tipus' => '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/www/policy/private/naplo/intezmeny/tankorTanar.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanar.php
new file mode 100644
index 00000000..b8ce04ec
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanar.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putTankorTanarForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles-pre.php
new file mode 100644
index 00000000..3b5f5133
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles-pre.php
@@ -0,0 +1,64 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) { $_SESSION['alert'] = 'page:insufficient_access'; }
+ else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tankorModifier.php');
+
+ $ADAT['szuro'] = array(
+ 'osztalyok' => 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/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles.php b/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles.php
new file mode 100644
index 00000000..5b19149a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tankorTanarHozzarendeles.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putStatuszSor($ADAT);
+
+ if (is_array($ADAT['tankorok']) && count($ADAT['tankorok'])>0) putTankorTanarMatrix($ADAT);
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/tantargyFelosztas.php b/mayor-orig/www/policy/private/naplo/intezmeny/tantargyFelosztas.php
new file mode 100644
index 00000000..d8124253
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tantargyFelosztas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT['tankorok'])) putTankorTanarMatrix($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/terem-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/terem-pre.php
new file mode 100644
index 00000000..2fc6e2de
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/terem-pre.php
@@ -0,0 +1,42 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+
+ $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['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 '<pre>'; var_dump($ADAT['teremIds']); echo '</pre>';
+
+ 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'));
+ getToolParameters();
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/terem.php b/mayor-orig/www/policy/private/naplo/intezmeny/terem.php
new file mode 100644
index 00000000..f36fb11b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/terem.php
@@ -0,0 +1,13 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['teremId'])) {
+ putTeremForm($ADAT);
+ } else {
+ putTeremLista($ADAT);
+//NEM TESZTELT! putTeremForm($ADAT);
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/tovabbkepzes-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/tovabbkepzes-pre.php
new file mode 100644
index 00000000..f2eacf29
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tovabbkepzes-pre.php
@@ -0,0 +1,112 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN!==true && __TANAR!==true && __VEZETOSEG!==true) $_SESSION['alert'][]='page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/tanarModifier.php');
+
+ global $SSSHH;
+ $SSSHH .= "<script type=\"text/javascript\" src=\"https://www.google.com/jsapi?autoload={'modules':[{'name':'visualization','version':'1.1','packages':['timeline','corechart']}]}\"></script>\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; $i<count($MOD); $i++) {
+ $ADAT['tovabbkepzesId'] = $MOD[$i];
+ $ADAT['tovabbkepzesNev'] = readVariable($_POST['tovabbkepzesNev_'.$MOD[$i]],'string',null);
+ $ADAT['oraszam'] = intval(readVariable($_POST['oraszam_'.$MOD[$i]],'numeric unsigned',null));
+ $ADAT['kategoria'] = readVariable($_POST['kategoria_'.$MOD[$i]],'string',null);
+ $ADAT['akkreditalt'] = ($ADAT['kategoria']=='egyéb') ? 0:1;
+ modTovabbkepzes($ADAT);
+ }
+ } elseif ($action=='ujTovabbkepzesTanar') { // az egész táblázat egyszerre módosul - lehetne máshogy is
+ $ADAT['tovabbkepzesId'] = readVariable($_POST['tovabbkepzesId'],'id',null);
+ $ADAT['tanarId'] = readVariable($_POST['tanarId'],'id',null);
+ $ADAT['tolDt'] = readVariable($_POST['tolDt'],'date',null);
+ $ADAT['igDt'] = readVariable($_POST['igDt'],'date',null);
+ $ADAT['tanusitvanyDt'] = readVariable($_POST['tanusitvanyDt'],'date',null);
+ $ADAT['tanusitvanySzam'] = readVariable($_POST['tanusitvanySzam'],'string',null);
+ if ($ADAT['tovabbkepzesId']>0 && $ADAT['tanarId']>0)
+ ujTovabbkepzesTanar($ADAT);
+ $MOD = readVariable($_POST['tovabbkepzesTanar'],'string',null);
+ if (is_array($MOD) && count($MOD)>0) {
+ for ($i=0;$i<count($MOD); $i++) {
+ list($_tovabbkepzesId,$_tanarId) = explode('_',$MOD[$i]);
+ $M = array();
+ $M['tovabbkepzesId'] = $_tovabbkepzesId;
+ $M['tanarId'] = $_tanarId;
+ $M['tolDt'] = readVariable($_POST['tolDt_'.$_tovabbkepzesId.'_'.$_tanarId],'date',null);
+ $M['igDt'] = readVariable($_POST['igDt_'.$_tovabbkepzesId.'_'.$_tanarId],'date',null);
+ $M['tanusitvanyDt'] = readVariable($_POST['tanusitvanyDt_'.$_tovabbkepzesId.'_'.$_tanarId],'date',null);
+ $M['tanusitvanySzam'] = readVariable($_POST['tanusitvanySzam_'.$_tovabbkepzesId.'_'.$_tanarId],'string',null);
+ if ($_POST['tovabbkepzesTorles_'.$_tovabbkepzesId.'_'.$_tanarId]=='-') {
+ delTovabbkepzesTanar($M);
+ } else {
+ modTovabbkepzesTanar($M);
+ }
+ }
+ }
+ } elseif ($action == 'ujTovabbkepzesTE') {
+ $U = readVariable($_POST['TE'],'string',null);
+ for ($i=0; $i<count($U); $i++) {
+ list($_D['tovabbkepzesId'],$_D['tanarId'],$_D['tanev']) = explode('_',$U[$i]);
+ $_D['reszosszeg'] = readVariable($_POST['reszosszeg_'.$U[$i]],'numeric unsigned',0);
+ $_D['tamogatas'] = readVariable($_POST['tamogatas_'.$U[$i]],'numeric unsigned',0);
+ $_D['tovabbkepzesStatusz'] = readVariable($_POST['TE_statusz_'.$U[$i]],'enum','',array('','terv','jóváhagyott','elutasított','megszűnt','megszakadt','teljesített'));
+// $_D['tovabbkepzesStatusz'] = readVariable($_POST['TE_statusz_'.$U[$i]],'string','');
+ $_D['tavollet'] = readVariable($_POST['tavollet_'.$U[$i]],'string','');
+ $_D['helyettesitesRendje'] = readVariable($_POST['helyettesitesRendje_'.$U[$i]],'string','');
+ $_D['prioritas'] = readVariable($_POST['prioritas_'.$U[$i]],'string','');
+ if ($_D['tovabbkepzesStatusz']=='') delTovabbkepzesTE($_D);
+ else modTovabbkepzesTE($_D);
+ }
+ $keretOsszeg = readVariable($_POST['keretOsszeg'],'numeric unsigned',0);
+ modKeretOsszeg($ADAT['tanev'],$keretOsszeg);
+ }
+
+ }
+/* ------------------------------------------------- */
+
+ $ADAT['tovabbkepzoIntezmenyek'] = getTovabbkepzoIntezmenyek();
+ $ADAT['tovabbkepzesek'] = getTovabbkepzesek();
+ $ADAT['tovabbkepzesTanar'] = getTanarTovabbkepzesek();
+ $ADAT['lehetsegesTovabbkepzesek'] = getTanarTovabbkepzesByEv($ADAT['tanev']);
+ $ADAT['tovabbkepzesTerv'] = getTovabbkepzesTerv($ADAT['tanev']);
+ $ADAT['tanarok'] = getTanarok(
+ array('extraAttrs'=>'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/www/policy/private/naplo/intezmeny/tovabbkepzes.php b/mayor-orig/www/policy/private/naplo/intezmeny/tovabbkepzes.php
new file mode 100644
index 00000000..160d944b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/tovabbkepzes.php
@@ -0,0 +1,12 @@
+<?php
+ global $ADAT;
+
+ if ($skin != 'ajax') {
+ putTovabbkepzesTerv($ADAT);
+ putTovabbkepzesek($ADAT);
+ if (__NAPLOADMIN || __VEZETOSEG) {
+ putTanarokTovabbkepzesAdatai($ADAT);
+ putUjTovabbkepzes($ADAT);
+ }
+ }
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/valtas-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/valtas-pre.php
new file mode 100644
index 00000000..ec39cdc5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/valtas-pre.php
@@ -0,0 +1,58 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+
+ $intezmeny = readVariable($_POST['intezmeny'], 'strictstring', defined('__INTEZMENY') ? __INTEZMENY : null );
+ if ($action == 'intezmenyValasztas') {
+ if (isset($intezmeny) && $intezmeny !== __INTEZMENY) {
+ if (updateSessionIntezmeny($intezmeny)) {
+ if (updateNaploSettings($intezmeny))
+ header('Location: '.location('index.php?page=naplo&sub=intezmeny&f=valtas'));
+ }
+ }
+ }
+
+ if (defined('__INTEZMENY') and __INTEZMENY != '') {
+ $Tanevek = getTanevek();
+ $Telephelyek = getTelephelyek();
+ $telephelyIds = array();
+ if (is_array($Telephelyek)) foreach ($Telephelyek as $index => $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'));
+ $lr = db_connect('naplo_intezmeny');
+ for($i=0; $i<count($ADAT['tanarok']); $i++) {
+ $_tanarId = $ADAT['tanarok'][$i]['tanarId'];
+ $ADAT['tanarOsztaly'][$_tanarId] = getOsztalyIdsByTanarId($_tanarId, array('tanev'=>__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/www/policy/private/naplo/intezmeny/valtas.php b/mayor-orig/www/policy/private/naplo/intezmeny/valtas.php
new file mode 100644
index 00000000..3d15f4de
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/valtas.php
@@ -0,0 +1,7 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ global $ADAT;
+ putTanarLista($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/verseny-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/verseny-pre.php
new file mode 100644
index 00000000..e0554b55
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/verseny-pre.php
@@ -0,0 +1,54 @@
+<?php
+
+
+ if (_RIGHTS_OK !== true) die();
+
+
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/verseny.php');
+// $ADAT['versenyek'] = getVersenyek();
+// $ADAT['targyak'] = getTargyak();
+
+/*
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+
+ $intezmeny = readVariable($_POST['intezmeny'], 'strictstring', defined('__INTEZMENY') ? __INTEZMENY : null );
+ if ($action == 'intezmenyValasztas') {
+ if (isset($intezmeny) && $intezmeny !== __INTEZMENY) {
+ if (updateSessionIntezmeny($intezmeny)) {
+ if (updateNaploSettings($intezmeny))
+ header('Location: '.location('index.php?page=naplo&sub=intezmeny&f=valtas'));
+ }
+ }
+ }
+
+ if (defined('__INTEZMENY') and __INTEZMENY != '') {
+ $Tanevek = getTanevek();
+ $Telephelyek = getTelephelyek();
+ $telephelyIds = array();
+ if (is_array($Telephelyek)) foreach ($Telephelyek as $index => $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/www/policy/private/naplo/intezmeny/verseny.php b/mayor-orig/www/policy/private/naplo/intezmeny/verseny.php
new file mode 100644
index 00000000..71d8dd36
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/verseny.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+// putVersenyek($ADAT);
+
+// putUjVerseny($ADAT['targyak']);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/intezmeny/zaradek-pre.php b/mayor-orig/www/policy/private/naplo/intezmeny/zaradek-pre.php
new file mode 100644
index 00000000..f03fbf46
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/zaradek-pre.php
@@ -0,0 +1,76 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__TANAR && !__VEZETOSEG && !__NAPLOADMIN && !__TITKARSAG) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/share/date/names.php');
+
+ $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'], 'numeric unsigned');
+ $diakId = $ADAT['diakId'] = readVariable($_POST['diakId'], 'numeric unsigned');
+ $ADAT['iktatoszam'] = readVariable($_POST['iktatoszam'], 'string');
+ $dt = $ADAT['dt'] = readVariable($_POST['dt'], 'datetime');
+ $zaradekIndex = $ADAT['zaradekIndex'] = readVariable($_POST['zaradekIndex'], 'numeric unsigned');
+
+ if (isset($zaradekIndex)) {
+ $tmp = explode('%', $Zaradek[$zaradekIndex]['szoveg']);
+ $ADAT['zaradek'] = $Zaradek[$zaradekIndex];
+ $ADAT['params'] = array();
+ for ($i=1; $i < count($tmp); $i = $i+2) $ADAT['params'][] = $tmp[$i];
+
+ if ($action == 'zaradekRogzites') {
+ $ok = true;
+ $values = readVariable($_POST['values'], 'string', '');
+ $ADAT['csere'] = array();
+ for ($i = 0; $i < count($ADAT['params']); $i++) {
+ $ADAT['csere'][ '%'.$ADAT['params'][$i].'%' ] = $values[$i];
+ if ($values[$i] == '') $ok = false;
+ }
+ if ($ok) {
+ if (zaradekRogzites($ADAT)) {
+ $_SESSION['alert'][] = 'info:success';
+ unset($zaradekIndex); unset($ADAT['zaradekIndex']);
+ }
+ } else {
+ $_SESSION['alert'][] = 'message:empty_field';
+ }
+ }
+ }
+ if ($action=='zaradekTorles') {
+ foreach ($_POST as $key => $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/www/policy/private/naplo/intezmeny/zaradek.php b/mayor-orig/www/policy/private/naplo/intezmeny/zaradek.php
new file mode 100644
index 00000000..cb55caaa
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/intezmeny/zaradek.php
@@ -0,0 +1,11 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['zaradekIndex'])) {
+ putZaradekForm($ADAT);
+ } elseif (is_array($ADAT['diakZaradekok']) && count($ADAT['diakZaradekok']) > 0) {
+ putDiakZaradekok($ADAT);
+ }
diff --git a/mayor-orig/www/policy/private/naplo/koszi/esemenyAdmin-pre.php b/mayor-orig/www/policy/private/naplo/koszi/esemenyAdmin-pre.php
new file mode 100644
index 00000000..a74a12e3
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/koszi/esemenyAdmin-pre.php
@@ -0,0 +1,83 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+if (!defined('__KOSZIADMIN')) define('__KOSZIADMIN',memberOf(_USERACCOUNT,'kosziadmin'));
+
+if (!(__KOSZIADMIN || __NAPLOADMIN)) { /* vagy naploadmin vagy kosziadmin (ez a csoport opcionális!) */
+ $_SESSION['alert'][] = 'page:insufficient_access';
+} else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/koszi.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $ADAT['kosziEsemenyTipusok'] = getEnumField('naplo_intezmeny', 'kosziEsemeny', 'kosziEsemenyTipus');
+ $ADAT['kosziPontTipusok'] = getEnumField('naplo_intezmeny', 'kosziPont', 'kosziPontTipus');
+ $ADAT['kosziIgazolok'] = getEnumField('naplo', 'koszi', 'igazolo');
+ $ADAT['kosziEsemenyId'] = readVariable($_POST['kosziEsemenyId'], 'id');
+
+ if ($action=='ujKosziEsemeny') {
+
+ $P['kosziEsemenyTipus'] = readVariable($_POST['kosziEsemenyTipus'],'enum',null,$ADAT['kosziEsemenyTipusok']);
+ $P['kosziEsemenyNev'] = readVariable($_POST['kosziEsemenyNev'],'string') ;
+ $P['kosziEsemenyLeiras'] = readVariable($_POST['kosziEsemenyLeiras'],'string') ;
+
+ $ADAT['kosziEsemenyId'] = ujEsemeny($P);
+
+ } elseif ( $action== 'ujPont') {
+ $P['kosziEsemenyId'] = $ADAT['kosziEsemenyId'];
+ $P['kosziPontTipus'] = readVariable($_POST['kosziPontTipus'],'enum',null,$ADAT['kosziPontTipusok']);
+ $P['kosziPont'] = readVariable($_POST['kosziPont'],'id');
+ $P['kosziHelyezes'] = readVariable($_POST['kosziHelyezes'],'id');
+
+ ujKosziPont($P);
+ } elseif ( $action== 'delKoszi') {
+
+ $P['kosziId'] = readVariable($_POST['kosziId'],'id');
+
+ delKoszi($P['kosziId']);
+
+ } elseif ( $action== 'ujKoszi') {
+
+ $P['kosziEsemenyId'] = $ADAT['kosziEsemenyId'];
+ $P['dt'] = readVariable($_POST['dt'],'date');
+ $P['tolDt'] = readVariable($_POST['tolDt'],'datetime');
+ $P['igDt'] = readVariable($_POST['igDt'],'datetime');
+ $P['felev'] = readVariable($_POST['felev'],'id');
+ $P['igazolo'] = @implode(',',readVariable($_POST['igazolo'],'enum',null,$ADAT['kosziIgazolok']));
+
+ $P['diakId'] = readVariable($_POST['diakId'],'id');
+ $P['tanarId'] = readVariable($_POST['tanarId'],'id');
+ $P['targyId'] = readVariable($_POST['targyId'],'id');
+ $P['osztalyfonokId'] = readVariable($_POST['osztalyfonokId'],'id');
+
+ $kosziId = ujKoszi($P);
+
+ // ez a rész nincs használatban igaziból, de megtartjuk
+ if (is_array($P['diakId'])) $ig[] = 'diák';
+ if (is_array($P['tanarId'])) $ig[] = 'tanár';
+ if (is_array($P['osztalyfonokId'])) $ig[] = 'osztályfőnök';
+ if (is_array($ig) && isset($kosziId)) {
+ $P['igazolo'] = implode(',',$ig);
+ if (is_array($P['diakId'])) kosziIgazolo($kosziId, $P['diakId'],'Diak');
+ if (is_array($P['tanarId'])) kosziIgazolo($kosziId, $P['tanarId'],'Tanar');
+ if (is_array($P['osztalyfonokId'])) kosziIgazolo($kosziId, $P['osztalyfonokId'],'Of');
+ }
+ }
+
+ if (is_numeric($ADAT['kosziEsemenyId'])) {
+ $ADAT['kosziPont'] = getKosziPont($ADAT['kosziEsemenyId']);
+ $ADAT['koszi'] = getKoszi($ADAT['kosziEsemenyId']);
+ }
+ $ADAT['kosziEsemenyek'] = getKosziEsemenyek();
+ $ADAT['tanarok'] = getTanarok();
+ $ADAT['osztalyok'] = getOsztalyok();
+ //$ADAT['diakok'] = getDiakok();
+ $ADAT['targyak'] = getTargyak();
+
+}
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/koszi/esemenyAdmin.php b/mayor-orig/www/policy/private/naplo/koszi/esemenyAdmin.php
new file mode 100644
index 00000000..8dbc95c0
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/koszi/esemenyAdmin.php
@@ -0,0 +1,21 @@
+<?php
+
+ global $ADAT;
+
+ echo '<h2>'._ESEMENYMINTAK.'</h2>';
+ echo '<div class="kosziline"></div>';
+ putKosziEsemenyek($ADAT);
+
+ if (is_numeric($ADAT['kosziEsemenyId'])) {
+ putKosziPont($ADAT);
+
+ echo '<h2>'._ESEMENYEK_TANEVBEN.'</h2>';
+ echo '<div class="kosziline"></div>';
+ putUjKoszi($ADAT);
+ putKoszi($ADAT);
+ } else {
+ putUjKosziEsemeny($ADAT);
+ }
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/koszi/koszi-pre.php b/mayor-orig/www/policy/private/naplo/koszi/koszi-pre.php
new file mode 100644
index 00000000..8fc1264f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/koszi/koszi-pre.php
@@ -0,0 +1,49 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+if (!__DIAK) $_SESSION['alert'][] = 'page:insufficient_access';
+else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/koszi.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $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/www/policy/private/naplo/koszi/koszi.php b/mayor-orig/www/policy/private/naplo/koszi/koszi.php
new file mode 100644
index 00000000..01c7f1c7
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/koszi/koszi.php
@@ -0,0 +1,8 @@
+<?php
+
+ global $ADAT;
+
+ putKosziLista($ADAT);
+ putKosziDiakLista($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/koszi/kosziAdmin-pre.php b/mayor-orig/www/policy/private/naplo/koszi/kosziAdmin-pre.php
new file mode 100644
index 00000000..4ad1d537
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/koszi/kosziAdmin-pre.php
@@ -0,0 +1,93 @@
+<?php
+
+//$_SESSION['alert'][] = 'page:insufficient_access';
+
+
+if (_RIGHTS_OK !== true) die();
+if (!__DIAK && !__TANAR && !__VEZETOSEG && !__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+} else {
+
+/*
+ DESCIPTION
+
+ Az adminisztrátor (kosziIgazoloDiak, kosziIgazoloOf, kosziIgazoloTanar) jóváhagy, elutasítás-ra kattintva
+ egyesével nyilatkozik a jelentkezés jogosságáról. Esetleg szűrhető konkrét eseményre vagy eseménytípusra.
+
+*/
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/koszi.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ define('__KOSZIADMIN',memberOf(_USERACCOUNT,'kosziAdmin'));
+
+ $ADAT['kosziId'] = readVariable($_POST['kosziId'],'id');
+ if ($action=='igazol') {
+
+ $P['kosziId'] = readVariable($_POST['kosziId'],'id');
+ $P['diakId'] = readVariable($_POST['diakId'],'id');
+ $P['accept'] = readVariable($_POST['accept'],'bool');
+ $P['decline'] = readVariable($_POST['decline'],'bool');
+ $P['kosziPontId'] = readVariable($_POST['kosziPontId'],'id') ;
+
+ /* ellenőrizzük a jogosultságokat is először */
+ $kosziJovahagyhato = ( __KOSZIADMIN===true || ( __TANAR===true && kosziJovahagyhatoByTanarId($P['kosziId'],__USERTANARID)) || (__DIAK===true && kosziJovahagyhatoByDiakId($P['kosziId'],__USERDIAKID)) ) ? true : false;
+
+ if ($kosziJovahagyhato===true) {
+ if ($P['decline']===true) {
+ kosziElutasit($P['kosziId'],$P['diakId']);
+ } elseif ($P['accept']===true) {
+ kosziJovahagy($P['kosziId'],$P['diakId']);
+ }
+ } else {
+ $_SESSION['alert'][] = 'info:insufficient_access';
+ }
+ }
+
+
+ $ADAT['kosziIgazolando'] = getKosziDiakIgazolandoLista('',array('diakId'=>__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/www/policy/private/naplo/koszi/kosziAdmin.php b/mayor-orig/www/policy/private/naplo/koszi/kosziAdmin.php
new file mode 100644
index 00000000..8c0bbae1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/koszi/kosziAdmin.php
@@ -0,0 +1,10 @@
+<?php
+
+ global $ADAT;
+
+// putKosziLista($ADAT);
+// putKosziDiakLista($ADAT);
+
+ putKosziIgazolandoLista($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/naplo-pre.php b/mayor-orig/www/policy/private/naplo/naplo-pre.php
new file mode 100644
index 00000000..85dfa076
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/naplo-pre.php
@@ -0,0 +1,22 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/intezmenyek.php');
+
+ $intezmeny = readVariable($_POST['intezmeny'], 'strictstring', defined('__INTEZMENY') ? __INTEZMENY : null);
+ if ($action == 'intezmenyValasztas') {
+ if (isset($intezmeny) && $intezmeny !== __INTEZMENY) {
+ if (updateSessionIntezmeny($intezmeny)) {
+ header('Location: '.location('index.php?page=naplo&sub=intezmeny&f=valtas'));
+ }
+ }
+ }
+
+ /* TOOL */
+ $TOOL['intezmenySelect'] = array('tipus' => 'sor', 'post' => array(), 'action' => 'intezmenyValasztas');
+
+ getToolParameters();
+ if (__TANAR) $beirasiAdatok['beiratlan'] = getBeirasiAdatok();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/naplo.php b/mayor-orig/www/policy/private/naplo/naplo.php
new file mode 100644
index 00000000..0d3fc41d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/naplo.php
@@ -0,0 +1,15 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $beirasiAdatok;
+ // if (__TANAR) putBeirasiAdatok($beirasiAdatok);
+ // else putBeirasiAdatokDiak();
+
+ echo '<script type="text/javascript">includeCSS(\'/skin/classic/module-naplo/css/hirnok/hirnok.css\')</script>';
+ echo ajaxUpdaterForm('hirnok','index.php?page=naplo&sub=hirnok&f=hirnok',array(),'post',true);
+
+ echo '<script type="text/javascript">includeCSS(\'/skin/classic/module-naplo/css/uzeno/uzeno.css\')</script>';
+ echo ajaxUpdaterForm('uzenoKozep','index.php?page=naplo&sub=uzeno&f=uzeno',array(),'post',true);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/beiskolazasiTerv-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/beiskolazasiTerv-pre.php
new file mode 100644
index 00000000..d7b85953
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/beiskolazasiTerv-pre.php
@@ -0,0 +1,37 @@
+<?php
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME',strtotime(date('Y-m-d')));
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ $ADAT['tanev'] = $tanev = readVariable($_GET['tanev'], 'numeric unsigned', 2015);
+
+ if (isset($tanev)) { // input ok
+
+ require_once('include/share/print/pdf.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ // Adatok lekérdezése
+ $ADAT['file'] = fileNameNormal('beiskolazasiTerv-'.$tanev.'-'.date('Y-m-d'));
+ $ADAT['tanarok'] = getTanarok(array('result'=>'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/www/policy/private/naplo/nyomtatas/beiskolazasiTerv.php b/mayor-orig/www/policy/private/naplo/nyomtatas/beiskolazasiTerv.php
new file mode 100644
index 00000000..bc70f948
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/beiskolazasiTerv.php
@@ -0,0 +1,6 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php
new file mode 100644
index 00000000..0143e7e9
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas-pre.php
@@ -0,0 +1,88 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME',strtotime(date('Y-m-d')));
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/osztalyozo/stat.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/targy.php');
+
+ $ADAT['magatartasIdk'] = getMagatartas();
+ $ADAT['szorgalomIdk']= 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;
+ }
+ }
+ }
+ 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/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas.php b/mayor-orig/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/bizonyitvanyNyomtatas.php
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/diakAdatlap-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/diakAdatlap-pre.php
new file mode 100644
index 00000000..3219920b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/diakAdatlap-pre.php
@@ -0,0 +1,135 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__TITKARSAG && !__TANAR) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/share/date/names.php');
+ require_once('include/share/str/tex.php');
+ require_once('include/share/print/pdf.php');
+
+ $fields = array(
+ 'anyaszuloId','anyanevElotag','anyacsaladinev','anyautonev','anyaszuleteskoricsaladinev','anyaszuleteskoriutonev','anyanem','anyacimOrszag',
+ 'anyacimIrsz','anyacimHelyseg','anyacimKozteruletNev','anyacimKozteruletJelleg','anyacimHazszam','anyacimEmelet','anyacimAjto','anyamobil',
+ 'anyatelefon','anyaemail','anyauserAccount','anyafoglalkozas','anyamunkahely','anyaszuletesiEv','anyaszuloNev','anyaStat','anyastatusz',
+
+ 'apaszuloId','apanevElotag','apacsaladinev','apautonev','apaszuleteskoricsaladinev','apaszuleteskoriutonev','apanem','apacimOrszag',
+ 'apacimIrsz','apacimHelyseg','apacimKozteruletNev','apacimKozteruletJelleg','apacimHazszam','apacimEmelet','apacimAjto','apamobil',
+ 'apatelefon','apaemail','apauserAccount','apafoglalkozas','apamunkahely','apaszuletesiEv','apaszuloNev','apaStat','apastatusz',
+
+ 'gondviseloszuloId','gondviselonevElotag','gondviselocsaladinev','gondviseloutonev','gondviseloszuleteskoricsaladinev','gondviseloszuleteskoriutonev','gondviselonem','gondviselocimOrszag',
+ 'gondviselocimIrsz','gondviselocimHelyseg','gondviselocimKozteruletNev','gondviselocimKozteruletJelleg','gondviselocimHazszam','gondviselocimEmelet','gondviselocimAjto','gondviselomobil',
+ 'gondviselotelefon','gondviseloemail','gondviselouserAccount','gondviselofoglalkozas','gondviselomunkahely','gondviseloszuletesiEv','gondviseloszuloNev','gondviseloStat','gondviselostatusz',
+
+ 'neveloszuloId','nevelonevElotag','nevelocsaladinev','neveloutonev','neveloszuleteskoricsaladinev','neveloszuleteskoriutonev','nevelonem','nevelocimOrszag',
+ 'nevelocimIrsz','nevelocimHelyseg','nevelocimKozteruletNev','nevelocimKozteruletJelleg','nevelocimHazszam','nevelocimEmelet','nevelocimAjto','nevelomobil',
+ 'nevelotelefon','neveloemail','nevelouserAccount','nevelofoglalkozas','nevelomunkahely','neveloszuletesiEv','neveloszuloNev','neveloStat','nevelostatusz',
+ );
+ $ADAT['base'] = array_fill_keys($fields, '');
+
+ $tanev = readVariable($_POST['tanev'], 'numeric unsigned', defined('__TANEV')?__TANEV:null );
+ if ($tanev != __TANEV) $TA = getTanevAdat($tanev);
+ else $TA = $_TANEV;
+ $diakId = readVariable($_POST['diakId'],'id');
+ $osztalyId = readVariable($_POST['osztalyId'],'id');
+
+ $ADAT['szocialisHelyzet'] = getSetField('naplo_intezmeny', 'diak', 'szocialisHelyzet');
+ $ADAT['penzugyiStatusz'] = getEnumField('naplo_intezmeny', 'diak', 'penzugyiStatusz');
+ $ADAT['fogyatekossag'] = getSetField('naplo_intezmeny', 'diak', 'fogyatekossag');
+ $ADAT['kozteruletJelleg'] = getEnumField('naplo_intezmeny', 'diak', 'lakhelyKozteruletJelleg');
+
+ if (isset($diakId)) {
+ $ADAT['base']['diak'] = array($diakId);
+ } elseif (isset($osztalyId)) {
+ $_DIAKOK = getDiakok(array('osztalyId'=>$osztalyId,'tanev'=>$tanev,'result'=>'csakId')); // Ennek a függvénynek a szerkezete nyáron megváltozott!
+ for ($i=0; $i<count($_DIAKOK); $i++)
+ $ADAT['base']['diak'][] = $_DIAKOK[$i]['diakId'];
+ }
+ list($ADAT['base']['ev'],$ADAT['base']['honap'],$ADAT['base']['nap']) = explode('-', date('Y-m-d'));
+ $intezmeny = getIntezmenyByRovidnev(__INTEZMENY);
+ foreach ($intezmeny as $attr => $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<count($ADAT['base']['diak']); $i++) {
+ $diakId = $ADAT['base']['diak'][$i];
+ $diakAdat = getDiakAdatById($diakId);
+
+ // Lekérdezzük a diák tényleges jogviszony adatait...
+ $DJ = getDiakJogviszony($diakId);
+ $diakAdat['jogviszony'] = array();
+ // Összes bejegyzés ("ciklussal" iratható ki)
+ foreach ($DJ as $key => $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/www/policy/private/naplo/nyomtatas/diakAdatlap.php b/mayor-orig/www/policy/private/naplo/nyomtatas/diakAdatlap.php
new file mode 100644
index 00000000..05d4467e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/diakAdatlap.php
@@ -0,0 +1,8 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes-pre.php
new file mode 100644
index 00000000..77912c56
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes-pre.php
@@ -0,0 +1,71 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+
+ global $_TANEV, $Honapok;
+
+ $ADAT['leadasiHatarido'] = '2008. június 9.';
+ list($ev, $ho, $nap) = explode('-', readVariable($_POST['leadasiHatarido'], 'date'));
+ $ADAT['leadasiHatarido'] = "$ev. ".kisbetus($Honapok[$ho-1])." $nap.";
+ $ADAT['osztalyIds'] = readVariable($_POST['osztalyId'], 'numeric unsigned');
+ if (isset($_POST['szemeszterId']) && $_POST['szemeszterId'] != '') {
+ $szemeszterId = $_POST['szemeszterId'];
+ } else {
+ $_felev = getFelevByDt(date('Y-m-d'));
+ $szemeszterId = getKovetkezoSzemeszterId($_TANEV['szemeszter'][$_felev]['tanev'],$_TANEV['szemeszter'][$_felev]['szemeszter']);
+ }
+ $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId);
+ $ADAT['tanev'] = $tanev = $ADAT['szemeszterAdat']['tanev'];
+ $ADAT['szemeszterId'] = $szemeszterId;
+ //igaziból nem kéne blokkba szervezni... var_dump($ADAT['szemeszterAdat']['statusz']=='aktív');
+ // intézmény adatok
+ $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY);
+// $refDt = ($ADAT['szemeszterAdat']['kezdesDt']);
+ $ADAT['tankorBlokkok'] = getTankorBlokkok($tanev);
+ $ADAT['valasztott'] = getValasztottTankorok($tanev, $ADAT['szemeszterAdat']['szemeszter'], $ADAT['osztalyIds']);
+ $ADAT['diakIds'] = array();
+ if (is_array($ADAT['valasztott']['felvett'])) foreach ($ADAT['valasztott']['felvett'] as $diakId => $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/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes.php b/mayor-orig/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes.php
new file mode 100644
index 00000000..f57afdc5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/diakTankorJelentkezes.php
@@ -0,0 +1,12 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+global $ADAT;
+
+ putNyomtatasiBeallitasok($ADAT);
+//echo '<pre>';
+//var_dump($ADAT['osztalyok']);
+//echo '</pre>';
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/ertesito-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/ertesito-pre.php
new file mode 100644
index 00000000..53e644f1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/ertesito-pre.php
@@ -0,0 +1,101 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME',strtotime(date('Y-m-d')));
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/osztalyozo/stat.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/targy.php');
+
+ $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']);
+
+ $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<count($ADAT['diakIds']); $i++) {
+ $diakId = intval($ADAT['diakIds'][$i]);
+ $hianyzasAdat = $ADAT['hianyzas'][$diakId];
+ $ADAT['hianyzas'][$diakId]['igazolatlan']
+ = $hianyzasAdat['igazolatlan']
+ = floor($hianyzasAdat['kesesPercOsszeg']/45)+intval($hianyzasAdat['igazolatlan']);
+ }
+
+ /* A pdfBizonyítvány ezeket használja: szemeszterAdat|intezmeny|diakok|jegyek|hianyzas|osztaly|targyAdat|targyak*/
+ $ADAT['file'] = fileNameNormal('ertesito-'.$ADAT['szemeszterAdat']['tanev'].'-'.$ADAT['szemeszterAdat']['szemeszter'].'-'.str_replace('.','',$ADAT['osztaly']['osztalyJel']));
+ if ($fileName = pdfErtesito($ADAT))
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/ertesito&file='.$fileName));
+ } 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'));
+ $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName' => 'sorrendNev', 'post' => array('szemeszterId', 'osztalyId'));
+
+ getToolParameters();
+
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/ertesito.php b/mayor-orig/www/policy/private/naplo/nyomtatas/ertesito.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/ertesito.php
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/haladasinaplo-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/haladasinaplo-pre.php
new file mode 100644
index 00000000..1943dc92
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/haladasinaplo-pre.php
@@ -0,0 +1,212 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+} else {
+
+ $ADAT['tanev'] = $tanev = __TANEV;
+ $ADAT['tanevAdat'] = $_TANEV;
+ $tolDt = $ADAT['tanevAdat']['kezdesDt'];
+ $igDt = $ADAT['tanevAdat']['zarasDt'];
+ // Mert hétfőtől, vagy csütörtöktől kezdődik a nyomtatott napló!!!
+//$tolDt='2011-11-31';
+ if (date('w',strtotime($tolDt)) > 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 '<pre>'; var_dump($ADAT['ofoTargyId']); echo '</pre>';
+ 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/www/policy/private/naplo/nyomtatas/haladasinaplo.php b/mayor-orig/www/policy/private/naplo/nyomtatas/haladasinaplo.php
new file mode 100644
index 00000000..0807e2d6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/haladasinaplo.php
@@ -0,0 +1,6 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/helyettesitesinaplo-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/helyettesitesinaplo-pre.php
new file mode 100644
index 00000000..ba48545e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/helyettesitesinaplo-pre.php
@@ -0,0 +1,39 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/share/str/tex.php');
+
+ $tolDt = readVariable($_POST['tolDt'], 'datetime');
+ $igDt = readVariable($_POST['igDt'], 'datetime');
+ if (defined('__TANEV')) {
+ if (!isset($tolDt)) $tolDt = $_TANEV['kezdesDt'];
+ if (!isset($igDt)) $igDt = date('Y-m-d');
+ initTolIgDt(__TANEV, $tolDt, $igDt);
+ }
+
+ if ($action == 'naploGeneralas') {
+
+ $filename = fileNameNormal('helyettesitesiNaplo-'.date('Y-m-d'));
+ if (naploGeneralas($filename, $tolDt, $igDt))
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=naplo/nyomtatas/helyettesitesinaplo&file='.$filename.'.pdf'));
+
+ }
+
+ $TOOL['datumTolIgSelect'] = array('tipus' => 'sor', 'tolParamName' => 'tolDt', 'igParamName' => 'igDt',
+ 'tolDt' => $_TANEV['kezdesDt'], 'igDt' => $_TANEV['zarasDt'],
+ 'hanyNaponta' => 1, 'post'=>array('osztalyId', 'diakId', 'targySorrend')
+ );
+ getToolParameters();
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/helyettesitesinaplo.php b/mayor-orig/www/policy/private/naplo/nyomtatas/helyettesitesinaplo.php
new file mode 100644
index 00000000..404b92b3
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/helyettesitesinaplo.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $tolDt, $igDt;
+
+ putDownloadForm($tolDt, $igDt);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/nyomtatas-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/nyomtatas-pre.php
new file mode 100644
index 00000000..f22d3af1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/nyomtatas-pre.php
@@ -0,0 +1,6 @@
+<?php
+
+ if (!__TITKARSAG) header('Location: '.location('index.php?page=naplo&sub=nyomtatas&f=tankorNaplohozRendeles'));
+ else header('Location: '.location('index.php?page=naplo&sub=nyomtatas&f=ertesito'));
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/nyomtatas.php b/mayor-orig/www/policy/private/naplo/nyomtatas/nyomtatas.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/nyomtatas.php
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php
new file mode 100644
index 00000000..2a6515dc
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/osztalyozonaplo-pre.php
@@ -0,0 +1,157 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+} else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/modules/naplo/share/osztalyzatok.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/tex.php');
+
+ $osztalyId = readVariable($_POST['osztalyId'], 'id');
+
+ if (isset($osztalyId)) {
+
+ require_once('include/share/str/hyphen.php');
+
+ // Adatok lekérése
+
+ /* Az évfolyam meghatározása, osztály alapján */
+ $evfolyamJel = getEvfolyamJel($osztalyId); //TODO: ellenőrzés (evfolyam-->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<count($_TANKOROK); $i++) {
+ $_tankorId = $_TANKOROK[$i]['tankorId'];
+ $_res = getTankorTanaraiByInterval($_tankorId, array('tanev' => __TANEV, 'tolDt' => '', 'igDt' => '', 'result' => 'nevsor'));
+ for ($j=0; $j<count($_res); $j++) {
+ if (!in_array($_res[$j]['tanarNev'],$_TANAROK)) $_TANAROK[] = $_res[$j]['tanarNev'];
+ }
+ }
+ reset($_TANAROK);
+ sort($_TANAROK);
+ $ADAT['tanarok'] = $_TANAROK;
+ unset($_TANAROK);
+// $ADAT['diakTankorei'] = array();
+
+ // == Osztály adatai == //
+ $ADAT['honapok'] = array();
+ for (
+ $dt = date('Y-m-01', strtotime($_TANEV['kezdesDt']));
+ strtotime($dt) <= strtotime($_TANEV['zarasDt']);
+ $dt = date('Y-m-01', strtotime('+1 month', strtotime($dt)))
+ ) $ADAT['honapok'][] = substr($dt, 5, 2);
+ if (count($ADAT['honapok']) != 10 && __OSZTALYOZONAPLO_JEGYEK_FELEVENTE !== true) $_SESSION['alert'][] = 'message:wrong_data:hónapok száma '.count($ADAT['honapok']).' != 10';
+ $ADAT['osztalyAdat'] = getOsztalyAdat($osztalyId);
+ $ADAT['targyak'] = getTanevTargySorByOsztalyId($osztalyId, __TANEV, 'napló');
+ // Feltételezzük, hogy csak egyféle magatartás, illetve szorgalom tárgy lehet...
+ list($ADAT['targyak']['magatartasId']) = getMagatartas();
+ list($ADAT['targyak']['szorgalomId']) = getSzorgalom();
+ for ($i = 0; $i < count($ADAT['targyak']); $i++) {
+ if (isset($ADAT['targyak'][$i]['targyNev']))
+ $ADAT['targyak'][$i]['elvalasztott'] = str_replace(
+ array(' -', '--', '-', '~'),
+ array(' ', '~', '\-', '-'),
+ $huHyphen->hyphen(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 '<pre>'; var_dump($ret2); echo '</pre>';
+
+ $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
+ $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/www/policy/private/naplo/nyomtatas/osztalyozonaplo.php b/mayor-orig/www/policy/private/naplo/nyomtatas/osztalyozonaplo.php
new file mode 100644
index 00000000..864c5486
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/osztalyozonaplo.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['letoltes'])) putLetoltesLink($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php
new file mode 100644
index 00000000..72e34994
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv-pre.php
@@ -0,0 +1,105 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/sni.php');
+ require_once('include/modules/naplo/share/tankor.php');
+
+ // Paraméterek
+ $diakId = readVariable($_POST['diakId'], 'id');
+ if (isset($diakId)) $ADAT['diakIds'] = array($diakId);
+ $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'], 'id');
+ if (isset($osztalyId)) {
+ // Az osztály tagjai
+ $ADAT['diakIds'] = getDiakok(array('osztalyId' => $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/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv.php b/mayor-orig/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv.php
new file mode 100644
index 00000000..a2208099
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/sniEvVegiJegyzokonyv.php
@@ -0,0 +1 @@
+<?php if (_RIGHTS_OK !== true) die(); ?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv-pre.php
new file mode 100644
index 00000000..951f9b4e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv-pre.php
@@ -0,0 +1,93 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/sni.php');
+ require_once('include/modules/naplo/share/tankor.php');
+
+ // Paraméterek
+ $dt = readVariable($_POST['dt'], 'date');
+ if (!isset($dt)) {
+ $tolTime = strtotime($_TANEV['kezdesDt']);
+ $igTime = min(time(), strtotime($_TANEV['zarasDt']));
+ $dt = $_TANEV['kezdesDt'];
+ for ($t = $tolTime; $t <= $igTime; $t = strtotime("next month", $t)) $dt = date('Y-m-d', $t);
+ }
+ $ADAT['dt'] = $dt;
+ $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'], 'id');
+ if (isset($osztalyId)) {
+ // Intézmény adatai
+ $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY);
+ // Osztály adatai
+ $ADAT['osztaly'] = getOsztalyAdat($osztalyId, __TANEV);
+ // A tanárok
+ $ADAT['tanarok'] = getTanarok(array('result' => '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/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv.php b/mayor-orig/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv.php
new file mode 100644
index 00000000..a2208099
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/sniHaviJegyzokonyv.php
@@ -0,0 +1 @@
+<?php if (_RIGHTS_OK !== true) die(); ?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/szovegesErtekeles-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/szovegesErtekeles-pre.php
new file mode 100644
index 00000000..0f7bdd81
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/szovegesErtekeles-pre.php
@@ -0,0 +1,78 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/szovegesErtekeles.php');
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $ADAT['tanev'] = $tanev = __TANEV;
+ if ($tanev == __TANEV) $ADAT['tanevAdat'] = $TA = $_TANEV;
+ else $ADAT['tanevAdat'] = $TA = getTanevAdat($tanev);
+
+ // 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'];
+ } else {
+ $condition = strtotime($TA['kezdesDt']).'<=strtotime($return) && strtotime($return)<='.strtotime($TA['zarasDt']);
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'datetime', null, array(), $condition);
+ $ADAT['tolDt'] = $tolDt = readVariable($_POST['tolDt'], 'datetime', $_TANEV['kezdesDt'], array(), $condition);
+ }
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null);
+ $ADAT['targySorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'enum', 'bizonyítvány', array('napló','bizonyítvány','anyakönyv','ellenőrző','egyedi'));
+ $diakIds = array();
+ if (isset($osztalyId)) {
+ $ADAT['osztalyAdat'] = getOsztalyAdat($osztalyId, $tanev);
+ $ADAT['file'] = fileNameNormal('szovegesErtekeles-'.str_replace('.', '', $ADAT['osztalyAdat']['osztalyJel']));
+ $Diakok = getDiakok(array('osztalyId' => $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/www/policy/private/naplo/nyomtatas/szovegesErtekeles.php b/mayor-orig/www/policy/private/naplo/nyomtatas/szovegesErtekeles.php
new file mode 100644
index 00000000..c24a85d5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/szovegesErtekeles.php
@@ -0,0 +1,5 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles-pre.php
new file mode 100644
index 00000000..232b406b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles-pre.php
@@ -0,0 +1,58 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+
+ $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned');
+
+ // Az egy osztályhoz rendelt tankörök betöltése a naplóba - de csak azoknál az osztályoknál, ahol nincs hozzárendelés még
+ tankorNaploInit();
+
+ // Az adott szemeszter tanköreit lekérdezzük
+ $ADAT['tankorok'] = getTankorByTanev(__TANEV);
+ $ADAT['tankorIds'] = $ADAT['tankorNeve'] = array();
+ for ($i = 0; $i < count($ADAT['tankorok']); $i++) {
+ $ADAT['tankorIds'][] = $ADAT['tankorok'][$i]['tankorId'];
+ $ADAT['tankorNeve'][ $ADAT['tankorok'][$i]['tankorId'] ] = $ADAT['tankorok'][$i]['tankorNev'];
+ }
+ // A tankorok osztályainak lekérdezése
+ $ret = getOsztalyIdByTankorIds($ADAT['tankorIds']);
+ $ADAT['tankorOsztalyai'] = $ADAT['osztalyTankorei'] = array();
+ for ($i = 0; $i < count($ret); $i++) {
+ $ADAT['tankorOsztalyai'][ $ret[$i]['tankorId'] ][] = $ret[$i]['osztalyId'];
+ $ADAT['osztalyTankorei'][ $ret[$i]['osztalyId'] ][] = $ret[$i]['tankorId'];
+ }
+ if ($action == 'hozzarendelesekTorlese') {
+ tankorNaploInit($torlessel = true);
+ } elseif ($action == 'tankorNaplohozRendeles') {
+
+ if (is_array($_POST['T']) && count($_POST['T']) > 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/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles.php b/mayor-orig/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles.php
new file mode 100644
index 00000000..5285af45
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/tankorNaplohozRendeles.php
@@ -0,0 +1,15 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $osztalyId, $ADAT;
+
+ if (isset($osztalyId)) {
+ if (count($ADAT['osztalyTankorei']) > 0) putOsztalyTankorei($osztalyId, $ADAT);
+ } else {
+ putHozzarendelesekTorlese();
+ putHianyzoTankorok($ADAT);
+ putEloszlas($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/torzslap-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/torzslap-pre.php
new file mode 100644
index 00000000..16bc3ae6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/torzslap-pre.php
@@ -0,0 +1,165 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+
+/*
+2012/20. EMMI rendelet
+99. § (1) A törzslap két részből áll, a tanulókról külön-külön kiállított egyéni törzslapokból és az egyéni törzslapok összefűzését szolgáló borítóból (törzslap külív). Az iskola a tanulókról - a tanévkezdést követő harminc napon belül - egyéni törzslapot állít ki.
+(2) Ha az iskolai nevelés és oktatás nyelve a nemzetiség nyelve, a törzslapot magyar nyelven és az oktatás nyelvén is vezetni kell. Ha a két szöveg között eltérés van, és nem állapítható meg, hogy melyik a helyes szöveg, a magyar nyelvi bejegyzést kell hitelesként elfogadni.
+(3) Az egyéni törzslap tartalmazza
++a) a törzslap sorszámát,
++b) a tanuló nevét,
+ állampolgárságát,
+ nem magyar
+ állampolgár esetén a tartózkodás jogcímét,
+ a jogszerű tartózkodást megalapozó okirat számát,
++ oktatási azonosító számát,
++ születési helyét és idejét,
++ anyja születéskori nevét,
++c) a tanuló osztálynaplóban szereplő sorszámát,
+-+d) a tanévet és a tanuló által elvégzett évfolyamot,
+e) a tanuló magatartásának és szorgalmának értékelését,
+f) a tanuló által tanult tantárgyakat, és ezek év végi szöveges minősítését,
+g) a közösségi szolgálat teljesítésével kapcsolatos adatokat,
+h) az összes mulasztott óra számát, külön-külön megadva az igazolt és igazolatlan mulasztásokat,
+i) a nevelőtestület határozatát,
+j) a tanulmányok alatti vizsgára vonatkozó adatokat,
+k) a tanulót érintő gyermekvédelmi intézkedéssel, hátrányos helyzet, halmozottan hátrányos helyzet megállapításával kapcsolatos
+és tanulói jogviszonyából következő
+ döntéseket, határozatokat, záradékokat.
+(4) Ha az iskola sajátos nevelési igényű tanuló nevelés-oktatását is ellátja, a törzslapon fel kell tüntetni
+ a szakvéleményt kiállító szakértői bizottság nevét,
+ címét,
+ a szakvélemény számát és
+ kiállításának keltét,
+ a felülvizsgálat időpontját.
+(5) Az egyéni törzslapokat az alsó tagozat, a felső tagozat és a középfokú iskolai tanulmányok befejezését követően, a törzslap külívének teljes lezárása után
+szétválaszthatatlanul össze kell fűzni, és ilyen módon kell tárolni.
+*/
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/osztalyModifier.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/szovegesErtekeles.php');
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/bejegyzes.php');
+ require_once('include/modules/naplo/share/nap.php');
+
+ // Ez a függvény hova való??
+ function getDiakTargyOraszam($diakId, $osztalyId, $tanev, $ADAT) {
+ $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, $utolsoTanitasiNap, $utolsoTanitasiNap);
+ $jres = db_query($q, array(
+ 'fv' => '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/www/policy/private/naplo/nyomtatas/torzslap.php b/mayor-orig/www/policy/private/naplo/nyomtatas/torzslap.php
new file mode 100644
index 00000000..c24a85d5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/torzslap.php
@@ -0,0 +1,5 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat-pre.php
new file mode 100644
index 00000000..f7250037
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat-pre.php
@@ -0,0 +1,40 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME',strtotime(date('Y-m-d')));
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ $ADAT['tanarId'] = $tanarId = readVariable($_GET['tanarId'], 'id');
+ $ADAT['tovabbkepzesId'] = $tovabbkepzesId = readVariable($_GET['tovabbkepzesId'], 'id');
+ $ADAT['tanev'] = $tanev = readVariable($_GET['tanev'], 'numeric unsigned');
+
+ if (isset($tanarId) && isset($tovabbkepzesId) && isset($tanev)) { // input ok
+
+ require_once('include/share/print/pdf.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ // Adatok lekérdezése
+ $ADAT['file'] = fileNameNormal('hatarozat-'.$tanarId.'-'.$tovabbkepzesId.'-'.date('Y-m-d'));
+ list($ADAT['tanarAdat']) = getTanarAdatById($tanarId);
+ $ADAT['tanulmanyiEgyseg'] = getTanulmanyiEgyseg($tovabbkepzesId, $tanarId, $tanev);
+
+ $printFile = tovabbkepzesNyomtatvanyKeszites($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/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat.php b/mayor-orig/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat.php
new file mode 100644
index 00000000..bc70f948
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/tovabbkepzesHatarozat.php
@@ -0,0 +1,6 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/nyomtatas/zaradekok-pre.php b/mayor-orig/www/policy/private/naplo/nyomtatas/zaradekok-pre.php
new file mode 100644
index 00000000..b27306d2
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/zaradekok-pre.php
@@ -0,0 +1,49 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+} else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/modules/naplo/share/bejegyzes.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/share/str/tex.php');
+ require_once('include/share/print/pdf.php');
+
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ $ADAT['tanev'] = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+ if ($ADAT['tanev'] == __TANEV) $ADAT['tanevAdat'] = $_TANEV; else $ADAT['tanevAdat'] = getTanevAdat($tanev);
+ $ADAT['tolDt'] = $ADAT['tanevAdat']['kezdesDt']; $ADAT['igDt'] = $ADAT['tanevAdat']['zarasDt'];
+
+ if (isset($osztalyId)) {
+ // intézmény adatok
+ $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY);
+ // osztály statisztikák
+ $ADAT['osztaly'] = getOsztalyAdat($osztalyId, $ADAT['tanev']);
+
+ $ADAT['file'] = fileNameNormal('zaradekok-'.$ADAT['osztaly']['osztalyJel'].'-'.date('Ymd'));
+ $ADAT['diak'] = getDiakokByOsztaly($osztalyId, $ADAT);
+ // Azok a diákok, akik az adott időszakban voltak jogviszonyban (esetleg magáán- vagy venfégtanulóként
+ $ADAT['diakIds'] = array_values(array_unique(array_merge($ADAT['diak']['jogviszonyban van'], $ADAT['diak']['magántanuló'], $ADAT['diak']['vendégtanuló'])));
+ for ($i = 0; $i < count($ADAT['diakIds']); $i++) {
+ $ADAT['zaradek'][ $ADAT['diakIds'][$i] ] = getDiakZaradekok($ADAT['diakIds'][$i], array('result' => '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/www/policy/private/naplo/nyomtatas/zaradekok.php b/mayor-orig/www/policy/private/naplo/nyomtatas/zaradekok.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/nyomtatas/zaradekok.php
diff --git a/mayor-orig/www/policy/private/naplo/orarend/ascExport-pre.php b/mayor-orig/www/policy/private/naplo/orarend/ascExport-pre.php
new file mode 100644
index 00000000..878bb8e6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/ascExport-pre.php
@@ -0,0 +1,110 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN || __VEZETOSEG) {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/share/date/names.php');
+
+ $dt = $ADAT['dt'] = readVariable($_POST['dt'], 'datetime', null);
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric', __TANEV);
+ $ADAT['tanevDb'] = tanevDbNev(__INTEZMENY, $tanev);
+
+ if ($tanev != __TANEV) $_TA = getTanevAdat($tanev);
+ else $_TA = $_TANEV;
+
+ $ADAT['orarendiHet'] = getOrarendiHetek(array('tanev' => $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/www/policy/private/naplo/orarend/ascExport.php b/mayor-orig/www/policy/private/naplo/orarend/ascExport.php
new file mode 100644
index 00000000..7972ab6b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/ascExport.php
@@ -0,0 +1,11 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT['tankorBlokk']['blokkNevek'])) putBlokkOraszamForm($ADAT);
+ putTobbszorosOraForm($ADAT);
+ putExportForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/helyettesites-pre.php b/mayor-orig/www/policy/private/naplo/orarend/helyettesites-pre.php
new file mode 100644
index 00000000..c4ed7cb9
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/helyettesites-pre.php
@@ -0,0 +1,80 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/share/date/names.php');
+
+ require_once('include/modules/naplo/share/helyettesites.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/terem.php');
+
+
+ //$mkId = $_POST['mkId'];
+ if (isset($_POST['targyId']) && intval($_POST['targyId']) != 0) $targyId = intval($_POST['targyId']);
+ if (isset($_POST['tankorId']) && intval($_POST['tankorId']) != 0) $tankorId = intval($_POST['tankorId']);
+ if (isset($_POST['tankorId']) && intval($_POST['tankorId']) != 0) $tankorId = intval($_POST['tankorId']);
+ $telephelyId = readVariable($_POST['telephelyId'], id, null);
+
+ //$tanev = $_POST['tanev'];
+ //$action = $_POST['action'];
+ if (isset($_POST['osztalyId']) && intval($_POST['osztalyId']) != 0) $osztalyId = intval($_POST['osztalyId']);
+ if (isset($_POST['tanarId']) && intval($_POST['tanarId']) != 0 ) $tanarId = intval($_POST['tanarId']);
+ if (isset($_POST['diakId']) && intval($_POST['diakId']) != 0 ) $diakId = intval($_POST['diakId']);
+ if (isset($_POST['het']) && intval($_POST['het']) != 0 ) $het = intval($_POST['het']);
+ if (isset($_POST['mkId']) && intval($_POST['mkId']) != 0 ) $mkId = intval($_POST['mkId']);
+ if (isset($_POST['tolDt']) && strtotime($_POST['tolDt']) > 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/www/policy/private/naplo/orarend/helyettesites.php b/mayor-orig/www/policy/private/naplo/orarend/helyettesites.php
new file mode 100644
index 00000000..e5eca8ff
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/helyettesites.php
@@ -0,0 +1,9 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putHelyettesitesTablazat($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/orarend-pre.php b/mayor-orig/www/policy/private/naplo/orarend/orarend-pre.php
new file mode 100644
index 00000000..1ccea4b7
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarend-pre.php
@@ -0,0 +1,281 @@
+<?php
+ global $page,$sub,$f;
+
+ if (_RIGHTS_OK !== true) die();
+ $tanev = __TANEV;
+ if ($tanev<1997) return;
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/jegyzet.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+
+ // -- TESZT - savePageState()
+ define('__PAGE_PRESET', false); // kísérlet vége. no
+ $preSetLoad = readVariable($_POST['preSetLoad'],'bool',false);
+ $preSetSave = readVariable($_POST['preSetSave'],'bool',false);
+
+ function getPSFvar($name) {
+ global $PAGESTATE, $preSetSave, $preSetLoad;
+ return (__PAGE_PRESET===TRUE && ($preSetLoad || $preSetSave)) ? readVariable($PAGESTATE[$name], 'id', null) : null;
+ //return null;
+ }
+ // get toolbar state - később általánosul
+
+ $TOOLBARVARS = array('targyId','tankorId','osztalyId','tanarId','diakId','teremId','mkId','het');
+ $allowPreset=false;
+ foreach ($TOOLBARVARS as $k) {if (isset($_POST[$k])||isset($_GET[$k])) $allowPreset = false;}
+ if ($allowPreset) {
+ $PAGESTATE = array();
+ if (isset($_COOKIE[$page.'_'.$sub.'_'.$f]))
+ $_explode = explode('+',$_COOKIE[$page.'_'.$sub.'_'.$f]);
+ if (is_array($_explode)) {
+ foreach($_explode as $kvp) {
+ list($key,$val) = explode('-',$kvp);
+ if (in_array($key,$TOOLBARVARS) && isset($val) && intval($val)>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))));
+
+ $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;
+ /* 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<count($_NAPOK); $i++) {
+ $_dt = $_NAPOK[$i];
+ $_TK = $TANKOROK['mindenByDt'][$_dt];
+ if ($teremId!='')
+ $_D = getOrakByTeremId($teremId,array('tolDt'=>$_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<count($TANKOROK); $i++) {
+ $_tankorId = $TANKOROK[$i];
+ $ADAT['tankorLetszamok'][$_tankorId] = getTankorLetszam($_tankorId,array('refDt'=>$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));
+ $ADAT['tankorTipus'] = getTankorTipusok();
+ $ADAT['orakMost'] = getOrakMost();
+
+ $_napok = getNapok(array('tolDt'=>$tolDt,'igDt'=>$igDt));
+ for ($i=0; $i<count($_napok); $i++) {
+ $ADAT['napok'][($i+1)] = getNapAdat($_napok[$i]);
+ }
+
+ if (_POLICY!='public' && is_array($TANKOROK)) {
+ 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; $i<count($JA['tankorok']); $i++) {$JA['tankorIdk'][] = $JA['tankorok'][$i]['tankorId'];}
+ for ($i=0; $i<count($JA['osztalyok']); $i++) {$JA['osztalyIdk'][] = $JA['osztalyok'][$i]['osztalyId'];}
+ for ($i=0; $i<count($JA['munkakozossegek']); $i++) {$JA['mkIdk'][] = $JA['munkakozossegek'][$i]['mkId'];}
+
+ $ADAT['dolgozat'] = getTankorDolgozatok($TANKOROK, TRUE, $_napok[0], $_napok[count($_napok)-1]);
+ $ADAT['jegyzet'] = getJegyzet(array('tolDt'=>$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'));
+ }
+ }
+ if ($skin=='ajax' && $_REQUEST['httpResponse']=='json') $_JSON['orarend']=$ADAT;
+
+//=====================================
+
+ $TOOL['datumSelect'] = array(
+ 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId','mkId','diakId','telephelyId'),
+ '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/www/policy/private/naplo/orarend/orarend.php b/mayor-orig/www/policy/private/naplo/orarend/orarend.php
new file mode 100644
index 00000000..b0ed3b60
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarend.php
@@ -0,0 +1,8 @@
+<?php
+
+ global $ADAT;
+
+ if (is_array($ADAT))
+ putOrarend($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/orarendBetolto-pre.php b/mayor-orig/www/policy/private/naplo/orarend/orarendBetolto-pre.php
new file mode 100644
index 00000000..df4db33a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendBetolto-pre.php
@@ -0,0 +1,80 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/share/print/pdf.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+// require_once('include/modules/naplo/share/diak.php');
+
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+ if ($tanev == __TANEV) $TA = $_TANEV;
+ else $TA = getTanevAdat($tanev);
+ $ADAT['tanevDb'] = $tanevDb = tanevDbNev(__INTEZMENY, $tanev);
+ $ADAT['tolDt'] = $tolDt = readVariable($_POST['tolDt'], 'datetime', null);
+ $ADAT['igDt'] = $igDt = readVariable($_POST['igDt'], 'datetime', null);
+ $ADAT['orarendiHet'] = $orarendiHet = readVariable($_POST['orarendiHet'], 'numeric unsigned', null);
+ // A konvertáló állományok lekérdezése
+ $ADAT['convert'] = array();
+ foreach (glob("include/modules/naplo/orarend/convert-*.php") as $file) $ADAT['convert'][] = substr($file,38,-4);
+
+ //quickfix- ez így nem jo $ADAT['fileName'] = $fileName = fileNameNormal(readVariable($_POST['fileName'], 'emptystringnull', null));
+ $ADAT['fileName'] = $fileName = (readVariable($_POST['fileName'], 'emptystringnull', null));
+ $ADAT['conv'] = $conv = readVariable($_POST['conv'], 'emptystringnull', null, $ADAT['convert']);
+ $ADAT['force'] = readVariable($_POST['force'], 'bool', false);
+ $ADAT['lezaras'] = readVariable($_POST['lezaras'], 'bool', false);
+
+ // ----- action ----- //
+
+ if ($action == 'fileBetoltes') {
+ if (isset($fileName) && isset($conv) && isset($tanev) && isset($tolDt) && isset($igDt) && isset($orarendiHet)) {
+ if (file_exists($fileName)) {
+ require_once("include/modules/naplo/orarend/convert-$conv.php");
+ define('__CONVERTED', loadFile($ADAT));
+ if (count($OrarendiOra)==0) {
+ $_SESSION['alert'][] = 'message:wrong_data:OrarendiOra tömb üres';
+ } else {
+ if (__CONVERTED === true) {
+ orarendBetoltes($ADAT, $OrarendiOra, $OrarendiOraTankor);
+ } else {
+ $ADAT['showForceOption'] = true;
+ }
+ }
+ } else {
+ $_SESSION['alert'][] = 'message:file_not_found:'.$fileName;
+ }
+ } else {
+ $_SESSION['alert'][] = 'message:empty_field:fileName,conv,tanev,tolDt,igDt,orarendiHet';
+ }
+ }
+
+ // ----- action ----- //
+
+ $TOOL['tanevSelect'] = array('tipus' => '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/www/policy/private/naplo/orarend/orarendBetolto.php b/mayor-orig/www/policy/private/naplo/orarend/orarendBetolto.php
new file mode 100644
index 00000000..8d4105bd
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendBetolto.php
@@ -0,0 +1,14 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ORAK, $ADAT;
+
+ if (is_array($ORAK)) putAdat($ORAK);
+
+ if (isset($file)) {
+ } else {
+ putFileValaszto($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/orarendEllenorzes-pre.php b/mayor-orig/www/policy/private/naplo/orarend/orarendEllenorzes-pre.php
new file mode 100644
index 00000000..45ab709f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendEllenorzes-pre.php
@@ -0,0 +1,56 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+ if ($tanev = __TANEV) $_TA = $_TANEV;
+ else $_TA = getTanevAdat($tanev);
+ if (isset($tanev)) {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/orarend.php');
+
+ require_once('include/share/date/names.php');
+
+ $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['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/www/policy/private/naplo/orarend/orarendEllenorzes.php b/mayor-orig/www/policy/private/naplo/orarend/orarendEllenorzes.php
new file mode 100644
index 00000000..6cd2b79f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendEllenorzes.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putEredmeny($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/orarendModosito-pre.php b/mayor-orig/www/policy/private/naplo/orarend/orarendModosito-pre.php
new file mode 100644
index 00000000..831c0fa5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendModosito-pre.php
@@ -0,0 +1,277 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ $tanev = __TANEV;
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/oraModifier.php');
+ require_once('include/modules/naplo/share/helyettesitesModifier.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+
+ $targyId = readVariable($_POST['targyId'], 'id');
+ $tankorId = readVariable($_POST['tankorId'], 'id');
+ $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ $tanarId = readVariable($_POST['tanarId'], 'id');
+ $diakId = readVariable($_POST['diakId'], 'id');
+ $teremId = readVariable($_POST['teremId'], 'id');
+ $mkId = readVariable($_POST['mkId'], 'id');
+ $het = readVariable($_POST['het'], 'numeric unsigned');
+
+ $refTolDt = readVariable($_POST['refTolDt'],'date');
+ $refIgDt = readVariable($_POST['refIgDt'],'date');
+
+ if ($refTolDt=='' || $refIgDt=='') $_SESSION['alert'][] = 'info:nincs_intervallum';
+
+ $ADAT['telephelyek'] = getTelephelyek();
+ $ADAT['haladasiModositando'] = readVariable($_POST['haladasiModositando'], 'bool');
+
+ $telephely = readVariable($_POST['telephely'], 'enum', null,$ADAT['telephelyek']);
+
+ $tolDt = readVariable($_POST['tolDt'], 'date');
+ $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;
+ }
+
+ /* 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))));
+
+ // 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($refTolDt)) $_SESSION['alert'][] = 'message:wrong_data:hibás referenciadátum!';
+ 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');
+ //dump($HOT);
+ for ($i=0; $i<count($HOT); $i++) {
+ oraElmarad($HOT[$i]);
+ }
+ for ($i=0; $i<count($_POST['ORARENDIORATOROL']); $i++) {
+ if ($_POST['ORARENDIORATOROL'][$i]!='') {
+ $_ADAT = array();
+ list($_het,$_nap,$_ora,$_tanarId,$_tolDt) = explode('%',$_POST['ORARENDIORATOROL'][$i]);
+ $_ADAT['tanarId'] = readVariable($_tanarId,'id',null);
+ $_ADAT['het'] = readVariable($_het,'id',null);
+ $_ADAT['nap'] = readVariable($_nap,'id',null);
+ $_ADAT['ora'] = readVariable($_ora,'id',null);
+ $_ADAT['tolDt'] = readVariable($_tolDt,'date',null);
+ orarendiOraTorol($_ADAT);
+ }
+ }
+
+ for ($i=0; $i<count($_POST['ORARENDIORAFELVESZ']); $i++) {
+ if ($_POST['ORARENDIORAFELVESZ'][$i]!='') {
+ $_ADAT = array();
+ list($_tanarId,$_osztalyJel,$_targyJel,$_tankorId) = explode('%',$_POST['ORARENDIORAFELVESZ'][$i]);
+ $_ADAT['tanarId'] = readVariable($_tanarId,'id',null);
+ $_ADAT['osztalyJel'] = readVariable($_osztalyJel,'string',null);
+ $_ADAT['targyJel'] = readVariable($_targyJel,'string',null);
+ $_ADAT['tankorId'] = readVariable($_tankorId,'id',null);
+ orarendiOraTankorFelvesz($_ADAT);
+ }
+ }
+
+ for ($i=0; $i<count($_POST['ORARENDMINUSZ']); $i++) {
+ if ($_POST['ORARENDMINUSZ'][$i]!='') {
+ $_ADAT = array();
+ list($_het,$_nap,$_ora,$_tanarId,$_dt,$_kulcsTolDt) = explode('.',$_POST['ORARENDMINUSZ'][$i]);
+ $_teremId = $_POST["T_".$_het."_".$_nap."_".$_ora]; // ez érdekes?
+ $_ADAT['het'] = readVariable($_het,'id',null);
+ $_ADAT['nap'] = readVariable($_nap,'id',null);
+ $_ADAT['ora'] = readVariable($_ora,'id',null);
+ $_ADAT['tanarId'] = readVariable($_tanarId,'id',null);
+ $_ADAT['tolDt'] = readVariable($refTolDt,'date');
+ $_ADAT['igDt'] = readVariable($refIgDt,'date');
+ $_ADAT['kulcsTolDt'] = readVariable($_kulcsTolDt,'date');
+ $_ADAT['dt'] = $_dt ; //readVariable($_POST['tolDt'],'date');
+
+ $_ADAT['orarendiOraKulcs'] = readVariable($refIgDt,'date');
+ /*
+ Az órarendből kiválasztott (órarendi)hét, nap, óra, tanárId alapján
+ a $ADAT['dt'] időben érvényes bejegyzés $ADAT['tolDt'] és $ADAT['igDt'] közé eső szakaszát
+ töröljük az órarendből
+ ezért: $ADAT['tolDt'] <= $ADAT['dt'] <= $ADAT['igDt'] - feltétel!
+ $_ADAT['dt'] = readVariable($_POST['tolDt'],'date',null,null,'('.strtotime($_ADAT['tolDt']).'<=strtotime($return) && strtotime($return) <= '.strtotime($_ADAT['igDt']).')');
+ Mégsem kell, mert lehet, hogy az intervallumon kívüli bejegyzés érvényessége belenyúlik az intervallumba
+ */
+ if (isset($_ADAT['het']) && isset($_ADAT['nap']) && isset($_ADAT['ora']) && isset($_ADAT['tanarId']) && isset($_ADAT['dt'])) orarendiOraLezar($_ADAT);
+ }
+ }
+
+ for ($i=0; $i<count($_POST['ORARENDPLUSZ']); $i++) {
+ if ($_POST['ORARENDPLUSZ'][$i]!='') {
+ $_ADAT = array();
+ list($_TB,$_het,$_nap,$_ora,$_Id) = explode('.',$_POST['ORARENDPLUSZ'][$i]);
+ $_teremId = readVariable($_POST["T_".$_het."_".$_nap."_".$_ora], '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['tankorId'] = $_ADAT['blokkId'] =readVariable($_Id,'id'); // vagy tankör vagy blokk ID szerepel. a $_TB mondja meg
+ $_ADAT['teremId'] = readVariable($_teremId,'id',null);
+ $_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);
+dump($_ADAT);
+ 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'];
+ } 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<count($ADAT['felvehetoTankorok']); $i++) {
+ $_T[] = $ADAT['felvehetoTankorok'][$i]['tankorId'];
+ }
+ //} else $_T = $TANKOROK;
+ $ADAT['felvehetoBlokkok'] = getFelvehetoBlokk(array('tankorIds'=>$_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['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/www/policy/private/naplo/orarend/orarendModosito.php b/mayor-orig/www/policy/private/naplo/orarend/orarendModosito.php
new file mode 100644
index 00000000..e60986b5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendModosito.php
@@ -0,0 +1,8 @@
+<?php
+
+ global $ADAT;
+
+// if (count($_SESSION['alert'])==0)
+// if (!in_array('info:nincs_intervallum', $_SESSION['alert']) && is_array($ADAT['orarend']) && count($ADAT['orarend']) != 0) putOrarend($ADAT);
+ if ((!is_array($_SESSION['alert']) || !in_array('info:nincs_intervallum', $_SESSION['alert'])) && is_array($ADAT['felvehetoTankorok']) && count($ADAT['felvehetoTankorok']) > 0) putOrarend($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/orarendTankor-pre.php b/mayor-orig/www/policy/private/naplo/orarend/orarendTankor-pre.php
new file mode 100644
index 00000000..68a32271
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendTankor-pre.php
@@ -0,0 +1,56 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ $tanev = __TANEV;
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ require_once('include/modules/naplo/share/orarend.php');
+
+ if ($action == 'orarendiOraTankorAssoc') {
+ orarendiOraTankorAssoc();
+ }
+
+ $targyId = readVariable($_POST['targyId'],'id');
+ $tankorId = readVariable($_POST['tankorId'],'id');
+ $osztalyId = readVariable($_POST['osztalyId'],'id');
+ $tanarId = readVariable($_POST['tanarId'],'id');
+ $tolDt = readVariable($_POST['tolDt'],'date');
+ $igDt = date('Y-m-d', mktime(0,0,0,date('m',strtotime($tolDt)), date('d',strtotime($tolDt))+6, date('Y',strtotime($tolDt))));
+
+ if($tanarId!='') {
+ $ORAREND = getOrarendByTanarId($tanarId,array('tolDt'=>$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/www/policy/private/naplo/orarend/orarendTankor.php b/mayor-orig/www/policy/private/naplo/orarend/orarendTankor.php
new file mode 100644
index 00000000..f1962014
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendTankor.php
@@ -0,0 +1,8 @@
+<?php
+
+ global $ORAREND,$TANKOROK;
+ global $tanarId;
+
+ putOrarend($ORAREND,$TANKOROK,$tanarId);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/orarendTeremModositas-pre.php b/mayor-orig/www/policy/private/naplo/orarend/orarendTeremModositas-pre.php
new file mode 100644
index 00000000..c79371fb
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendTeremModositas-pre.php
@@ -0,0 +1,86 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+ if ($tanev = __TANEV) $_TA = $_TANEV;
+ else $_TA = getTanevAdat($tanev);
+
+ if (isset($tanev)) {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/orarend.php');
+
+ require_once('include/share/date/names.php');
+
+ $ADAT['napiMinOra'] = getMinOra(array('tanev' => $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/www/policy/private/naplo/orarend/orarendTeremModositas.php b/mayor-orig/www/policy/private/naplo/orarend/orarendTeremModositas.php
new file mode 100644
index 00000000..0473433c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendTeremModositas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putOrarendiOraValaszto($ADAT);
+ putTeremModosito($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/orarendUtkozes-pre.php b/mayor-orig/www/policy/private/naplo/orarend/orarendUtkozes-pre.php
new file mode 100644
index 00000000..573fa8d8
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendUtkozes-pre.php
@@ -0,0 +1,77 @@
+<?php
+
+// EZ A FILE ELAVULT LEHET!
+
+if (_RIGHTS_OK !== true) die();
+
+if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+} else {
+
+ $tanev = __TANEV;
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/share/date/names.php');
+
+ $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ $tolDt = readVariable($_POST['tolDt'],'datetime');
+
+ 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'];
+ 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/www/policy/private/naplo/orarend/orarendUtkozes.php b/mayor-orig/www/policy/private/naplo/orarend/orarendUtkozes.php
new file mode 100644
index 00000000..a2ea24cb
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/orarendUtkozes.php
@@ -0,0 +1,47 @@
+<?php
+
+ global $ADAT;
+
+
+ $err = 0;
+ if (is_array($ADAT['diakok']))
+ foreach ($ADAT['diakok'] as $_diakId => $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; $j<count($ORA); $j++) {
+ if (is_array($TANKORADAT[$ORA[$j]['tankorId']])) $db++;
+ }
+ if ($db>1) {
+ $err++;
+ echo $dAdat['diakNev'];
+ echo " hét:$het nap:$nap ora:$ora ütközés szám:".count($ORA)."db. <br/>";
+ echo '<ul>';
+ for ($j=0; $j<count($ORA); $j++) {
+ echo '<li>';
+ echo $TANKORADAT[$ORA[$j]['tankorId']][0]['tankorNev'];
+ echo '('.$TANKORADAT[$ORA[$j]['tankorId']][0]['jelenlet'].')';
+ echo $TANKORADAT[$ORA[$j]['tankorId']][0]['tankorId'];
+ echo '</li>';
+ }
+ echo '</ul>'."\n";
+ }
+ }
+ }
+ }
+ }
+}
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php b/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php
new file mode 100644
index 00000000..a5b8b2b5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php
@@ -0,0 +1,31 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/share/date/names.php');
+
+ $tolDt = readVariable($_POST['tolDt'],'date',date('Y-m-d', strtotime('last Monday', strtotime('+1 days'))));
+ $igDt = date('Y-m-d', strtotime('next Friday',strtotime($tolDt)));
+
+ $ADAT['telephelyek'] = getTelephelyek();
+ $telephelyIds = array();
+ foreach ($ADAT['telephelyek'] as $tAdat) $telephelyIds[] = $tAdat['telephelyId'];
+ $telephelyId = readVariable($_POST['telephelyId'], 'id', null, $telephelyIds);
+ $ADAT['termek'] = getTermek(array('result' => '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']);
+ $ADAT['toPrint'] = 'Órarendi szabad termek';
+
+ $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'));
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/szabadTerem.php b/mayor-orig/www/policy/private/naplo/orarend/szabadTerem.php
new file mode 100644
index 00000000..4b3becbe
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/szabadTerem.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putOrarend($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/tanarOrarend-pre.php b/mayor-orig/www/policy/private/naplo/orarend/tanarOrarend-pre.php
new file mode 100644
index 00000000..51110328
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/tanarOrarend-pre.php
@@ -0,0 +1,49 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/orarend.php');
+// require_once('include/share/print/pdf.php');
+
+ $tolDt = readVariable($_POST['tolDt'], 'date', date('Y-m-d'));
+ $orarendiHet = readVariable($_POST['orarendiHet'], 'numeric unsigned', 1);
+ $felev = readVariable($_POST['felev'], 'numeric unsigned', 1);
+
+ $napiMinOra = getMinOra();
+ $napiMaxOra = getMaxOra();
+ $Orak = getTanarOrarend($orarendiHet, $felev,$tolDt);
+ $Tanarok = getTanarok();
+
+ if (isset($_POST['csv'])) {
+ if (OrarendFileGeneralasCSV($Tanarok, $Orak))
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=export&file=tanarOrarend.csv'));
+ } elseif (isset($_POST['xls'])) {
+ if (OrarendFileGeneralasXLS($Tanarok, $Orak))
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=export&file=tanarOrarend.xls'));
+ } elseif (isset($_POST['txt'])) {
+ if (OrarendFileGeneralasTXT($Tanarok, $Orak))
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=export&file=tanarOrarend.txt'));
+ } elseif (isset($_POST['html'])) {
+ if (OrarendFileGeneralasHTML($Tanarok, $Orak))
+ header('Location: '.location('index.php?page=session&f=download&download=true&dir=export&file=tanarOrarend.html'));
+ }
+
+
+ $TOOL['datumSelect'] = array(
+ 'tipus'=>'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/www/policy/private/naplo/orarend/tanarOrarend.php b/mayor-orig/www/policy/private/naplo/orarend/tanarOrarend.php
new file mode 100644
index 00000000..5c911be6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/tanarOrarend.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $Orak, $Tanarok, $napiMinOra, $napiMaxOra, $orarendiHet, $felev, $tolDt;
+
+ putTanarOrarend($Tanarok, $Orak, $napiMinOra, $napiMaxOra, $orarendiHet, $felev, $tolDt);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/orarend/termez-pre.php b/mayor-orig/www/policy/private/naplo/orarend/termez-pre.php
new file mode 100644
index 00000000..1d6ba091
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/termez-pre.php
@@ -0,0 +1,173 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN!==true && __VEZETOSEG!==true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ }
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/terem.php');
+
+ $ADAT['tolDt'] = $tolDt = readVariable($_GET['tolDt'],'date',readVariable($_POST['tolDt'],'date',date('Y-m-d')));
+
+ /* a program a megadott preferenciasorrend szerint teszi be az órákat a megadott helyekre */
+ // ezt a részt egyelőre nem használjuk semmire
+ $T = getTermek();
+ for ($i=0; $i<count($T); $i++) {
+ if (in_array($T[$i]['tipus'],array('tanári','tornaterem','díszterem','egyéb','könyvtár','labor'))) continue;;
+ if ($T[$i]['ferohely']>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; $i<count($P); $i++) {
+
+ $lr = db_connect('naplo');
+
+ $_t = $P[$i];
+ $_tanarId=$P[$i]['tanarId'];
+ $_targyId=$P[$i]['targyId'];
+ $_termek=explode(',',$P[$i]['teremStr']);
+
+ if ($_targyId>0) {
+ for ($t=0; $t<count($_termek); $t++) {
+
+ $q = "CREATE TEMPORARY TABLE __o__ SELECT * FROM orarendiOra WHERE teremId=%u AND igDt>='%s'";
+ db_query($q, array('debug'=>false,'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; $t<count($_termek); $t++) {
+ $q = "CREATE TEMPORARY TABLE __o__ SELECT * FROM orarendiOra WHERE teremId=%u AND igDt>='%s'";
+ db_query($q, array('debug'=>false,'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; $i<count($_UJTERMEK); $i++) {
+ if (is_array($ADAT['terem'][trim($_UJTERMEK[$i])] )) {
+ $_TEREMOK[] = trim($_UJTERMEK[$i]);
+ }
+ }
+ $ujTeremStr = implode(',',$_TEREMOK);
+ //
+ if ($ujTeremStr!='') {
+ $q = "INSERT INTO teremPreferencia (teremPreferenciaId,tanarId,targyId,teremStr) VALUES (%u,%u,%s,'%s')";
+ if ($ujTargyId==0) $ujTargyId='NULL';
+ $v = array($ujTeremPreferenciaId,$ujTanarId,$ujTargyId,$ujTeremStr);
+ $ret = db_query($q, array('debug'=>false,'fv' => '****', 'modul' => 'naplo_intezmeny','values'=>$v,'result'=>'update'));
+ }
+ }
+ /* RELOAD! */
+ $ADAT['teremPreferencia'] = $P = getTeremPreferencia();
+ } elseif ($action=='magic') {
+
+ $lr = db_connect('naplo');
+ for ($i=0; $i<count($P); $i++) {
+
+ $_t = $P[$i];
+ $_tanarId=$P[$i]['tanarId'];
+ $_targyId=$P[$i]['targyId'];
+ $_termek=explode(',',$P[$i]['teremStr']);
+
+ if ($_targyId>0) {
+ for ($t=0; $t<count($_termek); $t++) {
+ $q = "CREATE TEMPORARY TABLE __o__ SELECT * FROM orarendiOra WHERE teremId=%u AND igDt>='%s'";
+ db_query($q, array('debug'=>false,'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; $t<count($_termek); $t++) {
+ $q = "CREATE TEMPORARY TABLE __o__ SELECT * FROM orarendiOra WHERE teremId=%u AND igDt>='%s'";
+ db_query($q, array('debug'=>false,'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/www/policy/private/naplo/orarend/termez.php b/mayor-orig/www/policy/private/naplo/orarend/termez.php
new file mode 100644
index 00000000..8ff70034
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/orarend/termez.php
@@ -0,0 +1,6 @@
+<?php
+
+ global $ADAT;
+ putTermezo($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/bizelomenetel-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/bizelomenetel-pre.php
new file mode 100644
index 00000000..6891375d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/bizelomenetel-pre.php
@@ -0,0 +1,111 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME',strtotime(date('Y-m-d')));
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG && !__DIAK
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/vizsga.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/modules/naplo/share/zaroJegyModifier.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+
+ $ADAT['sorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'emptystringnull', 'bizonyítvány', getTargySorrendNevek(__TANEV));
+ $ADAT['zaroJegyTipusok'] = getEnumField('naplo_intezmeny', 'zaroJegy', 'jegyTipus');
+
+ $ADAT['magatartasIdk'] = getMagatartas();
+ $ADAT['szorgalomIdk']= getSzorgalom();
+// $tmp = getTargyakByDiakId($diakId); -- ezt sajnos itt nem tudjuk használni, mert erősen tanév függő
+ $tmp = getTargyak(array('targySorrendNev'=>$ADAT['sorrendNev']));
+ // reindex
+ $ADAT['targyak'] = array();
+ for ($i=0; $i<count($tmp); $i++) {
+ $ADAT['targyak'][$tmp[$i]['targyId']] = $tmp[$i];
+ }
+
+ // Melyik osztály diákjait nézzük
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ if (__OSZTALYFONOK && !isset($osztalyId)) $_POST['osztalyId'] = $ADAT['osztalyId'] = $osztalyId = $_OSZTALYA[0];
+ 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');
+ }
+
+ $ADAT['kepzesId'] = $kepzesId = readVariable($_POST['kepzesId'],'id');
+
+ if (!is_null($diakId)) {
+ define('__VEGZOS', diakVegzosE($diakId));
+ // intézmlényi adatok lekérdezése
+ $ADAT['intezmeny'] = getIntezmenyByRovidnev(__INTEZMENY);
+ // diák adatai
+ $ADAT['diakAdat'] = getDiakAdatById($diakId);
+ // Na de ez így semmit nem jelent. Melyik osztályban, melyik tanévben?
+ // ez így nem elég!
+ $ADAT['diakKepzes'] = getKepzesByDiakId($diakId, array('result'=>'indexed')); // Ez a diák valaha volt összes képzése!!
+ if (isset($kepzesId)) {
+ $ADAT['kepzesOraterv'][$kepzesId] = getKepzesOraterv($kepzesId,array('arraymap'=>array('targyId','evfolyamJel')));
+ } else {
+ for ($i=0; $i<count($ADAT['diakKepzes']); $i++) {
+ $_kepzesId = $ADAT['diakKepzes'][$i]['kepzesId'];
+ $ADAT['kepzesOraterv'][$_kepzesId] = getKepzesOraterv($_kepzesId,array('arraymap'=>array('targyId','evfolyamJel')));
+ }
+ if ($i==1) $ADAT['kepzesId'] = $kepzesId = $_kepzesId;
+ }
+
+ // Erre nincs szükség
+ $ADAT['diakOsztaly'] = getDiakMindenOsztaly($diakId);
+ for($j=0; $j<count($ADAT['diakOsztaly']); $j++) {
+ $_osztalyId = $ADAT['diakOsztaly'][$j]['osztalyId'];
+ $ADAT['diakEvfolyamJel'][$_osztalyId] = getEvfolyamJel($_osztalyId);
+ }
+
+ /*
+ Zárójegyek évfolyamonként
+ Minden zárójegy, függetlenül attól milyen képzésen szerezte
+ */
+ $ADAT['zaroJegy'] = getDiakZaroJegyek($diakId,null,null,array('arraymap'=>array('diakId','targyId','evfolyamJel','felev')));
+
+ $_VIZSGA = getVizsgak(array('diakId'=>$diakId));
+ /* REINDEX */
+ for ($i=0; $i<count($_VIZSGA); $i++) {
+ $ADAT['zaroJegyVizsga'][$_VIZSGA[$i]['zaroJegyId']]=$_VIZSGA[$i];
+ }
+ }
+
+// $TOOL['szemeszterSelect'] = array('tipus'=>'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'=>'cella','paramName' => 'diakId',
+ 'osztalyId'=> $osztalyId,'post' => array('osztalyId','szemeszterId', 'sorrendNev'),
+ 'statusz' => array('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('jogviszonyban van','magántanuló','jogviszonya felfüggesztve','jogviszonya lezárva')
+ );
+ $TOOL['kepzesSelect'] = array('tipus'=>'sor','paramName'=>'kepzesId', 'kepzesId'=>$kepzesId, 'post' => array('osztalyId','diakId'));
+ }
+
+ }
+ $TOOL['targySorrendSelect'] = array('tipus'=>'cella','paramName' => 'sorrendNev', 'post' => array('szemeszterId', 'osztalyId', 'diakId','kepzesId'));
+ getToolParameters();
+
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/bizelomenetel.php b/mayor-orig/www/policy/private/naplo/osztalyozo/bizelomenetel.php
new file mode 100644
index 00000000..0a24626a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/bizelomenetel.php
@@ -0,0 +1,11 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $diakId, $ADAT;
+
+ if ($diakId != '') {
+ putDiakTanulmanyiElomenetel($diakId, $ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/bizonyitvany-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/bizonyitvany-pre.php
new file mode 100644
index 00000000..75d84d3e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/bizonyitvany-pre.php
@@ -0,0 +1,166 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME',strtotime(date('Y-m-d')));
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG && !__DIAK
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/vizsga.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/modules/naplo/share/zaroJegyModifier.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+
+ $ADAT['sorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'emptystringnull', 'bizonyítvány', getTargySorrendNevek(__TANEV));
+ $ADAT['zaroJegyTipusok'] = getEnumField('naplo_intezmeny', 'zaroJegy', 'jegyTipus');
+
+ $ADAT['magatartasIdk'] = getMagatartas();
+ $ADAT['szorgalomIdk']= getSzorgalom();
+ // Az összes tárgy kell az előmenetel megjelenítéséhez...
+ $tmp = getTargyak();
+ // reindex
+ $ADAT['targyak'] = array();
+ for ($i=0; $i<count($tmp); $i++) {
+ $ADAT['targyak'][$tmp[$i]['targyId']] = $tmp[$i];
+ }
+
+ // Melyik osztály diákjait nézzük
+ $ADAT['osztalyId'] = $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ if (__OSZTALYFONOK && !isset($osztalyId)) $_POST['osztalyId'] = $ADAT['osztalyId'] = $osztalyId = $_OSZTALYA[0];
+ // melyik szemeszter adatait nézzük
+ $szemeszterId = readVariable($_POST['szemeszterId'],'id',null);
+ if (!is_null($szemeszterId)) {
+ //$_TANEV2 = getTanevAdat($szemeszterId);
+ $_TANEV2 = getTanevAdatBySzemeszterId($szemeszterId); // itt volt egy TYPO
+ for ($i = 1; $i <= count($_TANEV2['szemeszter']); $i++) { // aktuális tanév szemeszter számai alapján... (???)
+ if (
+ strtotime($_TANEV2['szemeszter'][$i]['kezdesDt']) <= _TIME
+ && strtotime($_TANEV2['szemeszter'][$i]['zarasDt']) >= _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!
+ if (count($ADAT['diakKepzes'])===1) { /* egyelőre csak ha egy képzésben vesz részt a diák */
+ $ADAT['kepzesOraterv'] = getKepzesOraterv($ADAT['diakKepzes'][0]['kepzesId'],array('arraymap'=>array('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<count($_POST['zaroJegy']); $i++) {
+ $X = explode('|',$_POST['zaroJegy'][$i]);
+ for ($j=0; $j<count($X); $j++) {
+ list($_key,$_val) = explode('=',$X[$j]);
+ $_JEGYEK[$i][$_key] = $_val;
+ }
+ if ($_JEGYEK[$i]['evfolyam']=='') $_JEGYEK[$i]['evfolyam'] = $evfolyam;
+ $_JEGYEK[$i]['targyId'] = $targyId;
+ }
+ zaroJegyBeiras($_JEGYEK);
+ }
+ }
+ // ---- action ---- //
+
+ // diák osztályai
+ $ADAT['diakAdat']['osztaly'] = getDiakOsztalya(($diakId), array('tanev' => $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<count($ADAT['diakOsztaly'][$diakId]); $j++) {
+ $ADAT['diakEvfolyam'][] = getEvfolyam($ADAT['diakOsztaly'][$diakId][$j],$ADAT['szemeszterAdat']['tanev']);
+ $ADAT['diakEvfolyamJel'][] = getEvfolyamJel($ADAT['diakOsztaly'][$diakId][$j],$ADAT['szemeszterAdat']['tanev']);
+ }
+ // Ha vendégtanuló, akkor lehet, hogy nincs osztálya --> 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);
+ }
+
+ $_VIZSGA = getVizsgak(array('diakId'=>$diakId));
+ /* REINDEX */
+ for ($i=0; $i<count($_VIZSGA); $i++) {
+ $ADAT['zaroJegyVizsga'][$_VIZSGA[$i]['zaroJegyId']]=$_VIZSGA[$i];
+ }
+ }
+
+ $TOOL['szemeszterSelect'] = array('tipus'=>'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/www/policy/private/naplo/osztalyozo/bizonyitvany.php b/mayor-orig/www/policy/private/naplo/osztalyozo/bizonyitvany.php
new file mode 100644
index 00000000..a8f104fa
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/bizonyitvany.php
@@ -0,0 +1,16 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $diakId, $szemeszterId, $ADAT;
+
+ if ($diakId != '') {
+ if (isset($szemeszterId)) {
+ putDiakBizonyitvany($diakId, $ADAT);
+ if (__MODOSITHAT) putZaroJegyModosito($diakId, $ADAT);
+ } else {
+ putDiakTanulmanyiOsszesito($diakId, $ADAT);
+ }
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/diak-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/diak-pre.php
new file mode 100644
index 00000000..154a9097
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/diak-pre.php
@@ -0,0 +1,100 @@
+<?php
+/*
+ Module: naplo
+*/
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG && !__DIAK) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+// if ($_POST['tankor'] != '') {
+// header('Location: '.location('index.php?page=naplo&sub=osztalyozo&f=tankor&tankor='.$_POST['tankor']));
+// }
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+
+/*
+ require_once('include/modules/naplo/share/tankorok.php');
+ require_once('include/modules/naplo/share/nevsor.php');
+*/
+ if(__DIAK) $diakId = __USERDIAKID;
+ elseif (isset($_POST['diakId'])) $diakId = readVariable($_POST['diakId'],'id');
+ elseif (isset($_GET['diakId']) ) $diakId = readVariable($_GET['diakId'],'id');
+
+ $osztalyId = readVariable($_POST['osztalyId'],'numeric');
+
+ if (isset($diakId)) {
+ $_POST['diakId'] = $diakId;
+ $ADAT['sulyozas'] = $sulyozas = readVariable(
+ $_POST['sulyozas'],'regexp',
+ readVariable($_SESSION['sulyozas'],'regexp',__DEFAULT_SULYOZAS,array('^[0-9]:[0-9]:[0-9]:[0-9]:[0-9]$')),
+ array('^[0-9]:[0-9]:[0-9]:[0-9]:[0-9]$'));
+ $_SESSION['sulyozas'] = $sulyozas;
+ // nem használjuk fel (fejlesztéshez)
+ $targySorrend = readVariable($_POST['targySorrend'], 'emptystringnull', 'napló', getTargySorrendNevek(__TANEV));
+ $diakNev = getDiakNevById($diakId);
+ $Jegyek = getDiakJegyek($diakId, array('sulyozas' => $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/www/policy/private/naplo/osztalyozo/diak.php b/mayor-orig/www/policy/private/naplo/osztalyozo/diak.php
new file mode 100644
index 00000000..3173d8a7
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/diak.php
@@ -0,0 +1,12 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $diakId, $diakNev, $tolDt, $igDt, $Jegyek, $Targyak, $ADAT;
+
+ if ($diakId != '' && is_array($Jegyek)) putTanuloJegyek($diakId, $diakNev, $Jegyek, $tolDt, $igDt, $ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/dolgozat-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/dolgozat-pre.php
new file mode 100644
index 00000000..1672b48b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/dolgozat-pre.php
@@ -0,0 +1,168 @@
+<?php
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__DIAK && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+
+ if (__DIAK) {
+ $diakId = __USERDIAKID; // Csak a saját dolgozatait nézheti meg
+ } else {
+ $diakId = readVariable($_POST['diakId'],'numeric unsigned',
+ readVariable($_GET['diakId'],'numeric unsigned',null)
+ );
+ $osztalyId = readVariable($_POST['osztalyId'],'numeric unsigned',
+ readVariable($_GET['osztalyId'],'numeric unsigned',null)
+ );
+ $tanarId = readVariable($_POST['tanarId'], 'numeric unsigned',
+ readVariable($_GET['tanarId'], 'numeric unsigned', __TANAR ? __USERTANARID : null)
+ );
+ }
+
+ // képkezeléshez
+ if (__SHOW_FACES_TF) $ADAT['kepMutat'] = true; // ez később finomítható.
+ else $ADAT['kepMutat'] = false;
+
+ // 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);
+ $tankorIds = array();
+ for ($i = 0; $i < count($Tankorok); $i++) $tankorIds[] = $Tankorok[$i]['tankorId'];
+
+ // Kiválasztott tankör azonosítója
+ $tankorId = readVariable($_POST['tankorId'], 'numeric unsigned',
+ readVariable($_GET['tankorId'], 'numeric unsigned', null, $tankorIds), $tankorIds
+ );
+
+ // A tankörökhöz tartozó dolgozatok lekérdezése
+ if (is_array($Tankorok)) {
+ $Dolgozat = getTankorDolgozatok($Tankorok);
+ $dolgozatIds = array_keys($Dolgozat);
+ // A kiválasztott dolgozat azonosítója
+ $dolgozatId = readVariable($_POST['dolgozatId'], 'id',
+ readVariable($_GET['dolgozatId'], 'id', null, $dolgozatIds), $dolgozatIds
+ );
+ }
+else {
+ $dolgozatId = readVariable($_POST['dolgozatId'], 'id',
+ readVariable($_GET['dolgozatId'], 'id', null)
+ );
+}
+ // Többi paraméter
+ if (isset($dolgozatId)) {
+ $Dolgozat = getDolgozat($dolgozatId);
+ $valaszthatoTankorok = getTankorByTargyId($Dolgozat['targyId'],__TANEV,array('idonly' => 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/www/policy/private/naplo/osztalyozo/dolgozat.php b/mayor-orig/www/policy/private/naplo/osztalyozo/dolgozat.php
new file mode 100644
index 00000000..cb3d52be
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/dolgozat.php
@@ -0,0 +1,16 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $tankorId, $diakId, $tanarId, $osztalyId, $Dolgozat, $dolgozatId, $valaszthatoTankorok, $Tanarok;
+ global $ADAT;
+
+ if ($dolgozatId != '') {
+ putDolgozat($Dolgozat, $valaszthatoTankorok, $Tanarok, $ADAT);
+ } elseif (is_array($Dolgozat)) {
+ if (defined('__USERTANARID') && __USERTANARID == $tanarId && isset($tankorId))
+ putDolgozatBejelento($tankorId);
+ putDolgozatLista($Dolgozat);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/jegy-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/jegy-pre.php
new file mode 100644
index 00000000..f0f861c9
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/jegy-pre.php
@@ -0,0 +1,120 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ $jegyId = readVariable($_POST['jegyId'], 'id', readVariable($_GET['jegyId'], 'id'));
+
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/jegy.php');
+ require_once('include/modules/naplo/share/jegyModifier.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ if (isset($jegyId) && ($jegy = getJegyInfo($jegyId))) {
+
+ if (__DIAK && $jegy['diakId'] != __USERDIAKID) {
+ $_SESSION['alert'][] = 'page:illegal_access';
+ } else {
+
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+
+ // kép
+ $ADAT['kepMutat'] = __SHOW_FACES_TF;
+ $ADAT['jegyTipusok'] = getEnumField('naplo','jegy','jegyTipus');
+
+
+ if (// admin bármikor módosíthat jegyet
+ ($_TANEV['statusz'] == 'aktív' && __NAPLOADMIN)
+ || (// a tankör tanárai az _OSZTALYOZO határidő szerint módosíthatnak jegyet!
+ __FOLYO_TANEV &&
+ __TANAR &&
+ in_array(__USERTANARID, $jegy['tanár']['idk']) and
+ (strtotime(_OSZTALYOZO_HATARIDO) <= strtotime($jegy['dt']))
+ )
+ ) {
+
+ define('_MODOSITHAT', true);
+ global $_JSON;
+
+ // --------- action -------------- //
+ if ($action == 'jegyModositas' || $action == 'jegyTorles') {
+ $_tipus = readVariable($_POST['tipus'],'numeric unsigned','NULL');
+
+ if (isset($_POST['jegyTorles']) || $_tipus == 0 || $action == 'jegyTorles') {
+ // jegy törlése
+ $action = 'jegyTorles';
+
+ if (jegyTorles($jegyId, $jegy)) { // az eredeti jegyId és már lekérdezett jegy tömb alapján
+ if ($skin != 'ajax') {
+ header('Location: '.location('index.php?page=naplo&sub=osztalyozo&f=tankor&tankorId='.$jegy['tankorId']));
+ die();
+ } else {
+ $_JSON = array('action' => $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/www/policy/private/naplo/osztalyozo/jegy.php b/mayor-orig/www/policy/private/naplo/osztalyozo/jegy.php
new file mode 100644
index 00000000..f6dd872f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/jegy.php
@@ -0,0 +1,12 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $id, $jegyId, $jegy, $Orak, $Dolgozatok, $ADAT;
+
+ if (isset($jegyId)) putJegyInfo($jegy, $Orak, $Dolgozatok, $ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/osztalyozo-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/osztalyozo-pre.php
new file mode 100644
index 00000000..e88346aa
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/osztalyozo-pre.php
@@ -0,0 +1,6 @@
+<?php
+
+ if (__DIAK) header('Location: '.location('index.php?page=naplo&sub=osztalyozo&f=diak'));
+ else header('Location: '.location('index.php?page=naplo&sub=osztalyozo&f=tankor'));
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/osztalyozo.php b/mayor-orig/www/policy/private/naplo/osztalyozo/osztalyozo.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/osztalyozo.php
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/stat-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/stat-pre.php
new file mode 100644
index 00000000..c0a14323
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/stat-pre.php
@@ -0,0 +1,307 @@
+<?php
+
+/* EZ NEM CSAK OSZTALYOZO!!!!!!! */
+
+ if (_RIGHTS_OK !== true) die();
+
+ define('_TIME', strtotime(date('Y-m-d')));
+
+ if (!defined('__SHOWSTATZARASMINDENTARGY')) define('__SHOWSTATZARASMINDENTARGY',false);
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG && !__DIAK
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/jegy.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/modules/naplo/share/zaroJegyModifier.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+
+ $ADAT['magatartasTargyIdk'] = getMagatartas();
+ $ADAT['szorgalomTargyIdk'] = getSzorgalom();
+
+ $ADAT['beallitasok']['targyak'] = readVariable($_POST['beallitasok_targyak'],'bool',true);
+ $ADAT['beallitasok']['oraszamok'] = readVariable($_POST['beallitasok_oraszamok'],'bool',true);
+ $ADAT['beallitasok']['zaradek'] = readVariable($_POST['beallitasok_zaradek'],'bool',false);
+
+ // melyik szemeszter adatait nézzük
+ if (isset($_POST['szemeszterId']) && $_POST['szemeszterId'] != '') {
+ $szemeszterId = readVariable($_POST['szemeszterId'],'id');
+ } 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;
+ }
+ }
+ }
+ 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['telephelyId']);
+
+ 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<count($zaroJegyek); $i++) {
+ $X = explode('|',$zaroJegyek[$i]);
+ for ($j=0; $j<count($X); $j++) {
+ list($key,$value) = explode('=',$X[$j]);
+ $beirandoJegyek[$i][$key] = $value;
+ }
+
+ }
+ zaroJegyBeiras($beirandoJegyek);
+ }
+ $zaradekAdat = $_POST['zaradekAdat'];
+ if (is_array($zaradekAdat)) {
+ foreach ($zaradekAdat as $zAdat) {
+ if ($zAdat != '') {
+ list($_diakId, $_zaradekIndex, $zaradekId, $csereStr) = explode('/', $zAdat); // --TODO per jel hibás lehet!
+ if ($zaradekId == '') $zaradekId = null;
+ if (in_array($_zaradekIndex, array_values($ZaradekIndex['konferencia bukás']))) $csere = array('%évfolyam%' => $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<count($ADAT['diakIds']); $i++) {
+ $diakId = intval($ADAT['diakIds'][$i]);
+ $hianyzasAdat = $ADAT['hianyzas'][$diakId];
+ // A hozott hiányzások kezelése átkerült a központi getDiakHianyzasOsszesites
+ //$HOZOTT = getDiakHozottHianyzas($diakId,array('tanev'=>$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<count($ADAT['diakIds']); $i++) {
+ $diakId = intval($ADAT['diakIds'][$i]);
+ // éves óraszámok lekérdezése - tárgyanként - másolva a biz oldalról
+ $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'], $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 ($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<count($jegyAdatok); $i++) {
+ if ($jegyAdatok[$i]['jegyTipus'] == 'jegy' && $jegyAdatok[$i]['jegy'] < _JELES_LEGGYENGEBB_JEGY) $found = true;
+ }
+ }
+ if ($found===false) {
+ if ($zaraskorTag) $ADAT['stat']['jeles']++;
+ $ADAT['diakAdat'][$diakId]['jeles'] = true;
+ }
+ }
+ // bukottak és bukások száma
+ foreach ($jegyek as $targyId => $jegyAdatok) {
+ $ADAT['targyboljegy'][$targyId] = true;
+ for ($i=0; $i<count($jegyAdatok); $i++) {
+ $jegyAdat = $jegyAdatok[$i];
+ if ((intval($jegyAdat['jegy'])==1 && in_array($jegyAdat['jegyTipus'],array('jegy','féljegy')))) {
+ if ($ADAT['diakAdat'][$diakId]['bukott'] != true) {
+ $ADAT['diakAdat'][$diakId]['bukott'] = true;
+ if ($zaraskorTag) $ADAT['stat']['bukott']++;
+ }
+ if ($zaraskorTag) {
+ $_tmp[$diakId]++;
+ $ADAT['stat']['bukas']++;
+ }
+ // záradékhoz (2015)
+ $ADAT['diakAdat'][$diakId]['bukottTargy'][] = $ADAT['targyAdat'][$targyId]['targyNev'];
+ }
+ if (isset($jegyAdat['megjegyzes']) && $zaraskorTag) {
+ $ADAT['stat'][ $jegyAdat['megjegyzes'] ]++;
+ if (in_array($jegyAdat['jegyTipus'],array('jegy','féljegy'))) {
+ $ADAT['jegyEloszlas'][$targyId][$jegyAdat['jegy']]++;
+ if (!in_array($targyId,array_merge($ADAT['szorgalomTargyIdk'],$ADAT['magatartasTargyIdk'])) && $zaraskorTag) $ADAT['jegyEloszlas']['osszes'][$jegyAdat['jegy']]++;
+ }
+ }
+ }
+ }
+
+ }
+ foreach ($_tmp as $_dbBukottTargy) {
+ if ($_dbBukottTargy<=2) $ADAT['stat']['dbBukott'][$_dbBukottTargy]++;
+ else $ADAT['stat']['dbBukott'][3]++;
+ }
+
+// ------------------------------------------------------------------
+ } else {
+ unset($osztalyId);
+ }
+
+ }
+
+ if (!isset($osztalyId)) { // lehet, hogy az előzőben lett "törölve" az osztalyId
+ // iskolai statisztika
+ $ADAT['osztaly'] = getOsztalyok($ADAT['szemeszterAdat']['tanev'],array('result' => 'indexed', 'minden'=>false, 'telephelyId' => $telephelyId));
+ $ADAT['targyak'] = getTargyakBySzemeszter($ADAT['szemeszterAdat']);
+ $ADAT['jegyek'] = getZarojegyStatBySzemeszter($ADAT['szemeszterAdat'],array('telephelyId'=>$telephelyId));
+ $ADAT['tantargyiAtlagok'] = getTargyAtlagokBySzemeszter($ADAT['szemeszterAdat']);
+ $ADAT['hianyzas'] = getOsztalyHianyzasOsszesites($ADAT['szemeszterAdat']);
+ }
+
+ $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/www/policy/private/naplo/osztalyozo/stat.php b/mayor-orig/www/policy/private/naplo/osztalyozo/stat.php
new file mode 100644
index 00000000..e5849121
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/stat.php
@@ -0,0 +1,15 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT, $osztalyId;
+
+ if (isset($osztalyId) && count($ADAT['diakok'])>=1) {
+ if (is_array($ADAT['diakok'])) {
+ putOsztalyBizonyitvany($ADAT);
+ }
+ } else {
+ putIskolaStatisztika($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/szempontRendszer-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/szempontRendszer-pre.php
new file mode 100644
index 00000000..1d975701
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/szempontRendszer-pre.php
@@ -0,0 +1,51 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/szovegesErtekeles.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/osztaly.php'); // getEvfolyamJelek
+
+ $ADAT['szemeszterId'] = $szemeszterId = readVariable($_POST['szemeszterId'], 'numeric unsigned', getSzemeszterIdByDt(date('Y-m-d')));
+ $ADAT['kepzesId'] = $kepzesId = readVariable($_POST['kepzesId'], 'numeric unsigned', null);
+ $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'], 'numeric unsigned', null);
+ $ADAT['evfolyamJel'] = $evfolyamJel = readVariable($_POST['evfolyamJel'], 'string', null);
+ $ADAT['szemeszter'] = getSzemeszterAdatById($szemeszterId);
+
+ if (isset($evfolyamJel)) {
+ $ADAT['feltetel'] = 'eros';
+ $ADAT['szempontRendszer'] = getSzempontRendszer($ADAT);
+ $ADAT['szrId'] = $szrId = $ADAT['szempontRendszer']['szrId'];
+ if (isset($szrId) && $action == 'szempontRendszerTorles') {
+ szempontRendszerTorles($ADAT);
+ unset($ADAT['szempontRendszer']);
+ } elseif (!is_array($ADAT['szempontRendszer']) && $action == 'ujSzempontRendszer') {
+ $ADAT['txt'] = explode("\n", $_POST['txt']);
+ if (ujSzempontRendszer($ADAT)) {
+ $_SESSION['alert'][] = 'info:success';
+ $ADAT['szempontRendszer'] = getSzempontRendszer($ADAT);
+ }
+ }
+ }
+
+ $ADAT['feltetel'] = 'laza';
+ $ADAT['szempontRendszerek'] = getEvfolyamJelSzempontRendszerek($ADAT);
+
+ $TOOL['szemeszterSelect'] = array('tipus'=>'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/www/policy/private/naplo/osztalyozo/szempontRendszer.php b/mayor-orig/www/policy/private/naplo/osztalyozo/szempontRendszer.php
new file mode 100644
index 00000000..66d5f8cd
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/szempontRendszer.php
@@ -0,0 +1,16 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['evfolyamJel'])
+// && (isset($ADAT['targyId']) || isset($ADAT['targyTipus']))
+ ) {
+ if (is_array($ADAT['szempontRendszer'])) putSzempontRendszer($ADAT);
+ else putUjSzempontRendszerForm($ADAT);
+
+ if (is_array($ADAT['szempontRendszerek'])) putSzempontRendszerLista($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/szovegesErtekeles-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/szovegesErtekeles-pre.php
new file mode 100644
index 00000000..50293bac
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/szovegesErtekeles-pre.php
@@ -0,0 +1,258 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__TANAR && !__DIAK) {
+ $_SESSION['alert'][] = 'page:insufficien_access';
+ } else {
+//!!
+//Ha van szemeszterId, akkor az annak megfelelő évfolyamot kell kideríteni, és aszerinti szempontrendszert lekérdezni.
+//ld lentebb: getEvfolyamJelByOsztalyId
+//!!
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/szovegesErtekeles.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/share/date/names.php');
+
+
+ $ADAT['targySorrendNev'] = $sorrendNev = readVariable($_POST['sorrendNev'], 'enum', 'bizonyítvány', array('napló','bizonyítvány','anyakönyv','ellenőrző','egyedi'));
+ //$aktDt = date('Y-m-d');
+ $now = date('Y-m-d H:i:s');
+ // Feltételezzük, hogy a zárás időszak a szemeszteren belül van!
+ $ADAT['idoszak'] = getIdoszakByTanev(array('tanev' => __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/www/policy/private/naplo/osztalyozo/szovegesErtekeles.php b/mayor-orig/www/policy/private/naplo/osztalyozo/szovegesErtekeles.php
new file mode 100644
index 00000000..7908d085
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/szovegesErtekeles.php
@@ -0,0 +1,15 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT['szempontRendszer'])) {
+ if (__MODOSITHAT || is_array($ADAT['szovegesErtekeles']))
+ putErtekeloForm($ADAT);
+ } elseif (is_array($ADAT['osszes'])) {
+ foreach ($ADAT['diakTargyak'] as $targyId => $tAdat)
+ if (is_array($ADAT['osszes'][$targyId]))
+ if ($ADAT['tolDt'] <= $ADAT['osszes'][$targyId]['szovegesErtekeles']['dt']) putErtekeloForm($ADAT['osszes'][$targyId]);
+ }
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/tankor-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/tankor-pre.php
new file mode 100644
index 00000000..742b4b5d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/tankor-pre.php
@@ -0,0 +1,332 @@
+<?php
+
+if (_RIGHTS_OK !== true) die();
+
+if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__DIAK && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'message:insufficient_access';
+} elseif (__DIAK) {
+ header('Location: '.location('index.php?page=naplo&sub=osztalyozo&f=diak'));
+} else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/zaroJegyModifier.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/jegy.php');
+
+ $time = time();
+ // A toolBar-ból érkező adatok feldolgozása, beállítása - mit is akarunk épp látni..
+ $diakId = readVariable($_POST['diakId'], 'id');
+ $osztalyId = readVariable($_POST['osztalyId'], 'id', readVariable($_GET['osztalyId'], 'id') );
+ // if (isset($diakId)) {
+ // // Nem egyértelmű az osztály - itt legfeljebb ellenőrizni kell, hogy tagja-e... //$osztaly = getOsztalyByDiakId($diakId);
+ $tankorId = readVariable($_POST['tankorId'], 'id', readVariable($_GET['tankorId'], 'id') );
+ $tanarId = readVariable($_POST['tanarId'], 'id', readVariable($_GET['tanarId'],'id'));
+ if ($_POST['tanarId']=='' && $tanarId!='') $_POST['tanarId'] = $tanarId; // H4CK
+
+ /* Képek vezérlésének beállítása */
+ if (__SHOW_FACES=='optional') $ADAT['kepMutat'] = readVariable($_POST['kepMutat'],'bool');
+ else $ADAT['kepMutat'] = __SHOW_FACES_TF;
+ /* == */
+
+ if (!isset($tanarId) && !isset($osztalyId) && __TANAR)
+ if (!isset($tankorId)) $tanarId = __USERTANARID;
+ else {
+ $tankorTanarai = getTankorTanaraiByInterval($tankorId, array('tanev' => __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<count($Jegyek['tankörök']['tankorId']); $j++) {
+ $_tankorId = $Jegyek['tankörök']['tankorId'][$j];
+ $tankorAdat = $Jegyek['tankörök'][$_tankorId];
+ $Jegyek['tankörök'][$_tankorId]['tanarIds'] = array();
+ for ($i = 0; $i < count($tankorAdat['tanárok']); $i++)
+ $Jegyek['tankörök'][$_tankorId]['tanarIds'][] = $tankorAdat['tanárok'][$i]['tanarId'];
+ }
+ $Orak = getOraAdatByTankor($tankorId);
+ $Dolgozatok = getTankorDolgozatok($tankorId);
+ $TA = getTankorById($tankorId); // át kéne írni getTankorAdat() - ra...
+
+ $ADAT['diakok'] = $Diakok; // kompatibilitás
+ $ADAT['tankorAdat'] = $TA[0];
+ $ADAT['tankorAdat2'] = getTankorAdat($tankorId);
+ $targyId = $TA[0]['targyId'];
+ $ADAT['tankorAdat']['osztalyai'] = getTankorOsztalyai($tankorId, array('result' => '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<count($ADAT['diakok']['idk']); $i++) {
+ $_diakId = $ADAT['diakok']['idk'][$i];
+ $_metszet = array();
+ // A jelenlegi és a szemeszter zárások idején levő évfolyamokat is megállapítjuk
+ foreach ($ADAT['diakOsztaly'] as $key => $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; $i<count($ADAT['diakok']['idk']); $i++) {
+ $_diakId = $ADAT['diakok']['idk'][$i];
+ $ADAT['diakFelmentes'][$_diakId] = getTankorDiakFelmentes($_diakId,__TANEV,array('felmentesTipus'=>array('é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<count($ADAT['tankorok']); $i++) {
+ $_tankorId=$ADAT['tankorok'][$i]['tankorId'];
+ $_diakok = getTankorDiakjaiByInterval($_tankorId, __TANEV, $_TANEV['kezdesDt'], $_TANEV['zarasDt']);
+ //$ADAT['atlagok'][$_tankorId] = ':..:';
+ }
+ */
+ }
+
+//------
+ $tanevIdoszak = getIdoszakByTanev(
+ array('tanev' => __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; $i<count($zaroJegyek); $i++) {
+ $X = explode('|',$zaroJegyek[$i]);
+ for ($j=0; $j<count($X); $j++) {
+ list($key,$value) = explode('=',$X[$j]);
+ // Van már ilyen jegy?
+ $beirandoJegyek[$i][$key] = $value;
+ }
+
+ }
+ /* Időszak ellenőrzése */
+ if (checkReloadAction($actionId, $action, 'bizonyitvany'))
+ if (jegyLezaras($beirandoJegyek, $tankorId, $targyId, $actionId))
+ $Jegyek = getJegyek($tankorId, $tolDt, $igDt, $sulyozas, $Diakok);
+ //--
+ }
+ }
+ } // jegyet adhat
+
+
+ // És a zárójegyek
+ $ADAT['zaroJegyek'] = getDiakokZarojegyeiByTargyId($Diakok['idk'],$ADAT['tankorAdat']['targyId'], array('arraymap'=>array('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/www/policy/private/naplo/osztalyozo/tankor.php b/mayor-orig/www/policy/private/naplo/osztalyozo/tankor.php
new file mode 100644
index 00000000..f86de20a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/tankor.php
@@ -0,0 +1,17 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $tools, $diakId, $tankorId, $tanarId, $osztaly;
+ global $Diakok, $Jegyek, $Orak, $sulyozas, $nevsor;
+ global $Dolgozatok, $tolDt, $igDt;
+ global $ADAT;
+
+ if ($tankorId != '') {
+ // tankör osztályzatainak kiírása
+ putTankorJegyek($tankorId, $Diakok, $Jegyek, $Orak, $Dolgozatok, $sulyozas, $tolDt, $igDt, $nevsor, $ADAT);
+ } else {
+ putTankorjegyStatisztika($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/targySorrend-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/targySorrend-pre.php
new file mode 100644
index 00000000..5dfd84c1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/targySorrend-pre.php
@@ -0,0 +1,47 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__OSZTALYFONOK) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/file.php');
+
+ $sorrendNev = readVariable($_POST['sorrendNev'], 'enum', null, getTargySorrendNevek(__TANEV));
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG) $_POST['osztalyId'] = $osztalyId = $_OSZTALYA[0]; // osztályfőnök - saját osztálya
+ else $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null);
+ if (is_array($_POST['targyId']) && count($_POST['targyId']) > 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/www/policy/private/naplo/osztalyozo/targySorrend.php b/mayor-orig/www/policy/private/naplo/osztalyozo/targySorrend.php
new file mode 100644
index 00000000..59aa99e9
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/targySorrend.php
@@ -0,0 +1,8 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $osztalyId, $sorrendNev, $Targyak;
+
+ if (isset($sorrendNev) && $sorrendNev != '') putTargySorrendForm($osztalyId, $sorrendNev, $Targyak);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/vizsga-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/vizsga-pre.php
new file mode 100644
index 00000000..beb5bd84
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/vizsga-pre.php
@@ -0,0 +1,91 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/vizsga.php');
+ require_once('include/modules/naplo/share/zaradek.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/zaroJegyModifier.php');
+
+ $ADAT['evfolyamJelek'] = getEvfolyamJelek(array('result'=>'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');
+
+ if ($action == 'vizsgajelentkezes' && isset($diakId) && isset($targyId) && isset($evfolyamJel)) {
+ $ADAT['jelentkezesDt'] = readVariable($_POST['jelentkezesDt'], 'date');
+ $ADAT['tipus'] = readVariable($_POST['tipus'], 'enum', null, $ADAT['vizsgatipusok']);
+ if (isset($ADAT['jelentkezesDt']) && isset($ADAT['tipus'])) {
+ 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'), 'statusz'=>$ADAT['statusz']);
+ $TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'post' => array('diakId', 'evfolyamJel', 'felev'));
+ $TOOL['evfolyamJelSelect'] = array(
+ 'tipus' => 'cella', 'paramName' => 'evfolyamJel', 'paramDesc'=>'evfolyamJel','adatok' => getEvfolyamJelek(),
+ 'post' => array('targyId', 'diakId', 'jelentkezesDt', 'vizsgaDt','felev')
+ );
+ $TOOL['felevSelect'] = array(
+ 'tipus' => 'cella', 'paramName' => 'felev', 'post' => array('targyId', 'diakId', 'jelentkezesDt', 'vizsgaDt', 'evfolyamJel')
+ );
+
+ getToolParameters();
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/vizsga.php b/mayor-orig/www/policy/private/naplo/osztalyozo/vizsga.php
new file mode 100644
index 00000000..aaccc546
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/vizsga.php
@@ -0,0 +1,11 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['diakId']) && isset($ADAT['targyId']) && isset($ADAT['evfolyamJel']))
+ putVizsgaJelentkezesForm($ADAT);
+ if (is_array($ADAT['vizsga']) && count($ADAT['vizsga']) > 0) putVizsgaLista($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes-pre.php
new file mode 100644
index 00000000..0cace228
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes-pre.php
@@ -0,0 +1,37 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (
+ !__NAPLOADMIN && !__VEZETOSEG
+ ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/vizsga.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+
+ $ADAT['szemeszterId'] = $szemeszterId = readVariable($_POST['szemeszterId'], 'id', getSzemeszterIdByDt(date('Y-m-d')));
+
+ // Soron következő vizsgaidőszak lekérdezése
+ $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId);
+ $idoszakIds = $ADAT['vizsgaIdoszak'] = array();
+ foreach ($ADAT['szemeszterAdat']['idoszak'] as $key => $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/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes.php b/mayor-orig/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes.php
new file mode 100644
index 00000000..11ad75ef
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/vizsgaJelentkezes.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (count($ADAT['vizsgaIdoszak']) > 0) putVizsgaJelentkezes($ADAT);
+ elseif (__NAPLOADMIN === true) echo '<a href="'.href('index.php?page=naplo&sub=admin&f=szemeszterek&szemeszterId='.$ADAT['szemeszterId']).'">'._VIZSGAIDOSZAK_FELVETELE.'</a>';
+?>
diff --git a/mayor-orig/www/policy/private/naplo/osztalyozo/zaroJegyCheck-pre.php b/mayor-orig/www/policy/private/naplo/osztalyozo/zaroJegyCheck-pre.php
new file mode 100644
index 00000000..0cd5bf23
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/zaroJegyCheck-pre.php
@@ -0,0 +1,82 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ }
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/zaroJegyModifier.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/intezmenyek.php');
+
+ $ADAT['szemeszterId'] = $szemeszterId = readVariable($_POST['szemeszterId'],'id');
+
+ $ADAT['szemeszterAdat'] = getSzemeszterAdatById($szemeszterId);
+ $ADAT['tanev'] = $ADAT['szemeszterAdat']['tanev'];
+ $Osztalyok = getOsztalyok($ADAT['szemeszterAdat']['tanev'],array('result' => '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<count($ADAT['diakok']); $i++) {
+ $DIAKIDS[] = $ADAT['diakok'][$i]['diakId'];
+ }
+*/
+//-----------
+ if (isset($osztalyId)) {
+ $ADAT['evfolyam'] = getEvfolyam($osztalyId,$ADAT['tanev']);
+ $ADAT['evfolyamJel'] = getEvfolyamJel($osztalyId,$ADAT['tanev']);
+
+ if ($action=='modosit') {
+ $ZAROJEGYIDS = readVariable($_POST['zaroJegyId'],'id');
+ $lr = db_connect('naplo_intezmeny');
+ for ($i=0; $i<count($ZAROJEGYIDS); $i++) {
+ $_z = $ZAROJEGYIDS[$i];
+ $q = "UPDATE zaroJegy SET evfolyamJel='%s' WHERE zaroJegyId = %u";
+ $v = array($ADAT['evfolyamJel'],$_z);
+ db_query($q, array('modul'=>'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/www/policy/private/naplo/osztalyozo/zaroJegyCheck.php b/mayor-orig/www/policy/private/naplo/osztalyozo/zaroJegyCheck.php
new file mode 100644
index 00000000..be582c89
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/osztalyozo/zaroJegyCheck.php
@@ -0,0 +1,4 @@
+<?php
+global $ADAT;
+putZaroJegyCheck($ADAT);
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/sni/diakAllapot-pre.php b/mayor-orig/www/policy/private/naplo/sni/diakAllapot-pre.php
new file mode 100644
index 00000000..81926458
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/sni/diakAllapot-pre.php
@@ -0,0 +1,127 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/sni.php');
+ require_once('include/modules/naplo/share/tankor.php');
+
+ // Paraméterek
+ $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'], 'id');
+ if (isset($osztalyId)) {
+ $ADAT['diakIds'] = getDiakok(array('osztalyId' => $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/www/policy/private/naplo/sni/diakAllapot.php b/mayor-orig/www/policy/private/naplo/sni/diakAllapot.php
new file mode 100644
index 00000000..8eb88c0e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/sni/diakAllapot.php
@@ -0,0 +1,8 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['diakId'])) putDiakAllapot($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/sni/fejlesztesiTerv-pre.php b/mayor-orig/www/policy/private/naplo/sni/fejlesztesiTerv-pre.php
new file mode 100644
index 00000000..46dfeab1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/sni/fejlesztesiTerv-pre.php
@@ -0,0 +1,110 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/sni.php');
+ require_once('include/modules/naplo/share/tankor.php');
+
+ // Paraméterek
+ $dt = readVariable($_POST['dt'], 'date');
+ if (!isset($dt)) {
+ $tolTime = strtotime($_TANEV['kezdesDt']);
+ $igTime = min(time(), strtotime($_TANEV['zarasDt']));
+ $dt = date('Y-m-01', $t);
+ for ($t = $tolTime; $t <= $igTime; $t = strtotime("next month", $t)) $dt = date('Y-m-01', $t);
+ }
+ $ADAT['dt'] = $dt;
+ $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'], 'id');
+ if (isset($osztalyId)) {
+ $ADAT['diakIds'] = getDiakok(array('osztalyId' => $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/www/policy/private/naplo/sni/fejlesztesiTerv.php b/mayor-orig/www/policy/private/naplo/sni/fejlesztesiTerv.php
new file mode 100644
index 00000000..78fd73f2
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/sni/fejlesztesiTerv.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['diakId']) && isset($ADAT['dt'])) putHaviOsszesites($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/sni/sni-pre.php b/mayor-orig/www/policy/private/naplo/sni/sni-pre.php
new file mode 100644
index 00000000..94ab4312
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/sni/sni-pre.php
@@ -0,0 +1,5 @@
+<?php
+
+ header('Location: '.location('index.php?page=naplo&sub=sni&f=fejlesztesiTerv'));
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/sni/sni.php b/mayor-orig/www/policy/private/naplo/sni/sni.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/sni/sni.php
diff --git a/mayor-orig/www/policy/private/naplo/sni/tantargyiFeljegyzesek-pre.php b/mayor-orig/www/policy/private/naplo/sni/tantargyiFeljegyzesek-pre.php
new file mode 100644
index 00000000..f2af35f3
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/sni/tantargyiFeljegyzesek-pre.php
@@ -0,0 +1,113 @@
+<?php
+
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+
+ // Paraméterek
+ $ADAT['tolTime'] = $tolTime = strtotime('last Monday', strtotime('+1 day', strtotime($_TANEV['kezdesDt'])));
+ $ADAT['tolDt'] = date('Y-m-d', $ADAT['tolTime']);
+ $ADAT['igTime'] = min(time(), strtotime($_TANEV['zarasDt']));
+ $ADAT['igDt'] = $ADAT['tolDt'];
+ for ($t = $ADAT['tolTime']; $t <= $ADAT['igTime']; $t = strtotime("+7 days", $t)) $ADAT['igDt'] = date('Y-m-d', $t);
+
+ $ADAT['dt'] = $dt = readVariable($_POST['dt'], 'date', $ADAT['igDt']);
+
+ $osztalyId = $ADAT['osztalyId'] = readVariable($_POST['osztalyId'], 'id');
+ if (isset($osztalyId)) {
+ $ADAT['diakIds'] = getDiakok(array('osztalyId' => $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/www/policy/private/naplo/sni/tantargyiFeljegyzesek.php b/mayor-orig/www/policy/private/naplo/sni/tantargyiFeljegyzesek.php
new file mode 100644
index 00000000..b706e6db
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/sni/tantargyiFeljegyzesek.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['tankorId'])) putTankorFeljegyzesek($ADAT);
+ elseif (isset($ADAT['diakId'])) putDiakHetiFeljegyzesek($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/stat/lemorzsolodas-pre.php b/mayor-orig/www/policy/private/naplo/stat/lemorzsolodas-pre.php
new file mode 100644
index 00000000..0e33b8fc
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/stat/lemorzsolodas-pre.php
@@ -0,0 +1,38 @@
+<?php
+
+ global $ADAT,$TANEV;
+
+ require_once('include/share/date/names.php');
+
+ // legyen az alapértelmezett a mostani tanév és a mostani tanév okt 1-je
+ $tanev = __TANEV;
+ $dt = readVariable($_POST['dt'],'date',$_TANEV['szemeszter'][1]['zarasDt']);
+ $dt_stamp = strtotime($dt);
+
+ $q = "SELECT zarasDt,tanev,szemeszter FROM szemeszter WHERE statusz!='tervezett' ORDER BY zarasDt DESC";
+ $_napok = db_query($q,array('modul'=>'naplo_intezmeny','result'=>'indexed'));
+ for ($i=0; $i<count($_napok); $i++) {
+ $_dt = $_napok[$i]['zarasDt'];
+ $NAPOK[] = $_dt;
+ if (strtotime($dt) <= strtotime($_dt)) {
+ $tanev = $_napok[$i]['tanev'];
+ $szemeszter = $_napok[$i]['szemeszter'];
+ $_valasztottIndex = $i;
+ }
+ }
+
+ $ADAT['tanev'] = $tanev;
+ $ADAT['szemeszter'] = $szemeszter;
+ $ADAT['dt'] = $dt;
+ $ADAT['elozoDt'] = $_napok[$_valasztottIndex+1]['zarasDt'];
+
+ $ADAT['lemorzsolodas'] = getLemorzsolodas($ADAT);
+
+ $TOOL['datumSelect'] = array(
+ 'tipus'=>'cella', 'post' => array(),
+ 'paramName' => 'dt', 'hanyNaponta' => 1,
+ 'napok' => $NAPOK
+ );
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/stat/lemorzsolodas.php b/mayor-orig/www/policy/private/naplo/stat/lemorzsolodas.php
new file mode 100644
index 00000000..e144b075
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/stat/lemorzsolodas.php
@@ -0,0 +1,8 @@
+<?php
+
+
+ global $ADAT;
+ putLemorzsolodas($ADAT);
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/stat/letszam-pre.php b/mayor-orig/www/policy/private/naplo/stat/letszam-pre.php
new file mode 100644
index 00000000..5320b816
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/stat/letszam-pre.php
@@ -0,0 +1,88 @@
+<?php
+
+ global $ADAT;
+
+ require_once('include/share/date/names.php');
+
+ // legyen az alapértelmezett a mostani tanév és a mostani tanév okt 1-je
+ $tanev = __TANEV;
+ $dt = readVariable($_POST['dt'],'date',date('Y-m-d',mktime(0,0,0,10,1,__TANEV)));
+ $dt_stamp = strtotime($dt);
+
+ $q = "SELECT zarasDt,tanev FROM szemeszter WHERE statusz!='tervezett' ORDER BY zarasDt DESC";
+ $_napok = db_query($q,array('modul'=>'naplo_intezmeny','result'=>'indexed'));
+ for ($i=0; $i<count($_napok); $i++) {
+ $_dt = $_napok[$i]['zarasDt'];
+ $okt10 = date('Y-m-d',mktime(0,0,0,10,1,date('Y',strtotime($_dt))-1));
+ if (!is_array($NAPOK) || !in_array($okt10,$NAPOK)) $NAPOK[] = $okt10;
+ $NAPOK[] = $_dt;
+ if (strtotime($dt) <= strtotime($_dt)) $tanev = $_napok[$i]['tanev'];
+ }
+
+ $ADAT['tanev'] = $tanev;
+ $ADAT['dt'] = $dt;
+
+
+/* Létszám adatok */
+{
+
+ $lr = db_connect('naplo_intezmeny');
+
+ $q = "CREATE TEMPORARY TABLE _diakOkt SELECT diakId FROM diakJogviszony WHERE dt <= '".$dt."' GROUP BY diakId HAVING MAX(IF(statusz IN ('jogviszonyban van'),dt,'0000-00-00')) > 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<count($r); $i++) {
+ $_TMP[$r[$i]['sorrend']]= array('osztalyJel'=>$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 '<pre>';
+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/www/policy/private/naplo/stat/letszam.php b/mayor-orig/www/policy/private/naplo/stat/letszam.php
new file mode 100644
index 00000000..d521ccc6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/stat/letszam.php
@@ -0,0 +1,8 @@
+<?php
+
+
+ global $ADAT;
+ putLetszamStat($ADAT);
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/stat/tantargyFelosztas-pre.php b/mayor-orig/www/policy/private/naplo/stat/tantargyFelosztas-pre.php
new file mode 100644
index 00000000..a47d6316
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/stat/tantargyFelosztas-pre.php
@@ -0,0 +1,127 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true && __VEZETOSEG !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ 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');
+
+ global $ADAT;
+ $ADAT = array();
+
+/*
+ $ADAT['evfolyamJelek'] = getEvfolyamJelek(array('result'=>'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/www/policy/private/naplo/stat/tantargyFelosztas.php b/mayor-orig/www/policy/private/naplo/stat/tantargyFelosztas.php
new file mode 100644
index 00000000..1e5786be
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/stat/tantargyFelosztas.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putStat($ADAT);
+
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/szulinap-pre.php b/mayor-orig/www/policy/private/naplo/szulinap-pre.php
new file mode 100644
index 00000000..46164faf
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/szulinap-pre.php
@@ -0,0 +1,15 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if ($skin=='ajax') {
+
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+ $ADAT['ma'] = getDiakBySzulDt($dt);
+ $ADAT['osztaly'] = getOsztalyok(__TANEV,array('result'=>'assoc'));
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/szulinap.php b/mayor-orig/www/policy/private/naplo/szulinap.php
new file mode 100644
index 00000000..93606734
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/szulinap.php
@@ -0,0 +1,44 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+if ($skin=='ajax') {
+
+ $szulinapos= false;
+
+ if (__NAPLOADMIN || __TANAR) {
+ echo '<ul>';
+ for ($i=0; $i<count($ADAT['ma']['diak']); $i++) {
+ echo '<li>';
+ echo $ADAT['ma']['diak'][$i]['viseltNevElotag'].' ';
+ echo $ADAT['ma']['diak'][$i]['viseltCsaladinev'].' ';
+ echo $ADAT['ma']['diak'][$i]['viseltUtonev'];
+ echo '</li>';
+ }
+ echo '</ul>';
+ }
+
+ 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 '<ul>';
+ foreach($O as $osztalyId => $db) {
+ echo '<li>';
+ echo $ADAT['osztaly'][$osztalyId]['osztalyJel'].': ' ;
+ echo $db.' ';
+ echo '</li>';
+ }
+ echo '</ul>';
+ }
+
+}
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/checkStatus-pre.php b/mayor-orig/www/policy/private/naplo/tanev/checkStatus-pre.php
new file mode 100644
index 00000000..dbf2ba62
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/checkStatus-pre.php
@@ -0,0 +1,7 @@
+<?php
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ $ADAT = checkStatus();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/checkStatus.php b/mayor-orig/www/policy/private/naplo/tanev/checkStatus.php
new file mode 100644
index 00000000..56f3a5fe
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/checkStatus.php
@@ -0,0 +1,6 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ global $ADAT;
+ putCheckStatus($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/diakTanarai-pre.php b/mayor-orig/www/policy/private/naplo/tanev/diakTanarai-pre.php
new file mode 100644
index 00000000..24a3248a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/diakTanarai-pre.php
@@ -0,0 +1,54 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && __TITKARSAG !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+
+ $ADAT['osztalyId'] = array();
+ if (is_array($_POST['osztalyIds'])) for ($i = 0; $i < count($_POST['osztalyIds']); $i++) {
+ $ADAT['osztalyId'][] = readVariable($_POST['osztalyIds'][$i], 'numeric unsigned');
+ }
+ $_POST['osztalyIds'] = $ADAT['osztalyId'];
+ $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'], 'numeric unsigned');
+ $ADAT['tankorIds'] = array();
+
+ $ADAT['osztaly'] = getOsztalyok(__TANEV, array('result' => '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/www/policy/private/naplo/tanev/diakTanarai.php b/mayor-orig/www/policy/private/naplo/tanev/diakTanarai.php
new file mode 100644
index 00000000..2800d37a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/diakTanarai.php
@@ -0,0 +1,11 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putOsztalyValaszto($ADAT);
+ if (is_array($ADAT['tankorTanar']) && count($ADAT['tankorTanar']) > 0)
+ putDiakTanarLista($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/fogadoOra-pre.php b/mayor-orig/www/policy/private/naplo/tanev/fogadoOra-pre.php
new file mode 100644
index 00000000..a57888c2
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/fogadoOra-pre.php
@@ -0,0 +1,142 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TITKARSAG && !__TANAR && (!__DIAK || _POLICY != 'parent')) {
+ $_SESSION['alert'][] = 'page:insufficient_acces';
+ } else {
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/terem.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+
+ $tanarId = readVariable(
+ $_POST['tanarId'], 'id', readVariable($_GET['tanarId'], 'id', ((__TANAR && !isset($_POST['tanarId']))?__USERTANARID:null))
+ );
+
+ if (__DIAK) {
+ require_once('include/modules/naplo/share/tankor.php');
+ $szuloId = getSzuloIdByUserAccount();
+ $szuloDiakjai = getSzuloDiakjai();
+ $diakIds = array();
+ for ($i = 0; $i < count($szuloDiakjai); $i++) $diakIds[] = $szuloDiakjai[$i]['diakId'];
+ $diakTankorIds = getTankorIdsByDiakIds($diakIds);
+ $diakTanarai = getTankorTanaraiByInterval($diakTankorIds);
+
+ $idoszak = getIdoszakByTanev(array('tanev' => __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/www/policy/private/naplo/tanev/fogadoOra.php b/mayor-orig/www/policy/private/naplo/tanev/fogadoOra.php
new file mode 100644
index 00000000..a90526cd
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/fogadoOra.php
@@ -0,0 +1,26 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $FogadoDt, $tanarId, $tanarFogado, $Tanarok, $FogadoOsszes, $Termek, $TermekAsszoc, $diakTanarai, $Alkalmak, $szuloId;
+ global $szuloJelentkezes, $Szulok, $Lista;
+
+ if (__NAPLOADMIN===true || __VEZETOSEG===true) {
+ if (count($FogadoDt['dates']) > 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/www/policy/private/naplo/tanev/munkaterv-pre.php b/mayor-orig/www/policy/private/naplo/tanev/munkaterv-pre.php
new file mode 100644
index 00000000..d0464159
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/munkaterv-pre.php
@@ -0,0 +1,102 @@
+<?php
+/*
+ Module: naplo
+*/
+
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG && !__TANAR && !__TITKARSAG && !__DIAK) {
+ $_SESSION['alert'][] = 'page:illegal_access';
+ } else {
+
+ require_once('include/modules/naplo/share/file.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/nap.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['napTipusok'] = getNapTipusok();
+ $ADAT['munkaterv'] = getMunkatervek(array('result' => '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 || __VEZETOSEG) { // 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/www/policy/private/naplo/tanev/munkaterv.php b/mayor-orig/www/policy/private/naplo/tanev/munkaterv.php
new file mode 100644
index 00000000..8e9719e5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/munkaterv.php
@@ -0,0 +1,26 @@
+<?php
+/*
+ Module: naplo
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT, $ho, $_TANEV;
+ global $initResult;
+
+ if (__MUNKATERV_OK || $initResult===true) {
+ if (__NAPLOADMIN===true) putAdminForm($ADAT);
+ else putNapokSzama($ADAT);
+ if (
+ isset($ho)
+ && $ho != ''
+ && $_TANEV['statusz'] == 'aktív'
+ && (__FOLYO_TANEV || __NAPLOADMIN)
+ ) $ADAT['action'] = 'munkatervModositas'; //putNapokForm($ADAT['Napok'], $ADAT['napTipusok'], 'munkatervModositas', $ADAT['Hetek']);
+ else $ADAT['action'] = 'honapValasztas'; //putNapokForm($ADAT['Napok'], $ADAT['napTipusok'], 'honapValasztas');
+ putNapokForm($ADAT);
+ } elseif (__NAPLOADMIN===true) {
+ putNapokInit($ADAT, array('hide' => false));
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/tanev-pre.php b/mayor-orig/www/policy/private/naplo/tanev/tanev-pre.php
new file mode 100644
index 00000000..d584bfb5
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/tanev-pre.php
@@ -0,0 +1,5 @@
+<?php
+
+ header('Location: '.location('index.php?page=naplo&sub=tanev&f=munkaterv'));
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/tanev.php b/mayor-orig/www/policy/private/naplo/tanev/tanev.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/tanev.php
diff --git a/mayor-orig/www/policy/private/naplo/tanev/tankorBlokk-pre.php b/mayor-orig/www/policy/private/naplo/tanev/tankorBlokk-pre.php
new file mode 100644
index 00000000..c8672be4
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/tankorBlokk-pre.php
@@ -0,0 +1,114 @@
+<?php
+/*
+ TODO: evfolyamJel szűrés ellenőrzés!!
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/targy.php');
+
+ if (intval($_POST['tanev'])!=0) $tanev = intval($_POST['tanev']);
+ else $tanev = __TANEV;
+
+ $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+ $osztalyId = readVariable($_POST['osztalyId'], 'numeric unsigned', null);
+
+ $targyIds = $ADAT['targySzuro'] = $ADAT['evfolyamJelSzuro'] = array();
+ $ADAT['evfolyamJelek'] = getEvfolyamJelek(array('result'=>'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/www/policy/private/naplo/tanev/tankorBlokk.php b/mayor-orig/www/policy/private/naplo/tanev/tankorBlokk.php
new file mode 100644
index 00000000..51742aa9
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/tankorBlokk.php
@@ -0,0 +1,14 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putTargySzuro($ADAT);
+ //if (isset($osztalyId))
+ putUjTankorBlokk($ADAT);
+ //if (count($Csoportok) > 0) putCsoportok($Csoportok, $tankorAdat, $szTankorIds, $osztalyId);
+ putTankorBlokkok($ADAT);
+
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/tankorCsoport-pre.php b/mayor-orig/www/policy/private/naplo/tanev/tankorCsoport-pre.php
new file mode 100644
index 00000000..cddfb69c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/tankorCsoport-pre.php
@@ -0,0 +1,132 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/diak.php');
+
+ $tanev = __TANEV;
+
+ if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') $osztalyId = $_POST['osztalyId'];
+
+ if (isset($osztalyId)) {
+
+ $Tankorok = getTankorByOsztalyId($osztalyId, $tanev);
+ $tankorIds = array();
+ for ($i = 0; $i < count($Tankorok); $i++) {
+ $tankorIds[] = $Tankorok[$i]['tankorId'];
+ $tankorAdat[ $Tankorok[$i]['tankorId'] ] = $Tankorok[$i];
+ }
+ $CsA = getTankorCsoportByTankorIds($tankorIds);
+ $Csoportok = $csTankorIds = $csoportIds = array();
+ foreach ($CsA as $csoportId => $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 '<pre>'; var_dump($ujCsoportok); echo '</pre>';
+
+ }
+
+
+ $TOOL['osztalySelect'] = array('tipus' => 'cella','paramName' => 'osztalyId', 'post' => array());
+ getToolParameters();
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/tankorCsoport.php b/mayor-orig/www/policy/private/naplo/tanev/tankorCsoport.php
new file mode 100644
index 00000000..955de6c7
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/tankorCsoport.php
@@ -0,0 +1,11 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $tankorAdat, $Csoportok, $szTankorIds, $osztalyId;
+
+ if (isset($osztalyId)) putUjTankorCsoport($tankorAdat, $szTankorIds, $osztalyId);
+ if (count($Csoportok) > 0) putCsoportok($Csoportok, $tankorAdat, $szTankorIds, $osztalyId);
+ if (count($szTankorIds) > 0) putTankorCsoportKereso($osztalyId);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/targyBontas-pre.php b/mayor-orig/www/policy/private/naplo/tanev/targyBontas-pre.php
new file mode 100644
index 00000000..c9aaf91b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/targyBontas-pre.php
@@ -0,0 +1,175 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__NAPLOADMIN && !__VEZETOSEG) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ 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/share/tankorModifier.php');
+ require_once('include/modules/naplo/share/bontas.php'); // bontás kész-e
+
+ // Adatok (bontások, tankör-hozzárendelések) átvétele az előző évből - csak üres bontás tábla esetén!
+ $ADAT['targyBontasStatus'] = checkTargyBontas();
+
+ if ($ADAT['targyBontasStatus']===false && $action=='targyBontasInit') {
+ $ADAT['targyBontasStatus'] = initFromLastYear();
+ }
+ // telephely - csak szűréshez kell
+ $ADAT['telephelyId'] = $telephelyId = readVariable($_POST['telephelyId'], 'id');
+ // kötelező szűrési opció
+ $ADAT['evfolyamJelek'] = getEvfolyamJelek();
+ $osszesEvfolyamJel = array();
+ if (is_array($ADAT['evfolyamJelek'])) foreach ($ADAT['evfolyamJelek'] as $eAdat) $osszesEvfolyamJel[] = $eAdat['evfolyamJel'];
+ $ADAT['evfolyamJel'] = $evfolyamJel = readVariable($_POST['evfolyamJel'], 'enum', null, $osszesEvfolyamJel);
+ // a tárgyadatok az ajax hívásokhoz is kellenek
+ $ADAT['targyAdat'] = getTargyAdatByIds();
+ // osztályok - szűréshez, és tovább...
+ $ADAT['filter']['osztalyAdat'] = getOsztalyok(__TANEV, array('result' => '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/www/policy/private/naplo/tanev/targyBontas.php b/mayor-orig/www/policy/private/naplo/tanev/targyBontas.php
new file mode 100644
index 00000000..1a8aca25
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/targyBontas.php
@@ -0,0 +1,19 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+
+ if ($ADAT['targyBontasStatus']===false) {
+ putTargyBontasInit();
+ }else{
+ putFilter($ADAT);
+ if (
+ is_array($ADAT['osztalyIds']) && count($ADAT['osztalyIds'])>0
+ && is_array($ADAT['kepzesIds']) && count($ADAT['kepzesIds'])>0
+ ) {
+ putTargyBontas($ADAT);
+ }
+ }
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tanev/targyOraszam-pre.php b/mayor-orig/www/policy/private/naplo/tanev/targyOraszam-pre.php
new file mode 100644
index 00000000..37d057cd
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/targyOraszam-pre.php
@@ -0,0 +1,10 @@
+<?php
+
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+
+
+ $ADAT['targyOraszam'] = getTargyOraszamEvfolyamonkent();
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/targyOraszam.php b/mayor-orig/www/policy/private/naplo/tanev/targyOraszam.php
new file mode 100644
index 00000000..bdc6ccf3
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/targyOraszam.php
@@ -0,0 +1,7 @@
+<?php
+
+ global $ADAT;
+
+ putTargyOraszam($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/vegzosOrarendLezaras-pre.php b/mayor-orig/www/policy/private/naplo/tanev/vegzosOrarendLezaras-pre.php
new file mode 100644
index 00000000..2f29caae
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/vegzosOrarendLezaras-pre.php
@@ -0,0 +1,72 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/jegy.php');
+ require_once('include/modules/naplo/share/jegyModifier.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+
+ if (isset($_POST['dt']) && $_POST['dt'] != '') $dt = $ADAT['dt'] = $_POST['dt'];
+ elseif (!isset($_POST['dt'])) $dt = $ADAT['dt'] = $_TANEV['zarasDt'];
+ // Végzős osztályok lekérdezése
+ $ADAT['osztalyok'] = getOsztalyok();
+ for ($i = 0; $i < count($ADAT['osztalyok']); $i++) $ADAT['osztalyIds'][] = $ADAT['osztalyok'][$i]['osztalyId'];
+ // Lezárandó osztályok
+ if (is_array($_POST['lezarandoOsztaly'])) $ADAT['lezarandoOsztaly'] = readVariable($_POST['lezarandoOsztaly'], 'id', null, $ADAT['osztalyIds']);
+ else $ADAT['lezarandoOsztaly'] = array();
+
+ // Végzős tanulmány időszak lekérdezése - egyelőre ezt nem csináljuk - adott dátumhoz igazodunk!
+
+ if ($action == 'orarendLezaras' && count($ADAT['lezarandoOsztaly']) > 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/www/policy/private/naplo/tanev/vegzosOrarendLezaras.php b/mayor-orig/www/policy/private/naplo/tanev/vegzosOrarendLezaras.php
new file mode 100644
index 00000000..1efe15cb
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/vegzosOrarendLezaras.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putLezarandoOsztalyValaszto($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanev/vegzosTankorLezaras-pre.php b/mayor-orig/www/policy/private/naplo/tanev/vegzosTankorLezaras-pre.php
new file mode 100644
index 00000000..4695da13
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/vegzosTankorLezaras-pre.php
@@ -0,0 +1,77 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN) {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+ } else {
+
+ $_SESSION['alert'][] = 'page:insufficient_access';
+
+// ide ne jöjjünk!
+
+
+
+
+ require_once('include/share/date/names.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/jegy.php');
+ require_once('include/modules/naplo/share/jegyModifier.php');
+ require_once('include/modules/naplo/share/tankorDiakModifier.php');
+ require_once('include/modules/naplo/share/hianyzasModifier.php');
+
+
+ //if (isset($_POST['dt']) && $_POST['dt'] != '') $dt = $ADAT['dt'] = $_POST['dt'];
+ //elseif (!isset($_POST['dt'])) $dt = $ADAT['dt'] = $_TANEV['zarasDt'];
+
+ global $_TANEV;
+ $dt = readVariable($_TANEV['zarasDt'], 'datetime');
+ $dt_s = strtotime($dt);
+ $dt = date('Y-m-d',mktime(0,0,0,date('m',$dt_s),date('d',$dt_s)+1,date('Y',$dt_s)));
+
+
+ $ADAT['dt'] = $dt;
+ $ADAT['tanev'] = __TANEV;
+ // Végzős osztályok lekérdezése
+ $ADAT['osztalyok'] = getOsztalyok(__TANEV);
+ // Lezárandó osztályok
+ if (is_array($_POST['lezarandoOsztaly'])) $ADAT['lezarandoOsztaly'] = readVariable($_POST['lezarandoOsztaly'], 'id');
+ else $ADAT['lezarandoOsztaly'] = array();
+
+ // Végzős tanulmány időszak lekérdezése - egyelőre ezt nem csináljuk - adott dátumhoz igazodunk!
+
+ if ($action == 'lezaras') {
+
+ // 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);
+ // Az órarendet nem itt zárjuk le!
+ 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 = 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/www/policy/private/naplo/tanev/vegzosTankorLezaras.php b/mayor-orig/www/policy/private/naplo/tanev/vegzosTankorLezaras.php
new file mode 100644
index 00000000..1efe15cb
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanev/vegzosTankorLezaras.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putLezarandoOsztalyValaszto($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanmenet/tanmenet-pre.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenet-pre.php
new file mode 100644
index 00000000..58d44e40
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenet-pre.php
@@ -0,0 +1,5 @@
+<?php
+
+ header('Location: '.location('index.php?page=naplo&sub=tanmenet&f=tanmenetTankor'));
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanmenet/tanmenet.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenet.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenet.php
diff --git a/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetInfo-pre.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetInfo-pre.php
new file mode 100644
index 00000000..a60e71d0
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetInfo-pre.php
@@ -0,0 +1,35 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__DIAK && !__TITKARSAG && !__TANAR && !__NAPLOADMIN && !__VEZETOSEG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['tanmenetId'] = $tanmenetId = readVariable($_POST['tanmenetId'], 'id', readVariable($_GET['tanmenetId'], 'id'));
+ if (isset($tanmenetId)) {
+
+ $ADAT['tanmenetAdat'] = getTanmenetAdat($tanmenetId);
+ $ADAT['tanarId'] = $tanarId = $ADAT['tanmenetAdat']['tanarId'];
+ $ADAT['targyId'] = $targyId = $ADAT['tanmenetAdat']['targyId'];
+
+ } else {
+ $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'id', (!isset($_POST['targyId'])&&__TANAR)?__USERTANARID:null);
+ $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'], 'id');
+ }
+
+ $TOOL['tanarSelect'] = array('tipus'=>'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/www/policy/private/naplo/tanmenet/tanmenetInfo.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetInfo.php
new file mode 100644
index 00000000..9d2b70e0
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetInfo.php
@@ -0,0 +1,15 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['tanmenetId'])) putTanmenetInfo($ADAT);
+ else {
+ if ($skin != 'ajax') formBegin(array('class'=>"tanmenet"));
+ echo '<input type="hidden" name="tanmenetId" id="informTanmenetId" value="" />'."\n";
+ echo '<p class="kiemelt">Nincs tanmenet megadva!</p>';
+ if ($skin != 'ajax') formEnd();
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetJovahagyas-pre.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetJovahagyas-pre.php
new file mode 100644
index 00000000..d173ab93
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetJovahagyas-pre.php
@@ -0,0 +1,88 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__TANAR && !__NAPLOADMIN && !__VEZETOSEG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+
+
+ if (__TANAR) $ADAT['vezetettMkIds'] = getVezetettMunkakozossegByTanarId(__USERTANARID);
+ if (!is_array($ADAT['vezetettMkIds'])) $ADAT['vezetettMkIds'] = array();
+
+ $mkId = readVariable($_POST['mkId'], 'id');
+ if ($mkId == '' && count($ADAT['vezetettMkIds'])>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/www/policy/private/naplo/tanmenet/tanmenetJovahagyas.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetJovahagyas.php
new file mode 100644
index 00000000..f0a92c71
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetJovahagyas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putTanmenetJovahagyas($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetLeadas-pre.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetLeadas-pre.php
new file mode 100644
index 00000000..a71c14b0
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetLeadas-pre.php
@@ -0,0 +1,51 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__NAPLOADMIN && !__VEZETOSEG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+// require_once('include/share/date/names.php');
+
+ $tanev = $ADAT['tanev'] = readVariable($_POST['tanev'], 'numeric unsigned', defined('__TANEV')?__TANEV:null);
+ $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'];
+ 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 '<pre>'; var_dump($ADAT['tanmenetek']); echo '<pre>';
+ // 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/www/policy/private/naplo/tanmenet/tanmenetLeadas.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetLeadas.php
new file mode 100644
index 00000000..12e8e920
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetLeadas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putTanmenetLeadas($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetModositas-pre.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetModositas-pre.php
new file mode 100644
index 00000000..0afd8498
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetModositas-pre.php
@@ -0,0 +1,83 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__TANAR && !__NAPLOADMIN && !__VEZETOSEG) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/share/date/names.php');
+
+ $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'id', __TANAR?__USERTANARID:null);
+ $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'], 'id');
+
+ $ADAT['tanmenetId'] = $tanmenetId = readVariable($_POST['tanmenetId'], 'id', readVAriable($_GET['tanmenetId'], 'id'));
+ if (isset($tanmenetId)) {
+
+ $ADAT['evfolyamJelek'] = getEvfolyamJelek(array('result'=>'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/www/policy/private/naplo/tanmenet/tanmenetModositas.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetModositas.php
new file mode 100644
index 00000000..e741e222
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetModositas.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['tanmenetId'])) putTanmenetModositasForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetTankor-pre.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetTankor-pre.php
new file mode 100644
index 00000000..74ca1a6e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetTankor-pre.php
@@ -0,0 +1,95 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__TANAR && !__VEZETOSEG && !__NAPLOADMIN) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/szemeszter.php');
+// require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+// require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+
+ $ADAT['tanev'] = __TANEV;
+ $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'], 'id', readVariable($_GET['tanarId'], 'id', __TANAR?__USERTANARID:null));
+
+ if (isset($tanarId)) {
+ $ADAT['tankorIds'] = getTankorByTanarId($tanarId, __TANEV, array('csakId' => 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 '<pre>'; var_dump($ADAT['tanmenetek']); echo '</pre>';
+
+ $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/www/policy/private/naplo/tanmenet/tanmenetTankor.php b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetTankor.php
new file mode 100644
index 00000000..814e624d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/tanmenetTankor.php
@@ -0,0 +1,11 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['tanarId'])) {
+ putTankorLista($ADAT);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tanmenet/ujTanmenet-pre.php b/mayor-orig/www/policy/private/naplo/tanmenet/ujTanmenet-pre.php
new file mode 100644
index 00000000..e0d2402d
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/ujTanmenet-pre.php
@@ -0,0 +1,72 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!__TANAR) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+
+ $ADAT['evfolyamJelek'] = getEvfolyamJelek();
+ $ADAT['tanarId'] = __USERTANARID;
+ $ADAT['munkakozosseg'] = getMunkakozossegByTanarId($ADAT['tanarId'], array('result' => '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 '<pre>'; var_dump($ADAT['tanmenetek']); echo '</pre>';
+ }
+
+ 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/www/policy/private/naplo/tanmenet/ujTanmenet.php b/mayor-orig/www/policy/private/naplo/tanmenet/ujTanmenet.php
new file mode 100644
index 00000000..f304c404
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tanmenet/ujTanmenet.php
@@ -0,0 +1,8 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (isset($ADAT['targyId']) && isset($ADAT['evfolyamJel'])) putUjTanevForm($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tools/ajax.php b/mayor-orig/www/policy/private/naplo/tools/ajax.php
new file mode 100644
index 00000000..9d01f5fb
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/ajax.php
@@ -0,0 +1,7 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ // A függvény az ajax skin base.phtml-ében lett definiálva
+ ajaxPutParams();
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tools/ajaxExample.php b/mayor-orig/www/policy/private/naplo/tools/ajaxExample.php
new file mode 100644
index 00000000..41e27e62
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/ajaxExample.php
@@ -0,0 +1,29 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ // A függvény a base.phtml-ben lett definiálva
+ //ajaxUpdaterForm('proba','index.php?page=naplo&sub=tools&f=ajax','alma=piros&narancs=sárga','post');
+
+ $userId = __USERTANARID;
+ $today = date('Y-m-d');
+
+ ajaxUpdaterForm('proba','index.php?page=naplo&sub=tanev&f=orarend',array('dt'=>$today,'tolDt'=>$today),'post');
+
+ echo '<form id="ajaxUpdaterForm" class="onSubmitUpdate" method="post" action="'.href("index.php?page=naplo&sub=osztalyozo&f=jegy").'">'."\n"; // -- OBSOLETE
+
+ echo '<input type="text" name="jegyId" value="">';
+// echo '<input type="button" class="onClickUpdate" value="Frissít">';
+ echo '<input type="submit" class="" value="Frissít">';
+
+ echo '</form>';
+
+echo '<hr />';
+
+ echo '<form method="post" action="/debug.php" class="onChangeRequest" id="requestForm" >';
+ echo '<input type="text" name="a" value="" id="aa" />';
+ echo '<input type="text" name="b" value="bbb" id="bb" />';
+ echo '<input type="submit" value="OK" />';
+ echo '</form>'; // -- OBSOLETE
+
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tools/dolgozatAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/dolgozatAdat-pre.php
new file mode 100644
index 00000000..31123583
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/dolgozatAdat-pre.php
@@ -0,0 +1,19 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__DIAK!==true && __TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ exit;
+ }
+
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+
+ $dolgozatId = $_JSON['dolgozatId'] = readVariable($_POST['dolgozatId'], 'id');
+
+ $_JSON['dolgozatAdat'] = getDolgozatAdat($dolgozatId);
+ $_JSON['leiras'] = 'Dolgozat';
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/getDiakAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/getDiakAdat-pre.php
new file mode 100644
index 00000000..5d722b38
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/getDiakAdat-pre.php
@@ -0,0 +1,61 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+// if (__NAPLOADMIN !== true && __VEZETOSEG !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tanar.php');
+
+ $diakId = readVariable($_POST['diakId'], 'id',null);
+
+ if (!is_numeric($diakId)) {
+ $_JSON = array();
+ exit;
+ }
+ /* PRIVÁT ADATOK */
+if (__NAPLOADMIN === true || __VEZETOSEG === true || __TITKARSAG === true || __TANAR ===true || $diakId == __USERDIAKID) {
+ $_JSON = getDiakAdatById($diakId);
+ $_JSON['diakOsztaly'] = getDiakMindenOsztaly($diakId);
+ for ($i=0;$i<count($_JSON['diakOsztaly']); $i++) {
+ $OSZTALYIDS[] = $_JSON['diakOsztaly'][$i]['osztalyId'];
+ }
+ $_JSON['osztalyAdat'] = getOsztalyok(null,array('minden'=>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; $i<count($_JSON['diakTankor']); $i++) {
+ $_JSON['diakTankorAssoc'][$_JSON['diakTankor'][$i]['tankorId']] = $_JSON['diakTankor'][$i];
+ }
+ $_JSON['diakFelmentes'] = getTankorDiakFelmentes($diakId, __TANEV, array('csakId'=>false));
+ // $_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/www/policy/private/naplo/tools/getJegyAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/getJegyAdat-pre.php
new file mode 100644
index 00000000..1a91a482
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/getJegyAdat-pre.php
@@ -0,0 +1,36 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true && __DIAK !== true ) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ exit;
+ }
+
+ global $KOVETELMENY;
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+
+ $jegyId = readVariable($_POST['jegyId'], 'id');
+ $ADAT = getJegyAdat($jegyId);
+
+ if (__DIAK===true && $ADAT['diakId'] != __USERDIAKID) return; // más jegyet ne nézhessen meg a diák
+
+ $_JSON['jegyId'] = $jegyId;
+ $_JSON['jegyAdat'] = $ADAT;
+ $_JSON['jegyAdat']['hivatalos'] = $KOVETELMENY[$ADAT['jegyTipus']][$ADAT['jegy']]['hivatalos'];
+ $_JSON['jegyAdat']['rovid'] = $KOVETELMENY[$ADAT['jegyTipus']][$ADAT['jegy']]['rovid'];
+ $_JSON['diakNev'] = getDiakNevById($ADAT['diakId']);
+ $_JSON['targyNev'] = getTargyNevByTargyId($ADAT['targyId']);
+
+// require_once('skin/classic/module-naplo/html/share/jegy.phtml'); // !!!
+// $jegySelect = formBegin(null,array('print'=>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/www/policy/private/naplo/tools/getOraAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/getOraAdat-pre.php
new file mode 100644
index 00000000..9965b23b
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/getOraAdat-pre.php
@@ -0,0 +1,79 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+// if (__NAPLOADMIN !== true && __VEZETOSEG !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/oraModifier.php');
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/dolgozat.php');
+ require_once('include/modules/naplo/share/jegyzet.php');
+
+ $oraId = readVariable($_POST['oraId'], 'id');
+
+ if (!is_numeric($oraId)) {
+ $_JSON = array();
+ exit;
+ }
+
+ /* PRIVÁT ADATOK */
+ if (__NAPLOADMIN === true || __VEZETOSEG === true || __TITKARSAG === true || __TANAR === true || __DIAK === true ) {
+ $oraBeirhato = oraBeirhato($oraId);
+ if ($oraBeirhato===true && $action=='oraBeiras') {
+ $leiras = readVariable($_POST['leiras'], 'string');
+ updateHaladasiNaploOra($oraId,$leiras);
+ }
+
+// $tmp = getTanarAdatById($tanarId);
+// $_JSON = $tmp[0];
+ $_JSON['oraAdat'] = $ORAADAT = getOraAdatById($oraId);
+
+ $q = "SELECT oraId FROM ora WHERE tankorId=%u AND dt<'%s' ORDER BY oraId DESC";
+ $v = array($ORAADAT['tankorId'],$ORAADAT['dt']);
+ $idk = db_query($q, array('fv'=>'pre','modul'=>'naplo','result'=>'idonly','values'=>$v));
+
+ for ($i=0; $i<count($idk); $i++) {
+ $_JSON['elozoOrak'][$i] = getOraAdatById($idk[$i]);
+ }
+
+ $_JSON['dolgozat'] = getTankorDolgozatok(array($ORAADAT['tankorId']), TRUE, $ORAADAT['dt'], $ORAADAT['dt']);
+// $_JSON['jegyzet'] = getJegyzet(array('tolDt'=>$tolDt,'igDt'=>$igDt,'tankorIdk'=>$JA['tankorIdk'],
+ // módosítható az óra?
+ $_JSON['oraBeirhato'] = $oraBeirhato;
+
+ if ($oraBeirhato===true) { // HTML FORM
+ $oraForm = '<form method="post" action="'.href('index.php?page=naplo&sub=tools&f=getOraAdat').'">
+ <input class="salt" type="hidden" name="'.__SALTNAME.'" value="'.__SALTVALUE.'" />
+ <input class="mayorToken" type="hidden" name="mayorToken" value="'.$_SESSION['mayorToken'].'" />
+ <input type="hidden" name="action" value="oraBeiras" />
+ <input type="hidden" name="oraId" value="'.$oraId.'" />
+ <textarea name="leiras" style="margin-top:8px; width:99%; height:100px;">'. supertext($_JSON['oraAdat']['leiras']).'</textarea>';
+ $oraForm .= '<button type="button" class="setOraAdat mentes" value="mentés" data-oraid="'.$oraId.'"><span class="icon-ok"></span> MENTÉS </button>';
+ $oraForm .= '</form>';
+ $_JSON['oraForm'] = $oraForm;
+ }
+ }
+
+ /* 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 .= '<div class="ora">'.$ora.'. '.$OA[$i]['tankorNev'];
+ for ($i=0; $i<count($OA); $i++) {
+ $s .= $OA[$i]['tankorNev'];
+ }
+ $s .='</div>';
+ }
+ }
+ $_JSON['html'] = serialize($_JSON['oraAdat']);
+ $_JSON['debug'] = false;
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/getOsztalyAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/getOsztalyAdat-pre.php
new file mode 100644
index 00000000..246f5821
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/getOsztalyAdat-pre.php
@@ -0,0 +1,39 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true) return false;
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/targy.php');
+
+ $osztalyId = readVariable($_POST['osztalyId'], 'id');
+
+ $_JSON['osztalyId'] = $osztalyId;
+ $_JSON['osztalyAdat'] = getOsztalyAdat($osztalyId);
+ $_JSON['nev'] = $_JSON['osztalyAdat']['osztalyJel'];
+
+/*
+ $tmp = getTankorAdat($tankorId);
+ $targyAdat = getTargyById($tmp[$tankorId][0]['targyId']);
+
+ $_JSON = $tmp[$tankorId][0];
+ $_JSON['tankorNevTargyNelkul'] = str_replace($targyAdat['targyNev'].' ','',$_JSON['tankorNev']);
+ $_JSON['tankorNevReszei'] = array(
+ 'evfOszt' => 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/www/policy/private/naplo/tools/getSzuloAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/getSzuloAdat-pre.php
new file mode 100644
index 00000000..99758d84
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/getSzuloAdat-pre.php
@@ -0,0 +1,27 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+// if (__NAPLOADMIN !== true && __VEZETOSEG !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/szulo.php');
+ require_once('include/modules/naplo/share/hianyzas.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tanar.php');
+
+ $szuloId = readVariable($_POST['szuloId'], 'id',null);
+ if (!is_numeric($szuloId)) { $_JSON = array(); exit;}
+
+ /* PRIVÁT ADATOK */
+ if (__NAPLOADMIN === true || __VEZETOSEG === true || __TITKARSAG ===true || __TANAR ===true) {
+ $_JSON = getSzuloAdat($szuloId);
+ $_tmp = getSzulokDiakjai(array($szuloId));
+ $_JSON['szuloGyermekei'] = $_tmp[$szuloId];
+ }
+ /* PUBLIKUS ADATOK */
+ $_JSON['diakId'] = $diakId;
+ $_JSON['tanev'] = __TANEV;
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/getTanarAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/getTanarAdat-pre.php
new file mode 100644
index 00000000..22394655
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/getTanarAdat-pre.php
@@ -0,0 +1,56 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+// if (__NAPLOADMIN !== true && __VEZETOSEG !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tanar.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/orarend.php');
+
+ if (!defined('__MIN_ORA')) define('__MIN_ORA',getMinOra());
+ if (!defined('__MAX_ORA')) define('__MAX_ORA',getMaxOra());
+
+ $tanarId = readVariable($_POST['tanarId'], 'id');
+
+ if (!is_numeric($tanarId)) {
+ $_JSON = array();
+ exit;
+ }
+
+ /* PRIVÁT ADATOK */
+ if (__NAPLOADMIN === true || __VEZETOSEG === true || __TITKARSAG === true || __TANAR === true) {
+ $tmp = getTanarAdatById($tanarId);
+ $_JSON = $tmp[0];
+ $_JSON['tanarTankor'] = getTankorByTanarId($tanarId);
+ $_JSON['layerPolicy'] = 1;
+ } else {
+ $_JSON['tanarNev'] = getTanarNevById($tanarId);
+ $_JSON['layerPolicy'] = 0;
+ }
+
+ // Ha szülő nézi, jó lenne az elérhetőséget ide kiírni
+
+ /* PUBLIKUS ADATOK */
+ $_JSON['tanarId'] = $tanarId;
+ $_JSON['tanev'] = __TANEV;
+
+ $_JSON['oraTerheles'] = getOraTerhelesStatByTanarId(array('tanarId'=>$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 .= '<div class="ora">'.$ora.'. '.$OA[$i]['tankorNev'];
+ for ($i=0; $i<count($OA); $i++) {
+ $s .= $OA[$i]['tankorNev'];
+ }
+ $s .='</div>';
+ }
+ }
+ $_JSON['maiOrak']['html'] = $s;
+ $_JSON['debug'] = __MIN_ORA;
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/getTankorAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/getTankorAdat-pre.php
new file mode 100644
index 00000000..01571f22
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/getTankorAdat-pre.php
@@ -0,0 +1,38 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true) return false;
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorBlokk.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/tanmenet.php');
+ require_once('include/modules/naplo/share/tanar.php');
+
+ $tankorId = readVariable($_POST['tankorId'], 'id');
+
+ $tmp = getTankorAdat($tankorId);
+ $targyAdat = getTargyById($tmp[$tankorId][0]['targyId']);
+
+ $_JSON = $tmp[$tankorId][0];
+ $_JSON['tankorNevTargyNelkul'] = str_replace($targyAdat['targyNev'].' ','',$_JSON['tankorNev']);
+ $_JSON['tankorNevReszei'] = array(
+ 'evfOszt' => 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/www/policy/private/naplo/tools/getZaroJegyAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/getZaroJegyAdat-pre.php
new file mode 100644
index 00000000..fd5a624e
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/getZaroJegyAdat-pre.php
@@ -0,0 +1,41 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ exit;
+ }
+
+ global $KOVETELMENY;
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/osztalyzatok.php');
+
+ $jegyId = readVariable($_POST['jegyId'], 'id');
+ $zaroJegyId = readVariable($_POST['zaroJegyId'], 'id');
+ $ZA = getZaroJegyAdat($zaroJegyId);
+
+ $targyTargy = getTargyTargy();
+ $_JSON['fotargy'] = (is_array($targyTargy['FOal'][$ZA['targyId']]));
+ $_JSON['altargy'] = (is_array($targyTargy['alFO'][$ZA['targyId']]));
+
+ $_JSON['zaroJegyId'] = $zaroJegyId;
+// $_JSON['jegyAdat'] = serialize(getJegyAdat($jegyId));
+ $_JSON['zaroJegyAdat'] = $ZA;
+ $_JSON['zaroJegyAdat']['hivatalos'] = $KOVETELMENY[$ZA['jegyTipus']][$ZA['jegy']]['hivatalos'];
+ $_JSON['zaroJegyAdat']['rovid'] = $KOVETELMENY[$ZA['jegyTipus']][$ZA['jegy']]['rovid'];
+ $_JSON['diakNev'] = getDiakNevById($ZA['diakId']);
+ $_JSON['targyNev'] = getTargyNevByTargyId($ZA['targyId']);
+
+// ez zsákutca...
+// ez így nem jo require_once('skin/default/base/html/base.phtml');
+ require_once('skin/classic/module-naplo/html/share/jegy.phtml'); // !!!
+
+// $jegySelect = formBegin(null,array('print'=>false));
+ $jegySelect .= putJegySelect($ZA,'return');
+// $jegySelect .= formEnd(array('print'=>false));
+ $_JSON['jegySelect'] = $jegySelect;
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/intezmenyNev-pre.php b/mayor-orig/www/policy/private/naplo/tools/intezmenyNev-pre.php
new file mode 100644
index 00000000..e881059c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/intezmenyNev-pre.php
@@ -0,0 +1,10 @@
+<?php
+
+ /* Model */
+ require_once('include/modules/naplo/share/intezmenyek.php');
+
+ /* Controller */
+ global $intezmeny;
+ $intezmeny = getIntezmenyByRovidnev(__INTEZMENY);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/intezmenyNev.php b/mayor-orig/www/policy/private/naplo/tools/intezmenyNev.php
new file mode 100644
index 00000000..af83206a
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/intezmenyNev.php
@@ -0,0 +1,8 @@
+<?php
+
+ global $intezmeny;
+
+ /* View */
+ echo '<style type="text/css">div#naploToolIntezmenyNev {font-size:x-large; text-align: center; padding:1em;}</style>';
+ echo '<div id="naploToolIntezmenyNev">'.$intezmeny['nev'].'</div>';
+?>
diff --git a/mayor-orig/www/policy/private/naplo/tools/jegyzetAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/jegyzetAdat-pre.php
new file mode 100644
index 00000000..3b88e491
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/jegyzetAdat-pre.php
@@ -0,0 +1,165 @@
+<?php
+
+ // credits: rpetya (rakolcza.peter@gmail.com)
+
+ if (_RIGHTS_OK !== true) die();
+ if (__DIAK!==true && __TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ exit;
+ }
+
+ require_once('include/modules/naplo/share/jegyzet.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/munkakozosseg.php');
+
+ $jegyzetId = readVariable($_POST['jegyzetId'], 'id', '-1');
+ $_JSON['refJegyzetDt'] = readVariable($_POST['refJegyzetDt'],'date');
+
+ // REMOVE
+ if ($action=='delJegyzet') {
+ delJegyzet($jegyzetId); // szigoríthatjuk is
+ $_JSON['jegyzetId'] = $jegyzetId; // a frontenden szukseges
+ return ;
+ // SET (CREATE)
+ } elseif ($action!='') {
+ //$_JSON['debug'] = $_POST;
+ $jegyzetId = setJegyzetAdat($_POST); // szigoríthatjuk is, de a mentő fv gondoskodik erről
+ }
+
+ // Kiegészítő adatok
+ if (__JEGYZETSZEREPTIPUS == 'diak') {
+ $ADAT['tankorok'] = getTankorByDiakId(__JEGYZETSZEREPID);
+ $ADAT['osztalyok'] = getDiakOsztalya(__JEGYZETSZEREPID,array('tanev'=>$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 = '<form method="post" action="'.href('index.php?page=naplo&sub=tools&f=jegyzetAdat').'">
+ <input class="salt" type="hidden" name="'.__SALTNAME.'" value="'.__SALTVALUE.'" />
+ <input class="mayorToken" type="hidden" name="mayorToken" value="'.$_SESSION['mayorToken'].'" />
+ <input type="hidden" name="action" value="jegyzetelo" />
+ <input type="hidden" name="jegyzetId" value="'.$jegyzetId.'" />
+ Határidő: <input type="date" name="dt" value="'.$dt.'" />
+ <textarea name="jegyzetLeiras" style="margin-top:8px; width:99%; height:100px;">'.supertext($_JSON['adat']['jegyzetLeiras']).'</textarea>';
+
+ $jegyzetForm .='<h3>Láthatóság</h3>
+ <ul style="list-style-type=none">
+ <input type="radio" name="publikus" id="publikus0" value="0" '.$_CHK[0].'/><label for="publikus0">privát</label>
+ <br/><input type="radio" name="publikus" id="publikus1" value="1" '.$_CHK[1].' /><label for="publikus1">látható a kapcsolódó csoportoknak</label>';
+ if (__JEGYZETSZEREPTIPUS=='tanar') $jegyzetForm .= '<br/><input type="radio" name="publikus" id="publikus2" value="2" '.$_CHK[2].' /><label for="publikus2">publikus</label>';
+ else $jegyzetForm .= '<br/><input type="radio" name="publikus" id="publikus2" value="2" '.$_CHK[2].' disabled="disabled" /><label for="publikus2">publikus</label>';
+ $jegyzetForm .= '</ul>';
+
+
+ $jegyzetForm .= '<h3>Kapcsolódó csoportok</h3><ul>';
+
+ if (count($ADAT['tankorok'])>0) {
+ $jegyzetForm .= '<li>Tankörök: <select name="tankorId[]"><option>-</option>';
+ for ($i=0; $i<count($ADAT['tankorok']); $i++) { $_D = $ADAT['tankorok'][$i];
+ $_SEL = (in_array($_D['tankorId'],$ADAT['jegyzetAdat']['tankorok']))? 'selected="selected"':'';
+ $jegyzetForm .= '<option value="'.$_D['tankorId'].'" '.$_SEL.'>'.$_D['tankorNev'].'</option>';
+ }
+ $jegyzetForm .= '</select></li>';
+ }
+
+ if (count($ADAT['osztalyok'])>0) {
+ $jegyzetForm .= '<li>Osztályok: <select name="osztalyId[]"><option>-</option>';
+ for ($i=0; $i<count($ADAT['osztalyok']); $i++) {
+ $_D = $ADAT['osztalyok'][$i];
+ $_SEL = (in_array($_D['osztalyId'],$ADAT['jegyzetAdat']['osztalyok']))? 'selected="selected"':'';
+ $jegyzetForm .= '<option value="'.$_D['osztalyId'].'" '.$_SEL.'>'.$_D['osztalyJel'].'</option>';
+ }
+ $jegyzetForm .= '</select></li>';
+ }
+
+ if (count($ADAT['munkakozossegek'])>0) {
+ $jegyzetForm .= '<li>Munkaközösségek: <select name="mkId[]"><option>-</option>';
+ for ($i=0; $i<count($ADAT['munkakozossegek']); $i++) {
+ $_D = $ADAT['munkakozossegek'][$i];
+ $_SEL = (in_array($_D['mkId'],$ADAT['jegyzetAdat']['munkakozossegek']))? 'selected="selected"':'';
+ $jegyzetForm .= '<option value="'.$_D['mkId'].'" '.$_SEL.'>'.$_D['munkakozossegNev'].'</option>';
+ }
+ $jegyzetForm .= '</select></li>';
+ }
+
+ //$jegyzetForm .= '<li>Órák: <select><option>-</option></select></li>';
+ //$jegyzetForm .= '<li>Munkaközösségek: <select><option>-</option></select></li>';
+
+ $jegyzetForm .= '</ul>';
+ $jegyzetForm .= '<button type="button" class="setJegyzetAdat mentes" value="mentés" data-jegyzetid="'.$jegyzetId.'"><span class="icon-ok"></span> MENTÉS </button>';
+ $jegyzetForm .= '</form>';
+
+ // töröl
+ $jegyzetForm .= '
+ <form method="post" action="'.href('index.php?page=naplo&sub=tools&f=jegyzetAdat').'">
+ <input class="salt" type="hidden" name="'.__SALTNAME.'" value="'.__SALTVALUE.'" />
+ <input class="mayorToken" type="hidden" name="mayorToken" value="'.$_SESSION['mayorToken'].'" />
+ <input type="hidden" name="action" value="delJegyzet">
+ <input type="hidden" name="jegyzetId" value="'.$jegyzetId.'">
+ <button type="button" class="delJegyzet torles" value="végleges törlés" data-jegyzetid="'.$jegyzetId.'"><span class="icon-remove"></span> TÖRLÉS </span></button>';
+ $jegyzetForm .= '</form>';
+
+} else {
+ $jegyzetForm .= '<p style="font-size:16px; text-align:center">'.supertext($_JSON['adat']['jegyzetLeiras']).'</p>';
+ $jegyzetForm .= '<ul>';
+ for ($i=0; $i<count($ADAT['tankorok']); $i++) { $_D = $ADAT['tankorok'][$i];
+ if (in_array($_D['tankorId'],$ADAT['jegyzetAdat']['tankorok'])) {
+ $jegyzetForm .= '<li class="tankorAdat" data-tankorid="'.$_D['tankorId'].'">'.$_D['tankorNev'].'</li>';
+ }
+ }
+ for ($i=0; $i<count($ADAT['osztalyok']); $i++) {
+ $_D = $ADAT['osztalyok'][$i];
+ if (in_array($_D['osztalyId'],$ADAT['jegyzetAdat']['osztalyok'])) {
+ $jegyzetForm .= '<li>'.$_D['osztalyJel'].'</li>';
+ }
+ }
+ for ($i=0; $i<count($ADAT['munkakozossegek']); $i++) {
+ $_D = $ADAT['munkakozossegek'][$i];
+ if (in_array($_D['mkId'],$ADAT['jegyzetAdat']['munkakozossegek'])) {
+ $jegyzetForm .= '<li>'.$_D['munkakozossegNev'].'</li>';
+ }
+ }
+
+ $jegyzetForm .= '</ul>';
+
+ $jegyzetForm .= '<p style="border-top: solid 1px #ddd; padding:10px;">';
+ $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:
+ <ul><li>tanár úr (fiú, tehát külön),</li><li>tanárnő (lány, tehát egybe),</li><li>muszáj (pontos jé)</li></ul> ;)
+ </p>
+ ';
+}
+
+ $_JSON['jegyzetForm'] = $jegyzetForm;
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/kereso-pre.php b/mayor-orig/www/policy/private/naplo/tools/kereso-pre.php
new file mode 100644
index 00000000..026acd20
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/kereso-pre.php
@@ -0,0 +1,25 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/diak.php');
+ require_once('include/modules/naplo/share/kereso.php');
+
+ $ADAT['tipus'] = readVariable($_POST['tipus'],'enum',null,array('diak','tanar','szulo'));
+ $ADAT['pattern'] = readVariable($_POST['pattern'],'string',null);
+ $ADAT['strict'] = readVariable($_POST['strict'],'id',null);
+
+ if ($ADAT['pattern']!='') {
+ // search
+ if ($ADAT['tipus']=='diak') $ADAT['diakok']=getDiakokByPattern($ADAT['pattern']);
+ elseif ($ADAT['tipus']=='tanar') $ADAT['tanarok']=getTanarokByPattern($ADAT['pattern']);
+ elseif ($ADAT['tipus']=='szulo') $ADAT['szulok']=getSzulokByPattern($ADAT['pattern'],array('diakokkal'=>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/www/policy/private/naplo/tools/napAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/napAdat-pre.php
new file mode 100644
index 00000000..22ead763
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/napAdat-pre.php
@@ -0,0 +1,23 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__DIAK!==true && __TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ exit;
+ }
+
+ require_once('include/modules/naplo/share/orarend.php');
+ require_once('include/modules/naplo/share/ora.php');
+ require_once('include/modules/naplo/share/nap.php');
+ global $aHetNapjai;
+ $dt = readVariable($_POST['napDt'],'date');
+
+ /* PUBLIKUS ADATOK */
+ $_JSON['dt'] = $dt;
+ $_JSON['leiras'] = $dt.' '.$aHetNapjai[date('w',strtotime($dt))-1];
+ $_JSON['tanev'] = __TANEV;
+
+ $_JSON['napAdat'] = getNapAdat($dt);
+ $_JSON['tanitasiNapAdat'] = getTanitasiNapAdat(array($dt));
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/oid.php b/mayor-orig/www/policy/private/naplo/tools/oid.php
new file mode 100644
index 00000000..bb5e7696
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/oid.php
@@ -0,0 +1 @@
+<?php # Marked for deletion # ?>
diff --git a/mayor-orig/www/policy/private/naplo/tools/oraAdat-pre.php b/mayor-orig/www/policy/private/naplo/tools/oraAdat-pre.php
new file mode 100644
index 00000000..67c94a57
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/oraAdat-pre.php
@@ -0,0 +1,2 @@
+<?php
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/tankor-pre.php b/mayor-orig/www/policy/private/naplo/tools/tankor-pre.php
new file mode 100644
index 00000000..ae614514
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/tankor-pre.php
@@ -0,0 +1,39 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/kereso.php');
+
+
+ $ADAT['tankorId'] = readVariable($_POST['tankorId'],'id',null);
+ $ADAT['tankorAdat'] = getTankorAdat($ADAT['tankorId']); // tanév!!!
+ $ADAT['tankorTipusok'] = getTankorTipusok();
+ $ADAT['html']['blokk0'] = htmlTankorAdat($ADAT);
+ $ADAT['html']['blokkok'] = 1;
+ $_JSON[] = $ADAT;
+
+
+ function htmlTankorAdat($ADAT) {
+ $tankorAdat = $ADAT['tankorAdat'][$ADAT['tankorId']][0]; // index?
+ $r.= '<style type="text/css">
+ table._t tr th { font-weight:normal; text-align: right; }
+ </style>';
+ $r.='<table class="_t">';
+ foreach($tankorAdat as $k => $v) {
+ $r .= '<tr><th>'.$k.':</th><td>'.$v.'</td></tr>';
+ }
+ $r.='</table>'."\n";
+
+/* $r.= 'Tankörtípus:';
+ $r.= '<select>';
+ for ($i=0; $i<10; $i++) {
+ $r.= '<option value="'.$i.'">'.serialize($TA[$i]).'</option>';
+ }
+ $r.= '</select>';
+ $r.=serialize($TA);
+*/
+ return $r;
+ }
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/tankorLista-pre.php b/mayor-orig/www/policy/private/naplo/tools/tankorLista-pre.php
new file mode 100644
index 00000000..7dab9b9f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/tankorLista-pre.php
@@ -0,0 +1,66 @@
+<?php
+ /*
+ * Az oldal különböző bejövő paraméterek alapján ad vissza ajax kérésre egy tankör listát...
+ */
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true && __VEZETOSEG !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/targy.php');
+
+ $diakId = readVariable($_POST['diakId'], 'id');
+ $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ $tanarId = readVariable($_POST['tanarId'], 'id');
+ $targyId = readVariable($_POST['targyId'], 'id');
+ $mkId = readVariable($_POST['mkId'], 'id');
+ $tolDt = readVariable($_POST['tolDt'], 'date');
+ $igDt = readVariable($_POST['igDt'], 'date');
+ $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+ $bontasIds = readVariable($_POST['bontasIds'],'id'); //, array(101,102,103,104,105,106));
+
+
+ // tankörök lekérdezése - lényegében a tankorSelect-nek megfelelően
+ if (isset($diakId) && $diakId!='') { // diák tankörei
+ $tankorok = getTankorByDiakId($diakId, $tanev, array('tolDt'=>$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; $i<count($tankorok); $i++) $tankorIds[] = $tankorok[$i]['tankorId'];
+
+ // speciális szűrések, tagolások
+ if (is_array($bontasIds) && count($bontasIds)>0) {
+
+ $bontasTankorIds = getTankorByBontasIds($bontasIds);
+ $tankorOraszamok = getTankorTervezettOraszamok($tankorIds);
+
+ for ($i=0; $i<count($tankorok); $i++) {
+ $tankorok[$i]['kiemelt'] = (in_array($tankorok[$i]['tankorId'], $bontasTankorIds));
+ $tankorok[$i]['oraszam'] = $tankorOraszamok[ $tankorok[$i]['tankorId'] ]['oraszam'];
+ $tankorok[$i]['bontasOraszam'] = $tankorOraszamok[ $tankorok[$i]['tankorId'] ]['bontasOraszam'];
+ }
+ }
+//dump($tankorok);
+
+
+ $_JSON['tankorok'] = $tankorok;
+ $_JSON['post'] = $_POST;
+// $_JSON['bontasTankorIds'] = $bontasTankorIds;
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/naplo/tools/tankorMod-pre.php b/mayor-orig/www/policy/private/naplo/tools/tankorMod-pre.php
new file mode 100644
index 00000000..35a4306f
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/tankorMod-pre.php
@@ -0,0 +1,40 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true && __VEZETOSEG !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+ else {
+
+ require_once('include/modules/naplo/share/osztaly.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorModifier.php');
+
+ $tankorId = readVariable($_POST['tankorId'], 'id',null);
+ $tankorSzemeszter = $_POST['tankorSzemeszter'];
+ $tankorNevExtra = readVariable($_POST['tankorNevExtra'],'string');
+ $osztalyIds = readVariable($_POST['osztalyIds'], 'id');
+
+ tankorOsztalyHozzarendeles($tankorId, $osztalyIds); // A tankör nevét nem módosítja!!
+ tankorSzemeszterHozzarendeles($tankorId, $tankorSzemeszter); // A tankör nevét nem módosítja
+ setTankorNev($tankorId, $tankorNevExtra);
+
+ $tmp = getTankorAdat($tankorId);
+ $targyAdat = getTargyById($tmp[$tankorId][0]['targyId']);
+
+ $_JSON = $tmp[$tankorId][0];
+ $_JSON['tankorNevTargyNelkul'] = str_replace($targyAdat['targyNev'].' ','',$_JSON['tankorNev']);
+ $_JSON['tankorNevReszei'] = array(
+ 'evfOszt' => 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/www/policy/private/naplo/tools/ujTankor-pre.php b/mayor-orig/www/policy/private/naplo/tools/ujTankor-pre.php
new file mode 100644
index 00000000..0f581de6
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/tools/ujTankor-pre.php
@@ -0,0 +1,114 @@
+<?php
+ /*
+ * Az oldal különböző bejövő paraméterek alapján létrehoz egy tankört, majd az adatait json formában visszaküldi...
+ * Jelenleg csak $bontasIds bemeneti paraméterrel működik.
+ */
+
+ if (_RIGHTS_OK !== true) die();
+ if (__NAPLOADMIN !== true && __VEZETOSEG !== true) $_SESSION['alert'][] = 'page:insufficient_access';
+ else {
+
+ require_once('include/modules/naplo/share/bontas.php');
+ require_once('include/modules/naplo/share/targy.php');
+ require_once('include/modules/naplo/share/kepzes.php');
+ require_once('include/modules/naplo/share/tankor.php');
+ require_once('include/modules/naplo/share/tankorModifier.php');
+
+/*
+ $diakId = readVariable($_POST['diakId'], 'id');
+ $osztalyId = readVariable($_POST['osztalyId'], 'id');
+ $tanarId = readVariable($_POST['tanarId'], 'id');
+ $targyId = readVariable($_POST['targyId'], 'id');
+ $mkId = readVariable($_POST['mkId'], 'id');
+ $tolDt = readVariable($_POST['tolDt'], 'date');
+ $igDt = readVariable($_POST['igDt'], 'date');
+ $tanev = readVariable($_POST['tanev'], 'numeric unsigned', __TANEV);
+*/
+ $bontasIds = readVariable($_POST['bontasIds'],'id'); // 1430, 1441
+ // Az első bontásból lekérdezzük a következő adatokat:
+ // - (tárgy) típus
+ // - tárgy (targyId)
+ $koAdat = getKepzesOratervAdatByBontasId($bontasIds[0]);
+ $ADAT['tipus'] = $koAdat['tipus'];
+ $ADAT['targyId'] = $koAdat['targyId'];
+ // - tankör típus (tankorTipusId) ~ első nyelv, második nyelv, óratervi (gyakorlat?)
+ $ADAT['tankorTipusId'] = ($koAdat['tipus']=='első nyelv'?2:($koAdat['tipus']=='második nyelv'?3:1));
+ // - felmenő óraszámok (tankorSzemeszter)
+ $targyOraterv = getTargyAdatFromKepzesOraterv($koAdat['kepzesId'], $ADAT);
+ $ADAT['oraszam'] = array(); $tanev=__TANEV; $ok = false;
+ foreach ($targyOraterv as $targyId => $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/www/policy/private/naplo/uzeno/postas-pre.php b/mayor-orig/www/policy/private/naplo/uzeno/postas-pre.php
new file mode 100644
index 00000000..8f44cd8c
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/uzeno/postas-pre.php
@@ -0,0 +1,89 @@
+<?php
+
+ require_once('include/modules/naplo/uzeno/uzeno.php'); /* !!! */
+
+ require_once('include/modules/naplo/share/kereso.php');
+ include_once('include/modules/naplo/share/tankor.php');
+ include_once('include/modules/naplo/share/diak.php');
+ include_once('include/modules/naplo/share/szulo.php');
+ include_once('include/modules/naplo/share/tanar.php');
+ include_once('include/modules/naplo/share/osztaly.php');
+ include_once('include/modules/naplo/share/munkakozosseg.php');
+
+ /* ADMIN */
+// if (__UZENOADMIN===true) {
+// $ADAT['asWho'] = readVariable($_POST['asWho'],'strictstring','asIs',array('asAdmin','asIs'));
+// define('__ASWHO',$ADAT['asWho']);
+// } else define('__ASWHO','asIs');
+
+ $ADAT['user']['feladoId'] = setUzenoFeladoId(false);
+ $ADAT['user']['feladoTipus'] = getUzenoSzerep(false);
+ /* ADMIN */
+
+ initSzerep();
+ define('__MEID',setUzenoFeladoId($nooverride=true));
+
+ $ADAT['pattern'] = readVariable($_POST['pattern'],'string');
+ $ADAT['cimzett'] = readVariable($_POST['cimzett'],'string');
+ $ADAT['diakokkal'] = readVariable($_POST['diakokkal'],'bool'); // ez mindig true
+ $ADAT['txt'] = readVariable($_POST['txt'],'string');
+ $ADAT['tanev'] = readVariable($_POST['tanev'],'numeric',__TANEV);
+ list($_cimzettTipus,$_cimzettId) = explode('|',$ADAT['cimzett']);
+ $ADAT['cimzettTipus'] = readVariable($_cimzettTipus,'strictstring',null);
+ $ADAT['cimzettId'] = readVariable($_cimzettId,'id',null);
+
+ $ADAT['mId'] = readVariable($_GET['mId'],'id',null);
+ if (isset($ADAT['mId'])) {
+ $SET['filter'][] = 'uzeno.mId='.intval($ADAT['mId']);
+ $SET['tanev'] = $ADAT['tanev'];
+ $SET['count'] = false;
+ $ADAT['uzenet'] = getUzenoUzenetek($SET);
+ }
+
+ if ($ADAT['pattern']!='') { /* Ha keres */
+ if (uzenhet('diak')) $ADAT['r']['diak' ] = getDiakokByPattern($ADAT['pattern']);
+ if (uzenhet('tanar')) $ADAT['r']['tanar'] = getTanarokByPattern($ADAT['pattern']);
+ if (uzenhet('szulo')) $ADAT['r']['szulo'] = getSzulokByPattern($ADAT['pattern'],array('diakokkal'=>$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/www/policy/private/naplo/uzeno/postas.php b/mayor-orig/www/policy/private/naplo/uzeno/postas.php
new file mode 100644
index 00000000..18ccddef
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/uzeno/postas.php
@@ -0,0 +1,5 @@
+<?php
+ global $ADAT;
+
+ putUzenoPostazo($ADAT);
+?>
diff --git a/mayor-orig/www/policy/private/naplo/uzeno/uzeno-pre.php b/mayor-orig/www/policy/private/naplo/uzeno/uzeno-pre.php
new file mode 100644
index 00000000..4aededc1
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/uzeno/uzeno-pre.php
@@ -0,0 +1,187 @@
+<?php
+
+if (__UZENO_INSTALLED === true) {
+
+ global $TOOL,$action;
+
+ include_once('include/modules/naplo/share/tankor.php');
+ include_once('include/modules/naplo/share/diak.php');
+ include_once('include/modules/naplo/share/szulo.php');
+ include_once('include/modules/naplo/share/tanar.php');
+ include_once('include/modules/naplo/share/osztaly.php');
+ include_once('include/modules/naplo/share/munkakozosseg.php');
+
+// define('__ASWHO','asIs');
+ initSzerep(); // defines __SZEREP, lásd még __UZENOSZEREP
+ define('__MEID',setUzenoFeladoId($nooverride=true));
+ $csoportTipus = array('munkakozosseg','tankor','tankorSzulo','osztaly','osztalySzulo','osztalyTanar');
+
+ if (__SZEREP=='tanar') { // ha tanárok vagyunk és szereztünk diakId-t, akkor:
+ $ADAT['diakId'] = readVariable($_GET['diakId'],'id',null);
+ if ($ADAT['diakId']>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; $i<count( $ADAT['tagsagok'][$ADAT['cimzettTipus']] ) ; $i++) {
+ $_tipus = (!in_array($ADAT['cimzettTipus'], array('tankorSzulo','osztalySzulo','osztalyTanar'))) ? $ADAT['cimzettTipus'].'Id' : str_replace('Szulo','',$ADAT['cimzettTipus']).'Id' ;
+ if (intval($ADAT['tagsagok'][$ADAT['cimzettTipus']][$i][$_tipus])==$ADAT['cimzettId']) {
+ $b = true;
+ break;
+ }
+ }
+ if ($b===true) {
+ $SET['filter'][] = 'cimzettId='.intval($ADAT['cimzettId']);
+ $SET['filter'][] = 'cimzettTipus="'.$ADAT['cimzettTipus'].'"';
+ }
+ }
+
+ if ($ADAT['feladoId']!='' && in_array($ADAT['feladoTipus'],$AVAIL_TIPUSOK)) {
+ $b = false;
+ for ($i=0; $i<count( $ADAT['tagsagok'][$ADAT['feladoTipus']] ) ; $i++) {
+ if (intval($ADAT['tagsagok'][$ADAT['feladoTipus']][$i][$ADAT['feladoTipus'].'Id'])==$ADAT['feladoId']) {
+ $b = true;
+ break;
+ }
+ }
+ if ($b===true) {
+ $SET['filter'][] = 'feladoId='.intval($ADAT['feladoId']);
+ $SET['filter'][] = 'feladoTipus="'.$ADAT['feladoTipus'].'"';
+ }
+ }
+
+ if ($ADAT['szalId']!='') {
+ list($_feladoId,$_feladoTipus,$_cimzettId,$_cimzettTipus) = explode('_',$ADAT['szalId']);
+ if ($_cimzettId==0) { // mindenki
+ $SET['filter'][] = "(cimzettId=$_cimzettId AND cimzettTipus='$_cimzettTipus')";
+ } elseif (in_array($_cimzettTipus,$csoportTipus)) {
+ $SET['filter'][] = "(cimzettId=$_cimzettId AND cimzettTipus='$_cimzettTipus')";
+ } else {
+ $SET['filter'][] = "((feladoId=$_feladoId AND feladoTipus='$_feladoTipus' AND cimzettId=$_cimzettId AND cimzettTipus='$_cimzettTipus')
+ OR (cimzettId=$_feladoId AND cimzettTipus='$_feladoTipus' AND feladoId=$_cimzettId AND feladoTipus='$_cimzettTipus'))";
+ }
+ $SET['limits'] = array('limit'=>100,'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; $i<count($ADAT['uzenetek']); $i++) $ADAT['uzenetIdk'][] = $ADAT['uzenetek'][$i]['mId'];
+ //--
+ for($i=0; $i<count($ADAT['uzenetek']); $i++) {
+ $_m = $ADAT['uzenetek'][$i];
+ if ($_m['feladoTipus'] == 'szulo') $_SZULOIDS[] = $_m['feladoId'];
+ }
+ $ADAT['tagsagok']['szulo'] = getSzulok(array('csakId'=>false,'result'=>'standard','szuloIds'=>$_SZULOIDS));
+ for($i=0; $i<count($ADAT['tagsagok']['szulo']); $i++) {
+ $SZULOIDS[] = $ADAT['tagsagok']['szulo'][$i]['szuloId'];
+ }
+ if (is_array($SZULOIDS) && count($SZULOIDS) > 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/www/policy/private/naplo/uzeno/uzeno.php b/mayor-orig/www/policy/private/naplo/uzeno/uzeno.php
new file mode 100644
index 00000000..12036771
--- /dev/null
+++ b/mayor-orig/www/policy/private/naplo/uzeno/uzeno.php
@@ -0,0 +1,12 @@
+<?php
+
+if (__UZENO_INSTALLED === true) {
+
+ global $ADAT;
+ if ( count($ADAT['uzenetek'])>0 )
+ putUzeno($ADAT);
+ if ($skin!='ajax' && $ADAT['feladoId']!==0)
+ putUzenoUzenet($ADAT);
+
+}
+?>
diff --git a/mayor-orig/www/policy/private/password/changePassword-pre.php b/mayor-orig/www/policy/private/password/changePassword-pre.php
new file mode 100644
index 00000000..08731581
--- /dev/null
+++ b/mayor-orig/www/policy/private/password/changePassword-pre.php
@@ -0,0 +1,60 @@
+<?php
+/*
+ Module: base/password
+
+ Ez még teljesen kiforratlan!
+ Csak átmásoltam a public-ból, és elkezdtem átírni...
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ $toPolicy = readVariable($_POST['toPolicy'], 'enum', readVariable($_GET['toPolicy'], 'enum', _POLICY, $POLICIES), $POLICIES);
+
+ // Itt csak a private policy jelszavát lehet módosítani
+// $toPolicy = 'private';
+ $userAccount = readVariable($_REQUEST['userAccount'], 'emptystringnull');
+
+ // Ha saját jelszavát szeretné változtatni, akkor átirányítjuk oda
+ if ($userAccount == _USERACCOUNT) {
+ header('Location: '.location('index.php?policy=public&page=password&f=changePassword&toPolicy='.$toPolicy,array('lang','skin','sessionID')));
+ exit;
+ }
+
+ // Jogosultság ellenőrzés
+ if (
+ memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup']) or
+ (memberOf($userAccount,'diák') and memberOf(_USERACCOUNT,'diakadmin'))
+ ) {
+
+ // Az elküldött név+jelszó ellenőrzése
+ if ($action == 'changePassword') {
+
+ if (file_exists('include/backend/'.$AUTH[$toPolicy]['backend'].'/password/changePassword.php')) {
+ require('include/backend/'.$AUTH[$toPolicy]['backend'].'/password/changePassword.php');
+ }
+
+ $newPassword = readVariable($_POST['newPassword'], 'emptystringnull');
+ $verification = readVariable($_POST['verification'], 'emptystringnull');
+
+ if ($verification == '' or $newPassword == '') {
+ $_SESSION['alert'][] = 'message:empty_field';
+ } elseif ($verification != $newPassword) {
+ $_SESSION['alert'][] = 'message:pw_not_match';
+ } else {
+
+ if (changePassword($userAccount, $newPassword, $toPolicy)) {
+ // Módosítsuk a bejelentkezett user eltárolt jelszavát? - hagyjuk inkább... legalább látja, hogy változott valami...
+ // updateSessionPassword($userAccount, $toPolicy, $verification);
+ } else {
+ $_SESSION['alert'][] = 'message:pw_change_failed';
+ }
+
+ }
+
+ } // action
+
+ } else {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/password/changePassword.php b/mayor-orig/www/policy/private/password/changePassword.php
new file mode 100644
index 00000000..f95661e0
--- /dev/null
+++ b/mayor-orig/www/policy/private/password/changePassword.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $userAccount, $toPolicy;
+
+ putChangePasswordForm($userAccount, $toPolicy, true); // rögzített policy
+
+?>
diff --git a/mayor-orig/www/policy/private/portal/start.php b/mayor-orig/www/policy/private/portal/start.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/portal/start.php
diff --git a/mayor-orig/www/policy/private/session/accountInfo-pre.php b/mayor-orig/www/policy/private/session/accountInfo-pre.php
new file mode 100644
index 00000000..7bf243cc
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/accountInfo-pre.php
@@ -0,0 +1,51 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ $userAccount = readVariable($_GET['userAccount'],'userAccount');
+ $toPolicy = readVariable($_POST['toPolicy'], 'enum',
+ readVariable($_GET['toPolicy'], 'enum', _POLICY, $POLICIES),
+ $POLICIES
+ );
+
+
+ if ($userAccount == '') $userAccount = _USERACCOUNT;
+
+ // Milyen kategóriába sorolható a userAccount, illetve az aktuális user
+ $userCategories = getAccountCategories($userAccount, $toPolicy);
+ if (
+ _POLICY == 'private' &&
+ (
+ memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup']) ||
+ (
+ memberOf(_USERACCOUNT,'diakadmin') &&
+ in_array('diak',$userCategories)
+ )
+ )
+ ) define('_ACCESS_AS', _ADMIN_ACCESS);
+ elseif ($userAccount == _USERACCOUNT) define('_ACCESS_AS', _SELF_ACCESS);
+ else define('_ACCESS_AS', _OTHER_ACCESS);
+
+ list($backendAttrs, $backendAttrDef) = getBackendAttrs('Account', $toPolicy);
+ if ($action == 'changeSettings') {
+
+ changeAccountInfo($userAccount, $toPolicy);
+
+ } elseif ($action=='userSettingsModify') {
+
+ $changeSkinTo = readVariable($_POST['changeSkinTo'],'enum',null,$SKINSSHOW);
+ setUserSettings($userAccount, $toPolicy, array('skin'=>$changeSkinTo));
+
+ }
+
+
+
+ $userInfo = getUserInfo($userAccount, $toPolicy); // keretrendszer attribútumai
+ $accountInfo = getAccountInfo($userAccount, $toPolicy); // backend attribútumai
+
+ $ADAT = getUserSettings($userAccount, $toPolicy);
+
+?>
diff --git a/mayor-orig/www/policy/private/session/accountInfo.php b/mayor-orig/www/policy/private/session/accountInfo.php
new file mode 100644
index 00000000..7c4a3e0a
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/accountInfo.php
@@ -0,0 +1,15 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $accountInfo, $userInfo, $backendAttrDef, $toPolicy;
+ global $ADAT;
+
+ putUserSettingsForm($ADAT);
+
+ putAccountInfoForm($userInfo, $accountInfo, $backendAttrDef, $toPolicy);
+
+?>
diff --git a/mayor-orig/www/policy/private/session/admin/knownNodes-pre.php b/mayor-orig/www/policy/private/session/admin/knownNodes-pre.php
new file mode 100644
index 00000000..d166babd
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/admin/knownNodes-pre.php
@@ -0,0 +1,39 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__USERADMIN) {
+ $_SESSION['alert'][] = "page:insufficient_access";
+ } else {
+
+ require('include/share/ssl/ssl.php');
+
+ $ADAT['my']['url'] = $url = substr($_SERVER["HTTP_REFERER"], 0, strpos($_SERVER["HTTP_REFERER"], 'index.php?'));
+ $ADAT['my']['dt'] = date('Y-m-d');
+
+ $RPC = new Interconnect();
+ $ADAT['my']['publicKey'] = $RPC->getPublicKey();
+ $ADAT['my']['nodeId'] = $RPC->getNodeId();
+
+
+ if ($action == 'rpcPing') {
+ $ADAT['nodeId'] = readVariable($_POST['nodeId'],'id');
+ $RPC->setRemoteHostByNodeId($ADAT['nodeId']);
+ $RPC->setRequestTarget('base');
+ $ADAT['pingResult'] = $RPC->sendRequest(array('func'=>'ping'));
+ $ADAT['nodeVersion'] = $ADAT['pingResult']['revision'];
+ // $RPC->setRequestTarget('controller');
+ } elseif ($action == 'getPublicDataByNodeId') {
+ $ADAT['nodeId'] = readVariable($_POST['nodeId'],'id');
+ $RPC->setRequestTarget('base');
+ $RPC->setRemoteHostByNodeId($ADAT['nodeId']);
+ } elseif ($action == 'removeNode') {
+ $ADAT['nodeId'] = readVariable($_POST['nodeId'],'id');
+ removeNodeFromLocalKeychain($ADAT['nodeId']);
+ }
+
+ $ADAT['nodes'] = getPublicDataFromLocalKeychain();
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/session/admin/knownNodes.php b/mayor-orig/www/policy/private/session/admin/knownNodes.php
new file mode 100644
index 00000000..e7a95d58
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/admin/knownNodes.php
@@ -0,0 +1,10 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putGetNodeData();
+ putKnownNodes($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/session/admin/registration-pre.php b/mayor-orig/www/policy/private/session/admin/registration-pre.php
new file mode 100644
index 00000000..eabc8cfe
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/admin/registration-pre.php
@@ -0,0 +1,123 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (!__USERADMIN) {
+ $_SESSION['alert'][] = "page:insufficient_access";
+ } else {
+
+ require('include/share/ssl/ssl.php');
+
+ $ADAT['NODETIPUSOK'] = array('intézmény','backup','fejlesztői');
+ $ADAT['OSSZEG'] = array(0,1000,2000,3000,5000,10000);;
+ // regisztrációs űrlap elemei (portal-mayor-ból átemelve...
+ $ADAT['MEZOK'] = array(
+ 'nodeTipus' => array('kotelezo'=>true,'options'=>$ADAT['NODETIPUSOK']),
+ 'nev' => array('kotelezo'=>true),
+ 'rovidNev' => array(),
+ 'OMKod' => array(),
+ 'cimHelyseg' => array('kotelezo'=>true),
+ 'cimIrsz' => array('kotelezo'=>true),
+ 'cimKozteruletNev' => array('kotelezo'=>true),
+ 'cimKozteruletJelleg' => array('kotelezo'=>true),
+ 'cimHazszam' => array('kotelezo'=>true),
+ 'telefon' => array(),
+ 'fax' => array(),
+ 'email' => array(),
+ 'honlap' => array(),
+ 'url' => array(),
+ 'kapcsolatNev' => array('kotelezo'=>true),
+ 'kapcsolatEmail' => array('kotelezo'=>true),
+ 'kapcsolatTelefon' => array(),
+ // külön, más helyen jelennek meg
+ 'dij'=> array('kotelezo'=>true,'display'=>false,'type'=>'none'),
+ 'egyebTamogatas' => array('display'=>false,'type'=>'none'),
+ 'utemezes'=>array('display'=>false,'type'=>'none'),
+ // rejtett mezők - nem módosíthatók
+ 'regId'=>array('display'=>false,'type'=>'none'),
+ 'dt'=>array('display'=>false),
+ 'publicKey' => array('kotelezo'=>true,'display'=>false,'readonly'=>true,'type'=>'textarea'),
+ );
+ $ADAT['my']['url'] = $url = substr($_SERVER["HTTP_REFERER"], 0, strpos($_SERVER["HTTP_REFERER"], 'index.php?'));
+ $ADAT['my']['dt'] = date('Y-m-d');
+
+ $RPC = new Interconnect();
+ $ADAT['my']['publicKey'] = $RPC->getPublicKey();
+ $ADAT['my']['nodeId'] = $RPC->getNodeId();
+
+ // regisztráció
+ if ($action == 'sendRegRequest') {
+ unset($_POST['action']);
+ $_POST['publicRequest'] = 'registration';
+ $res = json_decode(sendPublicRequest($_POST), true);
+ foreach ($res['alert'] as $index => $aAdat) $_SESSION['alert'][] = implode(':',$aAdat);
+ if ($res['success'] === true) {
+ setNodeId($res['nodeId'], $ADAT['my']['publicKey']);
+ $ADAT['my']['nodeId'] = $res['nodeId'];
+ $RPC = new Interconnect(); // újracsatlakozás...
+ }
+ //dump($res);
+ } elseif ($action == 'checkOldRegByPublicKey') {
+ $DATA['publicKey'] = $ADAT['my']['publicKey'];
+ $DATA['publicRequest'] = 'getNodeIdByPublicKey';
+ // ha kellene ellenőrzés, akkar a választ a publicKey-el kódolva kellene küldeni...
+ $res = json_decode(sendPublicRequest($DATA), true);
+ foreach ($res['alert'] as $index => $aAdat) $_SESSION['alert'][] = implode(':',$aAdat);
+ if ($res['success'] === true) {
+ setNodeId($res['nodeId'], $ADAT['my']['publicKey']);
+ $ADAT['my']['nodeId'] = $res['nodeId'];
+ $RPC = new Interconnect(); // újracsatlakozás...
+ }
+ dump($res);
+ }
+
+ if ($ADAT['my']['nodeId'] != 0)
+ try {
+ $RPC->setRemoteHostByNodeId(''); // controller
+ $RPC->setRequestTarget('controller');
+ $ADAT['registrationStatus']['result'] = $RPC->sendRequest(array('func'=>'checkRegistration'));
+ //dump($ADAT['registrationStatus']['result'], $RPC->getStatus());
+ // Teszt: egy alap metódus lekérdezése...
+ //$RPC->setRequestTarget('base');
+ // $ADAT['controllerVersion'] = $RPC->sendRequest(array('func'=>'ping'));
+ // dump($ADAT['controllerVersion']);
+ // $RPC->setRequestTarget('controller');
+ if ($ADAT['registrationStatus']['result']['valid'] == 1) {
+ $ADAT['regAdat'] = $RPC->getRegistrationDataByNodeId($ADAT['my']['nodeId']);
+ //dump($ADAT['regAdat'], $RPC->getStatus());
+ }
+ } catch (Exception $e) {
+ dump("checkRegistration",$e);
+ }
+
+ if ($action == 'modRegAdat') {
+ $MOD = array();
+ foreach ($ADAT['regAdat']['nodeData'] as $key => $value) {
+ $newValue = readVariable($_POST[$key], 'string');
+ if (
+ !in_array($key, array('nodeId','regId','publicKey'))
+ && str_replace(array("\n","\r","\n\r"),"",$value) != str_replace(array("\n","\r","\n\r"),"",$newValue)
+ && !is_null($newValue)
+ ) $MOD[$key] = $newValue;
+ }
+ if (count($MOD) > 0) try {
+ // Interconnect-en keresztül!!
+ $ADAT['modRegData']['result'] = $RPC->sendRequest(
+ array('func'=>'modRegData', 'data'=>$MOD, 'regId'=>$ADAT['regAdat']['nodeData']['regId'])
+ );
+ // A megjelenítéshez módosítjuk a kirakandó adatokat helyben is.
+ if ($ADAT['modRegData']['result']['result'] === true) {
+ $_SESSION['alert'][] = 'info:success:A regisztrációs adatokat módosítottuk a regisztrációs szerveren.';
+ foreach ($MOD as $key => $val) $ADAT['regAdat']['nodeData'][$key] = $val;
+ } else {
+ $_SESSION['alert'][] = 'message:wrong_data:Az adatmódosítás nem sikerült a regisztrációs szerveren.';
+ }
+ } catch (Exception $e) {
+ dump("modRegData",$e);
+ }
+
+ }
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/session/admin/registration.php b/mayor-orig/www/policy/private/session/admin/registration.php
new file mode 100644
index 00000000..6ad2d8e7
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/admin/registration.php
@@ -0,0 +1,16 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ validRegisztracio($ADAT['registrationStatus']['result']['valid'], $ADAT['my']['nodeId']);
+ if ($ADAT['registrationStatus']['result']['valid'] != 1) {
+ putCheckOldReg($ADAT);
+ putRegisztracio($ADAT);
+ } else {
+ putRegisztracioMod($ADAT);
+ }
+ putPublicKey($ADAT['my']['publicKey']);
+
+?>
diff --git a/mayor-orig/www/policy/private/session/createAccount-pre.php b/mayor-orig/www/policy/private/session/createAccount-pre.php
new file mode 100644
index 00000000..ce789482
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/createAccount-pre.php
@@ -0,0 +1,110 @@
+<?php
+/*
+ Module: base/session
+ createAccount => byAdmin esetén csak az érintet policy-n belül az adminGroup tagjainak lehet létrehozni új account-ot
+ createAccount => byRegistration esetén bárki regisztrálhat bármely policy-ből
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup'])) {
+ $DEFAULTS['userAccount'] = readVariable($_GET['userAccount'],'userAccount');
+ $DEFAULTS['userCn'] = readVariable($_GET['userCn'],'emptystringnull');
+ $DEFAULTS['userPassword'] = readVariable($_GET['userPassword'],'emptystringnull');
+ $DEFAULTS['mail'] = readVariable($_GET['email'],'emptystringnull');
+ $DEFAULTS['telephoneNumber'] = readVariable($_GET['tel'],'emptystringnull');
+ }
+
+ $toPolicy = readVariable($_POST['toPolicy'], 'enum', readVariable($_GET['toPolicy'], 'enum',_POLICY, $POLICIES), $POLICIES);
+
+ @$toPSF = $_REQUEST['toPSF'];
+
+ if ($toPolicy != _POLICY) require_once(_CONFIGDIR."/$toPolicy-conf.php");
+ if (
+ (
+ $AUTH[$toPolicy]['createAccount'] == 'byAdmin'
+ and memberOf(_USERACCOUNT, $AUTH['private']['adminGroup'])
+ )
+ or (
+ $AUTH[$toPolicy]['createAccount'] == 'byRegistration'
+ && _USERACCOUNT ==''
+ )
+ ) {
+ define('_ENABLE',true);
+ } else {
+ define('_ENABLE',false);
+ $_SESSION['alert'][] = 'page:insufficient_access:#1';
+ }
+
+ if (_ENABLE && $action == 'createAccount' && isset($_POST['new'])) {
+
+ $file = $_FILES['file']['tmp_name'];
+ if ($file != '' && $file != 'none' && file_exists($file)) {
+
+ $uidfp=fopen($file, 'r');
+ while ($sor=fgets($uidfp, 4096)) {
+ list($userCn, $userAccount, $userPassword, $category, $studyId, $container)=explode(" ",chop($sor));
+ // A biztonság kedvéért ez a html form validációval egyező legyen
+ $userCn = readVariable($userCn,'html');
+ $userAccount = readvariable($userAccount,'html');
+ $studyId = readVariable($studyId,'number');
+ $category = readVariable($category, 'enum','',$AUTH[$toPolicy]['categories']);
+ $container = readVariable($container,'enum','',$AUTH[$toPolicy][$AUTH[$toPolicy]['backend'].'Containers']);
+ $policyAccountAttrs = array();
+ if (is_array($AUTH[$toPolicy]['accountAttrs'])) foreach ($AUTH[$toPolicy]['accountAttrs'] as $attr) {
+ if (isset($$attr) and $$attr != '') $policyAccountAttrs[$attr] = readVariable($$attr, 'string');
+ }
+ if (createAccount($userCn, $userAccount, $userPassword, $toPolicy, array('container'=> $container, 'category' => $category, 'policyAttrs' => $policyAccountAttrs)) ===false) {
+ $_SESSION['alert'][] = "info:user_create_failure: cn.$userCn|account.$userAccount|policy.$toPolicy|category.$category|container.$container";
+ }
+ }
+ fclose($uidfp);
+
+ } else {
+
+ // kötelező paraméterek
+ $userCn = readVariable($_POST['userCn'],'html');
+ $userAccount = readvariable($_POST['userAccount'],'html');
+ $studyId = readVariable($_POST['studyId'],'number');
+ $userPassword = $_POST['userPassword'];
+ $verification = $_POST['verification'];
+
+ // opcionális paraméterek
+ $category = readVariable($_POST['category'], 'enum','',$AUTH[$toPolicy]['categories']);
+ $container = readVariable($_POST['container'],'enum','',$AUTH[$toPolicy][$AUTH[$toPolicy]['backend'].'Containers']);
+
+ $policyAccountAttrs = array();
+ if (is_array($AUTH[$toPolicy]['accountAttrs'])) foreach ($AUTH[$toPolicy]['accountAttrs'] as $attr) {
+ if (isset($_POST[$attr]) and $_POST[$attr] != '') $policyAccountAttrs[$attr] = readVariable($_POST[$attr], 'string'); // ???
+ }
+
+ if ($userCn == '' or $userAccount == '' or $userPassword == '' or $verification == '') {
+ // Csak policy váltás történt
+ // $_SESSION['alert'][] = 'message:empty_field';
+ } elseif ($userPassword != $verification) {
+ $_SESSION['alert'][] = 'message:pw_not_match';
+ } else {
+ if (createAccount($userCn, $userAccount, $userPassword, $toPolicy,
+ array('container'=> $container, 'category' => $category, 'policyAttrs' => $policyAccountAttrs))) {
+ if (
+ _POLICY == 'private'
+ && memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup'])
+ ) header('Location: '.location("index.php?page=session&f=accountInfo&userAccount=$userAccount&toPolicy=$toPolicy"));
+ elseif (_POLICY == 'public') {
+ $toPSF = ($toPSF=='') ? 'auth::login' : $toPSF;
+ header(
+ 'Location: '.location("index.php?page=auth&f=login&userAccount=$userAccount&policy=public&toPolicy=$toPolicy&toPSF=$toPSF", array('skin','lang','sessionID'))
+ );
+ } else {
+ $toPSF = ($toPSF=='') ? 'session::accountInfo' : $toPSF;
+ header(
+ 'Location: '.location("index.php?page=auth&f=login&userAccount=$userAccount&policy=public&toPolicy=$toPolicy&toPSF=$toPSF", array('skin','lang','sessionID'))
+ );
+ }
+ }
+ }
+ }
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/session/createAccount.php b/mayor-orig/www/policy/private/session/createAccount.php
new file mode 100644
index 00000000..94c4b703
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/createAccount.php
@@ -0,0 +1,12 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $toPolicy,$DEFAULTS;
+
+ putCreateAccountForm($toPolicy, $DEFAULTS);
+
+?>
diff --git a/mayor-orig/www/policy/private/session/createGroup-pre.php b/mayor-orig/www/policy/private/session/createGroup-pre.php
new file mode 100644
index 00000000..8b65ce02
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/createGroup-pre.php
@@ -0,0 +1,49 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (_POLICY == 'private' && memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup'])) {
+ } else {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ }
+ $toPolicy = readVariable($_POST['toPolicy'], 'enum', _POLICY, $POLICIES);
+
+ if ($action == 'createGroup') {
+
+ $file = $_FILES['file']['tmp_name'];
+ if ($file != '' and $file != 'none' and file_exists($file)) {
+/* $uidfp=fopen($file, 'r');
+ while ($sor=fgets($uidfp, 4096)) {
+ list($groupCn, $groupDesc, $category)=explode(" ",chop($sor));
+ !!!!!!!! createGroup($groupCn, $groupDesc, $category, $toPolicy);
+ }
+ fclose($uidfp);
+*/
+ } else {
+
+ $groupCn = readVariable($_POST['groupCn'],'html');
+ $groupDesc = readVariable($_POST['groupDesc'],'html');
+ $category = readVariable($_POST['category'],'enum',null,$AUTH[_POLICY]['categories']);
+ $container = readVariable($_POST['container'],'enum','',$AUTH[$toPolicy][$AUTH[$toPolicy]['backend'].'Containers']);
+ $policyGroupAttrs = array();
+ if (is_array($AUTH[$toPolicy]['groupAttrs'])) foreach ($AUTH[$toPolicy]['groupAttrs'] as $attr) {
+ if (isset($_POST[$attr]) and $_POST[$attr] != '') $policyGroupAttrs[$attr] = readVariable($_POST[$attr], 'string'); // ???
+ }
+
+ if ($groupCn == '' || $groupDesc == '' || $category == '') {
+ // Csak policy váltás
+ //$_SESSION['alert'][] = 'message:empty_field'.":$groupCn:$groupDesc:$category";
+ } else {
+ if (createGroup($groupCn, $groupDesc, $toPolicy, array('container'=> $container, 'policyAttrs' => $policyGroupAttrs))) {
+ header('Location: '.location("index.php?page=session&f=groupInfo&groupCn=$groupCn&toPolicy=$toPolicy"));
+ }
+ }
+ }
+
+
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/session/createGroup.php b/mayor-orig/www/policy/private/session/createGroup.php
new file mode 100644
index 00000000..a914ceaf
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/createGroup.php
@@ -0,0 +1,12 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $toPolicy;
+
+ putCreateGroupForm($toPolicy);
+
+?>
diff --git a/mayor-orig/www/policy/private/session/download-pre.php b/mayor-orig/www/policy/private/session/download-pre.php
new file mode 100644
index 00000000..6b396143
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/download-pre.php
@@ -0,0 +1,66 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+ if (!((defined('_POLICY') && _POLICY=='public')
+ || (defined('__TITKARSAG') && __TITKARSAG===true)
+ || (defined('__TANAR') && __TANAR===true)
+ || (defined('__NAPLOADMIN') && __NAPLOADMIN===true)
+ || (defined('__DIAK') && __DIAK===true)
+ )) {
+ return false;
+ }
+
+ // $file - csak a file neve, útvonal nem lehet benne
+ if (isset($_POST['file']) && $_POST['file'] != '') $file = basename($_POST['file']);
+ elseif (isset($_GET['file']) && $_GET['file'] != '') $file = basename($_GET['file']);
+
+ if (!isset($file)) $_SESSION['alert'][] = 'page:empty_fields:file';
+ else {
+ // $dir - betű, szám, -, _, és / lehet benne (elején csak betű vagy szám)
+ $dir = readVariable($_POST['dir'], 'path', readVariable($_GET['dir'], 'path'));
+
+ // Az útvonal beállítása
+ $path = _DOWNLOADDIR.'/'._POLICY;
+ if (isset($dir)) $path .= '/'.$dir;
+ $path .= '/'.$file;
+
+ // Jogosultságok ellenőzése dir alapján
+ if (__DIAK===true) {
+ if (strstr($dir,'naplo/face/')===false) return false;
+ }
+ // Titkarsag, Tanar, Naploadmin letoltheti, amit szeretne
+
+ // Létezik-e a file
+ if (!file_exists($path)) $_SESSION['alert'][] = 'page:file_not_found:'.substr($path, strlen(_DOWNLOADDIR.'/'._POLICY.'/')).':'.$path;
+ else {
+
+ $ADAT['path'] = $path;
+ $ADAT['dir'] = $dir;
+ $ADAT['file'] = $file;
+ $ADAT['ext'] = strtolower(substr(strrchr($file,"."),1));
+ $ADAT['size'] = filesize($path);
+ $ADAT['mime'] = readVariable($_POST['mimetype'], 'enum', readVariable($_GET['mimetype'], 'enum', null, $allowedMimeTypes), $allowedMimeTypes);
+
+ // MiME típus megállapítása
+ if (!isset($ADAT['mime'])) {
+ if ($allowedExtensions[$ADAT['ext']] != '') $ADAT['mime'] = $allowedExtensions[$ADAT['ext']];
+ else {
+ if (function_exists('mime_content_type')) {
+ $ADAT['mime'] = mime_content_type($ADAT['path']);
+ } elseif (function_exists('finfo_file')) {
+ $finfo = finfo_open(FILEINFO_MIME);
+ $ADAT['mime'] = finfo_file($finfo, $ADAT['path']);
+ finfo_close($finfo);
+ }
+ if ($ADAT['mime'] == '') $ADAT['mime'] = "application/force-download";
+ }
+ }
+ if (in_array($ADAT['mime'],array('image/gif','image/png','image/jpeg','image/jpeg'))) $ADAT['pure']=true;
+ // letöltés
+ if (isset($_GET['download'])) passFile($ADAT);
+
+ }
+ }
+
+
+?>
diff --git a/mayor-orig/www/policy/private/session/download.php b/mayor-orig/www/policy/private/session/download.php
new file mode 100644
index 00000000..12d907a9
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/download.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ if (is_array($ADAT)) putDownloadForm($ADAT);
+
+?>
diff --git a/mayor-orig/www/policy/private/session/facebookConnect-pre.php b/mayor-orig/www/policy/private/session/facebookConnect-pre.php
new file mode 100644
index 00000000..b0988ae5
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/facebookConnect-pre.php
@@ -0,0 +1,91 @@
+<?php
+
+ if (__FBCONNECT_ENABLED !== true ) return false;
+
+ if (version_compare(PHP_VERSION, '5.4.0', '<')) {
+ return false;
+ } else {
+ /* facebook login start */
+ require_once ('include/share/facebook/autoload.php');
+ $fb = new Facebook\Facebook(array(
+ 'app_id' => __FB_APP_ID,
+ 'app_secret' => __FB_APP_SECRET,
+ 'cookie' => true,
+ 'status' => true,
+ 'default_graph_version' => 'v2.5',
+ ));
+ $oAuth2Client = $fb->getOAuth2Client();
+
+ $helper = $fb->getJavaScriptHelper();
+ try {
+ $accessToken = $helper->getAccessToken();
+ // convert
+ if ($accessToken !='' && !$accessToken->isLongLived()) {
+ try {
+ $accessToken = $oAuth2Client->getLongLivedAccessToken($accessToken);
+ } catch (Facebook\Exceptions\FacebookSDKException $e) {
+ $_SESSION['alert'][] = "info::Error getting long-lived access token: " . $helper->getMessage() . "";
+ }
+ }
+ } catch(Facebook\Exceptions\FacebookResponseException $e) {
+ // When Graph returns an error
+ $_SESSION['alert'][] = 'info::Graph returned an error: ' . $e->getMessage();
+ } catch(Facebook\Exceptions\FacebookSDKException $e) {
+ // When validation fails or other local issues
+ $_SESSION['alert'][] = 'info::Facebook SDK returned an error: ' . $e->getMessage();
+ }
+ if (isset($accessToken)) {
+ $_SESSION['facebook_access_token'] = (string) $accessToken;
+ $_SESSION['facebook_access_token_object'] = $accessToken;
+ $response = $fb->get('/me?fields=id,name,email',$accessToken);
+ $userNode = $response->getGraphUser();
+ $ADAT['fbUserId'] = $userNode->getField('id');
+ $ADAT['fbUserCn'] = $userNode->getField('name');
+ $ADAT['fbUserEmail'] = $userNode->getField('email');
+ }
+ }
+ if ($action=='revokeFbAuth') {
+ fbConnectRevoke($ADAT['fbUserId']);
+ } elseif ($action=='grantFbAuth') {
+ fbConnectGrant($ADAT);
+ }
+
+ $ADAT['fbUserIdStatusz'] = checkFbConnectAssoc($ADAT);
+
+ function checkFbConnectAssoc($ADAT) {
+ if ($ADAT['fbUserId']=='') return 0;
+
+ $q = "SELECT count(*) AS db FROM facebookConnect where userAccount='%s' AND policy='%s' AND fbUserId='%s'";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'fbUserId'=>$ADAT['fbUserId']);
+ $db = db_query($q,array('fv'=>'facebookConnectCheck','modul'=>'login','result'=>'value','values'=>$v));
+ if ($db==1) return 1; // 'OK';
+
+ $q = "SELECT count(*) AS db FROM facebookConnect where userAccount='%s' AND policy='%s' AND fbUserId!='%s'";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'fbUserId'=>$ADAT['fbUserId']);
+ $db = db_query($q,array('fv'=>'facebookConnectCheck','modul'=>'login','result'=>'value','values'=>$v));
+ if ($db==1) return 2; // 'masik fbUserId van megadva';
+
+ $q = "SELECT count(*) AS db FROM facebookConnect where userAccount!='%s' AND policy='%s' AND fbUserId='%s'";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'fbUserId'=>$ADAT['fbUserId']);
+ $db = db_query($q,array('fv'=>'facebookConnectCheck','modul'=>'login','result'=>'value','values'=>$v));
+ if ($db==1) return 3; // 'masik userAccount van hozzárendelve ehhez a fb azonosítóhoz';
+
+ return false;
+ }
+
+ function fbConnectRevoke($fbUserId) {
+ if ($fbUserId=='') return 0;
+
+ $q = "DELETE FROM facebookConnect where userAccount='%s' AND policy='%s' AND fbUserId='%s'";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'fbUserId'=>$fbUserId);
+ return db_query($q,array('fv'=>'facebookConnectCheck','modul'=>'login','values'=>$v));
+ }
+ function fbConnectGrant($ADAT) {
+ if ($ADAT['fbUserId']=='') return 0;
+
+ $q = "INSERT IGNORE INTO facebookConnect (userAccount,policy,fbUserId,fbUserCn,fbUserEmail,studyId) VALUES ('%s','%s','%s','%s','%s','%s')";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'fbUserId'=>$ADAT['fbUserId'],'fbUserCn'=>_USERCN.' ('.$ADAT['fbUserCn'].')','fbUserEmail'=>$ADAT['fbUserEmail'],'studyId'=>_STUDYID);
+ return db_query($q,array('fv'=>'facebookConnectCheck','modul'=>'login','result'=>'insert','values'=>$v));
+ }
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/session/facebookConnect.php b/mayor-orig/www/policy/private/session/facebookConnect.php
new file mode 100644
index 00000000..e125c680
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/facebookConnect.php
@@ -0,0 +1,7 @@
+<?php
+
+ global $ADAT;
+
+ putFacebookConnectStatusz($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/session/googleapi-pre.php b/mayor-orig/www/policy/private/session/googleapi-pre.php
new file mode 100644
index 00000000..49438dcc
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/googleapi-pre.php
@@ -0,0 +1,100 @@
+<?php
+
+ if (__GOOGLEAPI_ENABLED !== true ) return false;
+
+ if (version_compare(PHP_VERSION, '5.4.0', '<')) {
+ return false;
+ } else {
+ require_once ('include/share/googleapi/autoload.php');
+
+ if ($action=='googleapiRevoke') {
+ googleapiRevoke();
+ unset($_SESSION['googleapi_id_token']);
+ unset($_SESSION['googleapi_object']);
+ } elseif ($action=='googleapiGrant') {
+ // itt nem áll rendelkezésre adat! googleapiGrant($ADAT);
+ // a get id_token résznél kötjük össze a usert és irányítjuk tovább
+ }
+ //$ADAT['googleapiStatus'] = googleapiCheckAssoc($ADAT);
+ if ($_SESSION['googleapi_id_token']!='') {
+ // van azonosított user
+ // a sessionben rendelkezésre is áll az objektum (googleapi_object),
+ // de itt most lekérdezzük a google szervertől újra!
+ $redirect_uri = _BASE_URL.'/index.php';
+ $client = new Google_Client();
+ $client->setClientId(__GOOGLEAPI_CLIENT_ID);
+ $client->setClientSecret(__GOOGLEAPI_CLIENT_SECRET);
+ $client->setScopes('email');
+ // $client->setAccessToken($_SESSION['googleapi_id_token']);
+ try {
+ $ADAT['payload'] = $payload = $client->verifyIdToken($_SESSION['googleapi_id_token']);
+ $ADAT['googleapiStatusz'] = 1;
+ } catch(Exception $e) {
+ $_SESSION['alert'][] = 'info::googleapi SDK hiba: ' . $e->getMessage();
+ $ADAT['googleapiStatusz'] = 2;
+ }
+ } elseif ($_GET['id_token']!='') {
+ $redirect_uri = _BASE_URL.'/index.php';
+ $client = new Google_Client();
+ //$client->setAuthConfig($oauth_credentials);
+ $client->setClientId(__GOOGLEAPI_CLIENT_ID);
+ $client->setClientSecret(__GOOGLEAPI_CLIENT_SECRET);
+// $client->setRedirectUri($redirect_uri);
+ $client->setScopes('email');
+ try {
+ $payload = $client->verifyIdToken($_GET['id_token']);
+ } catch(Exception $e) {
+ $_SESSION['alert'][] = 'info::googleapi SDK hiba: ' . $e->getMessage();
+ }
+ if (isset($payload['sub'])) { // subject
+ $_SESSION['google_access_token'] = (string) $payload;
+ $_SESSION['google_access_token_object'] = $payload;
+ // mayor auth start
+ $accountInformation=array();
+ $toPolicy = 'public';
+ $ADAT['googleSub'] = $payload['sub'];
+// $ADAT['fbUserId'] = $userNode->getField('id');
+ $ADAT['googleUserCn'] = $payload['name'];
+ $ADAT['googleUserEmail'] = $payload['email'];
+ googleapiGrant($ADAT);
+ /* mayor auth stop */
+ } else {
+ $_SESSION['alert'][] = 'info:nem érvényes accessToken';
+ }
+ }
+
+ }
+ function googleapiCheckAssoc($ADAT) {
+ if ($ADAT['googleSub']=='') return 0;
+
+ $q = "SELECT count(*) AS db FROM googleConnect where userAccount='%s' AND policy='%s' AND googleSub='%s'";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'fbUserId'=>$ADAT['googleSub']);
+ $db = db_query($q,array('fv'=>'facebookConnectCheck','modul'=>'login','result'=>'value','values'=>$v));
+ if ($db==1) return 1; // 'OK';
+
+ $q = "SELECT count(*) AS db FROM googleConnect where userAccount='%s' AND policy='%s' AND googleSub!='%s'";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'fbUserId'=>$ADAT['googleSub']);
+ $db = db_query($q,array('fv'=>'facebookConnectCheck','modul'=>'login','result'=>'value','values'=>$v));
+ if ($db==1) return 2; // 'masik googleSub van megadva';
+
+ $q = "SELECT count(*) AS db FROM googleConnect where userAccount!='%s' AND policy='%s' AND googleSub='%s'";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'googleSub'=>$ADAT['googleSub']);
+ $db = db_query($q,array('fv'=>'facebookConnectCheck','modul'=>'login','result'=>'value','values'=>$v));
+ if ($db==1) return 3; // 'masik userAccount van hozzárendelve ehhez a googleSub azonosítóhoz';
+
+ return false;
+ }
+
+ function googleapiRevoke() {
+ $q = "DELETE FROM googleConnect where userAccount='%s' AND policy='%s'";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY);
+ return db_query($q,array('fv'=>'googleapiRevoke','modul'=>'login','values'=>$v));
+ }
+ function googleapiGrant($ADAT) {
+ if ($ADAT['googleSub']=='') return 0;
+ $q = "INSERT IGNORE INTO googleConnect (userAccount,policy,googleSub,googleUserCn,googleUserEmail,studyId) VALUES ('%s','%s','%s','%s','%s','%s')";
+ $v = array('userAccount'=>_USERACCOUNT,'policy'=>_POLICY,'googleSub'=>$ADAT['googleSub'],_USERACCOUNT.' ('.$ADAT['googleUserCn'].')',$ADAT['googleUserEmail'],_STUDYID);
+ return db_query($q,array('debug'=>true,'fv'=>'googleapiGrant','modul'=>'login','result'=>'insert','values'=>$v));
+ }
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/session/googleapi.php b/mayor-orig/www/policy/private/session/googleapi.php
new file mode 100644
index 00000000..fe079bed
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/googleapi.php
@@ -0,0 +1,28 @@
+<?php
+
+ global $ADAT;
+
+// putFacebookConnectStatusz($ADAT);
+
+// echo '<div class="g-signin2" data-onsuccess="onSignIn"></div>';
+
+// echo '<h1>Tesztüzem</h1>';
+
+// formBegin();
+// echo '<input type="text" name="action" value="googleapiCheck" >';
+// echo '<button type="button" id="googleapiCheckBtn" class="api"><span class="icon-googleplus"></span> Ellenőrzés</button>';
+// formEnd();
+
+// formBegin();
+// echo '<input type="hidden" name="action" value="googleGrant" >';
+// echo '<button type="button" id="googleLoginBtn" class="api"><span class="icon-googleplus"></span> Összeköt</button>';
+// formEnd();
+
+// formBegin();
+// echo '<input type="text" name="action" value="googleRevoke" >';
+// echo '<button type="submit" class="api"><span class="icon-googleplus"></span> Visszavon</button>';
+// formEnd();
+
+ putGoogleapiStatusz($ADAT);
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/session/groupInfo-pre.php b/mayor-orig/www/policy/private/session/groupInfo-pre.php
new file mode 100644
index 00000000..97864ffa
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/groupInfo-pre.php
@@ -0,0 +1,43 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+
+ $toPolicy = readVariable($_POST['toPolicy'], 'enum',
+ readVariable($_GET['toPolicy'], 'enum', _POLICY, $POLICIES),
+ $POLICIES
+ );
+
+ $groupCn = readVariable($_GET['groupCn'],'regreplace',null,array("[^a-zA-Z0-9\ \.\,_:;űáéúőóüöíŰÁÉÚŐÓÜÖÍ\-]"));
+
+// egyelőre csak private-ból lehet valaki admin...
+// if (memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup'])) define('_ACCESS_AS', _ADMIN_ACCESS);
+
+ if (
+ _POLICY == 'private' &&
+ (
+ memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup']) ||
+ (
+ memberOf(_USERACCOUNT,'diakadmin') &&
+ in_array('diak',$userCategories)
+ )
+ )
+ ) define('_ACCESS_AS', _ADMIN_ACCESS);
+ else define('_ACCESS_AS', _OTHER_ACCESS);
+
+ list($backendAttrs,$backendAttrDef) = getBackendAttrs('Group', $toPolicy);
+
+ if ($action == 'changeSettings') {
+
+ changeGroupInfo($groupCn, $toPolicy);
+
+ }
+ $groupInfo = getGroupInfo($groupCn, $toPolicy); // keretrendszer attribútumai
+ // backend attribútumai
+
+ if ($groupInfo===false) $_SESSION['alert'][] = 'page::';
+
+?>
diff --git a/mayor-orig/www/policy/private/session/groupInfo.php b/mayor-orig/www/policy/private/session/groupInfo.php
new file mode 100644
index 00000000..6dda377c
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/groupInfo.php
@@ -0,0 +1,12 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $groupCn, $groupInfo, $backendAttrDef, $toPolicy;
+
+ putGroupInfoForm($groupCn, $groupInfo, $backendAttrDef, $toPolicy);
+
+?>
diff --git a/mayor-orig/www/policy/private/session/search/searchAccount-pre.php b/mayor-orig/www/policy/private/session/search/searchAccount-pre.php
new file mode 100644
index 00000000..2108f631
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/search/searchAccount-pre.php
@@ -0,0 +1,28 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ $toPolicy = readVariable($_POST['toPolicy'], 'enum', _POLICY, $POLICIES);
+
+ define('__ADMIN', memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup']));
+ define('__DIAKADMIN', memberOf(_USERACCOUNT, 'diakadmin'));
+
+ // valójában így sem jó, mert a lekérdezett backend-től kellene függővé teni a keresés mezőket...
+ if ($AUTH[_POLICY]['backend'] == 'ad') $searchAttrList = array('userCn', 'userAccount', 'uidNumber', 'studyId');
+ else $searchAttrList = array('userCn', 'userAccount', 'studyId');
+
+ if ($action == 'searchAccount') {
+ $attr = readVariable($_POST['attr'], 'enum', 'userCn', $searchAttrList);
+ $pattern = readVariable($_POST['pattern'], 'string');
+ $searchResult = searchAccount($attr, $pattern, $searchAttrList, $toPolicy);
+ } elseif ($action == 'deleteAccount' and __ADMIN === true) {
+ $userAccount = readVariable($_POST['userAccount'], 'string');
+ deleteAccount($userAccount, $toPolicy);
+ } else {
+ echo $action;
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/session/search/searchAccount.php b/mayor-orig/www/policy/private/session/search/searchAccount.php
new file mode 100644
index 00000000..8cfe1d75
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/search/searchAccount.php
@@ -0,0 +1,16 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $attr, $pattern, $searchResult, $searchAttrList, $toPolicy;
+
+ putSearchAccountForm($attr, $pattern, $searchAttrList, $toPolicy);
+
+ if (is_array($searchResult)) {
+ putSearchResultBox($searchResult, $toPolicy);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/session/search/searchGroup-pre.php b/mayor-orig/www/policy/private/session/search/searchGroup-pre.php
new file mode 100644
index 00000000..94deeba2
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/search/searchGroup-pre.php
@@ -0,0 +1,25 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ $toPolicy = readVariable($_POST['toPolicy'], 'enum', _POLICY, $POLICIES);
+
+ define('__ADMIN', memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup']));
+ define('__DIAKADMIN', memberOf(_USERACCOUNT, 'diakadmin'));
+
+ $searchAttrs = array('groupCn', 'groupDesc');
+ if ($action == 'searchGroup') {
+ $attr = readVariable($_POST['attr'], 'enum', 'groupCn', $searchAttrs);
+ $pattern = readVariable($_POST['pattern'],'html');
+ $searchResult = searchGroup($attr, $pattern, $searchAttrs, $toPolicy);
+ } elseif (__ADMIN ===true && $action == 'deleteGroup') {
+ $groupCn = readVariable($_POST['groupCn'], 'html'); // nem biztos hogy id - bizos nem id, hanem a csoport neve
+ deleteGroup($groupCn, $toPolicy);
+ } else {
+ echo $action;
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/session/search/searchGroup.php b/mayor-orig/www/policy/private/session/search/searchGroup.php
new file mode 100644
index 00000000..c36d0ef6
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/search/searchGroup.php
@@ -0,0 +1,16 @@
+<?php
+/*
+ Module: base/session
+*/
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $attr, $pattern, $searchAttrs, $searchResult, $toPolicy;
+
+ putSearchGroupForm($attr, $pattern, $searchAttrs, $toPolicy);
+
+ if (is_array($searchResult)) {
+ putSearchResultBox($searchResult, $toPolicy);
+ }
+
+?>
diff --git a/mayor-orig/www/policy/private/session/session-pre.php b/mayor-orig/www/policy/private/session/session-pre.php
new file mode 100644
index 00000000..d1c65349
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/session-pre.php
@@ -0,0 +1,5 @@
+<?php
+
+ header('Location: '.location('index.php?page=session&sub=search&f=searchAccount'));
+
+?> \ No newline at end of file
diff --git a/mayor-orig/www/policy/private/session/session.php b/mayor-orig/www/policy/private/session/session.php
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/session.php
diff --git a/mayor-orig/www/policy/private/session/sessionAdmin-pre.php b/mayor-orig/www/policy/private/session/sessionAdmin-pre.php
new file mode 100644
index 00000000..08b55781
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/sessionAdmin-pre.php
@@ -0,0 +1,24 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ if (_POLICY != 'private' || !memberOf(_USERACCOUNT, $AUTH[_POLICY]['adminGroup'])) {
+ $_SESSION['alert'][] = 'page:insufficient_access';
+ } else {
+
+ if ($action == 'deleteSession') {
+
+ $policy = readVariable($_POST['delPolicy'], 'enum', null, $POLICIES);
+ $userAccount = readVariable($_POST['delSessionID'], 'string', null);
+ if (isset($policy) && isset($userAccount)) {
+ deleteSession($userAccount, $policy);
+ } else { $_SESSION['alert'][] = 'message:wrong_data:userAccount,policy:'.$policy.':'.$userAccount; }
+
+ }
+ $ADAT['session'] = getSessions();
+//echo '<pre>'; var_dump($ADAT); echo '</pre>';
+
+ }
+
+
+?>
diff --git a/mayor-orig/www/policy/private/session/sessionAdmin.php b/mayor-orig/www/policy/private/session/sessionAdmin.php
new file mode 100644
index 00000000..d1398e4f
--- /dev/null
+++ b/mayor-orig/www/policy/private/session/sessionAdmin.php
@@ -0,0 +1,9 @@
+<?php
+
+ if (_RIGHTS_OK !== true) die();
+
+ global $ADAT;
+
+ putSessionList($ADAT);
+
+?>