diff options
Diffstat (limited to 'mayor-orig/mayor-naplo/www')
39 files changed, 942 insertions, 327 deletions
diff --git a/mayor-orig/mayor-naplo/www/include/menu/private/hu_HU/module-naplo.php b/mayor-orig/mayor-naplo/www/include/menu/private/hu_HU/module-naplo.php index 488d5ec1..569953b3 100644 --- a/mayor-orig/mayor-naplo/www/include/menu/private/hu_HU/module-naplo.php +++ b/mayor-orig/mayor-naplo/www/include/menu/private/hu_HU/module-naplo.php @@ -409,7 +409,7 @@ $MENU['modules']['naplo']['stat'] = array(array('txt' => 'Látszám statisztika', 'url' => 'index.php?page=naplo&sub=stat&f=letszam')); $MENU['modules']['naplo']['ertekeles'] = array(array('txt' => 'Értékelés', 'url' => 'index.php?page=naplo&sub=ertekeles', 'rejtett' => true)); - $MENU['modules']['naplo']['admin'] = array(array('txt' => 'Admin', 'url' => 'index.php?page=naplo&sub=admin')); + $MENU['modules']['naplo']['admin'] = array(array('txt' => 'Admin', 'url' => 'index.php?page=naplo&sub=admin&f=tanevek')); $MENU['modules']['naplo']['koszi'] = array(array('txt' => 'Köszi', 'url' => 'index.php?page=naplo&sub=koszi&f=kosziAdmin')); $MENU['modules']['naplo']['hibabejelento'] = array(array('txt' => 'Kérelmek', 'url' => 'index.php?page=naplo&sub=hibabejelento&f=admin', 'rejtett' => true)); $MENU['modules']['naplo']['hirnok'] = array(array('txt' => 'Hírnök', 'url' => 'index.php?page=naplo&sub=hirnok&f=hirnok')); @@ -561,14 +561,15 @@ 'osszesites' => array(array('txt' => 'Összesítés')), ); $MENU['modules']['naplo']['sub']['admin'] = array( - 'intezmenyek' => array(array('txt' => 'Intézmények')), - 'tanevek' => array(array('txt' => 'Tanévek megnyitása, lezárása')), - 'szemeszterek' => array(array('txt' => 'Szemeszterek')), + 'intezmenyek' => array(array('txt' => 'Intézmények','icon'=>'icon-home')), + 'tanevek' => array(array('txt' => 'Tanévek megnyitása, lezárása','icon'=>'icon-wrench')), + 'szemeszterek' => array(array('txt' => 'Szemeszterek','icon'=>'icon-pencil')), 'fillhaladasi' => array(array('txt' => 'Haladási napló feltöltése')), - 'import' => array(array('txt' => 'Import')), - 'azonositok' => array(array('txt' => 'Azonosító generálás')), - 'szuloiAzonositok' => array(array('txt' => 'Szülői azonosítók generálása')), + 'import' => array(array('txt' => 'Közvetlen import','icon'=>'icon-ban-circle')), + 'azonositok' => array(array('txt' => 'Azonosító generálás','icon'=>'icon-address-book')), + 'szuloiAzonositok' => array(array('txt' => 'Szülői azonosítók generálása','icon'=>'icon-adult')), 'rpcPrivilege' => array(array('txt' => 'RPC jogosultságok')), + 'kréta magic' => array(array('txt' => 'Kréta 2 MaYoR', 'icon'=>'icon-asterisk', 'url'=>'index.php?page=naplo&sub=import&f=tantargyFelosztas')), ); $MENU['modules']['naplo']['sub']['hirnok'] = array( 'hirnok' =>array(array('txt' => 'Hírnök', 'icon'=>'icon-bullhorn')), diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankor.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankor.php index 737b8d35..ec36ad73 100644 --- a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankor.php +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankor.php @@ -4,24 +4,30 @@ function ujTankor($ADAT) { - $return = false; $lr = db_connect('naplo_intezmeny', array('fv' => 'ujTankor')); if (!$lr) return false; /* pre-check variables */ - //... + if ($ADAT['tipus']!='') { + $ADAT['tankorNevExtra'] = $ADAT['tipus']; + } elseif (isset($ADAT['tankorId']) && $ADAT['tankorId']>0) { + $q = "SELECT IF(tankorJel IS NOT NULL AND INSTR(tankorNev,tankorJel)!=0, trim(substring(trim(substring_index(tankorNev,targyNev,-1)),length(tankorJel)+1)), +trim(substring_index(tankorNev,targyNev,-1))) AS tankorNevExtra FROM tankorSzemeszter LEFT JOIN tankor USING (tankorId) LEFT JOIN targy USING (targyId) +LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u AND tanev=%u ORDER BY tanev,szemeszter DESC LIMIT 1"; + $ADAT['tankorNevExtra'] = db_query($q, array('fv' => 'genTankorNev(ujTankor)', 'modul' => 'naplo_intezmeny', 'result'=>'value', 'values' => array($ADAT['tankorId'],__TANEV), 'debug'=>false), $lr); + } /* pre-check */ if (isset($ADAT['tankorId']) && $ADAT['tankorId']!='') { $return = $tankorId = $ADAT['tankorId']; $_tankorCn = $ADAT['tankorCn']; - $q = "UPDATE tankor SET felveheto=%u, min=%u, max=%u, kovetelmeny='%s', tankorCn='%s' WHERE tankorId=%u"; - $v = array($ADAT['felveheto'], $ADAT['min'], $ADAT['max'], $ADAT['kovetelmeny'],$_tankorCn,$tankorId); + $q = "UPDATE tankor SET felveheto=%u, min=%u, max=%u, kovetelmeny='%s', tankorCn='%s', tankorNevExtra='%s' WHERE tankorId=%u"; + $v = array($ADAT['felveheto'], $ADAT['min'], $ADAT['max'], $ADAT['kovetelmeny'],$_tankorCn, $ADAT['tankorNevExtra'], $tankorId); db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'values' => $v)); $tanarFelvesz = false; } else { - $q = "INSERT INTO tankor (targyId,felveheto,min,max,kovetelmeny) VALUES (%u, '%s', %u, %u,'%s')"; - $v = array($ADAT['targyId'], $ADAT['felveheto'], $ADAT['min'], $ADAT['max'], $ADAT['kovetelmeny']); + $q = "INSERT INTO tankor (targyId,felveheto,min,max,kovetelmeny,tankorNevExtra) VALUES (%u, '%s', %u, %u,'%s','%s')"; + $v = array($ADAT['targyId'], $ADAT['felveheto'], $ADAT['min'], $ADAT['max'], $ADAT['kovetelmeny'], $ADAT['tankorNevExtra']); $return = $tankorId = db_query($q, array('fv' => 'ujTankor', 'modul' => 'naplo_intezmeny', 'result' => 'insert', 'values' => $v), $lr); $tanarFelvesz = true; } @@ -120,7 +126,7 @@ $nev = $K[0].'-'.$K[count($K)-1].'.'; } else { // ekkorra már elballagott minden osztaly... $nev = false; - $_SESSION['alert'][] = '::Minden osztály elballagott'; + $_SESSION['alert'][] = '::Minden osztály elballagott:'.serialize($OSZTALYOK).serialize($TMP); } } else { $nev = false; // adott szemeszterbe nem jár osztály @@ -133,8 +139,8 @@ $q = "SELECT tankorJel FROM tankor LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u"; $tankorJel = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'value', 'values' => array($tankorId), 'debug'=>false), $lr); - if ($tankorJel!='') $nev .= $tankorJel.' '.$ADAT['tipus']; - else $nev .= $ADAT['tipus']; + if ($tankorJel!='') $nev .= $tankorJel.' '.$ADAT['tankorNevExtra']; + else $nev .= $ADAT['tankorNevExtra']; //tankorNevExtra = tipus $q = "REPLACE INTO tankorSzemeszter (tankorId,tanev,szemeszter,oraszam,tankorNev) VALUES (%u, %u, %u, %f, '%s')"; if ($ADAT['tanev'] < __TANEV || $ADAT['tankorNevMegorzes']===true) { // a neve már ne változzon, és az óraszáma? $q1 = "SELECT tankorNev FROM tankorSzemeszter WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorSzemeszter.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorSzemeszter.php index fcd411c4..982d905b 100644 --- a/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorSzemeszter.php +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/intezmeny/tankorSzemeszter.php @@ -92,7 +92,7 @@ } } else { // insert - $tankorNev = _createName($M, array($M['tanev'].'/'.$M['szemeszter']), $tankorNevek[$M['tankorId']]); + $tankorNev = _createName($M, array($M['tanev'].'/'.$M['szemeszter']), $tankorNevek[$M['tankorId']]); // todo setTankorNev() függvénnyel inkább, tankor.tankorNevExtra if ($tankorNev != '') { array_push($v, $M['tankorId'], $M['tanev'], $M['szemeszter'], $M['oraszam'], $tankorNev); $Values[] = "(%u, %u, %u, %f, '%s')"; diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankor.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankor.php index 16b1bbbc..49e24161 100644 --- a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankor.php +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankor.php @@ -37,7 +37,7 @@ function getTankorAdatByIds($tankorIds, $SET = array('tanev' => __TANEV, 'dt' => '')) { - if (!is_array($tankorIds)) return false; + if (!is_array($tankorIds)|| count($tankorIds)==0) return false; if (in_array('',$tankorIds)==true) { // ez előállhat akkor is, ha valamiért az órarendben NULL tankorId van (speckó óra!) // $_SESSION['alert'][] = 'message:invalid_array_value_exception:(getTankorAdatByIds:tankorIds:contains empty string)'; @@ -56,8 +56,7 @@ $tanev = __TANEV; $felev = 1; } - $q = "SELECT * FROM tankor - LEFT JOIN tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) + $q = "SELECT * FROM tankor LEFT JOIN tankorSzemeszter ON (tankor.tankorId=tankorSzemeszter.tankorId) WHERE tankor.tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).") AND tanev=%u AND szemeszter=%u"; array_push($tankorIds, $tanev, $felev); @@ -985,9 +984,10 @@ // is_resource mysqli esetén nem jó (object) if (!$olr) $lr = db_connect('naplo_intezmeny'); else $lr = $olr; - // A tankör csoportjának lekérdezése - $q = "SELECT tankorId FROM ".__TANEVDBNEV.".tankorCsoport - WHERE csoportId=(SELECT csoportId FROM ".__TANEVDBNEV.".tankorCsoport + // A tankör csoportjának lekérdezése (egy tankor több csoportban is benne lehet) + // Kérdés: akkor nem ugyanaz a két csoport? :) + $q = "SELECT DISTINCT tankorId FROM ".__TANEVDBNEV.".tankorCsoport + WHERE csoportId IN (SELECT csoportId FROM ".__TANEVDBNEV.".tankorCsoport WHERE tankorId=%u)"; $ret = db_query($q, array( 'fv' => 'getTankorCsoportTankoreiByTankorId', 'modul' => 'naplo_intezmeny', 'result' => 'idonly', 'values' => array($tankorId) @@ -1001,6 +1001,39 @@ } + function getTankorCsoportTankoreiByCsoportId($csoportId, $olr='') { + + if (!$olr) $lr = db_connect('naplo'); else $lr = $olr; + + $q = "SELECT tankorId FROM ".__TANEVDBNEV.".tankorCsoport WHERE csoportId =%u"; + $ret = db_query($q, array( + 'fv' => 'getTankorCsoportTankoreiByCsoportId', 'modul' => 'naplo', 'result' => 'idonly', 'values' => array($csoportId) + ), $lr); + + for ($i=0; $i<count($ret); $i++) { + $ret[$i] = array('tankorAdat'=>getTankorAdat($ret[$i]), 'tankorId' => $ret[$i]); + } + if (!$olr) db_close($lr); + + return $ret; + + } + + function getTankorCsoportByTankorId($tankorId) { + + if (!$olr) $lr = db_connect('naplo'); else $lr = $olr; + + $q = "SELECT csoportId,csoportNev FROM ".__TANEVDBNEV.".tankorCsoport LEFT JOIN ".__TANEVDBNEV.".csoport USING (csoportId) WHERE tankorId =%u"; + $ret = db_query($q, array( + 'fv' => 'getTankorCsoportTankoreiByCsoportId', 'modul' => 'naplo', 'result' => 'indexed', 'values' => array($tankorId) + ), $lr); + if (!$olr) db_close($lr); + + return $ret; + + } + + function getTankorLetszam($tankorId,$ADAT=array('refDt'=>'', 'tolDt'=>'', 'igDt'=>''),$olr='') { if ($olr!='') $lr = $olr; else $lr = db_connect('naplo_intezmeny'); diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorDiakModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorDiakModifier.php index cb0ad2f5..39e03969 100644 --- a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorDiakModifier.php +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorDiakModifier.php @@ -8,8 +8,9 @@ /* Általános függvények a tankörbe be és kivételhez */ - function tankorDiakFelvesz($ADAT) { + function tankorDiakFelvesz($ADAT, $olr='') { + $lr = ($olr != '') ? $olr : db_connect('naplo_intezmeny'); $tankorId = $ADAT['tankorId']; $diakId = $ADAT['diakId']; @@ -39,7 +40,7 @@ $q = "SELECT tankorId FROM tankorDiakFelmentes WHERE tankorId IN (".implode(',',$UTKOZO_TANKORIDS).") AND diakId=%u AND felmentesTipus='óralátogatás alól' AND nap is null AND ora is null AND beDt<='%s' AND (kiDt IS NULL or kiDt >='%s')"; $values = array($diakId, $tolDt, $tolDt); - $FELMENTETTTANKORIDS = db_query($q, array('fv' => 'tankorDiakFelvesz', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $values)); + $FELMENTETTTANKORIDS = db_query($q, array('fv' => 'tankorDiakFelvesz', 'modul' => 'naplo_intezmeny', 'result' => 'indexed', 'values' => $values), $lr); for ($j=0; $j<count($FELMENTETTTANKORIDS); $j++) { $_tankorId = $FELMENTETTTANKORIDS[$j]; } @@ -58,18 +59,22 @@ //--- // Ellenőrizzük a tankörlétszámot és maximumot (csak ref dátumra...) - if (_checkTankorMinMax($tankorId,array('diff'=>1,'refDt'=>$ADAT['tolDt'])) == 'tankor_max_reached') - { - $_SESSION['alert'][] = 'info:tankor_max_reached'; - return false; + if ($ADAT['NO_MIN_CONTROL'] !== true) { + if (_checkTankorMinMax($tankorId,array('diff'=>1,'refDt'=>$ADAT['tolDt'])) == 'tankor_max_reached') + { + $_SESSION['alert'][] = 'info:tankor_max_reached'; + return false; + } } //-- // Main() { - tankorDiakTorol( array('tankorIds'=>$TankorIds, 'diakId'=> $diakId, 'tolDt'=> $tolDt,'igDt'=> $igDt, 'utkozes'=>'nemEllenoriz', 'MIN_CONTROL'=>false) ); + + tankorDiakTorol( array('tankorIds'=>$TankorIds, 'diakId'=> $diakId, 'tolDt'=> $tolDt,'igDt'=> $igDt, 'utkozes'=>'nemEllenoriz', 'MIN_CONTROL'=>false), $lr ); $v = array(); + for ($i = 0; $i < count($TankorIds); $i++) { $_tankorId = $TankorIds[$i]; //$_kovetelmeny = $TankorAdat[$_tankorId]['kovetelmeny']; // vagy nem ez. diák statusatol is függ... @@ -81,9 +86,11 @@ $V[] = "(%u, %u, '%s', NULLIF('%s',''))"; } $q = "INSERT INTO tankorDiak (tankorId,diakId,beDt,kiDt) VALUES ". implode(',',$V); - db_query($q, array('fv' => 'tankorDiakFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v) ); + db_query($q, array('fv' => 'tankorDiakFelvesz', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr ); } + if ($olr=='') db_close($lr); + } function diakTankorMagantanulo($diakId, $tolDt, $igDt = NULL, $utkozes = 'ellenorzes', $tanev = __TANEV) { @@ -193,7 +200,6 @@ tolDt, igDt */ - // esetleges külső tranzakciókhoz! $lr = ($olr != '') ? $olr : db_connect('naplo_intezmeny'); // A törlendő időszakra beírt hiányzás, vagy jegy okozhat ütközést. Ekkor vagy automatikusan töröljük a hibás bejegyzéseket, diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorModifier.php index a344ab7b..7ab319fc 100644 --- a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorModifier.php +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/tankorModifier.php @@ -1,6 +1,7 @@ <?php require_once('include/modules/naplo/share/tankorBlokk.php'); + require_once('include/modules/naplo/share/tankorDiakModifier.php'); function setTankorNevByDiakok($tankorId, $tankorNevExtra = null, $olr = null) { // módosítja a tankorOsztaly hozzárendelést if (!$olr) $lr = db_connect('naplo_intezmeny', array('fv' => 'ujTankor')); @@ -38,6 +39,11 @@ $q = "SELECT IF(tankorJel IS NOT NULL AND INSTR(tankorNev,tankorJel)!=0, trim(substring(trim(substring_index(tankorNev,targyNev,-1)),length(tankorJel)+1)), trim(substring_index(tankorNev,targyNev,-1))) AS tankorNevExtra FROM tankorSzemeszter LEFT JOIN tankor USING (tankorId) LEFT JOIN targy USING (targyId) LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u AND tanev=%u ORDER BY tanev,szemeszter DESC LIMIT 1"; $tankorNevExtra = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'value', 'values' => array($tankorId,__TANEV), 'debug'=>false), $lr); } + if ($tankorNevExtra!='') { + $q = "UPDATE tankor SET tankorNevExtra = '%s' WHERE tankorId=%u"; + $v = array($tankorNevExtra,$tankorId); + db_query($q, array('fv' => 'setTankorNev', 'modul' => 'naplo_intezmeny', 'values' => $v, 'debug'=>false), $lr); + } $q = "SELECT tankorJel FROM tankor LEFT JOIN tankorTipus USING (tankorTipusId) WHERE tankorId=%u"; $tankorJel = db_query($q, array('fv' => 'genTankorNev', 'modul' => 'naplo_intezmeny', 'result'=>'value', 'values' => array($tankorId), 'debug'=>false), $lr); @@ -100,9 +106,12 @@ if ($tankorJel!='') $nev .= $tankorJel.' '.$tankorNevExtra; else $nev .= $tankorNevExtra; if ($_tanev >= __TANEV) { - $q = "UPDATE tankorSzemeszter SET tankorNev = '%s' WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; - $v = array($nev,$tankorId,$_tanev,$_szemeszter); - if ($nev!='') db_query($q, array('fv' => 'setTankorNev', 'modul' => 'naplo_intezmeny', 'values' => $v, 'debug'=>false), $lr); + if ($nev!='') { + $q = "UPDATE tankorSzemeszter SET tankorNev = '%s' WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; + $v = array($nev,$tankorId,$_tanev,$_szemeszter); + db_query($q, array('fv' => 'setTankorNev', 'modul' => 'naplo_intezmeny', 'values' => $v, 'debug'=>false), $lr); + + } } else { // a neve már ne változzon, és az óraszáma? /* $q1 = "SELECT tankorNev FROM tankorSzemeszter WHERE tankorId=%u AND tanev=%u AND szemeszter=%u"; @@ -495,4 +504,50 @@ return $ok; } + function addTankorToTankorCsoport($tankorId,$csoportId) { + + global $_TANEV; + $now = time(); + if ($now >= strtotime($_TANEV['kezdesDt']) && $now <= strtotime($_TANEV['zarasDt'])) { + $refDt = date('Y-m-d'); + } else { + $refDt = $_TANEV['kezdesDt']; + } + + // tankörnévsorok egyeztetése: + $DIAK = getTankorDiakjaiByInterval($tankorId, __TANEV, $refDt, $refDt); + $R = getTankorCsoportTankoreiByCsoportId($csoportId); + for ($i=0; $i<count($R); $i++) { + if ($tankorId != $R[$i]['tankorId']) $TANKOROK[] = $R[$i]['tankorId']; + } + + if(count($DIAK['idk'])==0 && $TANKOROK[0]>0) { + $_DIAK = getTankorDiakjaiByInterval($TANKOROK[0], __TANEV, $refDt, $refDt); + for ($i=0; $i<count($_DIAK['idk']); $i++) { + $_diakId = $_DIAK['idk'][$i]; + $D = $_DIAK['adatok'][$_diakId][0]; + tankorDiakFelvesz( + array('tankorId'=>$tankorId, + 'diakId'=>$_diakId, + 'tolDt'=>$D['beDt'], + 'igDt'=>$D['igDt'], + 'jovahagyva' => 1 + ) + ); + } + } else { + for ($i=0; $i<count($TANKOROK); $i++) { + $_DIAK = getTankorDiakjaiByInterval($TANKOROK[$i], __TANEV, $refDt, $refDt); + if ($DIAK['idk'] != $_DIAK['idk']) { + $_SESSION['alert'][] = 'alert:diaknévsorok nem egyeznek a következő tankörökben:'.$TANKOROK[$i].' '.$tankorId; + return false; + } + } + } + + $q = "INSERT IGNORE INTO tankorCsoport (tankorId,csoportId) VALUES (%u,%u)"; + $v = array($tankorId,$csoportId); + db_query($q, array('fv'=>'addTankorToTankorCsoport','modul'=>'naplo','values'=>$v,'result'=>'insert')); + + } ?> diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorCsoport.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorCsoport.php index f7fe6357..12be86bf 100644 --- a/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorCsoport.php +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/tanev/tankorCsoport.php @@ -6,7 +6,7 @@ $q = "SELECT csoportId,csoportNev,tankorId,getNev(tankorId,'tankor') AS tankorNev FROM csoport LEFT JOIN tankorCsoport USING (csoportId) WHERE csoportId=%u"; $v = array($csoportId); $r = db_query($q, array( - 'fv' => 'tankorCsoport', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'csoportId', 'values' => $v + 'fv' => 'tankorCsoport', 'modul' => 'naplo', 'result' => 'indexed', 'values' => $v )); } else { $q = "SELECT csoportId,csoportNev,tankorId,getNev(tankorId,'tankor') AS tankorNev FROM csoport LEFT JOIN tankorCsoport USING (csoportId)"; @@ -19,11 +19,14 @@ function getTankorCsoportByTankorIds($tankorIds) { + if (is_array($tankorIds) && count($tankorIds)>0) { + $q = "SELECT csoportId,csoportNev,tankorId FROM csoport LEFT JOIN tankorCsoport USING (csoportId) WHERE tankorId IN (".implode(',', array_fill(0, count($tankorIds), '%u')).")"; return db_query($q, array( 'fv' => 'tankorCsoport', 'modul' => 'naplo', 'result' => 'multiassoc', 'keyfield' => 'csoportId', 'values' => $tankorIds )); + } } @@ -165,6 +168,13 @@ db_query($q, array('fv' => 'tankorCsoportTorles', 'modul' => 'naplo', 'values' => $v)); } + function tankorCsoportHozzarendelesTorles($csoportId, $tankorId, $tanev = __TANEV) { + $tanevDb = tanevDbNev(__INTEZMENY, $tanev); + $q = "DELETE FROM `%s`.tankorCsoport WHERE csoportId=%u AND tankorId=%u"; + $v = array($tanevDb, $csoportId, $tankorId); + db_query($q, array('fv' => 'tankorCsoportHozzarendelesTorles', 'modul' => 'naplo', 'values' => $v)); + } + function _setMinMax($csoportId,$lr) { // Tankörcsoport minimum, maximum beállítás - legbővebb halmaz diff --git a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankor.php b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankor.php index aa05d751..9a9b3b4a 100644 --- a/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankor.php +++ b/mayor-orig/mayor-naplo/www/lang/hu_HU/module-naplo/intezmeny/tankor.php @@ -55,4 +55,5 @@ tagjait kiléptetjük, a tankör óráit a következő szemesztertől töröljü define('_TANKORCN','Megjegyzés'); + define('_TANKOROK_CSOPORTBAN', 'Kapcsolódó tankörök'); ?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php index bb34046f..3ccabded 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import-pre.php @@ -4,15 +4,16 @@ if (_RIGHTS_OK !== true) die(); require_once('include/modules/naplo/share/file.php'); -if (!__NAPLOADMIN) { +if (__NAPLOADMIN!==true) { $_SESSION['alert'][] = 'message:insufficient_access'; } else { + $dbtable = readVariable($_POST['dbtable'],'string'); + if (isset($dbtable)) { + $mezo_elvalaszto = ' '; - if (isset($_POST['dbtable'])) { - $dbtable = $_POST['dbtable']; - list($db,$table) = explode(':',$dbtable); - } + list($db,$table) = explode(':',$dbtable); + //IDEIGLENESEN if (isset($_POST['fileName'])) $fileName = fileNameNormal($_POST['fileName']); if (isset($_POST['fileName'])) $fileName = ($_POST['fileName']); $ADATOK = array(); @@ -41,6 +42,8 @@ if (!__NAPLOADMIN) { } // van file } // van $table ($db) + } + } // naploadmin $TOOL['TableSelect'] = array('tipus'=>'cella','paramName' => 'dbtable', 'post'=>array()); diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php index 8edc7d3e..3355d9fd 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/admin/import.php @@ -15,5 +15,6 @@ if (isset($table)) { } else { echo 'Adatfeldolgozás kész.'; } -} else { echo 'nincs table'; } +} + ?> diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php index 3e95969f..8605f4e5 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas-pre.php @@ -1,7 +1,61 @@ <?php - if (_RIGHTS_OK !== true) die(); + if (__PORTAL_CODE!=='vmg') die(); + + $IMPORT_FILES = array( + 'csoportba_jaro_tanulok' => _DATADIR.'/'."csoportba_jaro_tanulok.tsv", + 'osztalyba_jaro_tanulok' => _DATADIR.'/'."osztalyba_jaro_tanulok.tsv", + 'tantargyfelosztas' => _DATADIR.'/'."ttfimport.tsv", + 'orarendiOra' => _DATADIR.'/'."orarendiOra.tsv", + 'helyettesitett_tanorak' => _DATADIR.'/'."helyettesitett_tanorak.tsv", +// 'elmaradt_tanorak' => _DATADIR.'/'."helyettesitett_tanorak.tsv", + ); + +/* + +1. Nyilvántartás, Tanulói Adatok, Csoportok, Exportálás, Csoportba Járó tanulók + + _DATADIR.'/'."csoportba_jaro_tanulok.tsv" + + Csoportba Járó Tanulók: + Csoport neve Név Oktatási azonosító Osztály + 99.9.énekkar-C Allardyce Lilla Rose 71624405564 12.C + 99.9.énekkar-C Andrássy Blanka Éva 71614703894 12.C + 99.9.énekkar-C Árva Janka 72463346174 09.C + +2. Nyilvántartás, Tanulói Adatok, Osztályok, Exportálás, Osztályba járó tanulók + + _DATADIR.'/'."osztalyba_jaro_tanulok.tsv" + + Osztályba Járó Tanulók: + Osztály Név Oktatási azonosító + 07.A Ambrus Dániel 72644951895 + 07.A Apjok Balázs 72719658348 + 07.A Bärnkopf Janka Katalin 72660367200 + +3. Nyilvántartás, Oktatói Adatok, Tantárgyfelosztás, Export (egyszerű) + + _DATADIR.'/'."ttfimport.tsv" + + Tantárgyfelosztás: + Osztály Csoport Tantárgy Óraszám Tanár Összevont óra + 12.C 12.c.m+t dráma 1,00 Széles Zsuzsanna Nem + 10.E fizika 2,00 Antal Erzsébet Nem + 10.2.n.djpr német nyelv 4,00 Dobrosi-Jelinek Piroska Rita Nem + 12.2.n.djpr német nyelv 3,00 Dobrosi-Jelinek Piroska Rita Nem + 11.D dráma 1,00 Dobrosi-Jelinek Piroska Rita Nem +4. e-Napló, Tanórák Listája, Excel Export (jobb oldali gomb) + + _DATADIR.'/'."orarendiOra.tsv + + 2019.09.02 1 1 Pintér László (mat) 07.B osztályfőnöki Tanévnyitó-Margitsziget 2019.09.02 + 2019.09.02 2 2 Pintér László (mat) 07.B osztályfőnöki Tanévnyitó-Margitsziget 2019.09.02 + +*/ + + + if (_RIGHTS_OK !== true) die(); if (!__NAPLOADMIN) { $_SESSION['alert'][] = 'page:insufficient_access'; @@ -17,24 +71,16 @@ require_once('include/modules/naplo/share/osztaly.php'); require_once('include/modules/naplo/intezmeny/tankor.php'); + require_once('include/modules/naplo/haladasi/helyettesites.php'); + require_once('include/modules/naplo/share/tankorModifier.php'); require_once('include/modules/naplo/share/tankorDiakModifier.php'); - + require_once('include/modules/naplo/share/ora.php'); + require_once('include/modules/naplo/share/oraModifier.php'); $selectedTargyId = $ADAT['selectedTargyId'] = readVariable($_POST['selectedTargyId'],'id'); $selectedTanarId = $ADAT['selectedTanarId'] = readVariable($_POST['selectedTanarId'],'id'); - // dump(get_defined_constants(TRUE)); - -/* - if ($action == 'upload') { - // ez csak képek feltöltésére jó sajnos: - // mayorFileUpload(array('subdir'=>_DATADIR.'/','filename'=>'ttfimport.tsv')); - } elseif (isset($_POST['fileName']) && $_POST['fileName'] != '') { - - } -*/ - $q = "SELECT szemeszterId FROM szemeszter WHERE tanev=%u"; $v = array(__TANEV); $ADAT['szemeszterek'] = db_query($q, array('fv' => 'pre', 'modul' => 'naplo_intezmeny', 'values' => $v, 'result'=>'idonly'), $lr); @@ -80,7 +126,7 @@ '10.B' => 106, '10.C' => 120, '10.D' => 121, - '10.E' => 122, + '10.E' => 112, '11.A' => 95, '11.B' => 96, '11.C' => 110, @@ -94,7 +140,7 @@ ); - $fn = fopen(_DATADIR.'/'."ttfimport.tsv","r"); + $fn = fopen($IMPORT_FILES['tantargyfelosztas'],"r"); while(! feof($fn)) { /* 0 => string '12.C' (length=4) @@ -120,7 +166,7 @@ # tankorosztaly kitalálás: # DIÁK1 -(import)-> kretaOsztalyNev -(osztalyNaplo)-> osztalyId - $fn = fopen(_DATADIR.'/'."osztalyba_jaro_tanulok.tsv","r"); + $fn = fopen($IMPORT_FILES['osztalyba_jaro_tanulok'],"r"); while(! feof($fn)) { $line = (fgets($fn)); if (ord($line[0]) == 32) $line = "\t".trim($line); @@ -156,13 +202,9 @@ ########################################################£ #Csoportba Járó Tanulok: - -#0 => string '99.9.énekkar-C' (length=15) -#1 => string 'Andrássy Blanka Éva' (length=21) -#2 => string '71614703894' (length=11) -#3 => string '12.C' (length=4) - $fn = fopen(_DATADIR.'/'."csoportba_jaro_tanulok.tsv","r"); + $fn = fopen($IMPORT_FILES['csoportba_jaro_tanulok'],"r"); + while(! feof($fn)) { $line = (fgets($fn)); if (ord($line[0]) == 32) $line = "\t".trim($line); @@ -229,6 +271,49 @@ if ($action == 'do') { + $lr_intezmeny = db_connect('naplo_intezmeny'); + + // echo '<input type="checkbox" name="nevsorSzinkronFelulir[]" value="'.$D['csoportId'].':####:'.$D['tankorId'].'" />névsor felülír import alapján'; + for ($i=0; $i<count($_POST['nevsorSzinkronFelulir']); $i++) { + list($csoportId,$tankorId) = explode(':####:',$_POST['nevsorSzinkronFelulir'][$i]); + if ($csoportId>0 && $tankorId>0) { + $csoportNev = $TANKORCSOPORTID2CSOPORTNEV[$csoportId]; + $_tankorNevExtra = ($csoportNev!='') ? '('.$csoportNev.')' : ''; + ## 1. lezár + $_TANKORDIAK = getTankorDiakjai($tankorId, $lr_intezmeny); + for ($j=0; $j<count($_TANKORDIAK['idk']); $j++) { + $_diakId = $_TANKORDIAK['idk'][$j]; + if ($_diakId>0) { + $DIAKLEZAR = array( + 'tankorId' => $tankorId, + 'diakId' => $_diakId, + 'tolDt' => $_TANEV['kezdesDt'], + 'igDt' => null, + 'utkozes' => 'ellenorzes' // 'nemEllenoriz', 'torles' -- a kilépést nem csináljuk meg, ha van jegye, hiányzása! + ); + tankorDiakTorol($DIAKLEZAR, $lr_intezmeny); + } + } + ## 2. felvesz + for ($j=0; $j<count($CSOPORTADAT[$csoportNev]['diakIds']); $j++) { + $_diakId = $CSOPORTADAT[$csoportNev]['diakIds'][$j]; + if ($_diakId>0) { + $UJTANKORDIAK = array( + 'tankorId'=>intval($tankorId), + 'tolDt'=>$_TANEV['kezdesDt'], + 'igDt'=>$_TANEV['zarasDt'], + 'jovahagyva'=>1, + 'diakId' => intval($_diakId), + 'NO_MIN_CONTROL' => true + ); + tankorDiakFelvesz($UJTANKORDIAK, $lr_intezmeny); // -- TODO lr + } + } + setTankorNev($tankorId, $_tankorNevExtra, $lr_intezmeny); + // setTankorNevByDiakok($tankorId, $tankorNevExtra = null, $olr = null); // ha a nevsorok szinkronban vannak + ## + } + } for ($i=0; $i<count($_POST['ujTankor']); $i++) { list($csoportId,$tanarId,$osztalyIds,$targyId,$szemeszter_oraszam,$csoportNev) = explode(':####:',$_POST['ujTankor'][$i]); $_osztalyIds = explode(',',$osztalyIds); @@ -237,6 +322,7 @@ if ($csoportId>0 && $tanarId>0 && count($_osztalyIds)>0 && $targyId>0) { // TODO létre kell hozni a tankört majd beléptetni a csoportId - be és a tankortanárba (lásd később) // 1. új tankör + $_tankorNevExtra = ($csoportNev!='') ? '('.$csoportNev.')' : ''; $UJTANKOR = array( 'tanev'=>__TANEV, 'targyId'=>$targyId, @@ -254,8 +340,12 @@ $UJTANKOR[$k] = $v; } - $tankorId = ujTankor($UJTANKOR); - setTankorNev($tankorId, '('.$csoportNev.')', null); + $tankorId = ujTankor($UJTANKOR) or die('FATAL ERROR'.serialize($UJTANKOR)); + if ($tankorId<=0) { + echo '!fatal error'; + var_dump($UJTANKOR); + } + setTankorNev($tankorId, $_tankorNevExtra, null); // 2. tankorcsoport $q = "insert ignore into tankorCsoport (tankorId,csoportId) VALUES (%u,%u)"; $v = array($tankorId,$csoportId); @@ -265,9 +355,6 @@ tankorTanarModosit($tankorId, $tanarId, array('tanev'=>__TANEV,'tanevAdat'=>$_TANEV, 'tolDt'=>$_TANEV['kezdesDt'], 'igDt'=>$_TANEV['zarasDt'])); // 4. tagok - // setTankorNevByDiakok($tankorId, $tankorNevExtra = null, $olr = null); // ha a nevsorok szinkronban vannak - // setTankorNev($tankorId, null, null); - for ($j=0; $j<count($CSOPORTADAT[$csoportNev]['diakIds']); $j++) { $_diakId = $CSOPORTADAT[$csoportNev]['diakIds'][$j]; if ($_diakId>0) { @@ -276,12 +363,14 @@ 'tolDt'=>$_TANEV['kezdesDt'], 'igDt'=>$_TANEV['zarasDt'], 'jovahagyva'=>1, - 'diakId' => intval($_diakId) + 'diakId' => intval($_diakId), + 'NO_MIN_CONTROL' => true ); tankorDiakFelvesz($UJTANKORDIAK); } } - setTankorNev($tankorId, '('.$csoportNev.')', null); + setTankorNev($tankorId, $_tankorNevExtra, $lr_intezmeny); + // setTankorNevByDiakok($tankorId, $tankorNevExtra = null, $olr = null); // ha a nevsorok szinkronban vannak } } for ($i=0; $i<count($_POST['tankor2csoport']); $i++) { @@ -300,7 +389,7 @@ // Óraszám update $q = "update tankorSzemeszter set oraszam=%f where tankorId=%u AND tanev=%u"; $v = array(floatval($oraszam),intval($tankorId),__TANEV); - db_query($q, array('fv' => 'csoportinsert', 'modul' => 'naplo_intezmeny', 'values' => $v)); + db_query($q, array('fv' => 'csoportinsert', 'modul' => 'naplo_intezmeny', 'values' => $v), $lr_intezmeny); // A csoporttagság frissítése $csoportNev = $TANKORCSOPORTID2CSOPORTNEV[$csoportId]; @@ -317,13 +406,13 @@ tankorDiakFelvesz($UJTANKORDIAK); } } - setTankorNev($tankorId, '('.$csoportNev.')', null); + setTankorNev($tankorId, '('.$csoportNev.')', $lr_intezmeny); } } - + db_close($lr_intezmeny); } @@ -354,24 +443,6 @@ // dump($ADAT['osztalyDiak']); -## az összegyűjtott adatok alapján az végeredmény -/* -array (size=11) - 0 => string '' (length=0) - 1 => string '12.6.m.va3' (length=10) - 2 => string 'matematika' (length=10) - 3 => string '3,00' (length=4) - 4 => string 'Volf Annamária' (length=15) - 5 => string 'Nem' (length=3) - 'oraszam' => float 3 - 'targyId' => int 6 - 'tankorCsoport' => - array (size=1) - 0 => string '4368' (length=4) - 'tanarId' => string '131' (length=3) - 'tankorCn' => string ':4368&6&131&3' (length=13) -*/ - for ($i=0; $i<count($ADAT['ttf']); $i++) { $ADAT['ttf'][$i]['oraszam'] = floatval(str_replace(',','.',$ADAT['ttf'][$i][3])); if ($KRETATARGYNEV2TARGYID[$ADAT['ttf'][$i][2]]<=0) { @@ -424,23 +495,35 @@ AND csoportNev = '%s' GROUP BY tankor.tankorId"; $v = array(__TANEV,1,$_D['targyId'],$_D['oraszam'],$_D['tanarId'],$_D['csoportNev']); $r = db_query($q,array('modul'=>'naplo_intezmeny','values'=>$v,'result'=>'indexed')); + if (count($r) == 1) { // echo 'OK, a talált tankör'; $_D['tankorId'] = $r[0]['tankorId']; $_D['action'] = 'done'; } elseif (count($r)>1) { - // ha van legalább egy találat, akkor kihagyjuk ezt a sort, esetleg megjegyezhetjuk, hogy neki már ezek a párjai lehetnek/vannak - // echo 'több találat van'; - // specifikálni kell tovább (pl. van csoporthozzárendelés?) ugyanolyan? $_D['action'] = 'tankorHozzarendel'; // ha nincs for ($j=0; $j<count($r); $j++) { $_D['displayTankor'][] = $r[$j]; } } else { + +// Belerakjuk azon tanköröket is, ahol vélhetően csak a csoport hozzárendelés hiányzik + $q = "select *,tankorSzemeszter.tankorId AS tankorId from tankorSzemeszter +LEFT JOIN tankor USING (tankorId) +LEFT JOIN tankorTanar ON (tankorTanar.tankorId=tankor.tankorId AND beDt<=NOW() AND (kiDt is null or kiDt>=NOW())) +LEFT JOIN ".__TANEVDBNEV.".tankorCsoport ON (tankor.tankorId = tankorCsoport.tankorId) +LEFT JOIN ".__TANEVDBNEV.".csoport USING (csoportId) +WHERE tanev=%u AND szemeszter=%u AND targyId=%u AND oraszam=%f AND tanarId=%u +AND csoportNev IS NULL +GROUP BY tankor.tankorId"; + $v = array(__TANEV,1,$_D['targyId'],$_D['oraszam'],$_D['tanarId']); + $rx = db_query($q,array('modul'=>'naplo_intezmeny','values'=>$v,'result'=>'indexed')); + for ($j=0; $j<count($rx); $j++) { + $_D['displayTankor'][] = $rx[$j]; + } + // Ha nincs találat, ezek a tankörök felelhetnek még meg: - // nincs még tanár hozzárendelve: - // select * from tankorSzemeszter LEFT JOIN tankor USING (tankorId) LEFT JOIN tankorTanar ON (tankorTanar.tankorId=tankor.tankorId AND beDt<=NOW() AND (kiDt is null or kiDt>=NOW())) WHERE tanev=2019 AND szemeszter=1 AND targyId=6 AND oraszam=5 AND tanarId IS NULL GROUP BY tankor.tankorId ; $_M = array(); if (is_array($ADAT['csoportAdat'][$_D[0]]['osztalyok']) && is_array($ADAT['csoportAdat'][$_D[1]]['osztalyok'])) { $_M = array_merge( @@ -457,7 +540,7 @@ GROUP BY tankor.tankorId"; if (!is_array($_M) || count($_M)==0 || is_null($_M)) { $_M = array(0); - $_SESSION['alert'][] = 'info:nincsenek osztályok:'.serialize($_D); + // $_SESSION['alert'][] = 'info:import_nincsenek osztályok:'.serialize($_D); } $q = "select *,tankorSzemeszter.tankorId AS tankorId from tankorSzemeszter LEFT JOIN tankor USING (tankorId) @@ -510,42 +593,153 @@ GROUP BY tankor.tankorId ORDER BY tankorNev"; // ami a csoportban levő legbővebb halmazúvá teszi a névsorokat } -/* -Csoportba Járó Tanulók: -Csoport neve Név Oktatási azonosító Osztály -99.9.énekkar-C Allardyce Lilla Rose 71624405564 12.C -99.9.énekkar-C Andrássy Blanka Éva 71614703894 12.C -99.9.énekkar-C Árva Janka 72463346174 09.C + ////////////////////////////////////////////////////ORA + + // dt, ora, ki, kit, tankorId, teremId, leiras, tipus, eredet, feladatTipusId, munkaido, modositasDt + + // https://klik035242001.e-kreta.hu/Orarend/TanoraKereso --> TanoraTablazat + /* + 0 => string '2019.09.02' (length=10) + 1 => string '1' (length=1) ora + 2 => string '1' (length=1) oraszam + 3 => string 'Pintér László (mat)' (length=22) tanár vagy(!) helyettesítő + 4 => string '' (length=0) + 5 => string '07.B' (length=4) csoport + 6 => string 'osztályfőnöki' (length=16) targy + 7 => string 'Tanévnyitó-Margitsziget' (length=25) leiras + 8 => string '2019.09.02' (length=10) + */ + + // MaYoR: csoportId+targyId+tanarId => tankorId; + + $lr_naplo = db_connect('naplo'); + + $q = "select csoportId, targyId, tanarId, tankor.tankorId FROM tankorCsoport LEFT JOIN csoport USING (csoportId) LEFT JOIN intezmeny_vmg.tankor USING (tankorId) LEFT JOIN intezmeny_vmg.tankorTanar ON (tankor.tankorId = tankorTanar.tankorId AND beDt>='2019-09-01' AND (kiDt IS NULL or kiDt>=NOW()))"; + $r = db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'indexed'),$lr_naplo); + for ($i=0; $i<count($r); $i++) { + $d = $r[$i]; + $TRIPLE2TANKOR[$d['csoportId']][$d['targyId']][$d['tanarId']] = $d['tankorId']; + } + + // dump($TRIPLE2TANKOR); + $fn = fopen($IMPORT_FILES['orarendiOra'],"r"); -Osztályba Járó Tanulók: + while(! feof($fn)) { + $line = (fgets($fn)); + if (ord($line[0]) == 32) $line = "\t".trim($line); + else $line = trim($line); + $result = explode("\t",$line); + // $X[] = $result; + if ($TRIPLE2TANKOR[$CSOPORT2ID[$result[5]]][$KRETATARGYNEV2TARGYID[$result[6]]][$TANAR2ID[$result[3]]]>0) { + $X = array( + 'dt'=>str_replace('.','-',$result[0]), + 'ora' => $result[1], + '_csoportId' => $CSOPORT2ID[$result[5]], + '_targyId' => $KRETATARGYNEV2TARGYID[$result[6]], + 'ki' => $TANAR2ID[$result[3]], + 'tankorId' => $TRIPLE2TANKOR[$CSOPORT2ID[$result[5]]][$KRETATARGYNEV2TARGYID[$result[6]]][$TANAR2ID[$result[3]]], + 'teremId' => null, + 'leiras' => $result[7], + 'tipus' => 'normál', + 'eredet' => 'órarend', + 'munkaido'=>'lekötött' + ); + // ora kulcs (dt+ora+ki+tankorId) + // ha van bent leiras nelkuli, kitolthetjuk + $q = "UPDATE ora SET leiras ='%s' WHERE dt='%s' AND ora=%u AND ki=%u AND tankorId=%u AND (leiras IS NULL or leiras='')"; + $v = array($X['leiras'],$X['dt'],$X['ora'],$X['ki'],$X['tankorId']); + db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert'), $lr_naplo); + // ha van bent leirasos, skippelhetjuk + + $q = "SELECT count(*) AS db FROM ora WHERE dt='%s' AND ora=%u AND ki=%u AND tankorId=%u"; + $v = array($X['dt'],$X['ora'],$X['ki'],$X['tankorId']); + $db = db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'value'), $lr_naplo); + if ($db!==false && $db==0) { + ujOraFelvesz($X,$lr_naplo); + } -Osztály Név Oktatási azonosító -07.A Ambrus Dániel 72644951895 -07.A Apjok Balázs 72719658348 -07.A Bärnkopf Janka Katalin 72660367200 + } // lehet, hogy nincs megfeleltetés, és az is, hogy helyettesített óra volt. Ezt külön file tartalmazza! + } + fclose($fn); -Tantárgyfelosztás: + $ORATIPUSCONVERT = array( + 'Nem szakszerű helyettesítés (felügyelet)' => 'felügyelet', + 'Óraösszevonás' =>'összevonás', + 'Szakszerű helyettesítés'=>'helyettesítés', + ); -Osztály Csoport Tantárgy Óraszám Tanár Összevont óra -12.C 12.c.m+t dráma 1,00 Széles Zsuzsanna Nem -10.E fizika 2,00 Antal Erzsébet Nem -10.2.n.djpr német nyelv 4,00 Dobrosi-Jelinek Piroska Rita Nem -12.2.n.djpr német nyelv 3,00 Dobrosi-Jelinek Piroska Rita Nem -11.D dráma 1,00 Dobrosi-Jelinek Piroska Rita Nem + $fn = fopen($IMPORT_FILES['helyettesitett_tanorak'],"r"); +// --TODO +/* + 0 => string '2019. 09. 04. 10:00' (length=19) + 1 => string 'Szerda' (length=6) + 2 => string '3' (length=1) + 3 => string 'Elmaradt óra' (length=13) + 4 => string 'Takácsi-Nagyné Past Zsuzsanna' (length=31) + 5 => string 'Balkayné Kalló Ágnes Zsófia' (length=31) + 6 => string 'Nem szakszerű helyettesítés (felügyelet)' (length=44) + 7 => string '07.a.e.tnpzs' (length=12) + 8 => string 'etika/hit- és erkölcstan' (length=26) + 9 => string '111' (length=3) + 10 => string 'Megtartott óra' (length=15) + 11 => string '-' (length=1) + 12 => string 'Tanóra' (length=7) */ +/* + while(! feof($fn)) { + $line = (fgets($fn)); + if (ord($line[0]) == 32) $line = "\t".trim($line); + else $line = trim($line); + $result = explode("\t",$line); + // $X[] = $result; +dump($result); + if (($_tankorId = $TRIPLE2TANKOR[$CSOPORT2ID[$result[7]]][$KRETATARGYNEV2TARGYID[$result[8]]][$TANAR2ID[$result[4]]])>0) { //csoport-targy-tanar + $_dt = str_replace('. ','-',substr($result[0],0,12)); + $_ora = $result[2]; + $_ki = $TANAR2ID[$result[5]]; + $_kit = $TANAR2ID[$result[4]]; + $_leiras = $result[11]; + $_tipus = $ORATIPUSCONVERT[$result[6]]; + $_eredet = 'órarend'; + + $q = "SELECT * FROM ora WHERE dt='%s' AND ora=%u AND tankorId=%u"; + $v = array($_dt,$_ora,$_tankorId); + $oraId = db_query($q, array('debug'=>true,'fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'value'), $lr_naplo); + if ($oraId>0) { // van már óra + + } else { + $FEL = array('dt'=>$_dt,'ora'=>$_ora,'ki'=>$_kit,'tipus'=>'normál','eredet'=>$_eredet,'tankorId'=>$_tankorId); + $_oraId = ujOraFelvesz($FEL,$lr_naplo); + $_oraAdat = getOraAdatById($_oraId,$lr_naplo); + helyettesitesRogzites($_ki.'/'.$_oraId.'/'.$_tipus); + updateHaladasiNaploOra($_oraId, $_leiras, 0, '', $_ki, $lr_naplo); + } + // ora kulcs (dt+ora+ki+tankorId) + // ha van bent leiras nelkuli, kitolthetjuk + $q = "UPDATE ora SET leiras ='%s' WHERE dt='%s' AND ora=%u AND ki=%u AND tankorId=%u AND (leiras IS NULL or leiras='')"; + $v = array($X['leiras'],$X['dt'],$X['ora'],$X['ki'],$X['tankorId']); + db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'insert'), $lr_naplo); + // ha van bent leirasos, skippelhetjuk + + $q = "SELECT count(*) AS db FROM ora WHERE dt='%s' AND ora=%u AND ki=%u AND tankorId=%u"; + $v = array($X['dt'],$X['ora'],$X['ki'],$X['tankorId']); + $db = db_query($q, array('fv' => 'pre', 'modul' => 'naplo', 'values' => $v, 'result'=>'value'), $lr_naplo); + if ($db!==false && $db==0) { + ujOraFelvesz($X,$lr_naplo); + } + + } // lehet, hogy nincs megfeleltetés, és az is, hogy helyettesített óra volt. Ezt külön file tartalmazza! + } +*/ + fclose($fn); + db_close($lr_naplo); + ################################################################################## -// $TOOL['tanevSelect'] = array('tipus'=>'cella','paramName' => 'tanev', -// 'tervezett' => true, -// 'post' => array('mkId','targyId','tankorId')); -// $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post' => array('tanev')); $TOOL['targySelect'] = array('tipus'=>'cella', 'paramName' => 'selectedTargyId'); -// $TOOL['diakSelect'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array()); $TOOL['tanarSelect'] = array('tipus'=>'cella','paramName'=>'selectedTanarId'); -// $TOOL['tankorSelect'] = array('tipus' => 'cella','paramName' => 'tankorId', 'post' => array('tanev', 'mkId', 'targyId')); -// $TOOL['tanevLapozo'] = array('tipus' => 'sor', 'paramName' => 'tanev', 'post' => array('mkId', 'targyId', 'tankorId'), 'tanev' => __TANEV); getToolParameters(); ?>
\ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php index e01360f8..bac83a15 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/import/tantargyFelosztas.php @@ -1,12 +1,11 @@ <?php global $ADAT; - echo 'Használt kulcs érték párok:'; +# echo 'Használt kulcs érték párok:'; # var_dump($ADAT['kulcsertektar']['osztalyjel2id']); putTTFimport($ADAT); - if (count($ADAT['bug']['targy'])>0) var_dump($ADAT['bug']['targy']); @@ -14,4 +13,7 @@ var_dump($ADAT['bug']['diak']); + + + ?>
\ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php index d6c92121..3cd8dbcb 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/intezmeny/tankor-pre.php @@ -18,6 +18,7 @@ $ADAT['mkId'] = $mkId = readVariable($_POST['mkId'],'id',null); $ADAT['targyId'] = $targyId = readVariable($_POST['targyId'],'id',null); $ADAT['tankorId'] = $tankorId = readVariable($_POST['tankorId'],'id',readVariable($_GET['tankorId'],'id',null)); + $ADAT['tanarId'] = $tanarId = readVariable($_POST['tanarId'],'id',readVariable($_GET['tanarId'],'id',null)); $_POST['tanev'] = $ADAT['tanev'] = $tanev = readVariable($_POST['tanev'],'numeric unsigned',__TANEV); if ($tanev!=__TANEV) $_SESSION['alert'][] = 'info:nem az alapértelmezett tanévben vagyunk!'; @@ -40,6 +41,12 @@ $erintettHianyzasDb = hianyzasTankorTipusValtas($ADAT['tankorId'],$ADAT['tankorTipusId'],array('tanev'=>$ADAT['tanev'])); if ($erintettHianyzasDb>0) $_SESSION['alert'][] = 'info:db_hianyzas_tipus_modositas:'.$erintettHianyzasDb; } + if ($tanev == __TANEV) { + $csoportId = readVariable($_POST['csoportId'],'id'); + if ($csoportId>0 && $tankorId>0) { + addTankorToTankorCsoport($tankorId,$csoportId); + } + } } break; case 'tankorTargyModositas': @@ -194,7 +201,8 @@ $ADAT['tankorId'] = $tankorId; $ADAT['tanev'] = $tanev; $ADAT['tankorOsztalyok'] = getTankorOsztalyaiByTanev($tankorId, $tanev, array('tagokAlapjan'=>true,'result'=>'id')); - $ADAT['tankorCsoportok'] = getTankorCsoport($tanev); // ezt nem használjuk most semmire! + $ADAT['tankorCsoportok'] = getTankorCsoport($tanev); + $ADAT['tankorTankorCsoportjai'] = getTankorCsoportByTankorId($tankorId); if ($tanev != '') $SZEMESZTEREK = getSzemeszterek(array('filter' => array("tanev>=$tanev",'tanev<='.($tanev+7)))); @@ -205,7 +213,7 @@ $TOOL['munkakozossegSelect'] = array('tipus'=>'cella','paramName' => 'mkId', 'post' => array('tanev')); $TOOL['targySelect'] = array('tipus'=>'cella', 'mkId' => $mkId, 'targyak' => $ADAT['targyak'], 'post' => array('mkId', 'tanev')); // $TOOL['diakSelect'] = array('tipus'=>'sor','paramName'=>'diakId', 'post'=>array()); -// $TOOL['tanarSelect'] = array('tipus'=>'sor','paramName'=>'tanarId', 'post'=>array()); + $TOOL['tanarSelect'] = array('tipus'=>'sor','paramName'=>'tanarId', 'post'=>array('mkId','targyId','tanev')); $TOOL['tankorSelect'] = array('tipus' => 'cella','paramName' => 'tankorId', 'post' => array('tanev', 'mkId', 'targyId')); $TOOL['oldalFlipper'] = array('tipus' => 'cella', 'url' => array('index.php?page=naplo&sub=intezmeny&f=tankorDiak', diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php index 6d80c3fa..17acc6ff 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/orarend/orarendModosito-pre.php @@ -198,9 +198,7 @@ $ADAT['felvehetoTankorok'] = getTankorByOsztalyId($osztalyId,$tanev, array('csakId'=>false,'tolDt'=>$refTolDt, 'igDt'=>$refIgDt, 'tanarral'=>true)); //TEST-TODO $TANKORIDK = getTankorByOsztalyId($osztalyId, __TANEV, array('csakId' => true, 'tolDt' => $tolDt, 'igDt' => $igDt, 'result' => 'indexed', 'tanarral' => false)); -//TEST $ADAT['haladasi'] = getOrak($TANKORIDK, array('tolDt'=>$tolDt,'igDt'=>$igDt, 'result'=>'likeOrarend', 'elmaradokNelkul'=>false)); -//TEST $ADAT['vanHaladasi'] = checkHaladasi(array('tolDt'=>$refTolDt,'igDt'=>$refIgDt)); } elseif ($mkId!='') { $ADAT['orarend'] = getOrarendByMkId($mkId,array('tolDt'=>$tolDt,'igDt'=>$igDt,'telephely'=>$telephely)); @@ -212,11 +210,15 @@ $TANKOROK['erintett'] = $ADAT['orarend']['tankorok']; $TANKOROK['mindenByDt'] = $ADAT['orarend']['mindenTankorByDt']; - $TANKOROK = (is_array($ADAT['orarend']['tankorok']) && is_array($ADAT['haladasi']['tankorok'])) ? - array_unique(array_merge($ADAT['orarend']['tankorok'],$ADAT['haladasi']['tankorok'])) - : - $ADAT['orarend']['tankorok']; + if (is_array($ADAT['orarend']['tankorok']) && is_array($ADAT['haladasi']['tankorok'])) { + $TANKOROK = array_unique(array_merge($ADAT['orarend']['tankorok'],$ADAT['haladasi']['tankorok'])); + } elseif (is_array($ADAT['haladasi']['tankorok'])) { + $TANKOROK = $ADAT['haladasi']['tankorok']; + } else { + $TANKOROK = $ADAT['orarend']['tankorok']; + } $ADAT['tankorok'] = getTankorAdatByIds($TANKOROK); + /* tankörlétszámok */ if (is_array($ADAT['tankorok'])) foreach ($ADAT['tankorok'] as $_tankorId =>$_T) { $ADAT['tankorLetszamok'][$_tankorId] = getTankorLetszam($_tankorId,array('refDt'=>$tolDt)); diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php index 39e04ec0..60060fd2 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tanev/tankorCsoport-pre.php @@ -14,6 +14,21 @@ if (isset($_POST['osztalyId']) && $_POST['osztalyId'] != '') $osztalyId = $_POST['osztalyId']; + + if ($action == 'tankorCsoportHozzarendesTorles') { + + $HM = readVariable($_POST['hozzarendelesMegszuntetes'],'string'); + for ($i=0; $i<count($HM); $i++) { + list($_csoportId,$_tankorId) = explode(':',$HM[$i]); + $_csoportId = readVariable($_csoportId, 'numeric unsigned'); + $_tankorId = readVariable($_tankorId, 'numeric unsigned'); + + tankorCsoportHozzarendelesTorles($_csoportId, $_tankorId); + + } + } + + if (isset($osztalyId)) { $Tankorok = getTankorByOsztalyId($osztalyId, $tanev); @@ -103,6 +118,8 @@ if ($action != '') { + + $CsA = getTankorCsoportByTankorIds($tankorIds); $Csoportok = $csTankorIds = array(); foreach ($CsA as $csoportId => $csoportAdat) { @@ -117,10 +134,16 @@ } + + + // ----------------- action --------------------- // } + + + $ADAT['tankorCsoport'] = getTankorCsoport(); $ADAT['tankorCsoportAdat'] = getTankorCsoportAdat(); diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php index 01571f22..d24fff8e 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorAdat-pre.php @@ -30,6 +30,7 @@ $_JSON['tankorTanar'] = getTankorTanarai($tankorId); $_JSON['tankorDiak'] = //getTankorDiakjai($tankorId); getTankorDiakjaiByInterval($tankorId); + $_JSON['tankorCsoport'] = getTankorCsoportByTankorId($tankorId,__TANEV,array('csoportNevekkel'=>true)); $_JSON['tankorBlokk'] = getTankorBlokkByTankorId(array($tankorId),__TANEV,array('blokkNevekkel'=>true)); $_JSON['tanmenetId'] = array_pop(getTanmenetByTankorIds(array($tankorId))); $_JSON['tanmenetAdat'] = getTanmenetAdat($_JSON['tanmenetId']); diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorCsoportAdat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorCsoportAdat-pre.php new file mode 100644 index 00000000..11cd94ce --- /dev/null +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/tools/getTankorCsoportAdat-pre.php @@ -0,0 +1,28 @@ +<?php + + if (_RIGHTS_OK !== true) die(); + if (__TANAR!==true && __NAPLOADMIN !== true && __TITKARSAG !== true && __VEZETOSEG !== true) return false; + + require_once('include/modules/naplo/share/osztaly.php'); + require_once('include/modules/naplo/share/tankor.php'); + require_once('include/modules/naplo/tanev/tankorCsoport.php'); + require_once('include/modules/naplo/share/tankorBlokk.php'); + require_once('include/modules/naplo/share/targy.php'); + require_once('include/modules/naplo/share/tanmenet.php'); + require_once('include/modules/naplo/share/tanar.php'); + + $tankorCsoportId = readVariable($_POST['tankorCsoportId'], 'id'); + + $CSOPORTTANKOR = getTankorCsoportTankoreiByCsoportId($tankorCsoportId); + + + + + $_JSON = array(); + $_JSON['tankorCsoportId'] = $tankorCsoportId; + $_JSON['tankorCsoportAdat'] = getTankorCsoportAdat($tankorCsoportId); + $_JSON['tankorCsoportTankorei'] = $CSOPORTTANKOR; + + $_JSON['tankorCsoportNev'] = $_JSON['tankorCsoportAdat'][0]['csoportNev']; + $_JSON['visibleData'] = true; +?>
\ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/intezmenyek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/intezmenyek.css index 25a0be92..5c3ab8a5 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/intezmenyek.css +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/intezmenyek.css @@ -1,26 +1,26 @@ - form.intezmeny { background-color: rgb(40,60,120); color: white; margin: 20px; padding: 5px; } + form.intezmeny { background-color: rgb(40,60,120); color: white; margin: 40px; padding: 0px 0px 10px 0px; } form.intezmeny h2 { background-color: rgb(20,40,80); text-align: center; - border: white 1px dotted; + border: white 1px solid; border-width: 1px 0px; padding: 3px; } - form.ujTelephely { background-color: rgb(40,120,120); color: white; margin: 20px; padding: 5px; margin: 0px 30px 10px 30px} + form.ujTelephely { background-color: rgb(40,120,120); color: white; margin: 20px; padding: 0px 0px 10px 0px; margin: 0px 30px 10px 30px} form.ujTelephely:hover { background-color: rgb(80,160,200); } form.ujTelephely h2 { color: white; background-color: rgb(20,80,80); text-align: center; - border: white 1px dotted; border-width: 1px 0px; + border: white 1px solid; border-width: 1px 0px; padding: 3px; } - form.telephely { background-color: rgb(40,120,60); color: white; margin: 20px; padding: 5px; margin: 0px 30px 10px 30px} + form.telephely { background-color: rgb(40,120,60); color: white; margin: 20px; padding: 0px 0px 10px 0px; margin: 0px 30px 10px 30px} form.telephely:hover { background-color: rgb(120,180,60); } form.telephely h2 { color: white; background-color: rgb(20,80,40); text-align: center; - border: white 1px dotted; border-width: 1px 0px; + border: white 1px solid; border-width: 1px 0px; padding: 3px; } - + form.intezmeny ul li { padding: 2px; }
\ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tanevek.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tanevek.css index 7562ff6f..fe59dc6f 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tanevek.css +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/admin/tanevek.css @@ -3,7 +3,7 @@ form.intezmeny h2 { background-color: rgb(20,40,80); text-align: center; - border: white 1px dotted; + border: white 1px solid; border-width: 1px 0px; padding: 3px; } @@ -14,4 +14,6 @@ form.intezmeny fieldset p { margin-left: 50px; } form.intezmeny fieldset label { background-coor: red; padding: 0px 14px 0px 0px; } - form.intezmeny fieldset h3 { color: rgb(255,255,100); }
\ No newline at end of file + form.intezmeny fieldset h3 { font-weight: normal; color: #ffeb3b; } + + form.intezmeny.tervezett { background-color: #2E7D32; }
\ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankor.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankor.css index f81c35f1..0c62ea0a 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankor.css +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/intezmeny/tankor.css @@ -33,14 +33,13 @@ form.tankor label { } -form.tankor input:hover, +/*form.tankor input:hover*/ form.tankor label:hover { - text-decoration: underline; + background-color: darkorange; + color: white; + cursor: pointer; } -form.tankor input { - border: solid 1px blue; -} form.tankor input.lezart { background-color: #aaaaaa; border: solid 1px black; } @@ -81,3 +80,11 @@ form.tankor div:hover { background-color: #2799bb; } form.tankor p { padding: 0em 1em; } + +form.tankor span.tankorCsoportAdat { background-color: orange; border-radius:4px; padding: 2px 4px; margin: 4px;} +form.tankor span.tankorCsoportAdat:hover { background-color: darkorange;} + + +table.osztalyok tr:hover td { background-color: cornflowerblue;} +table.osztalyok tr:hover th { background-color: cornflowerblue;} + diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/naplo.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/naplo.css index ddf0da7d..539cd4ea 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/naplo.css +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/naplo.css @@ -57,6 +57,9 @@ table.toolBar tr td.szemely { background-color: #5A85B8; color:white; border: solid 1px #558; padding:2px 10px; color: rgba(255,255,255,0.5);} table.toolBar tr td.szemely:hover { color: rgba(255,255,255,1);} + table.toolBar tr td.csoport { background-color: #5A85B8; color:white; border: solid 1px #558; padding:2px 10px; color: rgba(255,255,255,0.5);} + table.toolBar tr td.csoport:hover { color: rgba(255,255,255,1);} + /* TD */ table.toolBar td {padding: 0px;} @@ -177,7 +180,7 @@ } #toolBarHamburgerLista button.hamburgerIkon:hover {background-color: rgba(90,133,184,0.6);border: solid 1px #15477B;} - .diakNev:hover, .szuloNev:hover, .tankorAdat:hover, .tanarNev:hover, .zaroJegyAdat:hover, .jegyAdat:hover, .oraAdat:hover, .jegyzetAdat:hover, .dolgozatAdat:hover { cursor: pointer; } + .diakNev:hover, .szuloNev:hover, .tankorAdat:hover, .tankorCsoportAdat:hover, .tanarNev:hover, .zaroJegyAdat:hover, .jegyAdat:hover, .oraAdat:hover, .jegyzetAdat:hover, .dolgozatAdat:hover, .osztalyAdat:hover { cursor: pointer; } .activeElement { outline: solid 2px orange; background-color: rgba(255,255,255,0.9); } #mayorSearch a.diakNev:before, #mayorSearch a.diakNev:hover:before { content:'\e0ca'; font-family: 'Elusive-Icons'; padding-right:2px; color: rgba(100,149,237,0.4);} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendModosito.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendModosito.css index 1d9f527b..c25f4328 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendModosito.css +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/orarend/orarendModosito.css @@ -113,10 +113,19 @@ div.unfinished { border: solid 1px rgb(52, 150, 185); color: white; } - div.haladasi { background-color: #F44336; border: solid 1px #ccc; padding:0.5em; color:white; } + + div.haladasi { background-color: #F44336; border: solid 1px #ccc; padding:0.5em; color:white; width:80%; margin:auto; border-radius: 4px; } div.haladasi.haladasiModositando { background-color: #4CAF50; } table.orarend tbody tr td div.haladasiOra { color:white; cursor: pointer; } div.torlesreJelolve { background-color: #888 !important; text-decoration: line-through; outline: solid 1px red; } + + div.orarendModositoToolbox { background-color: #444; border: solid 1px #ccc; padding:0.5em; color:white; width:80%; margin:auto; border-radius: 4px; colow: white;} + div.orarendModositoToolbox table.tanarTankor {font-size: smaller; position:fixed; top:2px ; right: 2px; background-color: #444; z-index:1000; } + div.oraKartya.highlight { outline: solid 1px yellow } + div.oraKartya span.highlight { background-color:yellow; } + div.orarendModositoToolbox button#tankorHelper { float:right; } + + } @media print { table.toolBar { diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/tankor.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/tankor.css index 1d246e69..6245a71a 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/tankor.css +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/osztalyozo/tankor.css @@ -9,7 +9,7 @@ table.osztalyozo thead th { background-color: rgb(100,120,120); } table.osztalyozo thead th select { background-color: rgb(100,120,120); color: white; border: 1px solid rgb(120,140,140); } - table.osztalyozo thead th.nev { height:30px } + table.osztalyozo thead th.nev { height:30px; font-size:large; font-weight:normal; } table.osztalyozo thead th.defaultSulyozas { background-color:lightgreen; } table.osztalyozo thead th select.sulyozas { width:44px; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/intezmenyek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/intezmenyek.phtml index f70e7739..d2a3d3dd 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/intezmenyek.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/intezmenyek.phtml @@ -10,10 +10,11 @@ echo '<input type="hidden" name="action" value="intezmenyModositas" />'."\n"; - echo _OMKOD . ': <input type="text" name="OMKod" id="OMKod" value="'.$Intezmeny['OMKod'].'" maxlength="8" />'."\n"; - echo _ROVIDNEV .': <input type="text" name="rovidNev" id="rovidNev" value="'.$Intezmeny['rovidNev'].'" readonly="readonly" />'."\n"; - echo _NEV.': <input type="text" name="nev" id="nev" value="'.$Intezmeny['nev'].'" />'."\n"; - echo _FENNTARTO.': '; + echo '<ul>'; + echo '<li>'._OMKOD . ': <input type="text" name="OMKod" id="OMKod" value="'.$Intezmeny['OMKod'].'" maxlength="8" />'."\n"; + echo ' '._ROVIDNEV .': <input type="text" name="rovidNev" id="rovidNev" value="'.$Intezmeny['rovidNev'].'" readonly="readonly" style="width: 16em;" />'."</li>\n"; + echo '<li>'._NEV.': <input type="text" name="nev" id="nev" value="'.$Intezmeny['nev'].'" maxlength="128" style="width:64em" />'."</li>\n"; + echo '<li>'._FENNTARTO.': '; echo '<select name="fenntarto">'; echo '<option value=""> - </option>'; foreach ($ADAT['fenntartok'] as $fenntarto) { @@ -21,10 +22,16 @@ echo '<option value="'.$fenntarto.'"'.$SEL.'>'.$fenntarto.'</option>'; } echo '</select>'; + echo '</li>'; + + echo '<li>'; if ($Intezmeny['alapertelmezett']) echo '<input type="checkbox" name="alapertelmezett" value="1" checked="checked" />' . _ALAPERTELMEZETT; else echo '<input type="checkbox" name="alapertelmezett" value="1" />' . _ALAPERTELMEZETT; + echo '</li>'; + echo '</ul>'; + echo '<input type="submit" value="'._OK.'" />'."\n"; formEnd(); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tanevek.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tanevek.phtml index ba77f647..5d21add7 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tanevek.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/admin/tanevek.phtml @@ -4,7 +4,7 @@ $SZEMESZTER_STATUSZ = Array('aktív','tervezett'); - formBegin(array('class'=>'intezmeny')); + formBegin(array('class'=>'intezmeny tervezett')); echo '<h2>'._UJ_TANEV.'</h2>'."\n"; @@ -14,29 +14,32 @@ //szemeszter: tanev, sorszám, status (aktív, lezárt, új, tervezett), kezdete, vége - echo _TANEV_JELE . ': <input type="text" name="ujTanev" id="tanev" value="" maxlength="4" size="4" />'."\n"; + echo _TANEV_JELE . ': '; + //echo '<input type="text" name="ujTanev" id="tanev" value="" maxlength="4" size="4" />'."\n"; + echo '<select name="ujTanev" id="tanev">'; + echo '<option value=""></option>'; + for ($i=2000; $i<2050; $i++) { + echo '<option value="'.$i.'">'.$i.'</option>'; + } + echo '</select>'; echo '<hr />'."\n"; + echo '<br/>'; + + echo '<ul>'; for ( $i = 1; $i <= 2; $i++ ) { + echo '<li>'; echo $i .'. ' . _SZEMESZTER . ":"; echo '<input type="hidden" name="szemeszter[]" value="'.$i.'" />'."\n"; - echo '<input class="date" type="text" name="kezdesDt[]" value="" maxlength="10" size="10" /> - '."\n"; - echo '<input class="date" type="text" name="zarasDt[]" value="" maxlength="10" size="10" />'."\n"; + echo '<input class="date" type="text" id="ujSzemeszter_'.$i.'_kezdesDt" name="kezdesDt[]" value="" maxlength="10" size="10" /> - '."\n"; + echo '<input class="date" type="text" id="ujSzemeszter_'.$i.'_zarasDt" name="zarasDt[]" value="" maxlength="10" size="10" />'."\n"; echo ' ('._TERVEZETT.')'; - echo '<br/>'; + echo '</li>'; -// echo '<select name="statusz[]">'; -// foreach($SZEMESZTER_STATUSZ as $key => $statusz) { -// echo '<option value="'.$statusz.'">'.$statusz.'</option>'; -// } -// echo '</select>'; } - + echo '</ul>'; echo '<hr />'."\n"; -// echo 'rootUser: <input type="text" name="rootUser" id="rootUser" value="root" />'."\n"; -// echo 'rootPassword: <input type="password" name="rootPassword" id="rootPassword" value="" />'."\n"; - echo '<input type="submit" value="'._OK.'" />'."\n"; echo '</div>'; @@ -53,7 +56,7 @@ echo '<input type="hidden" name="action" value="szemeszterTorles" />'."\n"; echo '<input type="hidden" name="tanev" value="'.$tanev.'" />'."\n"; - echo '<h2>'._TANEV_SZEMESZTEREI.'</h2>'."\n"; + echo '<h2>'.$tanev.'/'.($tanev+1).' '._TANEV_SZEMESZTEREI.'</h2>'."\n"; echo '<div class="data">'."\n"; @@ -95,11 +98,13 @@ function putTanevLezarasForm( $ADAT ) { + $tanev=$ADAT['tanev']; + formBegin(array('class'=>'intezmeny')); echo '<input type="hidden" name="action" value="tanevLezar" />'."\n"; - echo '<h2>'._TANEV_LEZARAS.'</h2>'."\n"; + echo '<h2>'.$tanev.'/'.($tanev+1).' '._TANEV_LEZARAS.'</h2>'."\n"; echo '<div class="data">'."\n"; echo '<input type="hidden" name="tanev" value="'.$ADAT['tanev'].'"/>'; diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/base.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/base.phtml index 84d3593a..805e57dc 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/base.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/base.phtml @@ -52,6 +52,7 @@ if (defined('__TELEPHELYID')) echo '<span id="toolBarIntezmeny" title="TelephelyId:".'.__TELEPHELYID.'>'.__INTEZMENY .', ' . __TANEV.'/'.(__TANEV+1).'</span>'; else echo '<span id="toolBarIntezmeny">'.__INTEZMENY . '/' . __TANEV.'</span>'; echo '</a>'; + if (MAYOR_SOCIAL === true) { echo '<span title="MaYoR Social Edition" style="font-size:8px; padding:0px 0px 0px 4px; color: #e91e63; filter: grayscale(100%);">〽️social</span>';} if ($showHelp) echo '<span id="toolBarHelpButton" class="onClickHideShow">?</span>'; echo '</td>'."\n"; reset($TOOL); @@ -101,15 +102,15 @@ } if ($_diakId>0 && _POLICY=='private') { echo '<td class="szemely diakNev" data-diakid="'.$_diakId.'">'; - echo '<span class="icon-child" data-diakid="'.$_diakId.'"></span>'; // itt is kell a data... + echo '<span class="icon-child" data-diakid="'.$_diakId.'"></span>'; echo '</td>'."\n"; } elseif ($_tanarId>0 && _POLICY=='private') { echo '<td class="szemely tanarNev" data-tanarid="'.$_tanarId.'">'; - echo '<span class="icon-adult" data-tanarid="'.$_tanarId.'"></span>'; // itt is kell a data... + echo '<span class="icon-adult" data-tanarid="'.$_tanarId.'"></span>'; echo '</td>'."\n"; } if ($_tankorId>0 && _POLICY=='private') { //--TODO css class szemely->csoport - echo '<td class="szemely tankorAdat" data-tankorid="'.$_tankorId.'">'; + echo '<td class="csoport tankorAdat" data-tankorid="'.$_tankorId.'">'; echo '<span class="icon-group" data-tankorid="'.$_tankorId.'"></span>'; echo '</td>'."\n"; } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/import/tantargyFelosztas.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/import/tantargyFelosztas.phtml index 3cd8691b..5fe6435a 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/import/tantargyFelosztas.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/import/tantargyFelosztas.phtml @@ -21,6 +21,7 @@ echo '<style type="text/css"> table.ttf { background-color: #eee;} + table.ttf thead tr th { background-color: #ddd;border-bottom: solid 1px #888; padding: 4px;} table.ttf tr.tankorHozzarendel2.exact td { background-color: cornflowerblue} table.ttf tr.tankorHozzarendel td { background-color: yellow} table.ttf tr.tankorHozzarendel2 td { background-color: orange} @@ -30,6 +31,7 @@ table.ttf tr.done td { background-color: lightgreen;} table.ttf tr td {padding:4px;} + table.ttf tr td div.tankorLista span:hover { color: white; } </style>'; // FILTEREZÉS @@ -45,7 +47,7 @@ echo '<table class="ttf" cellspacing="1">'; echo '<thead>'; - echo '<tr>'; +/* echo '<tr>'; echo '<th>'; echo 'Csoportnév'; echo '</th>'; @@ -55,11 +57,12 @@ echo '<th>'; echo '</th>'; echo '</tr>'; - echo '<tr>'; +*/ echo '<tr>'; echo '<th colspan="6">'; foreach ( array('tankorHozzarendel','tankorHozzarendel2','tankorHozzarendel3','done','createTankor') as $k => $v) { echo '<input type="checkbox" name="'.$v.'" value="'.$v.'" checked="checked" />'; } + echo '<button type="button" class="nevsorSzinkron_btn">minden kész névsort szinkronizálásra jelöl</button>'; echo '</th>'; echo '</tr>'; echo '</thead>'; @@ -78,8 +81,9 @@ $_class = ''; } echo '<tr class="'.$D['action'].' '.$_class.'">'; - echo '<td>'.$D['csoportNev'].'</td>'; + echo '<td class="tankorCsoportAdat" data-tankorcsoportid="'.$D['csoportId'].'">'.$D['csoportNev'].'</td>'; echo '<td style="font-size:10px">'; + echo '<div>'; for ($j=0;$j<count($ADAT['csoportAdat'][$D['csoportNev']]['diakNevsor']); $j++) { echo $ADAT['csoportAdat'][$D['csoportNev']]['diakNevsor'][$j]; @@ -99,11 +103,11 @@ echo '<select name="tankor2csoport[]">'; echo '<option>--'.$D['action'].'--</option>'; for ($j=0; $j<count($D['displayTankor']); $j++) { - $_SEL = (count($D['displayTankor'])==1) ? ' selected="selected" ': ''; + $_SEL = (count($D['displayTankor'])==1 && $D['action']=='tankorHozzarendel') ? ' selected="selected" ': ''; echo '<option value="'.$D['csoportId'].':####:'.$D['tanarId'].':####:'.$D['displayTankor'][$j]['tankorId'].':####:'.$D['oraszam'].'" '.$_SEL.'>'.$D['displayTankor'][$j]['tankorNev'].'</option>'; } echo '</select>'; - echo '<div style="font-size:10px;">'; + echo '<div class="tankorLista">'; for ($j=0; $j<count($D['displayTankor']); $j++) { $_tankorId = $D['displayTankor'][$j]['tankorId']; $_diffCount = count(array_diff( @@ -115,7 +119,7 @@ echo '('.$_tankorId.') tag: '.count($ADAT['tankorDiak'][$_tankorId]); echo " -- diff:" .$_diffCount; - if ($_diffCount == 0) echo '*******'; + if ($_diffCount == 0) echo ' *******'; } echo '</div>'; // ha ezt összehasonlítom a mayorban rögzített névsorral, akkor eldönhető lehet, hogy melyik a jó választás! @@ -125,12 +129,31 @@ echo 'Új tankör létrehozása: <input type="text" name="ujTankor[]" value="'.$D['csoportId'].':####:'.$D['tanarId'].':####:'.$_osztalyok.':####:'.$D['targyId'].'.'.':####:'.$_O.':####:'.$D[1].'" />'; } else { echo '<div class="tankor tankorAdat tankorNev" data-tankorid="'.$D['tankorId'].'">'.$D['tankorId'].'</div>'; + + echo '<input type="checkbox" name="nevsorSzinkronFelulir[]" value="'.$D['csoportId'].':####:'.$D['tankorId'].'" class="nevsorSzinkronizal" />névsor felülír import alapján'; + + + /* + echo '<label for="tnf_'.$i.'_1"><span class="icon-record"></span>'; + echo ' nem frissít</label>'; + echo '<input type="radio" name="tankorNevsorFrissit[]" value="" id="tnf_'.$i.'_1" />'; + echo '<br/>'; + echo '<label for="tnf_'.$i.'_2"><span class="icon-random"></span>'; + echo ' importál (kibővít)</label>'; + echo '<input type="radio" name="tankorNevsorFrissit[]" value="'.$D['csoportId'].':####:'.$D['tankorId'].'" id="tnf_'.$i.'_2" />'; + echo '<br/>'; + echo '<label for="tnf_'.$i.'_3"><span class="icon-download"></span>'; + echo ' töröl és importál</label>'; + echo '<input type="radio" name="tankorNevsorFrissit[]" value="'.$D['csoportId'].':####:'.$D['tankorId'].'" id="tnf_'.$i.'_3" />'; + */ } echo '</td>'; echo '</tr>'; } echo '</table>'; + echo '<input type="submit" />'; + formEnd(); } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankor.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankor.phtml index 2401da8f..4467fb48 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankor.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/intezmeny/tankor.phtml @@ -28,7 +28,12 @@ global $TANKOR_TIPUS; /* $TOPOST['tankoradat'] */ - + + $tankorNevExtra = $TOPOST['tankoradat']['tankorNevExtra']; + if ($tankorNevExtra!='' && !in_array($tankorNevExtra,array_values($TANKOR_TIPUS))) { + $TANKOR_TIPUS[$tankorNevExtra] = $tankorNevExtra; + } + if (!is_array($TARGY)) return false; $SZEMCHECK = array(); for ($i=0; $i<count($TOPOST['szemeszterek']); $i++) { @@ -87,10 +92,10 @@ $_tipus=$TOPOST['tankoradat']['tipus']; } echo '<select name="tipus">'; - foreach ($TANKOR_TIPUS as $_k=>$_v) { - $_SEL = ($_v==$_tipus) ? ' selected="selected"':''; - echo '<option value="'.$_v.'"'.$_SEL.'>'.$_k.' - '.$_v.'</option>'; - } + foreach ($TANKOR_TIPUS as $_k=>$_v) { + $_SEL = ($_v==$_tipus) ? ' selected="selected"':''; + echo '<option value="'.$_v.'"'.$_SEL.'>'.$_k.' - '.$_v.'</option>'; + } echo '</select>'; if (defined('__AKG_TANKORNEV') && __AKG_TANKORNEV === true) { echo '<input type="checkbox" name="tankorNevMegorzes" value="true" />'; @@ -133,7 +138,7 @@ echo '</td>'; if (count($TOPOST['tankorcsoport']['idk'])>1) { echo '<td rowspan="5" class="tankorCsoportok">'; - echo '<div class="header">'._TANKORCSOPORTOK.'</div>'; + echo '<div class="header">'._TANKOROK_CSOPORTBAN.'</div>'; echo '<ul>'; for ($i=0; $i<count($TOPOST['tankorcsoport']['idk']); $i++){ $_TA = $TOPOST['tankorcsoport']['adat'][$TOPOST['tankorcsoport']['idk'][$i]][0]; @@ -204,22 +209,32 @@ if (count($TOPOST['tankorcsoport']['idk'])>1) { */ echo '</td>'; echo '</tr>'; -/* REV 2185++ - tól nem kell, nem lehet. A típus determinál - echo '<tr>'; - echo '<th>'._JELENLET.'</th>'; - + echo '<tr>'; + echo '<th>'._TANKORCSOPORTOK.' '.$ADAT['tanev']; + echo '</th>'; echo '<td>'; - if (isset($TOPOST['tankoradat']['jelenlet'])) $_CHK[$TOPOST['tankoradat']['jelenlet']] = ' checked="checked"'; - else $_CHK['kötelező'] = ' checked="checked"'; - echo '<label for="jelKot">'._KOTELEZO.'</label>'; - echo '<input type="radio" id="jelKot" name="jelenlet" value="kötelező" '.$_CHK['kötelező'].' />'; - echo '<label for="jelNemKot">'._NEMKOTELEZO.'</label>'; - echo '<input type="radio" id="jelNemKot" name="jelenlet" value="nem kötelező" '.$_CHK['nem kötelező'].' />'; + if ($ADAT['tanev'] == __TANEV) { + echo '<select name="csoportId" style="width:200px;">'; + echo '<option>-</option>'; + for ($i=0; $i<count($ADAT['tankorCsoportok']); $i++) { + $CS = $ADAT['tankorCsoportok'][$i]; + echo '<option value="'.$CS['csoportId'].'">'.$CS['csoportNev'].'</option>'; + } + echo '</select>'; + echo '<input type="submit" />'; + for ($i=0; $i<count($ADAT['tankorTankorCsoportjai']); $i++) { + $CS = $ADAT['tankorTankorCsoportjai'][$i]; + echo '<span class="tankorCsoportAdat" data-tankorcsoportid="'.$CS['csoportId'].'">'.$CS['csoportNev'].'</span>'; + } + + + } else { + echo 'Nem módosítható'; + } echo '</td>'; - echo '</tr>'; -*/ + echo '</table>'; echo '<input type="hidden" id="jelKot" name="jelenlet" value="kötelező" />'; @@ -259,7 +274,7 @@ if (count($TOPOST['tankorcsoport']['idk'])>1) { echo '</table>'."\n\n"; echo '<h2>'._RESZTVEVO_OSZTALYOK.'</h2>'; - echo '<table>'; + echo '<table class="osztalyok">'; echo '<tr><th>'._OSZTALYJELE.'</th><th></th><th>'._LEIRAS.'</th></tr>'."\n"; for ($i=0; $i<count($OSZTALY); $i++) { if (is_array($ADAT['tankorOsztalyok']) && in_array($OSZTALY[$i]['osztalyId'],$ADAT['tankorOsztalyok'])) $_class="vanTag"; else $_class=""; diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarend.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarend.phtml index eccebf8a..b8d74048 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarend.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarend.phtml @@ -61,7 +61,7 @@ $T = $ADAT['orarend']['assoc']; if (MAYOR_SOCIAL === true) { - echo '<h2 class="mayorSocialEdition">MaYoR Social Edition</h2>'; + // echo '<h2 class="mayorSocialEdition">MaYoR Social Edition</h2>'; formBegin(); echo '<input type="hidden" name="action" value="orarendiOraTeremModosit" />'; echo '<input type="hidden" name="dt" value="'.$ADAT['dt'].'" />'; diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendModosito.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendModosito.phtml index 468d11bf..38fa3a5a 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendModosito.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/orarend/orarendModosito.phtml @@ -24,6 +24,25 @@ echo ' (a törlés és teremmódosítás nem vonatkozik a már betöltött órákra)'; echo '</div>'; } + + echo '<div class="orarendModositoToolbox">'; + echo '<button type="button" id="tankorAjanlo">Tankör Ajánló</button>'; + echo ' Lerakott órák száma: <input type="text" id="sumOraszam" value="0">'; + + if (is_array($ADAT['tankorok'])) { + echo '<table class="tanarTankor" style="display:none">'; + foreach($ADAT['tankorok'] as $_tankorId => $_tankorAdat) { + echo '<tr>'; + echo '<td class="tankorAdat" data-tankorid="'.$_tankorId.'">'.$_tankorAdat[0]['tankorNev'].'</td>'; + echo '<td>'.$_tankorAdat[0]['oraszam'].'</td>'; + echo '<td>'.$_tankorAdat[1]['oraszam'].'</td>'; + echo '</tr>'; + } + echo '</table>'; + } + echo '<button type="button" id="tankorHelper">Toolbox</button>'; + echo '</div>'; + echo '<input type="hidden" name="action" value="do" />'; echo '<input type="hidden" name="tanarId" value="'.$ADAT['tanarId'].'" />'; echo '<input type="hidden" name="osztalyId" value="'.$ADAT['osztalyId'].'" />'; @@ -75,24 +94,25 @@ $_tipusClass = str_replace(' ','_',$_ORA['tipus']); // ------------------------------------- /* Megjelenítési rétegé */ - $_class = ($_T['teremId']=='') ? ' nincsTerem draggable':' draggable'; + $_class = ($_T['teremId']=='') ? ' nincsTerem oraKartya':' oraKartya'; echo '<div id="draggable'.(++$sdokrand).'" class="'.$_tipusClass.$_class.'" title="'.$_ORA['tipus'].'" id="D'.$het.'.'.$nap.'.'.$ora.'.'.$_T['tanarId'].'">'; -// Fejlesztés alatt, itt lehet majd felvenni az órát, ha már van órarend -// Igaziból lehet, hogy ezt az órarend felületen célszerűbb lenne megcsinálni -if ($ADAT['vanHaladasi'][$dt]>0) { - echo '<span style=" float:left; color:white; padding: 4px; ">'; - if (isset($ADAT['haladasi']['orak'][$dt][$ora][$_T['tankorId']]['oraId'])) { - echo '<span class="icon-ok-sign oraAdat" data-oraid="'.intval($ADAT['haladasi']['orak'][$dt][$ora][$_T['tankorId']]['oraId']).'" title="ez az óra szerepel a haladási naplóban!"></span>'; - } else { - echo '<span class="icon-minus-sign" title="ez az óra nem szerepel a haladási naplóban!"></span>'; - // dt-ora-ki,tankorId,teremId,tipus,eredet,feladatTipusId,munkaido - } - echo '</span >'; -} + // Itt lehet felvenni az órát, ha már van órarend + if ($ADAT['vanHaladasi'][$dt]>0) { + echo '<span style=" float:left; color:white; padding: 4px; ">'; + if (isset($ADAT['haladasi']['orak'][$dt][$ora][$_T['tankorId']]['oraId'])) { + echo '<span class="icon-ok-sign oraAdat" data-oraid="'.intval($ADAT['haladasi']['orak'][$dt][$ora][$_T['tankorId']]['oraId']).'" title="ez az óra szerepel a haladási naplóban!"></span>'; + } else { + echo '<span class="icon-minus-sign" title="ez az óra nem szerepel a haladási naplóban!"></span>'; + // dt-ora-ki,tankorId,teremId,tipus,eredet,feladatTipusId,munkaido + } + echo '</span >'; + } + // $_ferohely = $ADAT['termek'][$_T['teremId']]['ferohely']; $_letszam = $ADAT['tankorLetszamok'][$_T['tankorId']]; if ($_T['tankorId']!='') { + $_tankorEvesOraszam = floatval(($ADAT['tankorok'][$_T['tankorId']][0]['oraszam']+$ADAT['tankorok'][$_T['tankorId']][1]['oraszam'])/2); // HACK - találjuk ki, hogy mi a kulcsa a kártyának for ($_k=0; $_k<count($ADAT['orarend']['orarendiOra'][$het][$nap][$ora]); $_k++) { $_tmp = $ADAT['orarend']['orarendiOra'][$het][$nap][$ora][$_k]; @@ -102,8 +122,8 @@ if ($ADAT['vanHaladasi'][$dt]>0) { } unset($_tmp); // ------- if ($_kulcsTolDt!='') echo '<input type="checkbox" class="minusz" name="ORARENDMINUSZ[]" value="'.$het.'.'.$nap.'.'.$ora.'.'.$_T['tanarId'].'.'.$dt.'.'.$_kulcsTolDt.'" title="'._TOROL.'" />'."\n"; - echo '<span title="'.$_targyJel.' '.$_osztalyJel.' ('.$ADAT['tankorok'][$_T['tankorId']][0]['tankorId'].') '.$_tankorTipus.'" >'; - echo $ADAT['tankorok'][$_T['tankorId']][0]['tankorNev']; + echo '<span title="'.$_targyJel.' '.$_osztalyJel.' ('.$ADAT['tankorok'][$_T['tankorId']][0]['tankorId'].') '.$_tankorTipus.'" class="tankorAdat" data-tankorid="'.$ADAT['tankorok'][$_T['tankorId']][0]['tankorId'].'" data-tankorevesoraszam="'.$_tankorEvesOraszam.'">'; + echo $ADAT['tankorok'][$_T['tankorId']][0]['tankorNev']; echo '</span>'; //echo '<input type="checkbox" name="CSERE[]" value="'.$het.'.'.$nap.'.'.$ora.'.'.$_T['tanarId'].'" title="'._CSEREL.'" />'."\n"; } else { @@ -114,12 +134,14 @@ if ($ADAT['vanHaladasi'][$dt]>0) { _putTerem(array('name'=>'T_'.$het.'_'.$nap.'_'.$ora.'_'.$_T['tanarId'].'_'.$_kulcsTolDt, 'teremId'=>$_T['teremId']),$ADAT['termek']); echo '<br/>'; if ($_ORA['kit']!='') { - echo '<span class="helyett">'; - echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + echo '<span class="helyett tanarAdat tanarNev" data-tanarid="'.$_T['tanarId'].'">'; + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; echo '</span>'; - if ($_ORA['ki']!='') echo ' '.$ADAT['tanarok'][$_ORA['ki']]['tanarNev']; + if ($_ORA['ki']!='') echo ' <span class="tanarAdat tanarNev" data-tanarid="'.$_ORA['ki'].'">'.$ADAT['tanarok'][$_ORA['ki']]['tanarNev'].'</span>'; } else { - echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + echo '<span class="tanarAdat tanarNev" data-tanarid="'.$_T['tanarId'].'">'; + echo $ADAT['tanarok'][$_T['tanarId']]['tanarNev']; + echo '</span>'; } echo '</div>'; @@ -133,15 +155,18 @@ if ($ADAT['vanHaladasi'][$dt]>0) { } + + $__tankorIdHelper = 0; if (isset($ADAT['haladasi']['orak'][$dt][$ora])) { foreach($ADAT['haladasi']['orak'][$dt][$ora] as $__tankorId => $_O) { if (!in_array($__tankorId,$CELLATANKORIDK)) { //$_O = $ADAT['haladasi']['orak'][$dt][$ora][$_T['tankorId']]; - echo '<div class="haladasiOra oraAdat '.($_O['tipus']).'" data-oraid="'.$_O['oraId'].'">'; + $__tankorIdHelper = $_O['tankorId']; // ha több van, az utolsó lesz + echo '<div class="haladasiOra oraAdat '.($_O['tipus']).'" data-oraid="'.$_O['oraId'].'" data-tankorid="'.$_O['tankorId'].'">'; echo '<span class="icon-time" style="margin:3px 3px;color:white; float:left;"></span>'; if (!in_array($_O['tipus'],array('elmarad','elmarad_máskor'))) echo '<input type="checkbox" name="HALADASIORATOROL[]" value="'.$_O['oraId'].'" />'; - echo $ADAT['tankorok'][ $__tankorId ][0]['tankorNev']; + echo $ADAT['tankorok'][$__tankorId][0]['tankorNev']; // array(13) { ["oraId"]=> string(5) "37936" ["dt"]=> string(10) "2016-01-08" ["ora"]=> string(2) "10" ["ki"]=> string(2) "81" ["kit"]=> NULL ["tankorId"]=> string(4) "3086" ["teremId"]=> NULL ["leiras"]=> string(0) "" ["tipus"]=> string(6) "egyéb" ["eredet"]=> string(8) "órarend" ["feladatTipusId"]=> NULL ["munkaido"]=> string(10) "lekötött" ["oo"]=> bool(false) echo '<br/>'.$_O['tipus']; echo ' '.$_O['eredet']; @@ -152,7 +177,7 @@ if ($ADAT['vanHaladasi'][$dt]>0) { } } if (count($T[$nap][$ora]['orak'])==0 || !in_array($ADAT['tanarId'],$__tanarIdk)) { - _putPluszOra($het,$nap,$ora,$TANKOROK,$BLOKKOK); + _putPluszOra($het,$nap,$ora,$TANKOROK,$BLOKKOK,$__tankorIdHelper); //echo '<input type="checkbox" name="CSERE[]" value="'.$het.'.'.$nap.'.'.$ora.'.'.$_T['tanarId'].'" />'; } //echo '<div class="draggable" style="height:10px; font-size:1px;"> </div>'; @@ -271,18 +296,20 @@ for ($oi=0; $oi<count($ADAT['orarendioraTankor']['orarendiOra'][$het][$nap][$ora function putOrarendPlain($ADAT) { } - function _putPluszOra($het,$nap,$ora,$TANKOROK,$BLOKKOK) { + function _putPluszOra($het,$nap,$ora,$TANKOROK,$BLOKKOK, $tankorIdHelper = null) { echo '<select name="ORARENDPLUSZ[]">'; echo '<option value="">'."$het-$nap-$ora".'</option>'; echo '<optgroup class="tankor" label="'._TANKOR.'">'; for ($i=0; $i<count($TANKOROK); $i++) { + $helperStr = ($TANKOROK[$i]['tankorId'] == $tankorIdHelper) ? ' ***': ''; + $helperHint = ($TANKOROK[$i]['tankorId'] == $tankorIdHelper) ? '1': '0'; $key = "T.$het.$nap.$ora.".($_id = $TANKOROK[$i]['tankorId']).'.'.$TANKOROK[$i]['tanarok'][0]['tanarId']; $value = $TANKOROK[$i]['tankorNev'].' ('.$_id.')'; for ($j=0; $j<count($TANKOROK[$i]['tanarok']);$j++) $value .= ' '.$TANKOROK[$i]['tanarok'][$j]['tanarNev']; - echo '<option value="'.$key.'">'.$value.'</option>'."\n"; + echo '<option value="'.$key.'" data-hint="'.$helperHint.'">'.$value.$helperStr.'</option>'."\n"; } echo '</optgroup><optgroup class="blokk" label="'._BLOKK.'">'; for ($i=0; $i<count($BLOKKOK); $i++) { diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/dolgozat.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/dolgozat.phtml index e145b5fc..5b26a9b9 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/dolgozat.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/dolgozat.phtml @@ -51,8 +51,11 @@ $Tankorok = $Dolgozat[$dolgozatId]['tankor']; $TankorLista = array(); - for ($t = 0; $t < count($Tankorok); $t++) $TankorLista[] = $Tankorok[$t]['tankorNev']; - echo implode('<br />',$TankorLista); + for ($t = 0; $t < count($Tankorok); $t++) { + $_T = $Tankorok[$t]; + $TankorLista[] = $Tankorok[$t]['tankorNev']; + echo '<span class="tankorAdat" data-tankorid="'.$_T['tankorId'].'">'.$_T['tankorNev'].'</span>'; + } echo '</td>'; echo '<td>'; @@ -74,7 +77,6 @@ echo '</td>'; echo '</tr>'; - flush(); } } else { echo '<tr>'; @@ -85,7 +87,10 @@ echo '</table>'; echo '<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>'; - echo '<div id="chart_div"></div>'; + echo '<table align="center" style="width:90%; border: solid 1px #888;">'; + echo '<tr><th>'; + echo '<div id="chart_div""></div>'; + echo '</th></tr></table>'; } function putDolgozat($Dolgozat, $valaszthatoTankorok, $Tanarok, $ADAT) { diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/tankor.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/tankor.phtml index 48dd33ec..43455749 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/tankor.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/osztalyozo/tankor.phtml @@ -88,7 +88,7 @@ echo '<tr>'."\n"; echo '<th class="nev" colspan="'.($colSpan+1).'">'."\n"; - echo $Jegyek['tankörök'][$tankorId]['tankorNev']; + echo '<span class="tankorAdat" data-tankorid="'.$tankorId.'">'.$Jegyek['tankörök'][$tankorId]['tankorNev'].'</span>'; //_inlineHelp(''); echo ' ('.implode(', ',$Jegyek['tanárok']['tanarNevek']).')'; echo '</th>'."\n"; diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorCsoport.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorCsoport.phtml index dda6a6dc..aff9a3df 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorCsoport.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/tanev/tankorCsoport.phtml @@ -123,7 +123,7 @@ formBegin(array('class'=>'csoportKereses')); - echo '<input type="hidden" name="action" value="tankorCsoportokKeresese" />'."\n"; + echo '<input type="hidden" name="action" value="tankorCsoportHozzarendesTorles" />'."\n"; echo '<input type="hidden" name="osztalyId" value="'.$osztalyId.'" />'."\n"; echo '<table>'."\n"; @@ -133,19 +133,28 @@ echo '</tr>'."\n"; foreach ($ADAT['tankorCsoportAdat'] as $csoportId => $TANKORCSOPORT) { echo '<tr>'."\n"; - echo '<th>'.$TANKORCSOPORT[0]['csoportNev'].'</th>'; + echo '<th class="tankorCsoportAdat" data-tankorcsoportid="'.$csoportId.'">'.$TANKORCSOPORT[0]['csoportNev'].'</th>'; echo '<th>'.$csoportId.'</th>'; echo '<td>'; for ($i=0; $i<count($TANKORCSOPORT); $i++) { $D = $TANKORCSOPORT[$i]; + if ($D['tankorId']>0) { + echo '<input type="checkbox" name="hozzarendelesMegszuntetes[]" value="'.$csoportId.':'.$D['tankorId'].'" />'; echo '<span class="tankorAdat" data-tankorid="'.$D['tankorId'].'" style="padding:4px 2px;">'.$D['tankorNev'].'</span>'; - + } } echo '</td>'; echo '</tr>'."\n"; } + echo '<tr>'; + echo '<th colspan="3">'; + echo '<input type="submit" value="A kijelölt hozzárendelések törlése" />'; + echo '</th>'; + echo '</tr>'."\n"; + echo '</table>'."\n"; + formEnd(); } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/tanevek.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/tanevek.jquery.min.js new file mode 100644 index 00000000..0f326864 --- /dev/null +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/admin/tanevek.jquery.min.js @@ -0,0 +1,89 @@ +$(function() { + + $('input.date').change(function() { + + var ujSzemeszter_1_kezdesDt = $('#ujSzemeszter_1_kezdesDt').datetimepicker('getDate'); + var ujSzemeszter_1_zarasDt = $('#ujSzemeszter_1_zarasDt'); + var ujSzemeszter_2_kezdesDt = $('#ujSzemeszter_2_kezdesDt'); + var ujSzemeszter_2_zarasDt = $('#ujSzemeszter_2_zarasDt'); + + }); + + var ujSzemeszter_1_kezdesDt = $('#ujSzemeszter_1_kezdesDt'); + var ujSzemeszter_1_zarasDt = $('#ujSzemeszter_1_zarasDt'); + var ujSzemeszter_2_kezdesDt = $('#ujSzemeszter_2_kezdesDt'); + var ujSzemeszter_2_zarasDt = $('#ujSzemeszter_2_zarasDt'); + + ujSzemeszter_1_kezdesDt.datetimepicker('option', 'onSelect', + function (selectedDateTime) { + ujSzemeszter_1_zarasDt.datetimepicker('option', 'minDate', ujSzemeszter_1_kezdesDt.datetimepicker('getDate') ); + } + ); + ujSzemeszter_1_kezdesDt.datetimepicker('option', 'onClose', + function(dateText, inst) { + if (ujSzemeszter_1_zarasDt.val() != '') { + var testStartDate = ujSzemeszter_1_kezdesDt.datetimepicker('getDate'); + var testEndDate = ujSzemeszter_1_zarasDt.datetimepicker('getDate'); + if (testStartDate > testEndDate) + ujSzemeszter_1_zarasDt.datetimepicker('setDate', testStartDate); + } else { + ujSzemeszter_1_zarasDt.val(dateText); + } + } + ); + ujSzemeszter_1_zarasDt.datetimepicker('option', 'onSelect', + function (selectedDateTime) { + ujSzemeszter_1_kezdesDt.datetimepicker('option', 'maxDate', ujSzemeszter_1_zarasDt.datetimepicker('getDate') ); + ujSzemeszter_2_kezdesDt.datetimepicker('option', 'minDate', ujSzemeszter_1_zarasDt.datetimepicker('getDate') ); + } + ); + ujSzemeszter_1_zarasDt.datetimepicker('option', 'onClose', + function(dateText, inst) { + if (ujSzemeszter_1_kezdesDt.val() != '') { + var testStartDate = ujSzemeszter_1_kezdesDt.datetimepicker('getDate'); + var testEndDate = ujSzemeszter_1_zarasDt.datetimepicker('getDate'); + if (testStartDate > testEndDate) + ujSzemeszter_1_kezdesDt.datetimepicker('setDate', testEndDate); + } else { + ujSzemeszter_1_kezdesDt.val(dateText); + } + } + ); + + ujSzemeszter_2_kezdesDt.datetimepicker('option', 'onSelect', + function (selectedDateTime) { + ujSzemeszter_2_zarasDt.datetimepicker('option', 'minDate', ujSzemeszter_2_kezdesDt.datetimepicker('getDate') ); + ujSzemeszter_1_zarasDt.datetimepicker('option', 'maxDate', ujSzemeszter_2_kezdesDt.datetimepicker('getDate') ); + } + ); + ujSzemeszter_2_kezdesDt.datetimepicker('option', 'onClose', + function(dateText, inst) { + if (ujSzemeszter_2_zarasDt.val() != '') { + var testStartDate = ujSzemeszter_2_kezdesDt.datetimepicker('getDate'); + var testEndDate = ujSzemeszter_2_zarasDt.datetimepicker('getDate'); + if (testStartDate > testEndDate) + ujSzemeszter_2_zarasDt.datetimepicker('setDate', testStartDate); + } else { + ujSzemeszter_2_zarasDt.val(dateText); + } + } + ); + ujSzemeszter_2_zarasDt.datetimepicker('option', 'onSelect', + function (selectedDateTime) { + ujSzemeszter_2_kezdesDt.datetimepicker('option', 'maxDate', ujSzemeszter_2_zarasDt.datetimepicker('getDate') ); + } + ); + ujSzemeszter_2_zarasDt.datetimepicker('option', 'onClose', + function(dateText, inst) { + if (ujSzemeszter_2_kezdesDt.val() != '') { + var testStartDate = ujSzemeszter_2_kezdesDt.datetimepicker('getDate'); + var testEndDate = ujSzemeszter_2_zarasDt.datetimepicker('getDate'); + if (testStartDate > testEndDate) + ujSzemeszter_2_kezdesDt.datetimepicker('setDate', testEndDate); + } else { + ujSzemeszter_2_kezdesDt.val(dateText); + } + } + ); + +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/import/tantargyFelosztas.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/import/tantargyFelosztas.jquery.min.js index f1a2f730..84d9a911 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/import/tantargyFelosztas.jquery.min.js +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/import/tantargyFelosztas.jquery.min.js @@ -6,6 +6,9 @@ $(function() { cls = element.val(); $('table.ttf tr.'+element.val()).toggle(); }); -}); + $('table.ttf button.nevsorSzinkron_btn').bind('click', function() { + $('table.ttf tbody input[type="checkbox"].nevsorSzinkronizal').prop( "checked", true ); + }); +}); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/naplo.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/naplo.jquery.min.js index fd9e8336..d35c38c7 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/naplo.jquery.min.js +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/naplo.jquery.min.js @@ -113,6 +113,19 @@ $(function() { }); + $(document).on('click', '.tankorCsoportAdat', function(event) { + element = $(event.target); + var elementData = element.data(); + var ID = ''; + if ( elementData.hasOwnProperty('tankorcsoportid')==true ) { + ID = element.data('tankorcsoportid'); + } else if ( $(this).data().hasOwnProperty('tankorcsoportid')==true ) { + ID = $(this).data('tankorcsoportid'); + } + if (ID!='') ajaxGetTankorCsoportAdat(ID); + + }); + $(document).on('click', '.osztalyAdat', function(event) { element = $(event.target); var elementData = element.data(); @@ -289,6 +302,22 @@ ajaxGetTankorAdat = function(tankorId) { //console.log(jqXHR); }); } +ajaxGetTankorCsoportAdat = function(tankorCsoportId) { + postData = { 'tankorCsoportId':tankorCsoportId, 'mayorToken': ($('body').data('mayortoken')) } + $.ajax({ + type: "POST", + url: "index.php?page=naplo&sub=tools&f=getTankorCsoportAdat&policy=private&skin=ajax&sessionID="+$('body').data('sessionid'), + data: postData, + dataType: 'json' + }).done(function( msg, status, jqXHR ) { + processJSONTankorCsoportAdat(msg); + updateSalt(jqXHR.getResponseHeader('Etag')); + mayorNaploEventHandlers(); + }).fail(function( jqXHR, textStatus, errorThrown ) { + //console.log('hiba történt!'+textStatus); + //console.log(jqXHR); + }); +} ajaxGetOsztalyAdat = function(osztalyId) { postData = { 'osztalyId':osztalyId, 'mayorToken': ($('body').data('mayortoken')) } $.ajax({ @@ -642,14 +671,20 @@ processJSONTanarAdat = function( adat ) { if (adat['tovabbkepzesForduloDt']!='') content += '<li>Továbbképzés forduló dátum: '+adat['tovabbkepzesForduloDt']+'</li>'; content += '</ul>'; } - content += '<span style="display:none" id="mayorsidewindowtype" data-mayorsidewindowtype="tanar"></span>'; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='tanar' ) { $('#updateWindowSideSubTitle').html('<a href="'+href({'page':'naplo','sub':'intezmeny','f':'tanar','tanarId':adat['tanarId']})+'">'+adat['tanarNev']+'</a>'); $('#updateWindowSideSubContent').html(content); + $('#mayorsidewindowtype').data('mayorsidewindowtypesub','tanar'); $('#updateWindowSideSub').addClass('nyitva'); } else { + content += '<span style="display:none" id="mayorsidewindowtype" data-mayorsidewindowtype="tanar"></span>'; + if ($('#updateWindowSideSub').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtypesub')!='tanar') { + $('#updateWindowSideSub').removeClass('nyitva'); + } $('#updateWindowSideTitle').html('<a href="'+href({'page':'naplo','sub':'intezmeny','f':'tanar','tanarId':adat['tanarId']})+'">'+adat['tanarNev']+'</a>'); $('#updateWindowSideContent').html(content); + $('#mayorsidewindowtype').data('mayorsidewindowsubtype',''); $('#updateWindowSide').addClass('nyitva'); } @@ -814,15 +849,18 @@ processJSONOsztalyAdat = function(adat) { content += '<div id="mayorNaviIconHolder">'; content += '<div class="mayorNaviIcon"><a href="'+href({'page':'naplo','sub':'orarend','f':'orarend','osztalyId':adat['osztalyId']})+'"><span class="icon-th"></span><br/>Órarend</a></div>'; content += '<div class="mayorNaviIcon"><a href="'+href({'page':'naplo','sub':'haladasi','f':'haladasi','osztalyId':adat['osztalyId']})+'"><span class="icon-file-edit-alt"></span><br/>Haladási</a></div>'; + content += '<div class="mayorNaviIcon"><a href="'+href({'page':'naplo','sub':'intezmeny','f':'osztaly','osztalyId':adat['osztalyId']})+'"><span class="icon-cog"></span><br/>Beállítások</a></div>'; content += '</div>'; + title = '<a href="'+ href({'page':'naplo','sub':'intezmeny','f':'osztaly','osztalyId':adat['osztalyId']}) +'">'+adat['nev']+'</a>'; + content += '<span style="display:none" id="mayorsidewindowtype" data-mayorsidewindowtype="osztaly"></span>'; if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='osztaly' ) { - $('#updateWindowSideSubTitle').html(adat['nev']); + $('#updateWindowSideSubTitle').html(title); $('#updateWindowSideSubContent').html(content); $('#updateWindowSideSub').addClass('nyitva'); } else { - $('#updateWindowSideTitle').html(adat['nev']); + $('#updateWindowSideTitle').html(title); $('#updateWindowSideContent').html(content); $('#updateWindowSide').addClass('nyitva'); } @@ -865,6 +903,14 @@ processJSONTankorAdat = function(adat) { content += '<li>óraszám: '+adat['oraszam']+'</li>'; content += '</ul>'; + if (typeof(adat.tankorCsoport) !== 'undefined') if (adat.tankorCsoport.length>0) { // todo + content += '<h3>Tankörcsoport ('+adat.tankorCsoport.length+')</h3>'; + content += '<ul>'; + for (i=0; i<adat.tankorCsoport.length; i++) { + content += '<li>'+adat.tankorCsoport[i].csoportNev+'</li>'; + } + content += '</ul>'; + } if (adat.tankorBlokk.length>0) { content += '<h3>Tankörblokk ('+adat.tankorBlokk.length+')</h3>'; content += '<ul>'; @@ -891,14 +937,16 @@ processJSONTankorAdat = function(adat) { content += '<h3>Osztályok</h3>'; content += '<ul>'; if (adat.osztalyIds!=undefined) { - for (i=0; i<adat.osztalyIds.length; i++) { + for (i=0; i<adat.osztalyIds.length; i++) { osztalyId = adat.osztalyIds[i]; for (j=0; j<adat.osztalyok.length; j++) { var index = adat.osztalyok[j].osztalyId if (index == osztalyId) osztalyAdat = adat.osztalyok[j]; } - content += '<li><a href="'+ href({'page':'naplo','sub':'intezmeny','f':'osztaly','osztalyId':osztalyId}) +'">'+osztalyAdat.osztalyJel+' ('+osztalyAdat.leiras+') '+osztalyAdat.osztalyfonokNev+'</a></li>'; - } + content += '<li class="osztalyAdat" data-osztalyid="'+osztalyId+'">'+osztalyAdat.osztalyJel+' ('+osztalyAdat.leiras+') '+osztalyAdat.osztalyfonokNev+'</a>'; + // content += '<a href="'+ href({'page':'naplo','sub':'intezmeny','f':'osztaly','osztalyId':osztalyId}) +'"> <span class="icon-cog"> </a></li>'; + content += '</li>'; + } } content += '</ul>'; @@ -915,20 +963,55 @@ processJSONTankorAdat = function(adat) { } content += '</ul>'; - content += '<span style="display:none" id="mayorsidewindowtype" data-mayorsidewindowtype="tankor"></span>'; if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='tankor' ) { -// $('#updateWindowSideSubTitle').html(adat['tankorNev']); $('#updateWindowSideSubTitle').html('<a href="'+href({'page':'naplo','sub':'intezmeny','f':'tankor','tankorId':adat['tankorId']})+'">'+adat['tankorNev']+'</a>'); $('#updateWindowSideSubContent').html(content); - $('#updateWindowSideSub').addClass('nyitva'); + $('#mayorsidewindowtype').data('mayorsidewindowtypesub','tankor'); + $('#updateWindowSideSub').addClass('nyitva'); } else { -// $('#updateWindowSideTitle').html(adat['tankorNev']); + if ( $('#updateWindowSideSub').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtypesub')!='tankor' ) { + $('#updateWindowSideSub').removeClass('nyitva'); + } + content += '<span style="display:" id="mayorsidewindowtype" data-mayorsidewindowtype="tankor" data-mayorsidewindowtypesub=""></span>'; $('#updateWindowSideTitle').html('<a href="'+href({'page':'naplo','sub':'intezmeny','f':'tankor','tankorId':adat['tankorId']})+'">'+adat['tankorNev']+'</a>'); $('#updateWindowSideContent').html(content); + $('#mayorsidewindowtype').data('mayorsidewindowsubtype',''); $('#updateWindowSide').addClass('nyitva'); } + // IDE + +} + +processJSONTankorCsoportAdat = function(adat) { + + if (adat.visibleData != true) return false; + var content = ''; + + content += '<div id="mayorNaviIconHolder">'; + content += '</div>'; + + if (adat.tankorCsoportTankorei.length>0) { + content += '<h3>Tankörök ('+adat.tankorCsoportTankorei.length+')</h3>'; + content += '<ul>'; + for (i=0; i<adat.tankorCsoportTankorei.length; i++) { + var _x = adat.tankorCsoportTankorei[i].tankorAdat[adat.tankorCsoportTankorei[i].tankorId][0]; + var _y = adat.tankorCsoportTankorei[i].tankorAdat[adat.tankorCsoportTankorei[i].tankorId][1]; + content += '<li class="tankorAdat" data-tankorid="'+_x.tankorId+'">'+_x.tankorNev+' '+_x.oraszam+'ó '+_y.oraszam+'ó</li>'; + } + content += '</ul>'; + } // IDE + content += '<span style="display:none" id="mayorsidewindowtype" data-mayorsidewindowtype="tankorCsoport"></span>'; + if ( $('#updateWindowSide').hasClass('nyitva') ==true && $('#mayorsidewindowtype').data('mayorsidewindowtype')!='tankorCsoport' ) { + $('#updateWindowSideSubTitle').html('<a href="'+href({'page':'naplo','sub':'tanev','f':'tankorCsoport','tankorCsoportId':adat['tankorCsoportId']})+'">'+adat['tankorCsoportNev']+' ('+adat['tankorCsoportId']+')</a>'); + $('#updateWindowSideSubContent').html(content); + $('#updateWindowSideSub').addClass('nyitva'); + } else { + $('#updateWindowSideTitle').html('<a href="'+href({'page':'naplo','sub':'tanev','f':'tankorCsoport','tankorCsoportId':adat['tankorCsoportId']})+'">'+adat['tankorCsoportNev']+' ('+adat['tankorCsoportId']+')</a>'); + $('#updateWindowSideContent').html(content); + $('#updateWindowSide').addClass('nyitva'); + } } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.jquery.min.js index ceca5176..7beb8aea 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.jquery.min.js +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.jquery.min.js @@ -2,11 +2,41 @@ $(function() { $('#haladasiModositando').bind('click', function(event) { $target = $(event.target); $target.parent('div').toggleClass('haladasiModositando'); - //alert('Ez a funkció egy új fejlesztés!'); - //console.log($target); }); $('table.orarend tbody tr td input[type=checkbox]').click(function() { $(this).closest('div').toggleClass('torlesreJelolve'); }); + + $('#tankorAjanlo').click(function() { + $('table#orarend tbody tr td select[name="ORARENDPLUSZ[]"').each(function() { + selectElement = this; + $(this).find('option[data-hint="1"]').attr('selected','selected'); + + }) + }); + + $('div span.tankorAdat').each(function(a) { + elem = $(this); + // v = parseFloat($('#sumOraszam').val()) + parseFloat(elem.data('tankorevesoraszam')); + v = parseInt($('#sumOraszam').val()) + 1; + $('#sumOraszam').val(v); + }); + + $('div.orarendModositoToolbox table.tanarTankor tr td.tankorAdat').hover(function(event) { + $target = $(event.target); + $('div.oraKartya span[data-tankorid="'+$target.data('tankorid')+'"]').toggleClass('highlight'); + $('div.oraKartya span[data-tankorid="'+$target.data('tankorid')+'"]').parent('div').toggleClass('highlight'); + }); + $('table#orarend span').hover(function(event) { + $target = $(event.target); + $('div.oraKartya span[data-tankorid="'+$target.data('tankorid')+'"]').toggleClass('highlight'); + $('div.oraKartya span[data-tankorid="'+$target.data('tankorid')+'"]').parent('div').toggleClass('highlight'); + }); + + $('#tankorHelper').bind('click', function(event) { + $('div.orarendModositoToolbox table.tanarTankor').toggle(); + }); + + }); diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.js index 25ab35a1..e69de29b 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.js +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/orarend/orarendModosito.js @@ -1,80 +0,0 @@ -/* -Event.observe(window, 'load', myPSFLoader, false); - -function myPSFLoader(evt) { - - doOnChange = function(event) { - var element = $(Event.element(event)); - if (element.hasClassName('orarendTankor')) { - var idArray = element.getAttribute('id').split('_'); - var id = idArray[1]+'_'+idArray[2]+'_'+idArray[3]; - var orarendTankor = element.up('table').getElementsBySelector('select.orarendTankor'); - var ertek = $F(element); - $A(orarendTankor).each( - function (elem, index) { - if (elem.getAttribute('id').include(id)) { - elem.setValue(ertek); - } - } - ); - - } - } - - Event.observe(document.body, 'mayor:change', doOnChange); - - Event.observe(document.body, 'change', doOnChange); - -// Sortable.create('test', { tag:'div', overlap:'horizontal',constraint:false }); - Sortable.create('orarend', { tag:'div', only:'draggable' , - tree: true, - treeTag: 'div', - overlap:'vertical', - dropOnEmpty:true, - constraint:false, - onEnd: function(){ - alert('onEnd'); - }, - onChange:function(e){ -// $('infoBox').update( Form.Element.getValue( e.down('input')) ); - - e.addClassName('moved'); - - e.down('input').checked=false; - e.down('input').hide(); - -// e.down('input').value='test'; - - // ez az eredeti helye (het.nap.ora.tanarId) - $('infoBox1').update( (e.down('input').value) ); - // ez az új helye - $('infoBox2').update( e.up('td').getAttribute('id') ); - - } }); - -// new Draggable('draggable', { revert: true }); -// Droppables.add('droppable', { accept: 'draggable' }); - -// Sortable.create( -// 'sortable', -// {onUpdate:function(){$('debug').update(++callsToOnUpdate+' call(s) to onUpdate')}} -// ); - -// $('targySelect').disable(); -// $('targySelect').hide(); $('mozgat').hide(); -// $('action').value='ujSorrend'; -// $('targyUl').show(); $('submit').show(); - - -// Sortable.create( -// "draggable", -// {dropOnEmpty:true,handle:'handle',containment:["draggable"],constraint:false,onChange:function(){}} -// ); - - -// $('serialize').observe('click', function(event) { -// alert(Sortable.serialize('sortable')); -// }); - -} -*/
\ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/dolgozat.jquery.min.js b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/dolgozat.jquery.min.js index b5a27219..5ec0ede5 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/dolgozat.jquery.min.js +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/javascript/osztalyozo/dolgozat.jquery.min.js @@ -21,15 +21,18 @@ $(function() { }); var chart = new google.visualization.Calendar(document.getElementById('chart_div')); var options = { - title: "Dolgozatok", - height: 350, + title: "Dolgozatok (terhelés)", colorAxis: {colors:['cornflowerblue','#ff0000']}, + calendar: { + daysOfWeek: 'VHKSCPS' + } }; chart.draw(data, options); } -/* google.charts.load('current', {'packages':['timeline']}); +/* + google.charts.load('current', {'packages':['timeline']}); google.charts.setOnLoadCallback(drawChart); function drawChart() { var data = new google.visualization.dataTable(); |