aboutsummaryrefslogtreecommitdiffstats
path: root/mayor-orig/www/policy/private/naplo/admin
diff options
context:
space:
mode:
Diffstat (limited to 'mayor-orig/www/policy/private/naplo/admin')
-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
26 files changed, 1087 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.';
+ }
+}
+?>