diff options
Diffstat (limited to 'mayor-orig/www/policy/private/naplo/admin')
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.'; + } +} +?> |