if ($resultSet === 0) { $dbConn->log($dbConn->ErrorMsg()); $dbConn->Execute("abort"); } } $scripts = '<script type="text/javascript" src="js/jquery.js"></script> <script src="js/jquery.tablesorter.js"></script> <script type="text/javascript"> $(document).ready(function() { $("#myTable").tablesorter({widgets: [\'zebra\']}); }); </script> <link rel=\'stylesheet\' type=\'text/css\' href=\'' . SITEROOT . '/style/tablesorterstyle.css\'/> '; $myClassSelector = new ClassSelectorClass($dbConn, $class_id); $classSelectorWidget = $myClassSelector->setAutoSubmit(true)->setSelectorName('newclass_id')->getSelector(); $sql = "select distinct snummer,achternaam,roepnaam,voorvoegsel,lang \n" . " from student \n" . "join student_class using(class_id)\n" . " where class_id={$class_id} " . " order by achternaam,roepnaam"; $rainbow = new RainBow(); $memberTable = simpletableString($dbConn, $sql, "<table id='myTable' class='tablesorter' summary='your requested data'" . " style='empty-cells:show;border-collapse:collapse' border='1'>"); pagehead2('Add/move individual student to class.', $scripts); $page_opening = "Add individual student to a class. <span style='font-size:6pt;'>class_id {$class_id}</span>"; $nav = new Navigation($tutor_navtable, basename($PHP_SELF), $page_opening); $nav->setInterestMap($tabInterestCount); $nav->show(); include_once 'templates/addtoclass.html'; ?> <!-- db_name=<?php echo $db_name; ?> -->
} if (isset($_POST['sethoofdgrp']) && isset($newhoofdgrp) && isset($_POST['studenten'])) { $memberset = '\'' . implode("','", $_POST['studenten']) . '\''; $sql = "update student set hoofdgrp=substr('{$newhoofdgrp}',1,10) " . "where snummer in ({$memberset})"; $resultSet = $dbConn->Execute($sql); if ($resultSet === false) { die("<br>Cannot update student with " . $sql . " reason " . $dbConn->ErrorMsg() . "<br>"); } } if (isset($_POST['maillist'])) { createGenericMaillistByClassid($dbConn, $oldclass_id); } $pp['mailalias'] = $prefix . '@fontysvenlo.org'; $oclassSelectorClass = new ClassSelectorClass($dbConn, $oldclass_id); $pp['oldClassSelector'] = $oclassSelectorClass->setSelectorName('oldclass_id')->addConstraint('student_count <>0')->setAutoSubmit(true)->getSelector(); $nclassSelectorClass = new ClassSelectorClass($dbConn, $newclass_id); $pp['newClassSelector'] = $nclassSelectorClass->setSelectorName('newclass_id')->getSelector(); $page = new PageContainer(); $page_opening = "Move students between student_class."; $page->setTitle($page_opening); $nav = new Navigation($tutor_navtable, basename($PHP_SELF), $page_opening); $nav->setInterestMap($tabInterestCount); $page->addBodyComponent($nav); $css = '<link rel=\'stylesheet\' type=\'text/css\' href=\'' . SITEROOT . '/style/tablesorterstyle.css\'/>'; $page->addScriptResource('js/jquery.js'); $page->addScriptResource('js/jquery.tablesorter.js'); $page->addHeadText($css); $page->addJqueryFragment('$("#myTable").tablesorter({widgets: [\'zebra\'],headers: {0:{sorter:false}}}); var table = $("#myTable"); table.bind("sortEnd",function() { var i = 0;
} if (isset($_POST['slb']) && preg_match('/^\\d+$/', $_POST['slb'])) { //$newslb= preg_replace('/\W+/g','',$_POST['slb']); $_SESSION['slb'] = $slb = $_POST['slb']; } if (isset($_POST['setslb']) && isset($slb) && isset($_POST['studenten'])) { $memberset = '\'' . implode("','", $_POST['studenten']) . '\''; $sql = "update student set slb={$slb} " . "where snummer in ({$memberset})"; $resultSet = $dbConn->Execute($sql); if ($resultSet === false) { die("<br>Cannot update student with " . $sql . " reason " . $dbConn->ErrorMsg() . "<br>"); } } $class_sql = "select distinct student_class.sclass||'#'||class_id||' (#'||coalesce(student_count,0)||')' as name,\n" . "class_id as value, \n" . " trim(faculty_short)||'.'||trim(coalesce(cluster_name,'')) as namegrp, \n" . " faculty_short,\n" . " case when class_cluster=(select class_cluster from student join student_class using(class_id) where snummer={$peer_id}) then 0 else 1 end as myclass " . " from student_class " . " natural left join class_cluster\n" . " left join faculty using(faculty_id) \n" . " left join class_size using(class_id) \n" . "order by myclass,namegrp,name"; $pp = array(); $classSelectorClass = new ClassSelectorClass($dbConn, $oldclass_id); $pp['oldClassOptionsList'] = $classSelectorClass->setSelectorName('oldclass_id')->addConstraint('sort1 < 10 and student_count <>0')->setAutoSubmit(true)->getSelector(); $page_opening = "Get and set Student Study coach (SLB) by class."; $page = new PageContainer(); $page->setTitle("Set/check SLB"); $nav = new Navigation($tutor_navtable, basename($PHP_SELF), $page_opening); $nav->setInterestMap($tabInterestCount); $sql_slb = "select achternaam||','||roepnaam||' ['||tutor||']' as name,\n" . " snummer as value,faculty_short||'-'||course_short as namegrp \n" . " from tutor_join_student tjs left join faculty using(faculty_id)\n" . " left join fontys_course fc on (tjs.opl=fc.course)\n" . " order by namegrp,faculty,achternaam,roepnaam "; $pp['slbList'] = getOptionListGrouped($dbConn, $sql_slb, $slb); $css = '<link rel=\'stylesheet\' type=\'text/css\' href=\'' . SITEROOT . '/style/tablesorterstyle.css\'/>'; $page->addScriptResource('js/jquery.js'); $page->addScriptResource('js/jquery.tablesorter.js'); $page->addHeadText($css); $page->addJqueryFragment('$("#myTable").tablesorter({widgets: [\'zebra\'],headers: {0:{sorter:false}}});'); //echo "<pre>\n";print_r($_REQUEST); echo"</pre>\n"; $page->addBodyComponent($nav);
include_once './peerlib/peerutils.inc'; require_once './peerlib/validators.inc'; include_once 'navigation2.inc'; requireCap(CAP_TUTOR); include './peerlib/simplequerytable.inc'; require_once 'ClassSelectorClass.php'; require_once 'SpreadSheetWriter.php'; // get group tables for a project $class_id = 1; $fileExtension = 'xls'; if (isset($_REQUEST['class_id'])) { $_SESSION['class_id'] = $class_id = validate($_REQUEST['class_id'], 'integer', 1); } extract($_SESSION); $classSelectorClass = new ClassSelectorClass($dbConn, $class_id); $oldClassSelector = $classSelectorClass->addConstraint('sort1 < 10 and student_count <>0')->getSelector(); if (isset($class_id)) { $sql = "select trim(faculty_short) as faculty_short,trim(sclass) as sclass\n" . " from student_class join faculty using(faculty_id) where class_id={$class_id}"; $resultSet = $dbConn->Execute($sql); if ($resultSet !== false) { extract($resultSet->fields); } } $sqlhead = "select distinct snummer," . "achternaam ,roepnaam, voorvoegsel as tussenvoegsel, " . "pcn,lang,gebdat as birth_date,t.tutor as slb,country as nation,rtrim(email1) as email1,rtrim(email2) as email2,\n" . "studieplan_short as studieplan,sclass,hoofdgrp ,\n" . "straat,huisnr,plaats,phone_gsm,phone_home\n" . " from \n"; $sqltail = " join student_class using(class_id) left join tutor t on (s.slb=t.userid)\n" . " left join studieplan using(studieplan)\n" . "left join iso3166 on(nationaliteit=a2)\n" . "where class_id='{$class_id}' order by achternaam,roepnaam"; $fdate = date('Y-m-d'); $filename = 'class_list_' . $faculty_short . '_' . $sclass . '-' . $fdate; $spreadSheetWriter = new SpreadSheetWriter($dbConn, $sqlhead . ' student s left join alt_email aem using(snummer) ' . $sqltail); $spreadSheetWriter->setTitle("Class list {$faculty_short} {$sclass} {$fdate}")->setLinkUrl($server_url . $PHP_SELF . '?class_id=' . $class_id)->setFilename($filename)->setAutoZebra(true); $spreadSheetWriter->processRequest();
/** * Get a class by cluster, faculty, name and class_id * @param $dboon db connector * @param $selector_name, name and id of html select * @param $current_selection the selected class * @deprecated since version 1568, use ClassSelectorClass instead. */ function classSelector($dbConn, $selector_name, $current_selection, $autoSubmit = false) { $csc = new ClassSelectorClass($dbConn, $current_selection); return $csc->setSelectorName($selector_name)->setAutoSubmit($autoSubmit)->getSelector(); }
$class_id = '1'; $tutor = $tutor_code; extract($_SESSION); $year = date('Y'); # get actual course_year $sql = "select value as year from peer_settings where key='course_year'"; $resultSet = $dbConn->Execute($sql); if (!$resultSet->EOF) { extract($resultSet->fields); } if (isset($_REQUEST['class_id'])) { $_SESSION['class_id'] = $class_id = $_REQUEST['class_id']; } $style = file_get_contents('js/balloonscript.html'); pagehead2('class photos', $style); $classSelectorClass = new ClassSelectorClass($dbConn, $class_id); $oldClassSelector = $classSelectorClass->setAutoSubmit(true)->addConstraint('sort1 < 10 and student_count <>0')->getSelector(); $sql = "select * from hoofdgrp where hoofdgrp='{$class_id}'"; $sql = "select * from student_class natural join faculty where class_id='{$class_id}'"; $resultSet = $dbConn->Execute($sql); if ($resultSet === false) { die("<br>Cannot get class data with " . $sql . " reason " . $dbConn->ErrorMsg() . "<br>"); } if (!$resultSet->EOF) { extract($resultSet->fields); } $tablehead = "<h2><a href='photolist.php?class_id={$class_id}'>" . "Class photos for class {$faculty_short}.{$sclass} {$class_id}: {$year}-" . ($year + 1) . "<img src='images/pdf_icon.png' border='0'/></a></h2>\n"; $page_opening = "Class photos for class {$faculty_short}.{$sclass} {$class_id} {$year}-" . ($year + 1); $nav = new Navigation($tutor_navtable, basename($PHP_SELF), $page_opening); $nav->setInterestMap($tabInterestCount); $sql = "SELECT distinct st.snummer as number," . "st.roepnaam||' '||coalesce(regexp_replace(st.voorvoegsel,'''','’')||' ','')||st.achternaam as name,\n" . "st.achternaam,st.roepnaam,st.voorvoegsel,cohort,cohort,st.opl as opl_code,pcn,lang,sex,gebdat,\n" . "straat,huisnr,pcode,plaats,nationaliteit,\n" . "td.roepnaam||coalesce(' '||td.voorvoegsel,'')||' '||td.achternaam as slb,coalesce(td.tutor,'---') as slb_ab,\n" . "st.hoofdgrp as sclass, st.snummer as participant, course_description as opleiding,gebdat as birthday,\n" . "'fotos/'||image as image\n" . " from student_email st \n" . "left join fontys_course fc on(st.opl=fc.course)\n" . "left join tutor_join_student td on (st.slb=td.snummer)\n" . "where class_id='{$class_id}'" . "order by achternaam,roepnaam";