diff options
34 files changed, 528 insertions, 34 deletions
diff --git a/mayor-orig/install/module-naplo/mysql/tanev.sql b/mayor-orig/install/module-naplo/mysql/tanev.sql index 0499a66c..23507fda 100644 --- a/mayor-orig/install/module-naplo/mysql/tanev.sql +++ b/mayor-orig/install/module-naplo/mysql/tanev.sql @@ -469,6 +469,31 @@ CREATE TABLE `hianyzasHozott` ( CONSTRAINT `hianyzasHozott_IBFK1` FOREIGN KEY (`diakId`) REFERENCES `%DB%`.`diak` (`diakId`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci; +CREATE TABLE `hianyzasKreta` ( + `kretaHianyzasId` int(10) unsigned NOT NULL AUTO_INCREMENT, + `diakId` int(10) unsigned DEFAULT NULL, + `tankorId` int(10) unsigned DEFAULT NULL, + `kretaDiakNev` varchar(255) COLLATE utf8_hungarian_ci DEFAULT NULL, + `oId` bigint(20) unsigned DEFAULT NULL, + `dt` date DEFAULT NULL, + `ora` tinyint(3) unsigned DEFAULT NULL, + `kretaTankorNev` varchar(255) COLLATE utf8_hungarian_ci DEFAULT NULL, + `kretaTantargyNev` varchar(255) COLLATE utf8_hungarian_ci DEFAULT NULL, + `tipus` enum('hiányzás','késés','felszerelés hiány','felmentés','egyenruha hiány') COLLATE utf8_hungarian_ci DEFAULT NULL, + `perc` tinyint(3) unsigned DEFAULT NULL, + `kretaStatusz` enum('igen','nem') COLLATE utf8_hungarian_ci DEFAULT NULL, + `statusz` enum('igazolt','igazolatlan') COLLATE utf8_hungarian_ci DEFAULT NULL, + `kretaIgazolas` varchar(255) COLLATE utf8_hungarian_ci DEFAULT NULL, + `igazolas` enum('orvosi','szülői','osztályfőnöki','verseny','vizsga','igazgatói','hatósági','pályaválasztás','') COLLATE utf8_hungarian_ci DEFAULT NULL, + PRIMARY KEY (`kretaHianyzasId`), + KEY `hianyzasKreta_oId` (`oId`), + KEY `hianyzasKreta_diakId` (`diakId`), + KEY `hianyzasKreta_tankorId` (`tankorId`), + CONSTRAINT `hk_ibfk_1` FOREIGN KEY (`oId`) REFERENCES `intezmeny_vmg`.`diak` (`oId`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `hk_ibfk_2` FOREIGN KEY (`diakId`) REFERENCES `intezmeny_vmg`.`diak` (`diakId`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `hk_ibfk_3` FOREIGN KEY (`tankorId`) REFERENCES `intezmeny_vmg`.`tankor` (`tankorId`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci; + CREATE TABLE `koszi` ( `kosziId` int(10) unsigned NOT NULL auto_increment, `kosziEsemenyId` int(10) unsigned NOT NULL, diff --git a/mayor-orig/log/mayor-base.rev b/mayor-orig/log/mayor-base.rev index e2ba7ca0..ab5135de 100644 --- a/mayor-orig/log/mayor-base.rev +++ b/mayor-orig/log/mayor-base.rev @@ -1 +1 @@ -4423 +4455 diff --git a/mayor-orig/log/mayor-naplo.rev b/mayor-orig/log/mayor-naplo.rev index e2ba7ca0..ab5135de 100644 --- a/mayor-orig/log/mayor-naplo.rev +++ b/mayor-orig/log/mayor-naplo.rev @@ -1 +1 @@ -4423 +4455 diff --git a/mayor-orig/log/mayor-portal.rev b/mayor-orig/log/mayor-portal.rev index e2ba7ca0..ab5135de 100644 --- a/mayor-orig/log/mayor-portal.rev +++ b/mayor-orig/log/mayor-portal.rev @@ -1 +1 @@ -4423 +4455 diff --git a/mayor-orig/update/pre004441-1-naplo.sql b/mayor-orig/update/pre004441-1-naplo.sql new file mode 100644 index 00000000..c8c47ead --- /dev/null +++ b/mayor-orig/update/pre004441-1-naplo.sql @@ -0,0 +1,39 @@ +DELIMITER $$ +DROP PROCEDURE IF EXISTS upgrade_database_4441 $$ + +CREATE PROCEDURE upgrade_database_4441() +BEGIN +SET NAMES utf8 COLLATE utf8_hungarian_ci; + +IF NOT EXISTS ( + SELECT * FROM information_schema.TABLES WHERE TABLE_SCHEMA=DATABASE() and TABLE_NAME='hianyzasKreta' +) THEN + CREATE TABLE `hianyzasKreta` ( + `kretaHianyzasId` int(10) unsigned NOT NULL AUTO_INCREMENT, + `diakId` int(10) unsigned DEFAULT NULL, + `tankorId` int(10) unsigned DEFAULT NULL, + `kretaDiakNev` varchar(255) DEFAULT NULL, + `oId` bigint(20) unsigned DEFAULT NULL, + `dt` date DEFAULT NULL, + `ora` tinyint(3) unsigned DEFAULT NULL, + `kretaTankorNev` varchar(255) DEFAULT NULL, + `kretaTantargyNev` varchar(255) DEFAULT NULL, + `tipus` enum('hiányzás','késés','felszerelés hiány','felmentés','egyenruha hiány') COLLATE utf8_hungarian_ci DEFAULT NULL, + `perc` tinyint(3) unsigned DEFAULT NULL, + `kretaStatusz` enum('igen','nem') COLLATE utf8_hungarian_ci DEFAULT NULL, + `statusz` enum('igazolt','igazolatlan') COLLATE utf8_hungarian_ci DEFAULT NULL, + `kretaIgazolas` varchar(255) DEFAULT NULL, + `igazolas` enum('orvosi','szülői','osztályfőnöki','verseny','vizsga','igazgatói','hatósági','pályaválasztás','') COLLATE utf8_hungarian_ci DEFAULT NULL, + PRIMARY KEY (`kretaHianyzasId`), + KEY `hianyzasKreta_oId` (`oId`), + KEY `hianyzasKreta_diakId` (`diakId`), + KEY `hianyzasKreta_tankorId` (`tankorId`), + CONSTRAINT `hk_ibfk_1` FOREIGN KEY (`oId`) REFERENCES %INTEZMENYDB%.`diak` (`oId`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `hk_ibfk_2` FOREIGN KEY (`diakId`) REFERENCES %INTEZMENYDB%.`diak` (`diakId`) ON DELETE CASCADE ON UPDATE CASCADE, + CONSTRAINT `hk_ibfk_3` FOREIGN KEY (`tankorId`) REFERENCES %INTEZMENYDB%.`tankor` (`tankorId`) ON DELETE CASCADE ON UPDATE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_hungarian_ci; +END IF; + +END $$ +DELIMITER ; +CALL upgrade_database_4441(); diff --git a/mayor-orig/update/pre004452-1-naplo.sql b/mayor-orig/update/pre004452-1-naplo.sql new file mode 100644 index 00000000..b9ac0460 --- /dev/null +++ b/mayor-orig/update/pre004452-1-naplo.sql @@ -0,0 +1 @@ +CALL upgrade_database_4441(); diff --git a/mayor-orig/www/include/modules/naplo/base/tool.php b/mayor-orig/www/include/modules/naplo/base/tool.php index 39923b9f..8fb6e9e9 100644 --- a/mayor-orig/www/include/modules/naplo/base/tool.php +++ b/mayor-orig/www/include/modules/naplo/base/tool.php @@ -553,6 +553,7 @@ function getIgazolasOsszegzo() { $TOOL['igazolasOsszegzo']['igazolasok'] = getIgazolasSzam($diakId); $_T = getDiakHianyzasOsszesites(array($diakId),$_TANEV); $TOOL['igazolasOsszegzo']['hianyzasok'] = $_T[$diakId]; + $TOOL['kretaIgazolasOsszegzo'] = getKretaIgazolasOsszegzo($diakId); } } diff --git a/mayor-orig/www/include/modules/naplo/share/hianyzas.php b/mayor-orig/www/include/modules/naplo/share/hianyzas.php index 0ee41fa0..4b3787fa 100644 --- a/mayor-orig/www/include/modules/naplo/share/hianyzas.php +++ b/mayor-orig/www/include/modules/naplo/share/hianyzas.php @@ -475,4 +475,67 @@ return $RESULT; } + function getDiakKretaHianyzas($diakId, $SET = array('preprocess'=>'stat','tanev'=>__TANEV, 'igDt'=>null, 'tolDt'=>null)) { + $RESULT = false; + if (isset($diakId) && is_numeric($diakId)) + { + $tanev = (isset($SET['tanev']) && $SET['tanev']!=__TANEV) ? $SET['tanev'] : __TANEV; + $tanevDbNev = tanevDbNev(__INTEZMENY, $tanev); + + $v = array($diakId); + $W = ''; + if (isset($SET['tolDt'])) { + $W .= " AND dt>='%s'"; + $v[] = $SET['tolDt']; + } + if (isset($SET['igDt'])) { + $W .= " AND dt<='%s'"; + $v[] = $SET['igDt']; + } + + $q = "SELECT * FROM `$tanevDbNev`.`hianyzasKreta` WHERE diakId=%u".$W.""; + $R = db_query($q, array('debug'=>false,'fv'=>'getDiakKretaHianyzas','modul'=>'naplo','result'=>'indexed','values'=>$v)); + /* ReIndex */ + if ($SET['preprocess'] == 'stat') { + for ($i=0; $i<count($R); $i++) { + //if ($R[$i]['dbHianyzas']>0) { // igen, SQL - ben is lehetne összeadni, a továbbfejlesztés miatt van így. + $_igazoltStr = $R[$i]['kretaStatusz'] == 'igen' ? 'igazolt':'igazolatlan'; + $RESULT[$R[$i]['tipus']][$_igazoltStr]['db']++; + if ($R[$i]['tipus']=='késés') $RESULT[$R[$i]['tipus']][$_igazoltStr]['perc']+=$R[$i]['perc']; + //} + } + } elseif ($SET['preprocess']=='naptar') { + for ($i=0; $i<count($R); $i++) { + $RESULT[$R[$i]['diakId']][$R[$i]['dt']][$R[$i]['ora']][] = $R[$i]; + } + } else { + $RESULT = $R; + } + } + return $RESULT; + + } + + function kretaIgazolas2mayor($key) { // -- TODO + $KRETA2MAYOR= array( + 'Szülői igazolás'=>'szülői', + 'Orvosi igazolás'=>'orvosi', + 'Egyéb'=>'egyéb', + 'Iskolai engedély'=>'igazgatói', + 'Iskolaérdekű távollét'=>'igazgatói', + 'Kikérő' => 'igazgatói', + 'Pályaválasztási célú igazolás'=>'pályaválasztás', + 'Szolgáltatói igazolás' => 'hatósági', + 'Hivatalos távollét' => 'egyéb', + 'Táppénz' => 'egyéb'); + return $KRETA2MAYOR[$key]!='' ? $KRETA2MAYOR[$key] : 'egyéb'; + } + + function getKretaIgazolasOsszegzo($diakId) { // -- TODO + $q = "SELECT tipus, kretaIgazolas, count(distinct dt) AS db, count(*) AS dbBejegyzes FROM hianyzasKreta WHERE diakId=%u AND kretaStatusz='igen' GROUP BY tipus,kretaIgazolas ORDER BY tipus, kretaIgazolas"; + $v = array($diakId); + $R = db_query($q, array('fv'=>'getKretaIgazolasOsszegzo','modul'=>'naplo','result'=>'indexed','values'=>$v)); + return reindex($R,array(kretaIgazolas,tipus)); + } + ?> diff --git a/mayor-orig/www/include/modules/naplo/share/ora.php b/mayor-orig/www/include/modules/naplo/share/ora.php index b41bc7b8..cdadeb00 100644 --- a/mayor-orig/www/include/modules/naplo/share/ora.php +++ b/mayor-orig/www/include/modules/naplo/share/ora.php @@ -607,4 +607,19 @@ return $R; } + function getDiakOra($diakId,$dt,$ora,$olr_intezmeny = '',$olr_naplo) { // jelenlét mezőt nem vesszük figyelembe!!! + + // diakId->tankor->ora + + $TANKOR = getTankorByDiakId($diakId, __TANEV, array('csakId' => true, 'tolDt' => $dt, 'igDt' => $dt, 'override' => false, 'result'=>'indexed'),$olr_intezmeny); // jelenlét!!! + // --TODO!!! minden jelenlét számít, még az is ami nem kötelező :( + if (count($TANKOR)>0 ) { + $q = "SELECT *,getNev(tankorId,'tankor') AS tankorNev FROM ora WHERE dt='%s' AND ora=%u AND tankorId IN (".implode(',',$TANKOR).")"; + $v = array($dt,$ora); + $R = db_query($q,array('debug'=>false,'fv'=>'getDiakOra','modul'=>'naplo','values'=>$v,'result'=>'indexed'),$olr_naplo); + if (count($R)==1) return $R[0]; + } + return false; + } + ?> diff --git a/mayor-orig/www/lang/hu_HU/base/base.php b/mayor-orig/www/lang/hu_HU/base/base.php index a59d7144..7396952b 100644 --- a/mayor-orig/www/lang/hu_HU/base/base.php +++ b/mayor-orig/www/lang/hu_HU/base/base.php @@ -8,7 +8,7 @@ */ define('_MAIN_TITLE','MaYoR'); -define('_MAIN_FOOTER','<a href="http://www.mayor.hu./">MaYoR</a> - 2002-2018 © <a href="LICENSE.txt">GPL</a>'); +define('_MAIN_FOOTER','<a href="http://www.mayor.hu./">MaYoR</a> - 2002-2019 © <a href="LICENSE.txt">GPL</a>'); define('_TANAR','tanár'); define('_DIAK','diák'); diff --git a/mayor-orig/www/lang/hu_HU/module-naplo/base.php b/mayor-orig/www/lang/hu_HU/module-naplo/base.php index eb867120..d07b71e0 100644 --- a/mayor-orig/www/lang/hu_HU/module-naplo/base.php +++ b/mayor-orig/www/lang/hu_HU/module-naplo/base.php @@ -8,6 +8,7 @@ define('__TARGYSORRENDSELECTTITLE','tárgysorrend'); define('__TABLESELECTTITLE','sql-táblák'); define('__OSZTALYSELECTTITLE','osztály'); + define('__FORRASSELECTTITLE','forrás'); define('__TANMENETSELECTTITLE','tanmenet'); define('__TANARSELECTTITLE','tanár'); define('__DIAKSELECTTITLE','diák'); @@ -59,4 +60,6 @@ if (!defined('_TOROLT')) define('_TOROLT','törölt'); define('_NEV','Név'); + + define('_KRETA','Kréta'); ?> diff --git a/mayor-orig/www/lang/hu_HU/module-naplo/hianyzas/osztaly.php b/mayor-orig/www/lang/hu_HU/module-naplo/hianyzas/osztaly.php index 1309d51c..263a523c 100644 --- a/mayor-orig/www/lang/hu_HU/module-naplo/hianyzas/osztaly.php +++ b/mayor-orig/www/lang/hu_HU/module-naplo/hianyzas/osztaly.php @@ -43,4 +43,5 @@ define('_HOZOTT','Hozott'); define('_AKTUALIS_NEVSOR','Aktuális névsor'); define('_TELJES_NEVSOR','Teljes névsor'); + ?> diff --git a/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php b/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php new file mode 100644 index 00000000..8f4cb909 --- /dev/null +++ b/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport-pre.php @@ -0,0 +1,105 @@ +<?php + + if (_RIGHTS_OK !== true) die(); + if (__NAPLOADMIN!==true || __PORTAL_CODE!=='vmg') { + + $_SESSION['alert'][] = 'page:insufficient_access'; + + } + + require_once('include/modules/naplo/share/intezmenyek.php'); + require_once('include/modules/naplo/share/tanar.php'); + require_once('include/modules/naplo/share/file.php'); + require_once('include/modules/naplo/share/ora.php'); + + ini_set('max_execution_time', 120); + + $KRETA2MAYOR['ora']['tipus'] = array( + 'Szakszerű helyettesítés' => 'helyettesítés', + 'Szakszerű felügyelet' => 'helyettesítés', + 'Óraösszevonás' => 'összevonás', + 'Nem szakszerű helyettesítés (felügyelet)' => 'felügyelet' + ); + +//$KRETA2MAYOR['tanar'] = reindex(getTanarok(array('összes'=>true,'extraAttrs'=>'kretaNev')),array('kretaNev')); +//dump($KRETA2MAYOR['tanar']); + + $lr_intezmeny = db_connect('naplo_intezmeny'); + $lr_naplo = db_connect('naplo'); + + $q = "select getNev(diakId,'diak') COLLATE utf8_hungarian_ci AS diakNev,diakId,statusz,oId from ".__INTEZMENYDBNEV.".diak WHERE statusz!='jogviszonya lezárva' ORDER BY diakNev"; + $v = array(); + $DIAKNEV2diakId = db_query($q, array('debug'=>false,'modul'=>'naplo','values'=>$v,'result'=>'multiassoc','keyfield'=>'diakNev'),$lr_naplo); + $file = fopen("/tmp/hianyzasKreta.tsv","r"); + if ($file!==false) { + $q = "TRUNCATE TABLE hianyzasKreta"; + db_query($q, array('fv'=>'kretaHianyzasImport'),$lr_naplo) or die(); + } + while(! feof($file)) { + $line = chop(trim(fgets($file))); + $record = explode("\t",$line); +// dump($record); +/* +kretaHianyzasImportarray (size=10) + 0 => string 'Bacsó Dániel József' (length=22) + 1 => string '72437828706' (length=11) + 2 => string '2018-12-17' (length=10) + 3 => string '2' (length=1) + 4 => string '08.A' (length=4) + 5 => string 'ének-zene' (length=10) + 6 => string 'Hiányzás' (length=10) + 7 => string '' (length=0) + 8 => string 'Igen' (length=4) + 9 => string 'Orvosi igazolás' (length=16) +*/ + $D = array(); + $D['diakNev'] = $record[0]; + if (count($DIAKNEV2diakId[$D['diakNev']])!=1) { + $_SESSION['alert'][] = 'info:dup'.serialize($D['diakNev']).':'.serialize($DIAKNEV2diakId[$D['diakNev']]); + $ADAT['hiba'][] = $D; + continue;; + } else { + $D['diakId'] = $DIAKNEV2diakId[$D['diakNev']][0]['diakId']; + $D['oId'] = $DIAKNEV2diakId[$D['diakNev']][0]['oId']; + } + $_tmp = explode('/',$record[1]); + $D['dt'] = $_tmp[2] .'-'. $_tmp[0] .'-'. $_tmp[1]; + $D['ora'] = intval($record[2]); + $D['kretaTankorNev'] = $record[3]; + $D['kretaTantargyNev'] = $record[4]; + $D['tipus'] = kisbetus($record[5]); + $D['perc'] = ($record[6]<=0) ? '':intval($record[6]); + $D['kretaStatusz'] = $record[7]=='Igen' ? 'igen':'nem'; + $D['status'] = $record[7]=='Igen' ? 'igazolt':'igazolatlan'; + $D['kretaIgazolas'] = $record[8]; +// Itt kitalálható lenne pár dolog, egyelőre hagyjuk + $D['oraAdat'] = getDiakOra($D['diakId'],$D['dt'],$D['ora'],$lr_intezmeny,$lr_naplo); + if ($D['oraAdat']['oraId']!='') { + // $ADAT['betoltendo'][] = ($D); +// $ADAT['KRETA2MAYOR']['targyNev'][$D['kretaTankorNev'].':'.$D['kretaTantargyNev']][] = $D['oraAdat']['tankorNev']; + $D['tankorId'] = $D['oraAdat']['tankorId']; + } else $ADAT['hibaCounter']++; + + $q = "INSERT INTO hianyzasKreta (diakId,tankorId,kretaDiakNev,oId,dt,ora,kretaTankorNev,kretaTantargyNev,tipus,perc,kretaStatusz,statusz,kretaIgazolas) + VALUES (%u, IF(%u=0,NULL,%u),'%s','%s','%s',%u,'%s','%s','%s',%u,'%s','%s','%s')"; + $v = array($D['diakId'], + $D['tankorId'], + $D['tankorId'], + $D['kretaDiakNev'], + $D['oId'], + $D['dt'], + $D['ora'], + $D['kretaTankorNev'], + $D['kretaTargyNev'], + $D['tipus'], + $D['perc'], + $D['kretaStatusz'], + $D['statusz'], + $D['kretaIgazolas']); + db_query($q, array('fv'=>'kretaHianyzasImport','values'=>$v),$lr_naplo); + } + + fclose($file); + db_close($lr); + +?>
\ No newline at end of file diff --git a/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport.php b/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport.php new file mode 100644 index 00000000..9d55012d --- /dev/null +++ b/mayor-orig/www/policy/private/naplo/admin/kretaHianyzasImport.php @@ -0,0 +1,9 @@ +<?php + + global $ADAT; + dump($ADAT['hibaCounter']); + dump($ADAT['hiba']); +// dump($ADAT['KRETA2MAYOR']); +// dump($ADAT['betoltendo']); + +?>
\ No newline at end of file diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php index ce3bec70..d131db63 100644 --- a/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php +++ b/mayor-orig/www/policy/private/naplo/hianyzas/diak-pre.php @@ -183,6 +183,7 @@ if (isset($diakId) && $diakId != '') { $ADAT['hianyzasok'] = getHianyzasByDt(array($diakId),$_NAPOK); $ADAT['diak']['kepzes'] = getKepzesByDiakId($diakId, array('result'=>'assoc','dt'=>$_NAPOK[count($_NAPOK)-1])); // dátum nélkül ez a korábbi összes képzését adná. Vegyük a hónap utolsó napján... + $ADAT['hianyzasKreta'] = getDiakKretaHianyzas($diakId,array('preprocess'=>'naptar')); } // ha van nem üres diakId if (!__DIAK) { diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php index 7eb2592a..a1ea6261 100644 --- a/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php +++ b/mayor-orig/www/policy/private/naplo/hianyzas/nap-pre.php @@ -143,6 +143,7 @@ } $_diakJogviszony=getDiakJogviszonyByDts( array($ADAT['diakId']), array($ADAT['dt']) ); $ADAT['diakJogviszony'] = $_diakJogviszony[$ADAT['diakId']][$ADAT['dt']]['statusz']; + $ADAT['hianyzasKreta'] = getDiakKretaHianyzas($ADAT['diakId'],array('preprocess'=>'naptar','tolDt'=>$ADAT['dt'],'igDt'=>$ADAT['dt'])); // tanarSelect tul képpen csak readnly $TOOL['datumSelect'] = array( 'tipus' => 'sor', 'post' => array('diakId'), diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php index 9a472287..3ef6a8ee 100644 --- a/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php +++ b/mayor-orig/www/policy/private/naplo/hianyzas/ora-pre.php @@ -68,6 +68,7 @@ for ($i=0; $i<count($ADAT['nevsor']['idk']); $i++) { $_diakId = ($ADAT['nevsor']['idk'][$i]); $ADAT['felmentes'][$_diakId] = getTankorDiakFelmentes($_diakId,__TANEV,array('csakId'=>true,'tolDt'=>$tolDt, 'igDt'=>$igDt, 'nap'=>$nap, 'ora'=>$ora)); + $ADAT['hianyzasKreta'][$_diakId] = array_pop(getDiakKretaHianyzas($_diakId,array('preprocess'=>'naptar', 'tolDt'=>$tolDt, 'igDt'=>$igDt))); } $ADAT['diakJogviszony'] = getDiakJogviszonyByDts($ADAT['nevsor']['idk'], array($ORAADAT['dt'])); //dump($ADAT['nevsor']['idk']); diff --git a/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php b/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php index 9e7e9418..d6230305 100644 --- a/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php +++ b/mayor-orig/www/policy/private/naplo/hianyzas/osztaly-pre.php @@ -87,17 +87,16 @@ // -------------------------------- //$osztalyAdat = getOsztalyAdat($osztalyId); - if ($tolDt != $_TANEV['kezdesDt'] || $igDt != date('Y-m-d')) { - $OPT = array('hozott','lezárt','igazolható','összes'); + $OPT = array('hozott','lezárt','igazolható','kreta','összes'); $View = readVariable($_POST['View'], 'enum', array('összes'), $OPT); } else { - $OPT = array('hozott','lezárt','igazolható','összes','fegyelmi utáni','fegyelmi fokozatok'); + $OPT = array('hozott','lezárt','igazolható','kreta','összes','fegyelmi utáni','fegyelmi fokozatok'); $View = readVariable($_POST['View'], 'enum', ($skin != 'pda')?array('összes','fegyelmi fokozatok'):array('összes'), $OPT); } - -// elseif ($skin != 'pda') $View = array('összes','fegyelmi fokozatok'); -// else $View = array('összes'); + $q = "SELECT count(*) AS db FROM hianyzasKreta"; + $hkr = db_query($q, array('modul'=>'naplo','result'=>'value')); + if ($hkr>0) $View[] = 'kreta'; if ($nevsor=='aktualis') { $ADAT['stat'] = getHianyzok($ADAT,array('dt'=>date("Y-m-d"))); @@ -108,6 +107,7 @@ foreach($ADAT['stat']['névsor'] as $_diakId => $_D) { $ADAT['hozottHianyzas'][$_diakId] = getDiakHozottHianyzas($_diakId); + $ADAT['hianyzasKreta'][$_diakId] = getDiakKretaHianyzas($_diakId,array('preprocess'=>'stat','tolDt'=>$tolDt,'igDt'=>$igDt)); } } // isset(osztalyId) diff --git a/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php b/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php index a5b8b2b5..404c18b1 100644 --- a/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php +++ b/mayor-orig/www/policy/private/naplo/orarend/szabadTerem-pre.php @@ -9,14 +9,17 @@ $tolDt = readVariable($_POST['tolDt'],'date',date('Y-m-d', strtotime('last Monday', strtotime('+1 days')))); $igDt = date('Y-m-d', strtotime('next Friday',strtotime($tolDt))); + $forras = readVariable($_POST['forras'],'enum','orarendiOra',array('orarendiOra','ora')); + $ADAT['telephelyek'] = getTelephelyek(); $telephelyIds = array(); + foreach ($ADAT['telephelyek'] as $tAdat) $telephelyIds[] = $tAdat['telephelyId']; - $telephelyId = readVariable($_POST['telephelyId'], 'id', null, $telephelyIds); + $telephelyId = readVariable($_POST['telephelyId'], 'id', (defined('__TELEPHELYID')===true?__TELEPHELYID:null), $telephelyIds); $ADAT['termek'] = getTermek(array('result' => 'assoc')); $ADAT['teremIdk'] = getTermek(array('result' => 'idonly', 'tipus' => array('tanterem','szaktanterem','osztályterem','labor','gépterem','tornaterem','tornaszoba','fejlesztőszoba','tanműhely','előadó','könyvtár','díszterem','templom','egyéb'), 'telephelyId' => $telephelyId)); - $ADAT['szabadTermek'] = getSzabadTermekByDtInterval($tolDt, $igDt, $ADAT['teremIdk']); - $ADAT['toPrint'] = 'Órarendi szabad termek'; + $ADAT['szabadTermek'] = getSzabadTermekByDtInterval($tolDt, $igDt, $ADAT['teremIdk'], $forras); + $ADAT['toPrint'] = 'Szabad termek ('.$forras.')'; $TOOL['datumSelect'] = array( 'tipus'=>'cella', 'post'=>array('tanarId','osztalyId','tankorId','mkId','diakId'), @@ -27,5 +30,6 @@ ); $TOOL['telephelySelect'] = array('tipus'=>'cella', 'paramName'=>'telephelyId', 'telephelyek'=>$ADAT['telephelyek'], 'post'=>array('tolDt')); + $TOOL['forrasSelect'] = array('tipus'=>'cella', 'paramName'=>'forras', 'paramValue'=>$forras, 'adatok'=>array('ora'=>'haladási napló','orarendiOra'=>'órarend'), 'post'=>array('tolDt','telephelyId')); ?> diff --git a/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/diak.css b/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/diak.css index 40024f74..8e8d982d 100644 --- a/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/diak.css +++ b/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/diak.css @@ -120,6 +120,9 @@ table.hianyzasNaptar td.felszerelesHiany { background-color: rgb(100,100,200); } table.hianyzasNaptar td.egyenruhaHiany { background-color: orange; } + table.hianyzasNaptar.kreta {background-color: #3facc7;} + table.hianyzasNaptar.kreta tr th {background-color: cornflowerblue;} + table.naptar tr th span.kepzes { padding: 1px 3px 1px 3px; font-size:10px; background-color: #776690; border-radius: 2px 2px 2px 2px; diff --git a/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/nap.css b/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/nap.css index ce5a989d..c091bc02 100644 --- a/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/nap.css +++ b/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/nap.css @@ -127,3 +127,5 @@ table.hianyzasNaptar a:hover { background-color: #667766; } table.hianyzasNaptar td.felszerelesHiany { background-color: rgb(100,100,200); } table.hianyzasNaptar td.egyenruhaHiany { background-color: orange; } + table.hianyzasNaptar.kreta {background-color: #3facc7;} + table.hianyzasNaptar.kreta tr th {background-color: cornflowerblue;} diff --git a/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/ora.css b/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/ora.css index e739bc04..b94b9421 100644 --- a/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/ora.css +++ b/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/ora.css @@ -119,6 +119,8 @@ table.hianyzasNaptar td:nth-child(even) { } table.hianyzasNaptar td.felszerelesHiany { background-color: rgb(100,100,200); } table.hianyzasNaptar td.egyenruhaHiany { background-color: orange; } + table.hianyzasNaptar.kreta {background-color: #3facc7;} + table.hianyzasNaptar.kreta tr th {background-color: cornflowerblue;} form.vissza { background-color: white; width: 570px; margin: 0px auto; } form.vissza input { border: none; background-color: white; cursor: pointer; } diff --git a/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/osztaly.css b/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/osztaly.css index b342097b..cf0665a2 100644 --- a/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/osztaly.css +++ b/mayor-orig/www/skin/classic/module-naplo/css/hianyzas/osztaly.css @@ -81,6 +81,15 @@ text-align: center; } + table.hianyzas tbody td.kreta { + width: 18px; + background-color:cornflowerblue; + text-align: center; + } + table.hianyzas tbody td.kreta.keses { + background-color: ; + } + table.hianyzas tbody td.ufegyelmi { width: 18px; background-color: rgb(220,230,240); @@ -159,9 +168,9 @@ border-color: #aabbc0; } table.navi input { + margin-left: 16px; background-color: #778890; border: solid 1px #aabbc0; - width:30px; } table.navi input.aktiv { color: #aabbc0; diff --git a/mayor-orig/www/skin/classic/module-naplo/css/orarend/szabadTerem.css b/mayor-orig/www/skin/classic/module-naplo/css/orarend/szabadTerem.css index c7b8cdf2..f6652b54 100644 --- a/mayor-orig/www/skin/classic/module-naplo/css/orarend/szabadTerem.css +++ b/mayor-orig/www/skin/classic/module-naplo/css/orarend/szabadTerem.css @@ -2,20 +2,35 @@ h2 { text-align: center; color: red;} h2.toPrint { display: none; } -table.toolBar tr td select, table.toolBar tr td option { - font-size:normal; +form.teremKereso { width:100%; margin-left: auto; margin-right:auto; text-align: center; margin-bottom:10px;} +table.orarend tr td { } +table.orarend span, form.teremKereso span { padding: 2px; border-radius: 4px; border: #ddd 1px solid; line-height:1.8em; white-space: nowrap; background-color:white; } + +table.orarend span.xlarge, form.teremKereso span.xlarge { background-color: #4caf50;} +table.orarend span.large, form.teremKereso span.large { background-color: lightgreen;} +table.orarend span.normal, form.teremKereso span.normal { background-color: lightblue;} +table.orarend span.small, form.teremKereso span.small { background-color: yellow;} +table.orarend span.xsmall, form.teremKereso span.xsmall { background-color: #ff5722;} + +table.orarend span:hover, form.teremKereso span:hover { border-color: white; cursor:pointer;} + +form.teremKereso span.clk { + color: #aaa; + -webkit-filter: grayscale(90%); + filter: grayscale(90%); } table.orarend { - width: 85%; + width: 90%; background-color: black; } table.orarend tr th { - background-color: #889988; + background-color: #bbb; color: white; border-width: 0px 1px 2px 0px; width:2%; height:30px; + font-weight:normal; } table.orarend thead tr th { background-color: #889999; @@ -100,4 +115,4 @@ div.unfinished { } hr { width: 80% } h2.toPrint { color: black; text-align: center; margin-top:0px; margin-bottom: 0px; padding-top:0px; padding-bottom:0px; } -}
\ No newline at end of file +} diff --git a/mayor-orig/www/skin/classic/module-naplo/html/base.phtml b/mayor-orig/www/skin/classic/module-naplo/html/base.phtml index ff6c8e08..4753fbf4 100644 --- a/mayor-orig/www/skin/classic/module-naplo/html/base.phtml +++ b/mayor-orig/www/skin/classic/module-naplo/html/base.phtml @@ -258,6 +258,21 @@ } + function putForrasSelect() { + + global $TOOL; + putToolFormStart('forrasSelect'); + echo '<select name="'.$TOOL['forrasSelect']['paramName'].'" class="onChangeSubmit">'; + echo '<option value=""> - </option>'."\n"; + $SEL = array($TOOL['forrasSelect']['paramValue'] => ' selected="selected" '); + foreach ($TOOL['forrasSelect']['adatok'] as $_szam => $_nev) { + echo '<option value="'.$_szam.'"'.$SEL[$_szam].'>'.$_nev.'</option>'; + } + echo '</select>'; + putToolFormStop(); + + } + function putIntezmenySelect() { global $TOOL; @@ -1194,6 +1209,30 @@ echo '<td>'.(int)$H['orak']['osszesen']['pályaválasztás'].' '._ORA.'</td>'; echo '</tr>'."\n"; echo '</table>'."\n"; + // --- + if (is_array($TOOL['kretaIgazolasOsszegzo'])) { // az adattömb tartalmazza, de nem jeleníti meg a késéseket is + $K = $TOOL['kretaIgazolasOsszegzo']; + $IGTIPUSOK = array_keys($K); + if (count($IGTIPUSOK)==0) return; + echo '<table class="hianyzasOsszegzo" cellpadding="1" cellspacing="1" align="center">'; + echo '<tr>'; + foreach($IGTIPUSOK as $k => $v) + echo '<th style="background-color: cornflowerblue;">'.$v.'</th>'; + echo '</tr>'."\n"; + echo '<tr>'; + foreach($IGTIPUSOK as $k => $v) { + echo '<td style="background-color: #3facc7; color: white;">'.intval($K[$v]['hiányzás'][0]['db']).' '._NAP.'</td>'; + } + echo '</tr>'."\n"; + echo '<tr>'; + foreach($IGTIPUSOK as $k => $v) { + echo '<td style="background-color: #3facc7; color: white;">'.intval($K[$v]['hiányzás'][0]['dbBejegyzes']).' '._ORA.'</td>'; + } + echo '</tr>'."\n"; + echo '</table>'."\n"; + + } + } function putKerelemStat() { @@ -1227,6 +1266,7 @@ } + // CONTRIB! include('skin/classic/module-naplo/html/share/face.phtml'); diff --git a/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/diak.phtml b/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/diak.phtml index f8355eb3..6f6256dd 100644 --- a/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/diak.phtml +++ b/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/diak.phtml @@ -163,6 +163,7 @@ $diakId = $ADAT['diakId']; $dt = $NAPADAT['dt']; + $KRETAHIANYZAS = $ADAT['hianyzasKreta'][$ADAT['diakId']][$dt]; echo '<table class="tanuloEgyNapja hianyzasNaptar" cellspacing="1" cellpadding="1" border="0">'; echo '<tr>'; if (defined('__STATUS_HATARIDO') && (__OFO || __VEZETOSEG || __NAPLOADMIN) && strtotime(__STATUS_HATARIDO) < strtotime($dt) && !$future) { @@ -214,7 +215,8 @@ if (!$future) _putHianyzasKistabla( $ADAT['hianyzasok'][$ADAT['diakId']], array('dt' => $dt), - array('href' => $href, 'allowed' => $allowed, 'napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra) + array('href' => $href, 'allowed' => $allowed, 'napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra), + $KRETAHIANYZAS ); echo '</td>'; diff --git a/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/nap.phtml b/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/nap.phtml index 3fc44941..32bc0c07 100644 --- a/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/nap.phtml +++ b/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/nap.phtml @@ -45,7 +45,7 @@ echo '</a>'; } echo '</th><th>'; - _putHianyzasKistabla($ADAT['hianyzasok'][$_diakId], array('dt'=>$dt), array('napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra)); + _putHianyzasKistabla($ADAT['hianyzasok'][$_diakId], array('dt'=>$dt), array('napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra), $ADAT['hianyzasKreta'][$diakId][$dt]); echo '</th></tr>'; echo '<tr><th></th><th colspan="2">'._TANKOR.'</th><th>'._J.'</th><th>'._K.'</th><th>'._H.'</th><th>'.EH.'</th><th>'._F.'</th><th>'._FM.'</th><th>'._IGAZOLT.'</th></tr>'; echo '</thead>'; diff --git a/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/ora.phtml b/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/ora.phtml index 59279d54..1edac54f 100644 --- a/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/ora.phtml +++ b/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/ora.phtml @@ -95,7 +95,7 @@ $felmentett_class = (in_array($ADAT['tankorAdat']['tankorId'], $ADAT['felmentes'][$_diakId])) ? ' felmentett':''; echo '<tr class="'.$jogviszony.$felmentett_class.'">'; echo '<td>'; - _putHianyzasKistabla($ADAT['napiHianyzasok'][$_diakId], $ORAADAT, array('napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra)); + _putHianyzasKistabla($ADAT['napiHianyzasok'][$_diakId], $ORAADAT, array('napiMinOra' => $napiMinOra, 'napiMaxOra' => $napiMaxOra), $ADAT['hianyzasKreta'][$_diakId][$ORAADAT['dt']]); echo '</td>'; echo '<td>'; putFace($DA['diakId'],'diak','30'); diff --git a/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/osztaly.phtml b/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/osztaly.phtml index e00a7c32..f07a166d 100644 --- a/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/osztaly.phtml +++ b/mayor-orig/www/skin/classic/module-naplo/html/hianyzas/osztaly.phtml @@ -22,6 +22,9 @@ echo '<input id="osszes" type="checkbox" name="View[]" value="összes" '; if (in_array('összes',$View)) echo 'checked="checked" '; echo '/><label for="osszes">'._OSSZES.'</label>'; + echo '<input id="kreta" type="checkbox" name="View[]" value="kreta" '; + if (in_array('kreta',$View)) echo 'checked="checked" '; + echo '/><label for="kreta">'._KRETA.'</label>'; echo '<input id="fegyu" type="checkbox" name="View[]" value="fegyelmi utáni" '; if (in_array('fegyelmi utáni',$View)) echo 'checked="checked" '; echo '/><label for="fegyu">'._FEGYELMI_UTANI.'</label>'; @@ -81,11 +84,17 @@ $_cols+=6; } + if (in_array('összes',$View)) { echo '<th colspan="9">'._OSSZES.'</th>'; $_cols+=7; } + if (in_array('kreta',$View)) { + echo '<th colspan="6">'._KRETA.'</th>'; + $_cols+=6; + } + if (in_array('fegyelmi utáni',$View)) { echo '<th colspan="3">'._FEGYELMI_UTANI.'</th>'; $_cols+=3; @@ -112,6 +121,7 @@ echo '<th colspan="3" class="alcim">'._KESES.'</th>'; } + if (in_array('összes',$View)) { echo '<th colspan="3" class="alcim">'._HIANYZAS.'</th>'; echo '<th colspan="3" class="alcim">'._KESES.'</th>'; @@ -119,6 +129,10 @@ echo '<th rowspan="2" class="alcim" title="'._FELMENTES.'">'._FM.'</th>'; echo '<th rowspan="2" class="alcim" title="'._EGYENRUHA_HIANY.'">'._EH.'</th>'; } + if (in_array('kreta',$View)) { + echo '<th colspan="3" class="alcim">'._HIANYZAS.'</th>'; + echo '<th colspan="3" class="alcim">'._KESES.'</th>'; + } if (in_array('fegyelmi utáni',$View)) { echo '<th rowspan="2" class="alcim" title="'._HIANYZAS.'">'._H.'</th>'; @@ -162,6 +176,7 @@ echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/sum.gif" alt="'._OSSZES.'" title="'._OSSZES.'" /></th>'; } + if (in_array('összes',$View)) { echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/h.gif" alt="'._IGAZOLATLAN.'" title="'._IGAZOLATLAN.'" /></th>'; echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/i.gif" alt="'._IGAZOLT.'" title="'._IGAZOLT.'" /></th>'; @@ -171,6 +186,15 @@ echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/sum.gif" alt="'._OSSZES.'" title="'._OSSZES.'" /></th>'; } + if (in_array('kreta',$View)) { + echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/h.gif" alt="'._IGAZOLATLAN.'" title="'._IGAZOLATLAN.'" /></th>'; + echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/i.gif" alt="'._IGAZOLT.'" title="'._IGAZOLT.'" /></th>'; + echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/sum.gif" alt="'._OSSZES.'" title="'._OSSZES.'" /></th>'; + echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/h.gif" alt="'._IGAZOLATLAN.'" title="'._IGAZOLATLAN.'" /></th>'; + echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/i.gif" alt="'._IGAZOLT.'" title="'._IGAZOLT.'" /></th>'; + echo '<th class="alcim"><img src="skin/classic/module-naplo/img/hianyzas/sum.gif" alt="'._OSSZES.'" title="'._OSSZES.'" /></th>'; + } + if (in_array('fegyelmi utáni',$View)) { } @@ -208,6 +232,10 @@ echo '<td class="felmentes">'.$ADAT['stat']['összes']['felmentés']['igazolatlan'].'</td>'; echo '<td class="egyenruha">'.$ADAT['stat']['összes']['egyenruha hiány']['igazolatlan'].'</td>'; } + if (in_array('kreta',$View)) { + echo '<td colspan="6"></td>'; + } + if (in_array('fegyelmi utáni',$View)) { echo '<td class="igazolatlan hianyzas">'.$ADAT['stat']['összes']['fegyelmi']['hiányzás']['igazolatlan'].'</td>'; echo '<td class="igazolatlan keses">'.$ADAT['stat']['összes']['fegyelmi']['késés']['igazolatlan'].'</td>'; @@ -271,7 +299,6 @@ echo '</td>'; - if (in_array('hozott',$View)) { # Hozott // Lezárt igazolatlan hiányzás @@ -402,6 +429,7 @@ ## ------ } + if (in_array('összes',$View)) { ## Összes @@ -462,6 +490,28 @@ ## ------ } + + if (in_array('kreta',$View)) { // Kréta + $_KRETAADAT = $ADAT['hianyzasKreta'][$diakId]; + echo '<td class="kreta hianyzas igazolatlan">'.$_KRETAADAT['hiányzás']['igazolatlan']['db'].'</td>'; + echo '<td class="kreta hianyzas igazolt">'.$_KRETAADAT['hiányzás']['igazolt']['db'].'</td>'; + echo '<td class="kreta hianyzas osszes">'.(($_KRETAADAT['hiányzás']['igazolatlan']['db'])+($_KRETAADAT['hiányzás']['igazolt']['db'])).'</td>'; + echo '<td class="kreta keses igazolatlan">'; + _kiir(intval($_KRETAADAT['késés']['igazolatlan']['db']).'/'.intval($_KRETAADAT['késés']['igazolatlan']['perc'])."'"); + echo '</td>'; + echo '<td class="kreta keses igazolt">'; + _kiir(intval($_KRETAADAT['késés']['igazolt']['db']).'/'.intval($_KRETAADAT['késés']['igazolt']['perc'])."'"); + echo '</td>'; + echo '<td class="kreta keses osszes">'; + if (($_KRETAADAT['késés']['igazolatlan']['db'])+($_KRETAADAT['késés']['igazolt']['db']) >0) { + echo (($_KRETAADAT['késés']['igazolatlan']['db'])+($_KRETAADAT['késés']['igazolt']['db'])); + echo '/'; + echo (($_KRETAADAT['késés']['igazolatlan']['perc'])+($_KRETAADAT['késés']['igazolt']['perc'])); + echo '\''; + } + echo '</td>'; + } // Kréta + if (in_array('fegyelmi utáni',$View)) { ## Fegyelmi után // Fegyelmi utáni igazolatlan hiányzás @@ -610,4 +660,8 @@ } + function _kiir($val) { + if ($val>0) echo $val; + } + ?> diff --git a/mayor-orig/www/skin/classic/module-naplo/html/orarend/szabadTerem.phtml b/mayor-orig/www/skin/classic/module-naplo/html/orarend/szabadTerem.phtml index 13f15022..b4ab5bf0 100644 --- a/mayor-orig/www/skin/classic/module-naplo/html/orarend/szabadTerem.phtml +++ b/mayor-orig/www/skin/classic/module-naplo/html/orarend/szabadTerem.phtml @@ -18,16 +18,25 @@ } echo '<h2 class="toPrint">'.$ADAT['toPrint'].'</h2>'; - echo '<table class="orarend" align="center">'."\n"; + formBegin(array('class'=>'teremKereso')); + + echo '<span class="xsmall" data-c="xsmall">-10</span>'; + echo '<span class="small" data-c="small">10-19</span>'; + echo '<span class="normal" data-c="normal">20-29</span>'; + echo '<span class="large" data-c="large">30-39</span>'; + echo '<span class="xlarge" data-c="xlarge">40+</span>'; + + formEnd(); + + echo '<table class="orarend" align="center" cellpadding="0" cellspacing="1">'."\n"; echo '<thead>'; echo '<tr><th></th>'; - foreach ($NAPOK as $dt) { // FIXME (getMaxNap) + foreach ($NAPOK as $dt) { $nap = date('w',strtotime($dt)); $_th_class = ($ADAT['orarend']['napok'][$nap]['megjegyzes']=='') ? '': 'spec'; echo '<th class="'.$_th_class.'">'; - //echo '<span title="'.$ADAT['orarend']['napok'][$nap]['dt'].'/'.$ADAT['orarend']['napok'][$nap]['het'].'">'; echo $aHetNapjai[($nap-1)]; - echo ' '.$dt; + echo '<br/>'.$dt; echo '</th>'; } echo '</tr>'; @@ -38,14 +47,20 @@ echo '<tr>'; echo '<th>'.$ora.'</th>'; foreach ($NAPOK as $dt) { - echo '<td>'; + echo '<td>'; for($i=0; $i<count($X[$ora][$dt]); $i++) { $_teremId = $X[$ora][$dt][$i]; + $ferohely = $ADAT['termek'][$_teremId]['ferohely']; + if ($ferohely>=40) $_class='xlarge'; + elseif ($ferohely>=30) $_class='large'; + elseif ($ferohely>=20) $_class='normal'; + elseif ($ferohely>=10) $_class='small'; + else $_class = 'xsmall'; if ($_teremId!='') { - echo '<span title="'.$_targyJel.' '.$_osztalyJel.' ('.$ADAT['tankorok'][$_T['tankorId']][0]['tankorId'].')" >'; + $_title = 'Férőhely: '.($ADAT['termek'][$_teremId]['ferohely']); // ferohely, telephelyId, tipus + echo '<span class="teremAdat '.$_class.'" data-teremid="'.$_teremId.'" data-ferohely="'.$ferohely.'" title="'.$_title.'">'; echo $ADAT['termek'][$_teremId]['leiras']; - echo '</span>'; - if ($i<count($X[$ora][$dt])-1) echo ', '; + echo '</span> '; } } echo '</td>'."\n"; diff --git a/mayor-orig/www/skin/classic/module-naplo/html/share/hianyzas.phtml b/mayor-orig/www/skin/classic/module-naplo/html/share/hianyzas.phtml index eefa53d2..f7a9affc 100644 --- a/mayor-orig/www/skin/classic/module-naplo/html/share/hianyzas.phtml +++ b/mayor-orig/www/skin/classic/module-naplo/html/share/hianyzas.phtml @@ -1,6 +1,6 @@ <?php - function _putHianyzasKistabla($napiHianyzasok, $oraAdat, $SET = array('allowed' => false, 'href' => '', 'napiMinOra' => null, 'napiMaxOra' => null)) { + function _putHianyzasKistabla($napiHianyzasok, $oraAdat, $SET = array('allowed' => false, 'href' => '', 'napiMinOra' => null, 'napiMaxOra' => null), $KRETAHIANYZAS) { if (is_null($SET['napiMinOra'])) return false; // a meghívó függvénynek kell gondoskodnia az ALLOWED beállításról. Mi már csak ezt használjuk global egy napra! @@ -17,6 +17,7 @@ $__kiir=''; $__hrefClass = ''; $igazolhatoHianyzasId=''; + $__DK = $KRETAHIANYZAS[$__ora]; if (count($__D)>0) { $__tipus=''; /* A több óra támogatást támogatását módosítani kellene... */ @@ -66,6 +67,71 @@ } echo '</tr><tr>'.$_SOR; echo '</tr></table>'; + + + if (is_array($KRETAHIANYZAS)) { + + echo '<table class="hianyzasNaptar kreta" cellspacing="0" cellpadding="1" align="center"><tr>'; + $_SOR = ''; + for ($__ora = $SET['napiMinOra'];$__ora <= $SET['napiMaxOra']; $__ora++) { +// $__D = $napiHianyzasok[$oraAdat['dt']][$__ora]; + $__classES = array(); + $__kiir=''; + $__hrefClass = ''; + $igazolhatoHianyzasId=''; + $__D = $KRETAHIANYZAS[$__ora]; + if (count($__D)>0) { + $__tipus=''; + /* A több óra támogatást támogatását módosítani kellene... */ + for ( $i=0; $i<count($__D); $i++) { + $__perc = $__D[$i]['perc']; + $__statusz = ($__D[$i]['kretaStatusz']=='igen'?'igazolt':'igazolatlan'); + $__tipus = $__D[$i]['tipus']; + $__hid = $__D[$i]['kretaHianyzasId']; + // $__oraId = $__D[$i]['oraId']; + // $__rogzitoTanarId = $__D[$i]['rogzitoTanarId']; + $__kiir2beg=$__kiir2end=''; + if ($__statusz != '') { + $__classES[] = str_replace(' ','_',ekezettelen($__tipus)); + if ($__tipus=='felmentés') $__kiir.='f'; + elseif( $__tipus=='felszerelés hiány') $__kiir.='F'; + elseif( $__tipus=='egyenruha hiány') $__kiir.='e'; + else { + if(is_numeric($__perc) && $__perc>0) { + $__kiir2beg = '<span title="'.$__perc.'\'">'; + $__kiir2end = '</span>'; + } + } + } else { + $__kiir .= ' '; + } + if ($__hrefClass=='' && !in_array($__tipus,array('felmentés','felszerelés hiány','egyenruha hiány'))) { + $__hrefClass=$__statusz; + $igazolhatoHianyzasId = $__hid; + } + } + if ($__rogzitoTanarId == __USERTANARID) $__kiir .= '×'; + if ($__kiir=='') $__kiir = '-'; + } else { + $__statusz=$__tipus=$__hid=$__oraId=''; + $__kiir = ' '; + } + $__class = ' class="hianyzasNaptar '.implode(' ',$__classES).'"'; + + echo '<th class="hianyzasNaptar" style="color: #666;">'; + if ($OK === true) { + $_href = href($href.'&hianyzasId='.$igazolhatoHianyzasId.'&dt='.$oraAdat['dt'].'&ora='.$__ora); + echo '<a href="'.$_href.'" class="'.$__hrefClass.'">'.$__ora.'</a>'; + } else + echo '<span class="'.$__hrefClass.'">'.$__ora.'</span>'; + echo '</th>'; + $_SOR .= '<td'.$__class.'>'.$__kiir2beg.$__kiir.$__kiir2end.'</td>'; + } + echo '</tr><tr>'.$_SOR; + echo '</tr></table>'; + + } + } ?> diff --git a/mayor-orig/www/skin/classic/module-naplo/javascript/orarend/szabadTerem.jquery.min.js b/mayor-orig/www/skin/classic/module-naplo/javascript/orarend/szabadTerem.jquery.min.js new file mode 100644 index 00000000..55f50fc6 --- /dev/null +++ b/mayor-orig/www/skin/classic/module-naplo/javascript/orarend/szabadTerem.jquery.min.js @@ -0,0 +1,17 @@ +$(function() { + + function isMobile() { // --TODO -- global namespace + try{ document.createEvent("TouchEvent"); return true; } + catch(e){ return false; } + } + + $('form.teremKereso span').on('click',function(event) { + var el = $(event.target); + var teremType = ($(el).data('c')); + $("table.orarend span[class='teremAdat "+teremType+"']").toggle(); + el.toggleClass('clk'); + console.log(teremType); + event.stopPropagation(); + }); + +}); diff --git a/mayor-orig/www/skin/classic/module-portal/html/share/hirek.phtml b/mayor-orig/www/skin/classic/module-portal/html/share/hirek.phtml index 651cc104..115876b4 100644 --- a/mayor-orig/www/skin/classic/module-portal/html/share/hirek.phtml +++ b/mayor-orig/www/skin/classic/module-portal/html/share/hirek.phtml @@ -39,7 +39,7 @@ for ($j=0; $j<count($CSOPORT); $j++) echo '<span class="tag">'.$CSOPORT[$j].'</span>'; echo '</div>'; } - + echo '<div style="display:none; font-size:10px; padding:2px; text-align:right; color:#aaa">'.($ADAT['hirek']['szovegek'][0]['kdt']).'</div>'; echo '<hr style="clear:both; height:0px; margin-top:2em; margin-bottom:2em; width:80%; background-color: #777777; border-style: solid; border-color: #eeeeee; border-width: 0px 0px 1px 0px;" />'; echo '</div>'; } @@ -1 +1 @@ -4423 +4455 |