diff options
Diffstat (limited to 'mayor-orig/mayor-naplo')
9 files changed, 104 insertions, 63 deletions
diff --git a/mayor-orig/mayor-naplo/install/module-naplo/mysql/tanev.sql b/mayor-orig/mayor-naplo/install/module-naplo/mysql/tanev.sql index f8d78259..3ba37839 100644 --- a/mayor-orig/mayor-naplo/install/module-naplo/mysql/tanev.sql +++ b/mayor-orig/mayor-naplo/install/module-naplo/mysql/tanev.sql @@ -164,6 +164,7 @@ CREATE TABLE `oraHazifeladatDiak` ( `hazifeladatDiakMegjegyzes` varchar(255) COLLATE utf8_hungarian_ci NOT NULL, `hazifeladatDiakFilename` varchar(255) COLLATE utf8_hungarian_ci DEFAULT NULL, `hazifeladatDiakOrigFilename` varchar(255) COLLATE utf8_hungarian_ci DEFAULT NULL, + `hazifeladatDiakFileDt` datetime DEFAULT NULL, PRIMARY KEY (`hazifeladatId`,`diakId`), UNIQUE KEY `oraHazifeladatDiak_UK` (`hazifeladatId`,`diakId`), KEY `oraHazifeladatDiak_ibfk_2` (`diakId`), diff --git a/mayor-orig/mayor-naplo/log/mayor-naplo.rev b/mayor-orig/mayor-naplo/log/mayor-naplo.rev index ff844583..c3502533 100644 --- a/mayor-orig/mayor-naplo/log/mayor-naplo.rev +++ b/mayor-orig/mayor-naplo/log/mayor-naplo.rev @@ -1 +1 @@ -4644 +4650 diff --git a/mayor-orig/mayor-naplo/update/pre004644-1-naplo.sql b/mayor-orig/mayor-naplo/update/pre004644-1-naplo.sql new file mode 100644 index 00000000..047c2c7c --- /dev/null +++ b/mayor-orig/mayor-naplo/update/pre004644-1-naplo.sql @@ -0,0 +1,17 @@ +DELIMITER $$ +DROP PROCEDURE IF EXISTS upgrade_database_4644 $$ + +CREATE PROCEDURE upgrade_database_4644() +BEGIN +SET NAMES utf8 COLLATE utf8_hungarian_ci; + +IF NOT EXISTS ( + SELECT * FROM information_schema.COLUMNS WHERE TABLE_SCHEMA=DATABASE() and TABLE_NAME='oraHazifeladatDiak' and COLUMN_NAME='hazifeladatDiakFileDt' +) THEN +ALTER TABLE `oraHazifeladatDiak` ADD `hazifeladatDiakFileDt` datetime DEFAULT NULL; +UPDATE `oraHazifeladatDiak` SET `hazifeladatDiakFileDt`=`diakLattamDt` WHERE `hazifeladatDiakFilename`!=''; +END IF; + +END $$ +DELIMITER ; +CALL upgrade_database_4644(); diff --git a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/oraModifier.php b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/oraModifier.php index 8c5bd077..625b6b13 100644 --- a/mayor-orig/mayor-naplo/www/include/modules/naplo/share/oraModifier.php +++ b/mayor-orig/mayor-naplo/www/include/modules/naplo/share/oraModifier.php @@ -164,12 +164,37 @@ $diakId=__SZULODIAKID; } if ($diakId>0) { - $q = "INSERT IGNORE INTO oraHazifeladatDiak (hazifeladatId,diakId,diakLattamDt) VALUES (%u,%u,NOW())"; - $values = array($hazifeladatId, $diakId); - db_query($q, array('modul'=>'naplo','result'=>'insert','values'=>$values)); + if (diakSajatHazifeladatE($hazifeladatId)) { + $q = "INSERT IGNORE INTO oraHazifeladatDiak (hazifeladatId,diakId,diakLattamDt) VALUES (%u,%u,NOW())"; + $values = array($hazifeladatId, $diakId); + db_query($q, array('modul'=>'naplo','result'=>'insert','values'=>$values)); + } } } } + function diakSajatHazifeladatE($hazifeladatId) { + $sajat = false; + if (__DIAK===true && $hazifeladatId>0) { + if (defined('__USERDIAKID') && __USERDIAKID>0) { + $diakId=__USERDIAKID; + } elseif (defined('__SZULODIAKID') && __SZULODIAKID>0) { + $diakId=__SZULODIAKID; + } + if ($diakId>0) { + + $q = "SELECT tankorId,dt AS oraDt FROM oraHazifeladat LEFT JOIN ora USING (oraId) WHERE hazifeladatId=%u"; + $values = array($hazifeladatId); + $ORA = db_query($q, array('debug'=>false,'modul'=>'naplo','result'=>'record','values'=>$values)); + + $dt = $ORA['oraDt']; + $tankorId = $ORA['tankorId']; + $diakTankorIds = getTankorIdsByDiakIds(array($diakId), array('tanev' => __TANEV,'tolDt'=>$dt,'igDt'=>$dt,'felmentettekkel'=>true)); + + if (in_array($tankorId,$diakTankorIds)) $sajat = true; + } + } + return $sajat; + } ?>
\ No newline at end of file diff --git a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hazifeladat-pre.php b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hazifeladat-pre.php index ac911f8b..86ca57a0 100644 --- a/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hazifeladat-pre.php +++ b/mayor-orig/mayor-naplo/www/policy/private/naplo/haladasi/hazifeladat-pre.php @@ -61,7 +61,7 @@ $hazifeladatFeltoltesEngedely = readVariable($_POST['hazifeladatFeltoltesEngedely'],'id',0); if ($hazifeladatId>0) { // update if (is_null($hazifeladatHataridoDt)) { - $q = "UPDATE oraHazifeladat set hazifeladatLeiras='%s',hazifeladatFeltoltesEngedely=%u WHERE hazifeladatId=%u"; + $q = "UPDATE oraHazifeladat set hazifeladatLeiras='%s',hazifeladatFeltoltesEngedely=%u,hazifeladatHataridoDt=NULL WHERE hazifeladatId=%u"; $values = array($ADAT['hazifeladatLeiras'],$hazifeladatFeltoltesEngedely,$ADAT['hazifeladatId']); } else { $q = "UPDATE oraHazifeladat set hazifeladatLeiras='%s',hazifeladatFeltoltesEngedely=%u,hazifeladatHataridoDt='%s' WHERE hazifeladatId=%u"; @@ -147,8 +147,6 @@ } if ($sikeresFeltoltes===true) { - // --todo unlink existing?-- - $q = "SELECT hazifeladatDiakFilename FROM oraHazifeladatDiak WHERE hazifeladatId=%u AND diakId=%u"; $values = array($ADAT['hazifeladatId'],$diakId); $oldFilename = db_query($q, array('modul'=>'naplo','result'=>'value','values'=>$values)); @@ -158,7 +156,7 @@ $origFilename = mb_ereg_replace("([^\w\s\d\-_~,;\[\]\(\).])", '', $_FILES['upfile']['name']); $origFilename = mb_ereg_replace("([\.]{2,})", '', $_FILES['upfile']['name']); if ($origFilename=='') $origFilename = $FILEADAT['filename']; - $q = "UPDATE oraHazifeladatDiak SET hazifeladatDiakFilename='%s',hazifeladatDiakOrigFilename='%s' WHERE hazifeladatId=%u AND diakId=%u"; + $q = "UPDATE oraHazifeladatDiak SET hazifeladatDiakFilename='%s',hazifeladatDiakOrigFilename='%s',hazifeladatDiakFileDt=NOW() WHERE hazifeladatId=%u AND diakId=%u"; $values = array($FILEADAT['filename'],$origFilename,$ADAT['hazifeladatId'], $diakId); db_query($q, array('modul'=>'naplo','result'=>'update','values'=>$values)); } diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/hazifeladat.css b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/hazifeladat.css index a44e9d2d..448364ef 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/hazifeladat.css +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/css/haladasi/hazifeladat.css @@ -60,13 +60,19 @@ table.hazifeladatDiak tbody tr td { background-color: white; font-weight:normal; padding: 2px 4px;} - table.hazifeladatDiak tr td a, fieldset.adatok a { color: black; } + table.hazifeladatDiak tr td a, fieldset.adatok a { color: cornflowerblue; text-decoration: underline; } table.hazifeladatDiak tr td a:visited, fieldset.adatok a:visited { color: #888; } - table.hazifeladatDiak tr td a:hover, fieldset.adatok a:hover { text-decoration:underline; color: cornflowerblue; } + table.hazifeladatDiak tr td a:hover, fieldset.adatok a:hover { font-style:italic; } table.hazifeladatDiak tr td.kesz { background-color: lightgreen; color:white; text-align:center } + table.hazifeladatDiak tr td.diakNev.extraDiak { background-color: violet; } + input.modosit { background-color: #ffeb3b; } span#hintDt {margin-left:5px; font-size:x-small; color:#888; cursor: copy;} span#hintDt span { padding-right:2px; } span#hintDt:hover { color:black; } + + span.hataridoUtaniFeltoltes { margin-left: 2px; font-size: x-small; background-color: #e91e63; border-radius:2px; padding: 0px 2px; color:white; } + + 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 8f26e848..f12a5b14 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 @@ -212,6 +212,10 @@ #updateWindowSideContent ul li a:hover,#updateWindowSideSubContent ul li a:hover { color:#999 } #updateWindowSideTitle a:hover, #updateWindowSideSubTitle a:hover { color:#999 } + div.sideOraAdatHazifeladat {border-left: solid 0px #888; padding: 4px; background-color: #e91e63; font-size: x-small;} + div.sideOraAdatHazifeladat a { text-decoration:underline; } + div.sideOraAdatHazifeladat a:hover { font-style:italic; } + /* #updateWindowSide h3:before { font-family: 'Elusive-Icons'; font-size:10px; content: "\e0a4"; padding-right:8px;font-weight:100; }*/ .updateWindowSide button.mentes, .updateWindowSide button.torles { margin: 4px 18px; height:2em; border-radius:2px; border: solid 1px white; color:white; background-color: #2196f3;} diff --git a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/hazifeladat.phtml b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/hazifeladat.phtml index 83d5d6f1..419fbc49 100644 --- a/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/hazifeladat.phtml +++ b/mayor-orig/mayor-naplo/www/skin/classic/module-naplo/html/haladasi/hazifeladat.phtml @@ -28,6 +28,20 @@ { echo '<p style="color:#aaa;">még nincs kitöltve</p>'; } else { echo ($ADAT['hazifeladatAdat']['hazifeladatLeiras']); } + if ($ADAT['hazifeladatAdat']['hazifeladatHataridoDt']!='') { + $_lejart = (strtotime(date('Y-m-d H:i:s'))>=strtotime($ADAT['hazifeladatAdat']['hazifeladatHataridoDt'])); + +echo '<style type="text/css"> + div.hatarido { background-color: #f5f5f5; border-radius: 2px; padding-top:10px; padding-bottom:10px; padding-left:10px;} + div.hatarido.lejart { background-color: #bdbdbd; color: white;} +</style> +'; + $_icon = ($_lejart) ? 'icon-ban-circle':'icon-time'; + $_class = ($_lejart) ? 'hatarido lejart':'hatarido'; + echo '<div class="'.$_class.'">'; + echo '<span class="'.$_icon.'"></span> Határidő: '.$ADAT['hazifeladatAdat']['hazifeladatHataridoDt']; + echo '</div>'; + } echo '</fieldset>'."\n"; @@ -65,6 +79,12 @@ if ($ADAT['hazifeladatDiak']['tanarLattamDt']!='') { echo ' <span class="icon-ok-sign" style="color: lightgreen"></span> '.$ADAT['hazifeladatDiak']['tanarLattamDt']; } + + if ($ADAT['hazifeladatAdat']['hazifeladatHataridoDt']!='' + && $D['hazifeladatDiakFileDt']!='' + && strtotime($D['hazifeladatDiakFileDt']) > strtotime($ADAT['hazifeladatAdat']['hazifeladatHataridoDt'])) { + echo '<span class="hataridoUtaniFeltoltes">határidő utáni feltöltés</span>'; + } echo '</li></ul>'; } @@ -196,14 +216,33 @@ echo '<tr><th>diák</th><th colspan="2">státusz</th><th colspan="1">csatolmány</th><th>láttam</th></tr>'; echo '</thead>'; + /* kiegészítjük a tankörnévsort az egyéb diákokkal, akik látták ezt a házifeladatot */ + for ($i=0; $i<count($ADAT['hazifeladatDiak']); $i++) { + $_diakId = $ADAT['hazifeladatDiak'][$i]['diakId']; + if (!is_array($ADAT['nevsor']['nevek'][$_diakId])) { + $EXTRA = $ADAT['hazifeladatDiak'][$i]; + if ($EXTRA['hazifeladatDiakStatus']!='') { // csak akkor rakjuk be a névsorba, ha késznek jelölte a diák + $ADAT['nevsor']['nevek'][$EXTRA['diakId']] = array('diakId'=>$ADAT['hazifeladatDiak'][$i]['diakId'],'diakNev'=>$EXTRA['diakNev'],'extra'=>'add'); + } + } + } + if (is_array($ADAT['nevsor']['nevek'])) foreach ($ADAT['nevsor']['nevek'] as $diakId => $ITEM) { $D = $DIAKHF[$diakId]; + $_extraClass = ($ITEM['extra']=='add') ? 'extraDiak':''; echo '<tr>'; - echo '<td class="diakNev diakAdat" data-diakid="'.$diakId.'">'.$ITEM['diakNev'].'</td>'; + echo '<td class="diakNev diakAdat '.$_extraClass.'" data-diakid="'.$diakId.'">'.$ITEM['diakNev'].'</td>'; if (__NAPLOADMIN===true || __VEZETOSEG===true) echo '<td>'.$D['diakLattamDt'].'</td>'; - echo '<td colspan="2" class="'.ekezettelen($D['hazifeladatDiakStatus']).'">'.$D['hazifeladatDiakStatus'].'</td>'; + echo '<td colspan="1" class="'.ekezettelen($D['hazifeladatDiakStatus']).'">'.$D['hazifeladatDiakStatus'].'</td>'; //echo '<td>'.$D['hazifeladatDiakMegjegyzes'].'</td>'; + echo '<td>'; + if ($ADAT['hazifeladatAdat']['hazifeladatHataridoDt']!='' + && $D['hazifeladatDiakFileDt']!='' + && strtotime($D['hazifeladatDiakFileDt']) > strtotime($ADAT['hazifeladatAdat']['hazifeladatHataridoDt'])) { + echo '<span class="hataridoUtaniFeltoltes">határidő utáni feltöltés</span>'; + } + echo '</td>'; $ADAT['dir'] = 'naplo/haladasi/hazifeladat'; $ADAT['file'] = $D['hazifeladatDiakFilename']; @@ -233,54 +272,5 @@ } - function putHazifeladatDiakOrig($ADAT) { - - if (count($ADAT['hazifeladatDiak'])==0) return false; - - echo formBegin(); - echo '<input type="hidden" name="action" value="lattam" />'; - echo '<input type="hidden" name="hazifeladatId" value="'.$ADAT['hazifeladatId'].'" />'; - echo '<table class="hazifeladatDiak" cellpadding="1" cellspacing="1">'; - echo '<thead>'; - if (__NAPLOADMIN===true || __VEZETOSEG===true) - echo '<tr><th>diák</th><th>látta</th><th colspan="2">státusz</th><th colspan="1">csatolmány</th><th>láttam</th></tr>'; - else - echo '<tr><th>diák</th><th colspan="2">státusz</th><th colspan="1">csatolmány</th><th>láttam</th></tr>'; - echo '</thead>'; - for ($i=0; $i<count($ADAT['hazifeladatDiak']); $i++) { - $D = $ADAT['hazifeladatDiak'][$i]; - echo '<tr>'; - echo '<td class="diakNev diakAdat" data-diakid="'.$D['diakId'].'">'.$D['diakNev'].'</td>'; - if (__NAPLOADMIN===true || __VEZETOSEG===true) echo '<td>'.$D['diakLattamDt'].'</td>'; - echo '<td>'.$D['hazifeladatDiakStatus'].'</td>'; - echo '<td>'.$D['hazifeladatDiakMegjegyzes'].'</td>'; - - $ADAT['dir'] = 'naplo/haladasi/hazifeladat'; - $ADAT['file'] = $D['hazifeladatDiakFilename']; - $href = href('index.php?page=session&f=download&dir='.$ADAT['dir'].'&file='.$ADAT['file'].'&download=true'); - echo '<td>'; - if ($D['hazifeladatDiakOrigFilename']!='') { - echo '<a href="'.$href.'" target="_blank">'.htmlspecialchars($D['hazifeladatDiakOrigFilename']).'</a> <span class="icon-paper-clip"></span>'; - } - echo '</td>'; - echo '<td style="text-align: center">'; -// if ($ADAT['hazifeladatDiak']['hazifeladatDiakStatus']=='kész') { - if (__TANAR===true) { - if ($D['tanarLattamDt']=='') { - echo '<button type="submit" name="lattam[]" value="'.$D['diakId'].'" class="btnLattamStatusz"><span class="icon-ok-sign"></span> láttam!</button>'; - } else { - echo '<button type="submit" class="btnLattamStatusz lattam"><span class="icon-ok-sign"></span> láttam.</button>'; - } - } else { - if ($D['tanarLattamDt']!='') {echo '<span class="icon-ok-sign" style="color:lightblue"></span>';} - } -// } - echo '</td>'; - echo '</tr>'; - } - echo '</table>'; - echo formEnd(); - - } -?> +?>
\ No newline at end of file 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 b5d19f89..ece36953 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 @@ -747,7 +747,7 @@ processJSONOraAdat = function(adat) { content += '<ul><li style="font-style:x-small;">Határidő: '+adat['oraAdat']['hazifeladatHataridoDt']+' <span class="icon-time"></span></li></ul>'; } if (adat['oraAdat']['hazifeladatLeiras']!='') { - content += '<div style="border-left: solid 0px #888; padding: 4px; background-color: #e91e63; font-size: x-small;">'; + content += '<div class="sideOraAdatHazifeladat" sxtyle="border-left: solid 0px #888; padding: 4px; background-color: #e91e63; font-size: x-small;">'; content += adat['oraAdat']['hazifeladatLeiras']; content += '</div>'; } |