function ProperDate($date = '', $length = 'long')
{
    $months_number['JAN'] = '1';
    $months_number['FEB'] = '2';
    $months_number['MAR'] = '3';
    $months_number['APR'] = '4';
    $months_number['MAY'] = '5';
    $months_number['JUN'] = '6';
    $months_number['JUL'] = '7';
    $months_number['AUG'] = '8';
    $months_number['SEP'] = '9';
    $months_number['OCT'] = '10';
    $months_number['NOV'] = '11';
    $months_number['DEC'] = '12';
    if ($date && strlen($date) == 9) {
        $year = substr($date, 7);
        $month = $months_number[strtoupper(substr($date, 3, 3))];
        $day = substr($date, 0, 2) * 1;
        $comment = '<!-- ' . ($year < 50 ? 20 : 19) . $year . MonthNWSwitch(substr($date, 3, 3), 'tonum') . substr($date, 0, 2) . ' -->';
    } elseif ($date) {
        $year = substr($date, 0, 4);
        $month = substr($date, 5, 2) * 1;
        $day = substr($date, 8) * 1;
        $comment = '<!-- ' . $year . substr($date, 5, 2) . substr($date, 8) . ' -->';
    }
    if ((Preferences('MONTH') == 'm' || Preferences('MONTH') == 'M') && (Preferences('DAY') == 'j' || Preferences('DAY') == 'd') && Preferences('YEAR')) {
        $sep = '/';
    } else {
        $sep = ' ';
    }
    if ($date) {
        return date(($length == 'long' || Preferences('MONTH') != 'F' ? Preferences('MONTH') : 'M') . $sep . Preferences('DAY') . $sep . Preferences('YEAR'), mktime(0, 0, 0, $month, $day, $year));
    }
}
function ProperDate($date = '', $length = 'long')
{
    if ($date) {
        if (mb_strlen($date) == 9) {
            $months_number = array('JAN' => '01', 'FEB' => '02', 'MAR' => '03', 'APR' => '04', 'MAY' => '05', 'JUN' => '06', 'JUL' => '07', 'AUG' => '08', 'SEP' => '09', 'OCT' => '10', 'NOV' => '11', 'DEC' => '12');
            $year = mb_substr($date, 7, 2);
            $year = ($year < 50 ? '20' : '19') . $year;
            $month = $months_number[mb_strtoupper(mb_substr($date, 3, 3))];
            $day = mb_substr($date, 0, 2);
        } elseif (mb_strlen($date) == 10) {
            $year = mb_substr($date, 0, 4);
            $month = mb_substr($date, 5, 2);
            $day = mb_substr($date, 8, 2);
        } else {
            $months_number = array('JAN' => '01', 'FEB' => '02', 'MAR' => '03', 'APR' => '04', 'MAY' => '05', 'JUN' => '06', 'JUL' => '07', 'AUG' => '08', 'SEP' => '09', 'OCT' => '10', 'NOV' => '11', 'DEC' => '12');
            $year = mb_substr($date, 7, 4);
            $day = mb_substr($date, 0, 2);
            $month = $months_number[mb_strtoupper(mb_substr($date, 3, 3))];
        }
        $comment = '<!-- ' . $year . $month . $day . ' -->';
        if (!empty($_REQUEST['_ROSARIO_PDF']) && $_REQUEST['LO_save'] && Preferences('E_DATE') == 'MM/DD/YYYY') {
            return $comment . $month . '/' . $day . '/' . $year;
        }
        //modif Francois: display locale with strftime()
        //	if((Preferences('MONTH')=='m' || Preferences('MONTH')=='M') && (Preferences('DAY')=='j' || Preferences('DAY')=='d') && Preferences('YEAR'))
        if ((Preferences('MONTH') == '%m' || Preferences('MONTH') == '%b') && Preferences('DAY') == '%d' && Preferences('YEAR')) {
            $sep = '/';
        } else {
            $sep = ' ';
        }
        //modif Francois: display locale with strftime()
        return $comment . mb_convert_case(iconv('', 'UTF-8', strftime(($length == 'long' || Preferences('MONTH') != '%B' ? Preferences('MONTH') : '%b') . $sep . Preferences('DAY') . $sep . Preferences('YEAR'), mktime(0, 0, 0, $month + 0, $day + 0, $year + 0))), MB_CASE_TITLE, "UTF-8");
        //	return $comment.date((($length=='long' || Preferences('MONTH')!='F')?Preferences('MONTH'):'M').$sep.Preferences('DAY').$sep.Preferences('YEAR'),mktime(0,0,0,$month+0,$day+0,$year+0));
    }
}
Beispiel #3
0
function ProperDate($date = '', $length = 'long')
{
    if ($date) {
        if (strlen($date) == 9) {
            $months_number = array('JAN' => '01', 'FEB' => '02', 'MAR' => '03', 'APR' => '04', 'MAY' => '05', 'JUN' => '06', 'JUL' => '07', 'AUG' => '08', 'SEP' => '09', 'OCT' => '10', 'NOV' => '11', 'DEC' => '12');
            $year = substr($date, 7, 2);
            $year = ($year < 50 ? '20' : '19') . $year;
            $month = $months_number[strtoupper(substr($date, 3, 3))];
            $day = substr($date, 0, 2);
        } elseif (strlen($date) == 10) {
            $year = substr($date, 0, 4);
            $month = substr($date, 5, 2);
            $day = substr($date, 8, 2);
        } else {
            $months_number = array('JAN' => '01', 'FEB' => '02', 'MAR' => '03', 'APR' => '04', 'MAY' => '05', 'JUN' => '06', 'JUL' => '07', 'AUG' => '08', 'SEP' => '09', 'OCT' => '10', 'NOV' => '11', 'DEC' => '12');
            $year = substr($date, 7, 4);
            $day = substr($date, 0, 2);
            $month = $months_number[strtoupper(substr($date, 3, 3))];
        }
        $comment = '<!-- ' . $year . $month . $day . ' -->';
        if (isset($_REQUEST['_CENTRE_PDF']) && $_REQUEST['_CENTRE_PDF'] && $_REQUEST['LO_save'] && Preferences('E_DATE') == 'MM/DD/YYYY') {
            return $comment . $month . '/' . $day . '/' . $year;
        }
        if ((Preferences('MONTH') == 'm' || Preferences('MONTH') == 'M') && (Preferences('DAY') == 'j' || Preferences('DAY') == 'd') && Preferences('YEAR')) {
            $sep = '/';
        } else {
            $sep = ' ';
        }
        return $comment . date(($length == 'long' || Preferences('MONTH') != 'F' ? Preferences('MONTH') : 'M') . $sep . Preferences('DAY') . $sep . Preferences('YEAR'), mktime(0, 0, 0, $month + 0, $day + 0, $year + 0));
    }
}
Beispiel #4
0
function DrawHeader($left = '', $right = '', $center = '')
{
    global $_CENTRE;
    if (!isset($_CENTRE['DrawHeader'])) {
        $_CENTRE['DrawHeader'] = 'bgcolor=' . Preferences('HEADER');
        if ($_CENTRE['HeaderIcon']) {
            $left = '<IMG src=assets/icons/' . $_CENTRE['HeaderIcon'] . ' height=20 border=0 align=absmiddle> ' . $left;
        }
    }
    if ($_CENTRE['DrawHeader'] == 'bgcolor=' . Preferences('HEADER')) {
        $attribute = 'B';
        $font_color = '#FFFFFF';
    } else {
        $attribute = 'FONT size=-1';
        $font_color = '#000000';
    }
    echo '<TABLE width=100% border=0 cellpadding=0 cellspacing=0><TR>';
    if ($left) {
        echo '<TD ' . $_CENTRE['DrawHeader'] . ' align=left>&nbsp;<font color=' . $font_color . '><' . $attribute . '>' . $left . '</' . substr($attribute, 0, 4) . '></font></TD>';
    }
    if ($center) {
        echo '<TD ' . $_CENTRE['DrawHeader'] . ' align=center><font color=' . $font_color . '><' . $attribute . '>' . $center . '</' . $attribute . '></font></TD>';
    }
    if ($right) {
        echo '<TD ' . $_CENTRE['DrawHeader'] . ' align=right><font color=' . $font_color . '><' . $attribute . '>' . $right . '</' . substr($attribute, 0, 4) . '></font></TD>';
    }
    echo '</TR></TABLE>';
    if ($_CENTRE['DrawHeader'] == 'bgcolor=' . Preferences('HEADER')) {
        $_CENTRE['DrawHeader'] = 'bgcolor=#FFFFFF style="border:1;border-style: none none solid none;"';
    } else {
        $_CENTRE['DrawHeader'] = 'bgcolor=#F0F0F1 style="border:1;border-style: none none solid none;"';
    }
}
Beispiel #5
0
function PopTable($action, $title = 'Search', $table_att = '', $cell_padding = '5')
{
    global $_ROSARIO;
    if ($action == 'header') {
        //modif Francois: css WPadmin
        if (!empty($_REQUEST['_ROSARIO_PDF'])) {
            echo '<TABLE class="cellpadding-6" ' . $table_att . '>';
            echo '<TR><TD class="width-100p center" style="background-color:' . Preferences('HEADER') . ';">';
        } else {
            echo '<TABLE class="postbox cellspacing-0 cellpadding-0" ' . $table_att . '>';
            echo '<TR><TD class="center">';
        }
        if (is_array($title)) {
            echo WrapTabs($title, $_ROSARIO['selected_tab']);
        } else {
            echo DrawTab($title);
        }
        echo '</TD></TR>
		<TR><TD>';
        // Start content table.
        echo '<TABLE style="padding:' . $cell_padding . 'px;" class="width-100p cellspacing-0"><tr><td>';
    } elseif ($action == 'footer') {
        // Close embeded table.
        echo '</td></tr></TABLE>';
        echo '</TD>
		</TR>
		</TABLE>';
    }
}
Beispiel #6
0
    function Warehouse($mode)
    {
        global $__SHOW_FOOTER, $_CENTRE, $CentreTitle;
        switch ($mode) {
            case 'header':
                echo '<HTML' . (substr($_SESSION['locale'], 0, 2) == 'he' ? ' dir="RTL"' : '') . '>';
                echo "<HEAD><TITLE>{$CentreTitle}</TITLE>";
                echo "<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />";
                if (basename($_SERVER['PHP_SELF']) != 'index.php') {
                    echo "<noscript><META http-equiv=REFRESH content='0;url=index.php?modfunc=logout&reason=javascript' /></noscript>";
                }
                echo "<script language=\"JavaScript\" type=\"text/javascript\">";
                if (basename($_SERVER['PHP_SELF']) == 'index.php') {
                    echo "\n\t\t\t\t\t\t\tif(parent.frames.length > 0)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tparent.location.href = 'index.php?modfunc=logout';\n\t\t\t\t\t\t\t}";
                }
                echo "\n\t\t\t\t\t\t\tvar locked;\n\t\t\t\t\t\t\tfunction doOnload()\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvar layer;\n\t\t\t\t\t\t\t\tif(layer = document.getElementById('LOx_layer'))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvar right,left = getLeft(1);\n\t\t\t\t\t\t\t\t\tlayer.style.left = left;\n\t\t\t\t\t\t\t\t\tlayer.style.top = 0;\n\t\t\t\t\t\t\t\t\tdocument.getElementById('LOx_table').left = left;\n\n\t\t\t\t\t\t\t\t\tfor(i=2;column = document.getElementById('LOx'+i);i++)\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tright = getLeft(i);\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById('LO_col'+(i-1)).width = right-left-14;\n\t\t\t\t\t\t\t\t\t\tleft = right;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tdocument.getElementById('LO_col'+(i-2)).width = left-getLeft(i-2)-10;\n\t\t\t\t\t\t\t\t\ttotal_width = getLeft(i-1)-getLeft(1) + 7;\n\t\t\t\t\t\t\t\t\tdocument.getElementById('LOx_table').width = total_width;\n\t\t\t\t\t\t\t\t\tif(navigator.userAgent.indexOf('Safari')==-1&&navigator.userAgent.indexOf('Microsoft Internet Explorer')==-1)\n\t\t\t\t\t\t\t\t\t\twindow.setInterval('doOnscroll()',50);\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t\twindow.onscroll = doOnscroll;\n\t\t\t\t\t\t\t\t\twindow.onresize = doOnresize;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tif(layer = document.getElementById('LOy_layer'))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvar bottom,top = getTop(1);\n\t\t\t\t\t\t\t\t\tlayer.style.left = getLeft(1);\n\t\t\t\t\t\t\t\t\tlayer.style.top = top;\n\t\t\t\t\t\t\t\t\tdocument.getElementById('LOy_table').left = left;\n\n\t\t\t\t\t\t\t\t\tfor(i=2;row = document.getElementById('LOy'+i);i++)\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tbottom = getTop(i);\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById('LO_row'+(i-1)).height = bottom-top-2;\n\t\t\t\t\t\t\t\t\t\ttop = bottom;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tdocument.getElementById('LOy_table').width = getLeft(2)-getLeft(1);\n\t\t\t\t\t\t\t\t\tif(navigator.userAgent.indexOf('Safari')==-1&&navigator.userAgent.indexOf('Microsoft Internet Explorer')==-1)\n\t\t\t\t\t\t\t\t\t\twindow.setInterval('doOnscroll()',50);\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t\twindow.onscroll = doOnscroll;\n\t\t\t\t\t\t\t\t\twindow.onresize = doOnresize;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction doOnresize()\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdoOnload();\n\t\t\t\t\t\t\t\tdoOnscroll();\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction doOnscroll()\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvar layer;\n\t\t\t\t\t\t\t\tif(layer = document.getElementById(\"LOx_layer\"))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvar pY = (window.document.body.scrollTop ? window.document.body.scrollTop : window.pageYOffset);\n\t\t\t\t\t\t\t\t\tif(pY > getListTop())\n\t\t\t\t\t\t\t\t\t\tlayer.style.visibility = \"visible\";\n\t\t\t\t\t\t\t\t\telse if(pY < getListTop())\n\t\t\t\t\t\t\t\t\t\tlayer.style.visibility = \"hidden\";\n\t\t\t\t\t\t\t\t\tif(pY)\n\t\t\t\t\t\t\t\t\t\tlayer.style.top = (window.document.body.scrollTop ? window.document.body.scrollTop : window.pageYOffset);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tif(layer = document.getElementById(\"LOy_layer\"))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvar pX = (window.document.body.scrollLeft ? window.document.body.scrollLeft : window.pageXOffset);\n\t\t\t\t\t\t\t\t\tif(pX > 0)\n\t\t\t\t\t\t\t\t\t\tlayer.style.visibility = \"visible\";\n\t\t\t\t\t\t\t\t\telse if(pX == 0)\n\t\t\t\t\t\t\t\t\t\tlayer.style.visibility = \"hidden\";\n\t\t\t\t\t\t\t\t\tif(pX)\n\t\t\t\t\t\t\t\t\t\tlayer.style.left = (window.document.body.scrollLeft ? window.document.body.scrollLeft : window.pageXOffset);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction getLeft(column_number)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvar x = 0;\n\t\t\t\t\t\t\t\tif(document.layers)\n\t\t\t\t\t\t\t\t\tx = document.layers['LOx'+column_number].pageX;\n\t\t\t\t\t\t\t\telse if(document.all || document.getElementById)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvar cell = document.all ? document.all['LOx'+column_number] : document.getElementById('LOx'+column_number);\n\t\t\t\t\t\t\t\t\twhile(cell)\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tx += cell.offsetLeft;\n\t\t\t\t\t\t\t\t\t\tcell = cell.offsetParent;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn x-8;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction getTop(row_number)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvar y = 0;\n\t\t\t\t\t\t\t\tif(document.layers)\n\t\t\t\t\t\t\t\t\ty = document.layers['LOy'+row_number].pageY;\n\t\t\t\t\t\t\t\telse if(document.all || document.getElementById)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvar cell = document.all ? document.all['LOy'+row_number] : document.getElementById('LOy'+row_number);\n\t\t\t\t\t\t\t\t\twhile(cell)\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ty += cell.offsetTop;\n\t\t\t\t\t\t\t\t\t\tcell = cell.offsetParent;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn y-8;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction getListTop()\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvar y = 0;\n\t\t\t\t\t\t\t\tif(document.layers)\n\t\t\t\t\t\t\t\t\ty = document.layers['LOx1'].pageY;\n\t\t\t\t\t\t\t\telse if(document.all || document.getElementById)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvar cell = document.all ? document.all['LOx1'] : document.getElementById('LOx1');\n\t\t\t\t\t\t\t\t\twhile(cell)\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ty += cell.offsetTop;\n\t\t\t\t\t\t\t\t\t\tcell = cell.offsetParent;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn y;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction putFocus()\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif(document.forms.length > 0)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdocument.forms[0].elements[0].focus();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction addHTML(html,id,replace)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif(locked!=false)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tif(replace==true)\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById(id).innerHTML = html;\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById(id).innerHTML = document.getElementById(id).innerHTML + html;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction changeHTML(show,hide)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfor(key in show)\n\t\t\t\t\t\t\t\t\tdocument.getElementById(key).innerHTML = document.getElementById(show[key]).innerHTML;\n\t\t\t\t\t\t\t\tfor(i=0;i<hide.length;i++)\n\t\t\t\t\t\t\t\t\tdocument.getElementById(hide[i]).innerHTML = '';\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction checkAll(form,value,name_like)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif(value==true)\n\t\t\t\t\t\t\t\t\tchecked = true;\n\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\tchecked = false;\n\n\t\t\t\t\t\t\t\tfor(i=0;i<form.elements.length;i++)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tif(form.elements[i].type=='checkbox' && form.elements[i].name!='controller' && form.elements[i].name.substr(0,name_like.length)==name_like)\n\t\t\t\t\t\t\t\t\t\tform.elements[i].checked = checked;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tfunction switchMenu(id)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif(document.getElementById(id).style.display=='none')\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdocument.getElementById(id).style.display = 'block';\n\t\t\t\t\t\t\t\t\tdocument.getElementById(id+'_arrow').src = 'assets/arrow_down.gif';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdocument.getElementById(id).style.display = 'none';\n\t\t\t\t\t\t\t\t\tdocument.getElementById(id+'_arrow').src = 'assets/arrow_right.gif';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n                            \n                            function setMLvalue(id,loc,value)\n                            {\n                                res = document.getElementById(id).value.split('|');\n                                if(loc=='') {\n                                    if (value == '') {\n                                        alert('" . _('The first translation string cannot be empty.') . "');\n                                        value = 'Something';\n                                    }\n                                    res[0] = value;\n                                } else {\n                                    found = 0;\n                                    for (i=1;i<res.length;i++) {\n                                        if (res[i].substring(0,loc.length) == loc) {\n                                            found = 1;\n                                            if (value == '') {\n                                                for (j=i+1;j<res.length;j++)\n                                                    res[j-1] = res[j];\n                                                res.pop();\n                                            } else {\n                                                res[i] = loc+':'+value;\n                                            }\n                                        }\n                                    }    \n                                    if ((found == 0) && (value != '')) res.push(loc+':'+value);\n                                }\n                                document.getElementById(id).value = res.join('|');                                \n                            }\n\t\t\t\t\t\t</script>\n\t\t\t\t\t</HEAD>\n\t\t\t\t\t<link rel=stylesheet type=text/css href=assets/themes/" . Preferences('THEME') . "/stylesheet.css>";
                echo '  <link rel="stylesheet" type="text/css" media="all" href="assets/jscalendar/calendar-blue2.css" />
  <script type="text/javascript" src="assets/jscalendar/calendar.js"></script>
  <script type="text/javascript" src="assets/jscalendar/lang/calendar-en.js"></script>
  <script type="text/javascript" src="assets/jscalendar/calendar-setup.js"></script>
  <script type="text/javascript" src="assets/js/jquery.js"></script>
  <script type="text/javascript" src="assets/js/prototype.js"></script>
  <script type="text/javascript" src="assets/js/billing.js"></script>
  <script type="text/javascript" src="assets/tipmessage/main15.js"></script>';
                break;
            case "footer":
                echo '</TD></TR></TABLE>';
                if (isset($_CENTRE['PrepareDate'])) {
                    for ($i = 1; $i <= $_CENTRE['PrepareDate']; $i++) {
                        echo '<script type="text/javascript">
							Calendar.setup({
								monthField     :    "monthSelect' . $i . '",
								dayField       :    "daySelect' . $i . '",
								yearField      :    "yearSelect' . $i . '",
								ifFormat       :    "%d-%b-%y",
								button         :    "trigger' . $i . '",
								align          :    "Tl",
								singleClick    :    true
							});
						</script>';
                    }
                }
                echo '</BODY>';
                echo '</HTML>';
                break;
        }
    }
Beispiel #7
0
function PDFStop($handle)
{
    //global $htmldocPath,$htmldocAssetsPath;
    global $wkhtmltopdfPath, $wkhtmltopdfAssetsPath, $locale;
    $handle['orientation'] = $_SESSION['orientation'];
    unset($_SESSION['orientation']);
    $html_content = ob_get_clean();
    //convert to HTML page with CSS
    $html = '<!DOCTYPE html><HTML lang="' . mb_substr($locale, 0, 2) . '" ' . (mb_substr($locale, 0, 2) == 'he' || mb_substr($locale, 0, 2) == 'ar' ? ' dir="RTL"' : '') . '><HEAD><meta charset="UTF-8" />';
    if ($handle['css']) {
        $html .= '<link rel="stylesheet" type="text/css" href="assets/themes/' . Preferences('THEME') . '/stylesheet.css" />';
    }
    //modif Francois: bugfix wkhtmltopdf screen resolution on linux
    //see: https://code.google.com/p/wkhtmltopdf/issues/detail?id=118
    $html .= '<TITLE>' . str_replace(_('Print') . ' ', '', ProgramTitle()) . '</TITLE></HEAD><BODY><div style="width:' . (!empty($handle['orientation']) && $handle['orientation'] == 'landscape' ? '1448' : '1024') . 'px">' . $html_content . '</div></BODY></HTML>';
    //modif Francois: wkhtmltopdf
    if (!empty($wkhtmltopdfPath)) {
        if (!empty($wkhtmltopdfAssetsPath)) {
            $html = str_replace('assets/', $wkhtmltopdfAssetsPath, $html);
        }
        require 'classes/Wkhtmltopdf.php';
        try {
            //indicate to create PDF in the temporary files system directory
            $wkhtmltopdf = new Wkhtmltopdf(array('path' => sys_get_temp_dir()));
            $wkhtmltopdf->setBinPath($wkhtmltopdfPath);
            if (!empty($handle['orientation']) && $handle['orientation'] == 'landscape') {
                $wkhtmltopdf->setOrientation(Wkhtmltopdf::ORIENTATION_LANDSCAPE);
            }
            if (!empty($handle['margins']) && is_array($handle['margins'])) {
                $wkhtmltopdf->setMargins($handle['margins']);
            }
            $wkhtmltopdf->setTitle(utf8_decode(str_replace(_('Print') . ' ', '', ProgramTitle())));
            //directly pass HTML code
            $wkhtmltopdf->setHtml($html);
            //MODE_EMBEDDED displays PDF in browser, MODE_DOWNLOAD forces PDF download
            $wkhtmltopdf->output(Wkhtmltopdf::MODE_EMBEDDED, str_replace(array(_('Print') . ' ', ' '), array('', '_'), utf8_decode(ProgramTitle())) . '.pdf');
        } catch (Exception $e) {
            echo $e->getMessage();
        }
    } else {
        echo $html;
    }
}
Beispiel #8
0
/**
 * Reports module Bottom Buttons.
 * Messaging new messages note.
 *
 * @uses Bottom.php|bottom_buttons hook
 *
 * @return true if bottom button, else false.
 */
function ReportsBottomButtons()
{
    if (!User('PROFILE') === 'admin' || !AllowEdit('Reports/SavedReports.php') || !isset($_SESSION['List_PHP_SELF'])) {
        return false;
    }
    ?>
	<a href="Modules.php?modname=Reports/SavedReports.php&amp;modfunc=new" class="BottomButton">
		<img src="assets/themes/<?php 
    echo Preferences('THEME');
    ?>
/btn/download.png" />
		<span><?php 
    echo _('Save Report');
    ?>
</span>
	</a>
	<?php 
    return true;
}
Beispiel #9
0
function DrawRoundedRect($title, $link = '', $tabcolor = '#333366', $textcolor = '#FFFFFF', $type = '', $rollover = '')
{
    if (substr($title, 0, 1) != '<') {
        $title = preg_replace("/ /", "&nbsp;", $title);
    }
    if (!$tabcolor) {
        $tabcolor = Preferences('HEADER');
    }
    $block_table .= "<table border=0 cellspacing=0 cellpadding=0>";
    $block_table .= "  <tr style='background-color:{$tabcolor}' id=tab[" . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . "]>";
    $block_table .= "    <td height=5 width=5 valign=top><IMG SRC=assets/left_upper_corner.gif border=0></td><td rowspan=3 width=100% class=\"BoxHeading\" valign=middle>";
    if ($link) {
        if (is_array($rollover)) {
            $rollover = " onmouseover=\"document.getElementById('tab[" . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . "]').style.backgroundColor='" . $rollover['tabcolor'] . "';document.getElementById('tab_link[" . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . "]').style.color='" . $rollover['textcolor'] . "';\" onmouseout=\"document.getElementById('tab[" . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . "]').style.backgroundColor='{$tabcolor}';document.getElementById('tab_link[" . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . "]').style.color='" . $textcolor . "';\" ";
        }
        if (!isset($_REQUEST['_CENTRE_PDF'])) {
            $block_table .= "<A HREF='{$link}' class=BoxHeading style='color:{$textcolor}' {$rollover} id=tab_link[" . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . "]>" . ParseMLField($title) . "</A>";
        } else {
            $block_table .= "<font color={$textcolor} face=Verdana,Arial,sans-serif size=-2><b>" . ParseMLField($title) . "</b></font>";
        }
    } else {
        if (!isset($_REQUEST['_CENTRE_PDF'])) {
            $block_table .= "<font color={$textcolor}>" . ParseMLField($title) . "</font>";
        } else {
            $block_table .= "<font color={$textcolor} face=Verdana,Arial,sans-serif size=-2><b>" . ParseMLField($title) . "</b></font>";
        }
    }
    $block_table .= "</td><td height=5 width=5 valign=top><IMG SRC=assets/right_upper_corner.gif border=0></td>";
    $block_table .= "  </tr>";
    // MIDDLE ROW
    $block_table .= "  <tr style='background-color:{$tabcolor}' id=tab[" . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . "]>";
    $block_table .= "    <td width=5>&nbsp;</td>";
    $block_table .= "<td width=5>&nbsp;</td>";
    $block_table .= "  </tr>";
    // BOTTOM ROW
    $block_table .= "  <tr style='background-color:{$tabcolor}' id=tab[" . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . "]>";
    $block_table .= "    <td height=5 width=5 valign=bottom><IMG SRC=assets/left_lower_corner.gif border=0></td>";
    $block_table .= "<td height=5 width=5 valign=bottom><IMG SRC=assets/right_lower_corner.gif border=0></td>";
    $block_table .= "  </tr>";
    $block_table .= "</table>\n";
    return $block_table;
}
Beispiel #10
0
function DrawTab($title, $link = '')
{
    $title = ParseMLField($title);
    if (mb_substr($title, 0, 1) != '<') {
        $title = str_replace(" ", "&nbsp;", $title);
    }
    /*	if(!$tabcolor)
    		$tabcolor = Preferences('HEADER');*/
    //modif Francois: css WPadmin
    if ($link && !isset($_REQUEST['_ROSARIO_PDF'])) {
        $block_table .= '<h3><A HREF="' . $link . '" class="BoxHeading" id="tab_link[' . preg_replace('/[^a-zA-Z0-9]/', '_', $link) . ']">' . _($title) . '</A></h3>';
    } else {
        if (!isset($_REQUEST['_ROSARIO_PDF'])) {
            $block_table .= '<h3>' . $title . '</h3>';
        } else {
            $block_table .= '<span class="size-1" style="color:' . Preferences('HIGHLIGHT') . '"><b>' . $title . '</b>&nbsp;</span>';
        }
    }
    return $block_table;
}
function TextAreaInputOrg($value, $name, $title = '', $options = '', $div = true, $divwidth = '500px')
{
    if (Preferences('HIDDEN') != 'Y') {
        $div = false;
    }
    if (AllowEdit() && !$_REQUEST['_CENTRE_PDF']) {
        $value = str_replace("'", '&#39;', str_replace('"', '&rdquo;', $value));
        if (strpos($options, 'cols') === false) {
            $options .= ' cols=30';
        }
        if (strpos($options, 'rows') === false) {
            $options .= ' rows=4';
        }
        $rows = substr($options, strpos($options, 'rows') + 5, 2) * 1;
        $cols = substr($options, strpos($options, 'cols') + 5, 2) * 1;
        if ($value == '' || $div == false) {
            return "<TEXTAREA name={$name} {$options}>{$value}</TEXTAREA>" . ($title != '' ? '<BR><small>' . (strpos(strtolower($title), '<font ') === false ? '<FONT color=' . Preferences('TITLES') . '>' : '') . $title . (strpos(strtolower($title), '<font ') === false ? '</FONT>' : '') . '</small>' : '');
        } else {
            return "<DIV id='div{$name}'><div style='width:500px;' onclick='javascript:addHTML(\"<TEXTAREA id=textarea{$name} name={$name} {$options}>" . ereg_replace("[\n\r]", '\\u000D\\u000A', str_replace("\r\n", '\\u000D\\u000A', str_replace("'", "&#39;", $value))) . "</TEXTAREA>" . ($title != '' ? "<BR><small>" . str_replace("'", '&#39;', (strpos(strtolower($title), '<font ') === false ? '<FONT color=' . Preferences('TITLES') . '>' : '') . $title . (strpos(strtolower($title), '<font ') === false ? '</FONT>' : '')) . "</small>" : '') . "\",\"div{$name}\",true); document.getElementById(\"textarea{$name}\").value=unescape(document.getElementById(\"textarea{$name}\").value);'><TABLE class=LO_field height=100%><TR><TD>" . (substr_count($value, "\r\n") > $rows ? '<DIV style="overflow:auto; height:' . 15 * $rows . 'px; width:' . $cols * 10 . '; padding-right: 16px;">' . nl2br($value) . '</DIV>' : '<DIV style="overflow:auto; width:' . $divwidth . '; padding-right: 16px;">' . nl2br($value) . '</DIV>') . '</TD></TR></TABLE>' . ($title != '' ? '<BR><small>' . str_replace("'", '&#39;', (strpos(strtolower($title), '<font ') === false ? '<FONT color=' . Preferences('TITLES') . '>' : '') . $title . (strpos(strtolower($title), '<font ') === false ? '</FONT>' : '')) . '</small>' : '') . '</div></DIV>';
        }
    } else {
        return ($value != '' ? nl2br($value) : '-') . ($title != '' ? '<BR><small>' . (strpos(strtolower($title), '<font ') === false ? '<FONT color=' . Preferences('TITLES') . '>' : '') . $title . (strpos(strtolower($title), '<font ') === false ? '</FONT>' : '') . '</small>' : '');
    }
}
Beispiel #12
0
         $count++;
     }
 } else {
     if ($schooldate > $end && $end != NULL && $start == $start2) {
         $URIcount++;
         //echo "$URIcount | ";
         if ($URIcount > $startrow && $URIcount < $endrow) {
             echo "<input type=hidden name=delete value=true>";
             echo "<input type=hidden name=studentidx[{$count}] value={$studentid}>";
             echo "<input type=hidden name=periodidx[{$count}] value={$courseid}>";
             echo "<input type=hidden name=schooldatex[{$count}] value={$schooldate}>";
             if ($yellow == 0) {
                 $color = 'F8F8F9';
                 $yellow++;
             } else {
                 $color = Preferences('COLOR');
                 $yellow = 0;
             }
             echo "<tr class=even><td ><input type=checkbox name=deletecheck[{$count}] value={$count}></td><td bgcolor=#{$color}><font color=#000000><FONT size=-1>{$first} {$last} ({$studentid})</td><td bgcolor=#{$color}><font color=#000000><FONT size=-1>{$short_name} ({$courseid})</td><td bgcolor=#{$color}><font color=#000000><FONT size=-1>{$start} &nbsp</td><td bgcolor=#{$color}><font color=#000000><FONT size=-1>{$end} &nbsp</td><td bgcolor=#{$color}><font color=#000000><FONT size=-1>{$schooldate}</td></tr>";
             $count++;
         }
     } else {
         //echo "<tr><td>$studentid</td><td>$courseid</td></tr>";
         $duplicate = 0;
     }
 }
 $studentid2 = $studentid;
 $courseid2 = $courseid;
 $periodid2 = $periodid;
 $schooldate2 = $schooldate;
 $first2 = $first;
Beispiel #13
0
function _makeMultipleInput($column, $name, $request = 'staff')
{
    global $value, $field, $_openSIS;
    if ((AllowEdit() || $_openSIS['allow_edit']) && !$_REQUEST['_openSIS_PDF']) {
        $field['SELECT_OPTIONS'] = str_replace("\n", "\r", str_replace("\r\n", "\r", $field['SELECT_OPTIONS']));
        $select_options = explode("\r", $field['SELECT_OPTIONS']);
        if (count($select_options)) {
            foreach ($select_options as $option) {
                $options[$option] = $option;
            }
        }
        if ($value[$column] != '') {
            echo "<DIV id='div" . $request . "[" . $column . "]'><div onclick='javascript:addHTML(\"";
        }
        echo '<TABLE border=0 cellpadding=3>';
        if (count($options) > 12) {
            echo '<TR><TD colspan=2>';
            echo '<small><FONT color=' . Preferences('TITLES') . '>' . $name . '</FONT></small>';
            if ($value[$column] != '') {
                echo '<TABLE width=100% height=7 style=\\"border:1;border-style: solid solid none solid;\\"><TR><TD></TD></TR></TABLE>';
            } else {
                echo '<TABLE width=100% height=7 style="border:1;border-style: solid solid none solid;"><TR><TD></TD></TR></TABLE>';
            }
            echo '</TD></TR>';
        }
        echo '<TR>';
        $i = 0;
        foreach ($options as $option) {
            if ($i % 2 == 0) {
                echo '</TR><TR>';
            }
            if ($value[$column] != '') {
                echo '<TD><INPUT TYPE=hidden name=' . $request . '[' . $column . '][] value=\\"\\"><INPUT type=checkbox name=' . $request . '[' . $column . '][] value=\\"' . str_replace('"', '&quot;', $option) . '\\"' . (strpos($value[$column], '||' . $option . '||') !== false ? ' CHECKED' : '') . '><small>' . $option . '</small></TD>';
            } else {
                echo '<TD><INPUT type=checkbox name=' . $request . '[' . $column . '][] value="' . str_replace('"', '&quot;', $option) . '"' . (strpos($value[$column], '||' . $option . '||') !== false ? ' CHECKED' : '') . '><small>' . $option . '</small></TD>';
            }
            $i++;
        }
        echo '</TR><TR><TD colspan=2>';
        if ($value[$column] != '') {
            echo '<TABLE width=100% height=7 style=\\"border:1;border-style: none solid solid solid;\\"><TR><TD></TD></TR></TABLE>';
        } else {
            echo '<TABLE width=100% height=7 style="border:1;border-style: none solid solid solid;"><TR><TD></TD></TR></TABLE>';
        }
        echo '</TD></TR></TABLE>';
        if ($value[$column] != '') {
            echo "\",\"div" . $request . "[" . $column . "]" . "\",true);' >" . ($value[$column] != '' ? str_replace('"', '&rdquo;', str_replace('||', ', ', substr($value[$column], 2, -2))) : '-') . "</div></DIV>";
        }
    } else {
        echo $value[$column] != '' ? str_replace('"', '&rdquo;', str_replace('||', ', ', substr($value[$column], 2, -2))) : '-<BR>';
    }
    echo '<small><FONT color=' . Preferences('TITLES') . '>' . $name . '</FONT></small>';
}
#
#  You should have received a copy of the GNU General Public License
#  along with this program.  If not, see <http://www.gnu.org/licenses/>.
#
#***************************************************************************************
#DrawHeader('Gradebook - '.ProgramTitle());
include '../../Redirect_modules.php';
$tmp_REQUEST = $_REQUEST;
unset($tmp_REQUEST['include_inactive']);
echo "<FORM action=Modules.php?modname={$_REQUEST['modname']} method=POST>";
DrawHeaderHome('<INPUT type=checkbox name=include_inactive value=Y' . ($_REQUEST['include_inactive'] == 'Y' ? " CHECKED onclick='document.location.href=\"" . PreparePHP_SELF($tmp_REQUEST) . "&include_inactive=\";'" : " onclick='document.location.href=\"" . PreparePHP_SELF($tmp_REQUEST) . "&include_inactive=Y\";'") . '>Include Inactive Students');
echo '</FORM>';
$course_period_id = UserCoursePeriod();
$course_id = DBGet(DBQuery("SELECT COURSE_ID FROM COURSE_PERIODS WHERE COURSE_PERIOD_ID='{$course_period_id}'"));
$course_id = $course_id[1]['COURSE_ID'];
$max_allowed = Preferences('ANOMALOUS_MAX', 'Gradebook') / 100;
$extra['SELECT'] = ",ga.ASSIGNMENT_ID,gt.TITLE AS TYPE_TITLE,ga.TITLE,ga.POINTS AS TOTAL_POINTS,'' AS LETTER_GRADE";
$extra['SELECT'] .= ',(SELECT POINTS FROM GRADEBOOK_GRADES WHERE STUDENT_ID=s.STUDENT_ID AND ASSIGNMENT_ID=ga.ASSIGNMENT_ID) AS POINTS';
$extra['SELECT'] .= ',(SELECT COMMENT FROM GRADEBOOK_GRADES WHERE STUDENT_ID=s.STUDENT_ID AND ASSIGNMENT_ID=ga.ASSIGNMENT_ID) AS COMMENT';
$extra['FROM'] = ",GRADEBOOK_ASSIGNMENTS ga,GRADEBOOK_ASSIGNMENT_TYPES gt";
$extra['WHERE'] = 'AND ((SELECT POINTS FROM GRADEBOOK_GRADES WHERE STUDENT_ID=s.STUDENT_ID AND ASSIGNMENT_ID=ga.ASSIGNMENT_ID) IS NULL AND (ga.ASSIGNED_DATE IS NULL OR CURRENT_DATE>=ga.ASSIGNED_DATE) AND (ga.DUE_DATE IS NULL OR CURRENT_DATE>=ga.DUE_DATE) OR (SELECT POINTS FROM GRADEBOOK_GRADES WHERE STUDENT_ID=s.STUDENT_ID AND ASSIGNMENT_ID=ga.ASSIGNMENT_ID)<0 OR (SELECT POINTS FROM GRADEBOOK_GRADES WHERE STUDENT_ID=s.STUDENT_ID AND ASSIGNMENT_ID=ga.ASSIGNMENT_ID)>ga.POINTS*' . $max_allowed . ') AND ((ga.COURSE_ID=\'' . $course_id . '\' AND ga.STAFF_ID=\'' . User('STAFF_ID') . '\') OR ga.COURSE_PERIOD_ID=\'' . $course_period_id . '\') AND ga.MARKING_PERIOD_ID=\'' . UserMP() . '\' AND gt.ASSIGNMENT_TYPE_ID=ga.ASSIGNMENT_TYPE_ID';
$extra['functions'] = array('POINTS' => '_makePoints');
$students_RET = GetStuList($extra);
//echo '<pre>'; var_dump($students_RET); echo '</pre>';
if (AllowUse('Grades/Grades.php')) {
    $link = array('FULL_NAME' => array('link' => "Modules.php?modname=Grades/Grades.php&include_ianctive={$_REQUEST['include_inactive']}&assignment_id=all", 'variables' => array('student_id' => 'STUDENT_ID')), 'TITLE' => array('link' => "Modules.php?modname=Grades/Grades.php&include_inactive={$_REQUEST['include_inactive']}", 'variables' => array('assignment_id' => 'ASSIGNMENT_ID', 'student_id' => 'STUDENT_ID')));
}
$columns = array('FULL_NAME' => 'Name', 'STUDENT_ID' => 'Student ID', 'POINTS' => 'Problem', 'TYPE_TITLE' => 'Category', 'TITLE' => 'Assignment', 'COMMENT' => 'Comment');
ListOutput($students_RET, $columns, 'Anomalous Grade', 'Anomalous Grades', $link, array(), array('center' => false, 'save' => false, 'search' => false));
function _makePoints($value, $column)
{
Beispiel #15
0
     $link['TITLE']['link'] = "Modules.php?modname={$_REQUEST['modname']}&modfunc={$_REQUEST['modfunc']}&mp_term=QTR&year_id={$_REQUEST['year_id']}&semester_id={$_REQUEST['semester_id']}";
     $link['TITLE']['variables'] = array('marking_period_id' => 'MARKING_PERIOD_ID');
     $link['add']['link'] = "Modules.php?modname={$_REQUEST['modname']}&mp_term=QTR&marking_period_id=new&year_id={$_REQUEST['year_id']}&semester_id={$_REQUEST['semester_id']}";
     ListOutput($qtr_RET, $columns, 'Quarter', 'Quarters', $link, array(), $LO_options);
     echo '</TD>';
     // PROGRESS PERIODS
     if ($_REQUEST['mp_term'] == 'QTR' && $_REQUEST['marking_period_id'] != 'new' || $_REQUEST['mp_term'] == 'PRO') {
         $sql = 'SELECT MARKING_PERIOD_ID,TITLE FROM school_progress_periods WHERE SCHOOL_ID=\'' . UserSchool() . '\' AND SYEAR=\'' . UserSyear() . '\' AND QUARTER_ID=\'' . $_REQUEST['quarter_id'] . '\' ORDER BY SORT_ORDER';
         $QI = DBQuery($sql);
         $pro_RET = DBGet($QI);
         if (count($pro_RET)) {
             if ($_REQUEST['mp_term'] == 'PRO' && $_REQUEST['marking_period_id'] != 'new') {
                 $_REQUEST['progress_period_id'] = $_REQUEST['marking_period_id'];
                 foreach ($pro_RET as $key => $value) {
                     if ($value['MARKING_PERIOD_ID'] == $_REQUEST['marking_period_id']) {
                         $pro_RET[$key]['row_color'] = Preferences('HIGHLIGHT');
                     }
                 }
             }
         }
         echo '<TD valign=top>';
         $columns = array('TITLE' => 'Progress Period');
         $link = array();
         $link['TITLE']['link'] = "Modules.php?modname={$_REQUEST['modname']}&modfunc={$_REQUEST['modfunc']}&mp_term=PRO&year_id={$_REQUEST['year_id']}&semester_id={$_REQUEST['semester_id']}&quarter_id={$_REQUEST['quarter_id']}";
         $link['TITLE']['variables'] = array('marking_period_id' => 'MARKING_PERIOD_ID');
         $link['add']['link'] = "Modules.php?modname={$_REQUEST['modname']}&mp_term=PRO&marking_period_id=new&year_id={$_REQUEST['year_id']}&semester_id={$_REQUEST['semester_id']}&quarter_id={$_REQUEST['quarter_id']}";
         $sql_mp_id = 'SELECT MARKING_PERIOD_ID,TITLE FROM school_progress_periods';
         ListOutput($pro_RET, $columns, 'Progress Period', 'Progress Periods', $link, array(), $LO_options);
         echo '</TD>';
     }
 }
Beispiel #16
0
    $items = 'Assignments';
    $link['TITLE']['link'] = "Modules.php?modname={$_REQUEST['modname']}&include_inactive={$_REQUEST['include_inactive']}";
    $link['TITLE']['variables'] = array('assignment_id' => 'ASSIGNMENT_ID');
    $current_RET[$_REQUEST['student_id']] = DBGet(DBQuery('SELECT g.ASSIGNMENT_ID FROM gradebook_grades g,gradebook_assignments a WHERE a.ASSIGNMENT_ID=g.ASSIGNMENT_ID AND a.MARKING_PERIOD_ID=\'' . UserMP() . '\' AND g.STUDENT_ID=\'' . $_REQUEST['student_id'] . '\' AND g.COURSE_PERIOD_ID=\'' . $course_period_id . '\'' . ($_REQUEST['assignment_id'] == 'all' ? '' : ' AND g.ASSIGNMENT_ID=\'' . $_REQUEST['assignment_id'] . '\'')), array(), array('ASSIGNMENT_ID'));
    if (count($assignments_RET)) {
        foreach ($assignments_RET as $id => $assignment) {
            $total_points[$id] = $assignment[1]['POINTS'];
        }
    }
    $count_assignments = count($assignments_RET);
    $extra['SELECT'] = ',ga.ASSIGNMENT_ID,gt.TITLE AS TYPE_TITLE,ga.TITLE,ga.POINTS AS TOTAL_POINTS,\'\' AS LETTER_GRADE,CASE WHEN (ga.ASSIGNED_DATE IS NULL OR CURRENT_DATE>=ga.ASSIGNED_DATE) AND (ga.DUE_DATE IS NULL OR CURRENT_DATE>=ga.DUE_DATE) THEN \'Y\' ELSE NULL END AS DUE';
    $extra['SELECT'] .= ',(SELECT POINTS FROM gradebook_grades WHERE STUDENT_ID=s.STUDENT_ID AND ASSIGNMENT_ID=ga.ASSIGNMENT_ID AND COURSE_PERIOD_ID=cp.COURSE_PERIOD_ID) AS POINTS';
    $extra['SELECT'] .= ',(SELECT COMMENT FROM gradebook_grades WHERE STUDENT_ID=s.STUDENT_ID AND ASSIGNMENT_ID=ga.ASSIGNMENT_ID AND COURSE_PERIOD_ID=cp.COURSE_PERIOD_ID) AS COMMENT';
    $extra['FROM'] = ',gradebook_assignments ga,gradebook_assignment_types gt';
    $extra['WHERE'] = 'AND (ga.due_date>=ssm.start_date OR ga.due_date IS NULL) AND ((ga.COURSE_ID=\'' . $course_id . '\' AND ga.STAFF_ID=\'' . User('STAFF_ID') . '\') OR ga.COURSE_PERIOD_ID=\'' . $course_period_id . '\') AND ga.MARKING_PERIOD_ID=\'' . UserMP() . '\' AND gt.ASSIGNMENT_TYPE_ID=ga.ASSIGNMENT_TYPE_ID' . ($_REQUEST['assignment_id'] == 'all' ? '' : ' AND ga.ASSIGNMENT_ID=\'' . $_REQUEST[assignment_id] . '\' ');
    $extra['ORDER_BY'] = Preferences('ASSIGNMENT_SORTING', 'Gradebook') . " DESC";
    $extra['functions'] = array('POINTS' => '_makeExtraStuCols', 'LETTER_GRADE' => '_makeExtraStuCols', 'COMMENT' => '_makeExtraStuCols');
} else {
    $LO_columns = array('FULL_NAME' => 'Student');
    if ($_REQUEST['assignment_id'] != 'all') {
        $LO_columns += array('STUDENT_ID' => 'Student ID');
    }
    if ($_REQUEST['include_inactive'] == 'Y') {
        $LO_columns += array('ACTIVE' => 'School Status', 'ACTIVE_SCHEDULE' => 'Course Status');
    }
    $item = 'Student';
    $items = 'Students';
    $link['FULL_NAME']['link'] = "Modules.php?modname={$_REQUEST['modname']}&include_inactive={$_REQUEST['include_inactive']}&assignment_id=all";
    $link['FULL_NAME']['variables'] = array('student_id' => 'STUDENT_ID');
    if ($_SESSION['student_id']) {
        unset($_SESSION['student_id']);
Beispiel #17
0
    function Warehouse($mode)
    {
        global $_ROSARIO, $locale;
        switch ($mode) {
            case 'header':
                //modif Francois: fix bug Internet Explorer Quirks Mode, add DOCTYPE
                ?>
<!DOCTYPE html>
<HTML lang="<?php 
                echo mb_substr($locale, 0, 2);
                ?>
" <?php 
                echo mb_substr($locale, 0, 2) == 'he' || mb_substr($locale, 0, 2) == 'ar' ? ' dir="RTL"' : '';
                ?>
>
<HEAD><TITLE><?php 
                echo ParseMLField(Config('TITLE'));
                ?>
</TITLE>
<meta charset="UTF-8" />
<?php 
                if (basename($_SERVER['PHP_SELF']) != 'index.php') {
                    ?>
<noscript><META http-equiv="REFRESH" content="0; url=index.php?modfunc=logout&amp;reason=javascript" /></noscript>
<script type="text/javascript" src="assets/js/tipmessage/main15.js"></script>
<?php 
                }
                if (basename($_SERVER['PHP_SELF']) == 'index.php') {
                }
                ?>
<link rel="stylesheet" type="text/css" href="assets/themes/<?php 
                echo Preferences('THEME');
                ?>
/stylesheet.css" />
<?php 
                break;
            case "footer":
                //modif Francois: Javascript load optimization
                ?>
<BR />
<script type="text/javascript" src="assets/js/warehouse.js" defer></script>
<?php 
                //modif Francois: load calendar Javascript only if required
                if (isset($_ROSARIO['PrepareDate'])) {
                    ?>
<link rel="stylesheet" type="text/css" media="all" href="assets/js/jscalendar/calendar-blue.css" />
<script type="text/javascript" src="assets/js/jscalendar/calendar.js"></script>
<script type="text/javascript" src="assets/js/jscalendar/lang/calendar-<?php 
                    echo mb_substr($locale, 0, 2);
                    ?>
.js"></script>
<script type="text/javascript" src="assets/js/jscalendar/calendar-setup.js"></script>
<?php 
                    for ($i = 1; $i <= $_ROSARIO['PrepareDate']; $i++) {
                        ?>
<script type="text/javascript">
	Calendar.setup({
		monthField     :    "monthSelect<?php 
                        echo $i;
                        ?>
",
		dayField       :    "daySelect<?php 
                        echo $i;
                        ?>
",
		yearField      :    "yearSelect<?php 
                        echo $i;
                        ?>
",
		ifFormat       :    "%d-%b-%y",
		button         :    "trigger<?php 
                        echo $i;
                        ?>
",
		align          :    "Tl",
		singleClick    :    true
	});
</script>
<?php 
                    }
                }
                echo '</BODY></HTML>';
                break;
        }
    }
Beispiel #18
0
     $cond = " AND (MARKING_PERIOD_ID = " . UserMP() . " OR MARKING_PERIOD_ID = " . $p_id . " OR MARKING_PERIOD_ID = " . $gp_id . ")";
 }
 if ($mp_type == 'semester') {
     $cond = " AND (MARKING_PERIOD_ID = " . UserMP() . " OR MARKING_PERIOD_ID = " . $p_id . ")";
 }
 if ($mp_type == 'year') {
     $cond = " AND MARKING_PERIOD_ID = " . UserMP();
 }
 $sql = "SELECT COURSE_PERIOD_ID,TITLE,COALESCE(TOTAL_SEATS-FILLED_SEATS,0) AS AVAILABLE_SEATS FROM course_periods WHERE COURSE_ID='{$_REQUEST['course_id']}'" . $cond . " ORDER BY TITLE";
 $QI = DBQuery($sql);
 $periods_RET = DBGet($QI);
 if (count($periods_RET)) {
     if ($_REQUEST['course_period_id']) {
         foreach ($periods_RET as $key => $value) {
             if ($value['COURSE_PERIOD_ID'] == $_REQUEST['course_period_id']) {
                 $periods_RET[$key]['row_color'] = Preferences('HIGHLIGHT');
             }
         }
     }
 }
 echo '<TD valign=top>';
 $columns = array('TITLE' => '' . _('Course Period') . '');
 if ($_REQUEST['modname'] == 'Scheduling/Schedule.php') {
     $columns += array('AVAILABLE_SEATS' => '' . _('Available Seats') . '');
 }
 $link = array();
 $link['TITLE']['link'] = "for_window.php?modname={$_REQUEST['modname']}&subject_id={$_REQUEST['subject_id']}&course_id={$_REQUEST['course_id']}";
 //$link['TITLE']['link'] = "#"." onclick='check_content(\"ajax.php?modname=$_REQUEST[modname]&subject_id=$_REQUEST[subject_id]&course_id=$_REQUEST[course_id]\");'";
 $link['TITLE']['variables'] = array('course_period_id' => 'COURSE_PERIOD_ID');
 if ($_REQUEST['modfunc'] != 'choose_course') {
     $link['add']['link'] = "for_window.php?modname={$_REQUEST['modname']}&subject_id={$_REQUEST['subject_id']}&course_id={$_REQUEST['course_id']}&course_period_id=new";
Beispiel #19
0
        }
        //print_r($extra);
        $RET = GetStuList($extra);
        //print_r($RET);
        //print_r($columns);
        if ($extra['array_function'] && function_exists($extra['array_function'])) {
            $extra['array_function']($RET);
        }
        echo "<html><link rel='stylesheet' type='text/css' href='styles/export.css'><body style=\" font-family:Arial; font-size:12px;\">";
        ListOutputPrint_Report($RET, $columns, $extra['singular'] ? $extra['singular'] : 'Student', $extra['plural'] ? $extra['plural'] : 'Students', array(), $extra['LO_group'], $extra['LO_options']);
        echo "</body></html>";
    }
} else {
    if (!$fields_list) {
        if (AllowUse('Students/Student.php&category_id=1')) {
            $fields_list['General'] = array('FULL_NAME' => Preferences('NAME') == 'Common' ? 'Last, Common' : 'Last, First M', 'FIRST_NAME' => 'First', 'FIRST_INIT' => 'First Initial', 'LAST_NAME' => 'Last', 'MIDDLE_NAME' => 'Middle', 'NAME_SUFFIX' => 'Suffix', 'STUDENT_ID' => 'Student ID', 'GRADE_ID' => 'Grade', 'SCHOOL_ID' => 'School', 'NEXT_SCHOOL' => 'Rolling / Retention Options', 'CALENDAR_ID' => 'Calendar', 'USERNAME' => 'Username', 'ALT_ID' => 'Alternate ID', 'BIRTHDATE' => 'DOB', 'EMAIL' => 'Email ID', 'PHONE' => 'Phone');
        }
        if (AllowUse('Students/Student.php&category_id=3')) {
            $fields_list['Address'] = array('ADDRESS' => 'Address', 'CITY' => 'City', 'STATE' => 'State', 'ZIPCODE' => 'Zip Code', 'MAIL_ADDRESS' => 'Mailing Address', 'MAIL_CITY' => 'Mailing City', 'MAIL_STATE' => 'Mailing State', 'MAIL_ZIPCODE' => 'Mailing Zipcode');
            $categories_RET = DBGet(DBQuery("SELECT ID,TITLE FROM ADDRESS_FIELD_CATEGORIES ORDER BY SORT_ORDER"));
            $custom_RET = DBGet(DBQuery("SELECT TITLE,ID,TYPE,CATEGORY_ID FROM ADDRESS_FIELDS ORDER BY SORT_ORDER"), array(), array('CATEGORY_ID'));
            foreach ($categories_RET as $category) {
                foreach ($custom_RET[$category['ID']] as $field) {
                    $fields_list['Address']['ADDRESS_' . $field['ID']] = str_replace("'", '&#39;', $field['TITLE']);
                }
            }
        }
        if ($extra['field_names']) {
            $fields_list['General'] += $extra['field_names'];
        }
    }
Beispiel #20
0
echo '<TR>';
$_SESSION['staff_selected'] = $staff['STAFF_ID'];
if (clean_param($_REQUEST['staff_id'], PARAM_ALPHANUM) != 'new' && $UserPicturesPath && (($file = @fopen($picture_path = $UserPicturesPath . UserSyear() . '/' . UserStaffID() . '.JPG', 'r')) || $staff['ROLLOVER_ID'] && ($file = @fopen($picture_path = $UserPicturesPath . (UserSyear() - 1) . '/' . $staff['ROLLOVER_ID'] . '.JPG', 'r')))) {
    fclose($file);
    echo '<TD width=150><IMG SRC="' . $picture_path . '" width=150></TD><TD valign=top>';
} else {
    echo '<TD colspan=2>';
}
echo '<TABLE width=100%  cellpadding=5 >';
echo '<TR><td valign="top">';
echo '<TABLE border=0>';
echo '<tr><td style=width:100px>' . _('Name') . '</td><td>:</td><td>';
if (clean_param($_REQUEST['staff_id'], PARAM_ALPHA) == 'new') {
    echo '<TABLE><TR><TD>' . SelectInput($staff['TITLE'], 'staff[TITLE]', '' . _('Title') . '', array('Mr.' => '' . _('Mr.') . '', 'Mrs.' => '' . _('Mrs.') . '', 'Ms.' => '' . _('Ms.') . '', 'Miss' => '' . _('Miss') . '', 'Dr' => '' . _('Dr') . '', 'Rev' => '' . _('Rev') . ''), '') . '</TD><TD>' . TextInput($staff['FIRST_NAME'], 'staff[FIRST_NAME]', '<FONT class=red>' . _('First') . '</FONT>', 'id=fname size="20" maxlength=50 class=cell_floating') . '</TD><TD>' . TextInput($staff['MIDDLE_NAME'], 'staff[MIDDLE_NAME]', '' . _('Middle') . '', 'size="18" maxlength=50 class=cell_floating') . '</TD><TD>' . TextInput($staff['LAST_NAME'], 'staff[LAST_NAME]', '<FONT color=red>' . _('Last') . '</FONT>', 'id=lname size="20" maxlength=50 class=cell_floating') . '</TD></TR></TABLE>';
} else {
    echo '<DIV id=user_name><div onclick=\'addHTML("<TABLE><TR><TD>' . str_replace('"', '\\"', SelectInput($staff['TITLE'], 'staff[TITLE]', 'Title', array('Mr.' => '' . _('Mr') . '', 'Mrs.' => '' . _('Mrs.') . '', 'Ms.' => '' . _('Ms.') . '', 'Miss' => '' . _('Miss') . '', 'Dr' => '' . _('Dr') . '', 'Rev' => '' . _('Rev')), '', '', false)) . '</TD><TD>' . str_replace('"', '\\"', TextInput($staff['FIRST_NAME'], 'staff[FIRST_NAME]', (!$staff['FIRST_NAME'] ? '<FONT color=red>' : '') . 'First' . (!$staff['FIRST_NAME'] ? '</FONT>' : ''), 'id=fname size=20 maxlength=50', false)) . '</TD><TD>' . str_replace('"', '\\"', TextInput($staff['MIDDLE_NAME'], 'staff[MIDDLE_NAME]', 'Middle', 'size=18 maxlength=50', false)) . '</TD><TD>' . str_replace('"', '\\"', TextInput($staff['LAST_NAME'], 'staff[LAST_NAME]', (!$staff['LAST_NAME'] ? '<FONT color=red>' : '') . 'Last' . (!$staff['LAST_NAME'] ? '</FONT>' : ''), 'id=lname size=20 maxlength=50', false)) . '</TD></TR></TABLE>","user_name",true);\'>' . (!$staff['TITLE'] && !$staff['FIRST_NAME'] && !$staff['MIDDLE_NAME'] && !$staff['LAST_NAME'] ? '-' : $staff['TITLE'] . ' ' . $staff['FIRST_NAME'] . ' ' . $staff['MIDDLE_NAME'] . ' ' . $staff['LAST_NAME']) . '</div></DIV><small>' . (!$staff['FIRST_NAME'] || !$staff['LAST_NAME'] ? '<FONT color=red>' : '<FONT color=' . Preferences('TITLES') . '>') . '</FONT></small>';
}
echo '</td></tr>';
echo '<tr><td>' . _('Email Address') . '</td><td>:</td><td>';
echo TextInput($staff['EMAIL'], 'staff[EMAIL]', '', 'size=25 maxlength=100 id=email class=cell_floating');
echo '</TD></tr>';
echo '<tr><td>' . _('Phone Number') . '</td><td>:</td><td><table cellpadding=0 cellspacing=0><tr><td>';
echo TextInput($staff['PHONE'], 'staff[PHONE]', '', 'size=25 maxlength=100 class=cell_floating');
echo '</td></tr></table></TD>';
if ($_REQUEST['staff_id'] != 'new') {
    echo '<TR><TD>';
    echo '' . _('Disable User') . '</TD><TD>:</TD><TD>' . CheckboxInput($staff['IS_DISABLE'], 'staff[IS_DISABLE]', '', 'CHECKED', $new, '<IMG SRC=assets/check.gif width=15>', '<IMG SRC=assets/x.gif width=15>');
    echo '</TD></TR>';
    echo '<TR><TD>';
    echo '' . _('Last Login') . '</TD><TD>:</TD><TD>' . NoInput(ProperDate(substr($staff['LAST_LOGIN'], 0, 10)) . substr($staff['LAST_LOGIN'], 10));
    echo '</TD></TR>';
Beispiel #21
0
function CheckboxInput_No($value, $name, $title = '', $checked = '', $new = false, $yes = 'Yes', $no = 'No', $div = true, $extra = '')
{
    // $checked has been deprecated -- it remains only as a placeholder
    if (Preferences('HIDDEN') != 'Y') {
        $div = false;
    }
    if ($div == false || $new == true) {
        if ($value && $value != 'N') {
            $checked = 'CHECKED';
        } else {
            $checked = '';
        }
    }
    if (AllowEdit() && !$_REQUEST['_openSIS_PDF']) {
        if ($new || $div == false) {
            return "<INPUT type=checkbox name={$name} value=Y  {$extra}>" . ($title != '' ? '<BR><small>' . (strpos(strtolower($title), '<font ') === false ? '<FONT color=' . Preferences('TITLES') . '>' : '') . $title . (strpos(strtolower($title), '<font ') === false ? '</FONT>' : '') . '</small>' : '');
        } else {
            return "<DIV id='div{$name}'><div onclick='javascript:addHTML(\"<INPUT type=hidden name={$name} value=\\\"N\\\"><INPUT type=checkbox name={$name} " . ($value == 'Y' ? 'checked' : '') . " value=Y " . str_replace('"', '\\"', $extra) . ">" . ($title != '' ? '<BR><small>' . str_replace("'", '&#39;', (strpos(strtolower($title), '<font ') === false ? '<FONT color=' . Preferences('TITLES') . '>' : '') . $title . (strpos(strtolower($title), '<font ') === false ? '</FONT>' : '')) . '</small>' : '') . "\",\"div{$name}\",true)'>" . ($value != 'N' ? $yes : $no) . ($title != '' ? "<BR><small>" . str_replace("'", '&#39;', (strpos(strtolower($title), '<font ') === false ? '<FONT color=' . Preferences('TITLES') . '>' : '') . $title . (strpos(strtolower($title), '<font ') === false ? '</FONT>' : '')) . "</small>" : '') . "</div></DIV>";
        }
    } else {
        return ($value != 'N' ? $yes : $no) . ($title != '' ? '<BR><small>' . (strpos(strtolower($title), '<font ') === false ? '<FONT color=' . Preferences('TITLES') . '>' : '') . $title . (strpos(strtolower($title), '<font ') === false ? '</FONT>' : '') . '</small>' : '');
    }
}
Beispiel #22
0
function ListOutputGrade($result, $column_names, $singular = '', $plural = '', $link = false, $group = false, $options = false, $for_window = '')
{
    if (!isset($options['save'])) {
        $options['save'] = true;
    }
    if (!isset($options['print'])) {
        $options['print'] = true;
    }
    if (!isset($options['search'])) {
        $options['search'] = true;
    }
    if (!isset($options['center'])) {
        $options['center'] = true;
    }
    if (!isset($options['count'])) {
        $options['count'] = true;
    }
    if (!isset($options['sort'])) {
        $options['sort'] = true;
    }
    if (!$link) {
        $link = array();
    }
    if (isset($_REQUEST['page'])) {
        if ($_REQUEST['list_type'] == $singular) {
            $Request_page = $_REQUEST['page'];
        }
    }
    if (!isset($options['add'])) {
        if (!AllowEdit() || $_REQUEST['_openSIS_PDF']) {
            if ($link) {
                unset($link['add']);
                unset($link['remove']);
            }
        }
    }
    // PREPARE LINKS ---
    $result_count = $display_count = count($result);
    $num_displayed = 100000;
    $extra = "page={$_REQUEST['page']}&LO_sort={$_REQUEST['LO_sort']}&LO_direction={$_REQUEST['LO_direction']}&LO_search=" . urlencode($_REQUEST['LO_search']);
    $tmp_REQUEST = $_REQUEST;
    unset($tmp_REQUEST['page']);
    unset($tmp_REQUEST['LO_sort']);
    unset($tmp_REQUEST['LO_direction']);
    unset($tmp_REQUEST['LO_search']);
    unset($tmp_REQUEST['remove_prompt']);
    unset($tmp_REQUEST['remove_name']);
    unset($tmp_REQUEST['LO_save']);
    unset($tmp_REQUEST['PHPSESSID']);
    //$PHP_tmp_SELF = PreparePHP_SELF($tmp_REQUEST);
    $PHP_tmp_SELF = str_replace('>', '', PreparePHP_SELF($tmp_REQUEST));
    // END PREPARE LINKS ---
    // UN-GROUPING
    $group_count = count($group);
    if (!is_array($group)) {
        $group_count = false;
    }
    //$side_color = Preferences('COLOR');
    $side_color = 'class=odd';
    if ($group_count && $result_count) {
        $color = 'class=even';
        $group_result = $result;
        unset($result);
        $result[0] = '';
        foreach ($group_result as $item1) {
            if ($group_count == 1) {
                if ($color == 'class=even') {
                    $color = $side_color;
                } else {
                    $color = 'class=even';
                }
            }
            foreach ($item1 as $item2) {
                if ($group_count == 1) {
                    $i++;
                    if (count($group[0]) && $i != 1) {
                        foreach ($group[0] as $column) {
                            $item2[$column] = str_replace('<!-- <!--', '<!--', '<!-- ' . str_replace('-->', '--><!--', $item2[$column])) . ' -->';
                        }
                    }
                    $item2['row_color'] = $color;
                    $result[] = $item2;
                } else {
                    if ($group_count == 2) {
                        if ($color == 'class=even') {
                            $color = $side_color;
                        } else {
                            $color = 'class=even';
                        }
                    }
                    foreach ($item2 as $item3) {
                        if ($group_count == 2) {
                            $i++;
                            if (count($group[0]) && $i != 1) {
                                foreach ($group[0] as $column) {
                                    $item3[$column] = '<!-- ' . $item3[$column] . ' -->';
                                }
                            }
                            if (count($group[1]) && $i != 1) {
                                foreach ($group[1] as $column) {
                                    $item3[$column] = '<!-- ' . $item3[$column] . ' -->';
                                }
                            }
                            $item3['row_color'] = $color;
                            $result[] = $item3;
                        } else {
                            if ($group_count == 3) {
                                if ($color == 'class=even') {
                                    $color = $side_color;
                                } else {
                                    $color = 'class=even';
                                }
                            }
                            foreach ($item3 as $item4) {
                                if ($group_count == 3) {
                                    $i++;
                                    if (count($group[2]) && $i != 1) {
                                        foreach ($group[2] as $column) {
                                            unset($item4[$column]);
                                        }
                                    }
                                    $item4['row_color'] = $color;
                                    $result[] = $item4;
                                }
                            }
                        }
                    }
                }
            }
            $i = 0;
        }
        unset($result[0]);
        $result_count = count($result);
        unset($_REQUEST['LO_sort']);
    }
    // END UN-GROUPING
    $_LIST['output'] = true;
    // PRINT HEADINGS, PREPARE PDF, AND SORT THE LIST ---
    if ($_LIST['output'] != false) {
        if ($result_count != 0) {
            $count = 0;
            $remove = count($link['remove']['variables']);
            $cols = count($column_names);
            // HANDLE SEARCHES ---
            if ($result_count && $_REQUEST['LO_search'] && $_REQUEST['LO_search'] != 'Search') {
                $_REQUEST['LO_search'] = $search_term = str_replace('\\\\"', '"', $_REQUEST['LO_search']);
                $_REQUEST['LO_search'] = $search_term = ereg_replace('[^a-zA-Z0-9 _"]*', '', strtolower($search_term));
                if (substr($search_term, 0, 0) != '"' && substr($search_term, -1) != '"') {
                    $search_term = ereg_replace('"', '', $search_term);
                    while ($space_pos = strpos($search_term, ' ')) {
                        $terms[strtolower(substr($search_term, 0, $space_pos))] = 1;
                        $search_term = substr($search_term, $space_pos + 1);
                    }
                    $terms[trim($search_term)] = 1;
                } else {
                    $search_term = ereg_replace('"', '', $search_term);
                    $terms[trim($search_term)] = 1;
                }
                unset($terms['of']);
                unset($terms['the']);
                unset($terms['a']);
                unset($terms['an']);
                unset($terms['in']);
                foreach ($result as $key => $value) {
                    $values[$key] = 0;
                    foreach ($value as $name => $val) {
                        $val = ereg_replace('[^a-zA-Z0-9 _]+', '', strtolower($val));
                        if (strtolower($_REQUEST['LO_search']) == $val) {
                            $values[$key] += 25;
                        }
                        foreach ($terms as $term => $one) {
                            if (ereg($term, $val)) {
                                $values[$key] += 3;
                            }
                        }
                    }
                    if ($values[$key] == 0) {
                        unset($values[$key]);
                        unset($result[$key]);
                        $result_count--;
                        $display_count--;
                    }
                }
                if ($result_count) {
                    array_multisort($values, SORT_DESC, $result);
                    $result = ReindexResults($result);
                    $values = ReindexResults($values);
                    $last_value = 1;
                    $scale = 100 / $values[$last_value];
                    for ($i = $last_value; $i <= $result_count; $i++) {
                        $result[$i]['RELEVANCE'] = '<!--' . (int) ($values[$i] * $scale) . '--><IMG SRC="assets/pixel_grey.gif" width=' . (int) ($values[$i] * $scale) . ' height=10>';
                    }
                }
                $column_names['RELEVANCE'] = "" . _('Relevance') . "";
                if (is_array($group) && count($group)) {
                    $options['count'] == false;
                    $display_zero = true;
                }
            }
            // END SEARCHES ---
            if ($_REQUEST['LO_sort']) {
                $r = array();
                $a = array();
                $t = array();
                $c = 0;
                for ($i = 1; $i <= count($result); $i++) {
                    if (array_key_exists("FULL_NAME", $result[$i])) {
                        array_push($a, $i);
                    }
                }
                $l = 0;
                $k = 0;
                foreach ($result as $column => $value) {
                    for ($n = 0; $n < count($a); $n++) {
                        if ($column == $a[$n]) {
                            $k = $k + 1;
                        }
                    }
                    $t[$k][$l] = $value;
                    $l++;
                }
                for ($h = 1; $h <= count($a); $h++) {
                    foreach ($t[$h] as $sort) {
                        if (substr($sort[$_REQUEST['LO_sort']], 0, 4) != '<!--') {
                            $sort_array[] = $sort[$_REQUEST['LO_sort']];
                        } else {
                            $sort_array[] = substr($sort[$_REQUEST['LO_sort']], 4, strpos($sort[$_REQUEST['LO_sort']], '-->') - 5);
                        }
                    }
                    if ($_REQUEST['LO_direction'] == -1) {
                        $dir = SORT_DESC;
                    } else {
                        $dir = SORT_ASC;
                    }
                    if (count($t) > 1) {
                        if (is_int($sort_array[1]) || is_double($sort_array[1])) {
                            array_multisort($sort_array, $dir, SORT_NUMERIC, $t[$h]);
                        } else {
                            array_multisort($sort_array, $dir, $t[$h]);
                        }
                        // print_r($t[$h]);
                        $inc = 0;
                        $pos = 0;
                        $flag = true;
                        $inc = 0;
                        $select = $_REQUEST['LO_sort'];
                        for ($c = 0; $c < count($t[$h]); $c++) {
                            if (array_key_exists($_REQUEST['LO_sort'], $t[$h][$c])) {
                                $temp = $t[$h][$c];
                                if ($temp[$select]) {
                                    $inc++;
                                    if ($flag) {
                                        $pos = $c;
                                        $flag = false;
                                    }
                                }
                            }
                        }
                        $abc = array_slice($t[$h], $pos, $inc);
                        if ($pos == 0) {
                            $cde = array_slice($t[$h], $inc, count($t[$h]) - 1);
                        } else {
                            $cde = array_slice($t[$h], 0, $pos);
                        }
                        if ($inc != 0) {
                            $t[$h] = array_merge($abc, $cde);
                        }
                        echo "<br/>";
                        array_push($result, $t[$h]);
                    }
                    for ($i = $result_count - 1; $i >= 0; $i--) {
                        $result[$i + 1] = $result[$i];
                    }
                    unset($result[0]);
                    $sort_array = "";
                }
                // $name_sort=array();
                $bgcolor_sort = array();
                for ($h = 1; $h <= count($t); $h++) {
                    for ($n = 0; $n < count($t[$h]); $n++) {
                        if ($_REQUEST['LO_sort'] == "FULL_NAME") {
                            if (array_key_exists("FULL_NAME", $t[$h][$n])) {
                                $name_sort[] = array_shift($t[$h][$n]);
                            }
                            if (array_key_exists("bgcolor", $t[$h][$n])) {
                                $bgcolor_sort[] = array_shift($t[$h][$n]);
                            }
                        } else {
                            if (array_key_exists("FULL_NAME", $t[$h][$n])) {
                                $FULL_NAME = array_shift($t[$h][$n]);
                            }
                            if (array_key_exists("bgcolor", $t[$h][$n])) {
                                $bgcolor = array_shift($t[$h][$n]);
                            }
                            $t[$h][0][FULL_NAME] = $FULL_NAME;
                            $t[$h][0][bgcolor] = $bgcolor;
                        }
                    }
                }
                for ($h = 1; $h <= count($t); $h++) {
                    for ($n = 0; $n < count($t[$h]); $n++) {
                        if (array_key_exists("0", $t[$h][$n])) {
                            $mkperiod = $t[$h][$n]['MARKING_PERIOD_ID'];
                            $t[$h][$n][$mkperiod] = $t[$h][$n][0];
                        }
                    }
                }
                //print_r($name_sort);
                if ($_REQUEST['LO_sort'] == "FULL_NAME") {
                    array_multisort($name_sort, $dir);
                    for ($h = 1; $h <= count($t); $h++) {
                        $t[$h][0][FULL_NAME] = $name_sort[$h - 1];
                    }
                }
                $result = "";
                for ($n = 1; $n <= count($a); $n++) {
                    $result = array_merge((array) $result, $t[$n]);
                }
            }
        }
        // HANDLE SAVING THE LIST ---
        if ($_REQUEST['LO_save'] == '1') {
            if (!$options['save_delimiter'] && Preferences('DELIMITER') == 'CSV') {
                $options['save_delimiter'] = 'comma';
            }
            switch ($options['save_delimiter']) {
                case 'comma':
                    $extension = 'csv';
                    break;
                case 'xml':
                    $extension = 'xml';
                    break;
                default:
                    $extension = 'xls';
                    break;
            }
            ob_end_clean();
            if ($options['save_delimiter'] != 'xml') {
                foreach ($column_names as $key => $value) {
                    $output .= str_replace('&nbsp;', ' ', eregi_replace('<BR>', ' ', ereg_replace('<!--.*-->', '', $value))) . ($options['save_delimiter'] == 'comma' ? ',' : "\t");
                }
                $output .= "\n";
            }
            foreach ($result as $item) {
                foreach ($column_names as $key => $value) {
                    if ($options['save_delimiter'] == 'comma' && !$options['save_quotes']) {
                        $item[$key] = str_replace(',', ';', $item[$key]);
                    }
                    $item[$key] = eregi_replace('<SELECT.*SELECTED\\>([^<]+)<.*</SELECT\\>', '\\1', $item[$key]);
                    $item[$key] = eregi_replace('<SELECT.*</SELECT\\>', '', $item[$key]);
                    $output .= ($options['save_quotes'] ? '"' : '') . ($options['save_delimiter'] == 'xml' ? '<' . str_replace(' ', '', $value) . '>' : '') . ereg_replace('<[^>]+>', '', ereg_replace("<div onclick='[^']+'>", '', ereg_replace(' +', ' ', ereg_replace('&[^;]+;', '', str_replace('<BR>&middot;', ' : ', str_replace('&nbsp;', ' ', $item[$key])))))) . ($options['save_delimiter'] == 'xml' ? '</' . str_replace(' ', '', $value) . '>' . "\n" : '') . ($options['save_quotes'] ? '"' : '') . ($options['save_delimiter'] == 'comma' ? ',' : "\t");
                }
                $output .= "\n";
            }
            header("Cache-Control: public");
            header("Pragma: ");
            header("Content-Type: application/{$extension}");
            header("Content-Disposition: inline; filename=\"" . ProgramTitle() . ".{$extension}\"\n");
            if ($options['save_eval']) {
                eval($options['save_eval']);
            }
            echo $output;
            exit;
        }
        // END SAVING THE LIST ---
        if ($options['center']) {
            #echo '<CENTER>';
            if ($result_count > $num_displayed || ($options['count'] || $display_zero) && (($result_count == 0 || $display_count == 0) && $plural || ($result_count == 0 || $display_count == 0))) {
                #echo "<TABLE border=0 cellspacing=3 cellpadding=6>" ;
                if (isset($_REQUEST['_openSIS_PDF'])) {
                    #echo " width=98%";
                    echo " <TR><TD align=center>";
                }
            }
        }
        if ($options['count'] || $display_zero) {
            if (($result_count == 0 || $display_count == 0) && $plural) {
                echo "<div style=text-align:left><table cellpadding=5 cellspacing=5 class=alert_box ><tr><td class=alert></td><td class=alert_msg ><b>" . _('No') . " {$plural} " . _('were found.') . "</b></td></tr><tr><td colspan=2 class=clear></td></tr></table></div>";
            } elseif ($result_count == 0 || $display_count == 0) {
                echo '<div style=text-align:left><table cellpadding=5 cellspacing=5 class=alert_box ><tr><td class=alert></td><td class=alert_msg ><b>' . _('None were found.') . '</b></td></tr><tr><td colspan=2 class=clear></td></tr></table></div>';
            }
        }
        if ($result_count != 0 || $_REQUEST['LO_search'] && $_REQUEST['LO_search'] != 'Search') {
            if (!isset($_REQUEST['_openSIS_PDF'])) {
                if (!$Request_page) {
                    $Request_page = 1;
                }
                if (!$_REQUEST['LO_direction']) {
                    $_REQUEST['LO_direction'] = 1;
                }
                $start = ($Request_page - 1) * $num_displayed + 1;
                $stop = $start + ($num_displayed - 1);
                if ($stop > $result_count) {
                    $stop = $result_count;
                }
                if ($result_count > $num_displayed) {
                    echo $where_message = "<strong><br>\n\t\t\t\t\t\t\t\t\t    {$start} " . _('through') . " {$stop}</strong>";
                    echo "<div style=text-align:right;margin-top:-14px;padding-right:15px><strong>" . _('Go to Page') . " ";
                    if (ceil($result_count / $num_displayed) <= 10) {
                        for ($i = 1; $i <= ceil($result_count / $num_displayed); $i++) {
                            if ($i != $Request_page) {
                                if ($for_window == 'for_window') {
                                    $pages .= "<A HREF=" . str_replace('Modules.php', 'for_window.php', $PHP_tmp_SELF) . "&LO_sort={$_REQUEST['LO_sort']}&LO_direction={$_REQUEST['LO_direction']}&LO_search=" . urlencode($_REQUEST['LO_search']) . "&page={$i}&list_type={$singular}>{$i}</A>, ";
                                } else {
                                    $pages .= "<A HREF={$PHP_tmp_SELF}&LO_sort={$_REQUEST['LO_sort']}&LO_direction={$_REQUEST['LO_direction']}&LO_search=" . urlencode($_REQUEST['LO_search']) . "&page={$i}&list_type={$singular}>{$i}</A>, ";
                                }
                            } else {
                                $pages .= "{$i}, ";
                            }
                        }
                        $pages = substr($pages, 0, -2);
                    } else {
                        for ($i = 1; $i <= 7; $i++) {
                            if ($i != $Request_page) {
                                $pages .= "<A HREF={$PHP_tmp_SELF}&LO_sort={$_REQUEST['LO_sort']}&LO_direction={$_REQUEST['LO_direction']}&LO_search=" . urlencode($_REQUEST['LO_search']) . "&page={$i}>{$i}</A>, ";
                            } else {
                                $pages .= "{$i}, ";
                            }
                        }
                        $pages = substr($pages, 0, -2) . " ... ";
                        for ($i = ceil($result_count / $num_displayed) - 2; $i <= ceil($result_count / $num_displayed); $i++) {
                            if ($i != $Request_page) {
                                $pages .= "<A HREF={$PHP_tmp_SELF}&LO_sort={$_REQUEST['LO_sort']}&LO_direction={$_REQUEST['LO_direction']}&LO_search=" . urlencode($_REQUEST['LO_search']) . "&page={$i}>{$i}</A>, ";
                            } else {
                                $pages .= "{$i}, ";
                            }
                        }
                        $pages = substr($pages, 0, -2) . " &nbsp;<A HREF={$PHP_tmp_SELF}&LO_sort={$_REQUEST['LO_sort']}&LO_direction={$_REQUEST['LO_direction']}&LO_search=" . urlencode($_REQUEST['LO_search']) . "&page=" . ($Request_page + 1) . ">" . _('Next Page') . "</A><BR>";
                    }
                    echo $pages;
                    //echo '</td></tr></table></div>';
                    echo '</strong></div>';
                    //echo '<BR>';
                }
            } else {
                $start = 1;
                $stop = $result_count;
                if ($cols > 8 || $_REQUEST['expanded_view']) {
                    $_SESSION['orientation'] = 'landscape';
                    $repeat_headers = 16;
                } else {
                    $repeat_headers = 27;
                }
                if ($options['print']) {
                    $html = explode('<!-- new page -->', strtolower(ob_get_contents()));
                    $html = $html[count($html) - 1];
                    echo '</TD></TR></TABLE>';
                    $br = substr_count($html, '<br>') + substr_count($html, '</p>') + substr_count($html, '</tr>') + substr_count($html, '</h1>') + substr_count($html, '</h2>') + substr_count($html, '</h3>') + substr_count($html, '</h4>') + substr_count($html, '</h5>');
                    if ($br % 2 != 0) {
                        $br++;
                        echo '<BR>';
                    }
                } else {
                    echo '</TD></TR></TABLE>';
                }
            }
            // END MISC ---
            // WIDTH = 100%
            echo '<TABLE width=98% border=0 cellspacing=0 cellpadding=0><TR>';
            // SEARCH BOX & MORE HEADERS
            if ($where_message || $singular && $plural || !isset($_REQUEST['_openSIS_PDF']) && $options['search']) {
                echo '<TD align=center>';
                echo '<TABLE cellpadding=1 width=100% border=0 class=\\"grid\\">';
                echo "<TR><TD align=left valign=middle>";
                if ($singular && $plural && $options['count']) {
                    if ($display_count > 1) {
                        echo "<table cellpadding=5 cellspacing=5 class=alert_box align=left ><tr><td class=notice></td><td class=notice_msg ><b>{$display_count} {$plural} " . _('were found.') . "</b></td></tr></table>";
                    } elseif ($display_count == 1) {
                        echo "<table cellpadding=5 cellspacing=5 class=alert_box align=left ><tr><td class=notice></td><td class=notice_msg ><b>" . _('1') . " {$singular} " . _('was found.') . "</b></td></tr></table>";
                    }
                    #if($where_message)
                    #	echo '<br>'.$where_message;
                }
                if ($options['save'] && !isset($_REQUEST['_openSIS_PDF']) && $result_count > 0) {
                    //echo str_replace("Modules.php", "for_export.php", $PHP_tmp_SELF);
                    echo "<table cellpadding=0 cellspacing=0 class=download align=left ><tr><td><A HREF=" . str_replace('Modules.php', 'for_export.php', $PHP_tmp_SELF) . "&{$extra}&LO_save=1&_openSIS_PDF=true ><IMG SRC=assets/download.png border=0 alt=\"Download\" title=\"" . _('Download') . "\"></a></td></tr></table>";
                }
                //echo "<br><br><table class=download ><tr><td><A HREF=".str_replace('Modules.php', 'for_export.php', $PHP_tmp_SELF)."&$extra&_openSIS_PDF=true ><IMG SRC=assets/download.png border=0></a></td><td><A HREF=".str_replace('Modules.php', 'for_export.php', $PHP_tmp_SELF)."&$extra&_openSIS_PDF=true >Download</A></td></tr></table>";
                echo '</TD>';
                $colspan = 1;
                if (!isset($_REQUEST['_openSIS_PDF']) && $options['search']) {
                    $_REQUEST['portal_search'] = 'true';
                    $tmp_REQUEST = $_REQUEST;
                    unset($tmp_REQUEST['LO_search']);
                    unset($tmp_REQUEST['page']);
                    echo '<TD height="50" align=right valign=middle style="white-space:nowrap;">&nbsp;&nbsp;';
                    echo "<INPUT type=text class='cell_medium'  id=LO_search name=LO_search value='" . ($_REQUEST['LO_search'] && $_REQUEST['LO_search'] != 'Search' ? $_REQUEST['LO_search'] : 'Search\' style=\'color:BBBBBB\''), "' onfocus='if(this.value==\"Search\") this.value=\"\"; this.style.color=\"000000\";' onblur='if(this.value==\"\") {this.value=\"Search\"; this.style.color=\"BBBBBB\";}' onkeypress='if(event.keyCode==13){document.location.href=\"" . PreparePHP_SELF($tmp_REQUEST) . "&LO_search=\"+this.value; return false;} '>&nbsp;&nbsp;<INPUT type=button class='btn_go' value=" . _('Go') . " onclick='document.location.href=\"" . PreparePHP_SELF($tmp_REQUEST) . "&LO_search=\"+document.getElementById(\"LO_search\").value;'></TD>";
                    $colspan++;
                }
                echo "</TR>";
                echo '<TR style="height:0;"><TD width=100% align=center colspan=' . $colspan . '><DIV id=LOx' . (count($column_names) + ($result_count != 0 && $cols && !isset($_REQUEST['_openSIS_PDF']) ? 1 : 0) + ($remove && !isset($_REQUEST['_openSIS_PDF']) ? 1 : 0)) . ' style="width:0; position: relative; height:0;"></DIV></TD></TR></TABLE>';
            } else {
                echo '<TD width=100% align=right><DIV id=LOx' . (count($column_names) + ($result_count != 0 && $cols && !isset($_REQUEST['_openSIS_PDF']) ? 1 : 0) + ($remove && !isset($_REQUEST['_openSIS_PDF']) ? 1 : 0)) . ' style="width:0; position: relative; height:0;"></DIV>';
            }
            // END SEARCH BOX ----
            echo '</TD></TR><TR><TD>';
            // SHADOW
            if (!isset($_REQUEST['_openSIS_PDF'])) {
                //echo "<link rel='stylesheet' type='text/css' href='styles/paging.css' />\n";
                echo '<div id="pagerNavPosition"></div>';
                echo '<TABLE width=100% cellpadding=0 cellspacing=0><TR><TD align=center>';
            }
            echo "<TABLE id='results' cellpadding=6 width=96% cellspacing=1 class=\"grid\" align=center>";
            if (!isset($_REQUEST['_openSIS_PDF']) && $stop - $start > 10) {
                echo '<THEAD>';
            }
            if (!isset($_REQUEST['_openSIS_PDF'])) {
                echo '<TR>';
            }
            $i = 1;
            if ($remove && !isset($_REQUEST['_openSIS_PDF']) && $result_count != 0) {
                //THIS LINE IS FOR COLUMN HEADING
                echo "<TD class=subtabs><DIV id=LOx{$i} style='position: relative;'></DIV></TD>";
                $i++;
            }
            if ($result_count != 0 && $cols && !isset($_REQUEST['_openSIS_PDF'])) {
                foreach ($column_names as $key => $value) {
                    if ($_REQUEST['LO_sort'] == $key) {
                        $direction = -1 * $_REQUEST['LO_direction'];
                    } else {
                        $direction = 1;
                    }
                    //THIS LINE IS FOR COLUMN HEADING
                    echo "<TD class=subtabs><DIV id=LOx{$i} style='position: relative;'></DIV>";
                    echo "<A ";
                    if ($options['sort']) {
                        if ($for_window == 'for_window') {
                            echo "HREF=#";
                        } else {
                            echo "HREF={$PHP_tmp_SELF}&page={$_REQUEST['page']}&LO_sort={$key}&LO_direction={$direction}&LO_search=" . urlencode($_REQUEST['LO_search']);
                        }
                    }
                    echo " class=column_heading><b>{$value}</b></A>";
                    if ($i == 1) {
                        echo "<DIV id=LOy0 style='position: relative;'></DIV>";
                    }
                    echo "</TD>";
                    $i++;
                }
                //echo '<TD width=0><DIV id=LO'.$i.'></DIV></TD>';
                echo "</TR>";
            }
            $color = 'class=even';
            //style="height: 300px; overflow: auto; padding-right: 16px;"
            if (!isset($_REQUEST['_openSIS_PDF']) && $stop - $start > 10) {
                echo '</THEAD><TBODY>';
            }
            // mab - enable add link as first or last
            if ($result_count != 0 && $link['add']['first'] && $stop - $start >= $link['add']['first']) {
                //if($remove && !isset($_REQUEST['_openSIS_PDF']))
                //	$cols++;
                if ($link['add']['link'] && !isset($_REQUEST['_openSIS_PDF'])) {
                    echo "<TR><TD colspan=" . ($remove ? $cols + 1 : $cols) . " align=left class=even>" . button('add', $link['add']['title'], $link['add']['link']) . "</TD></TR>";
                } elseif ($link['add']['span'] && !isset($_REQUEST['_openSIS_PDF'])) {
                    echo "<TR><TD colspan=" . ($remove ? $cols + 1 : $cols) . " align=left class=even>" . button('add') . $link['add']['span'] . "</TD></TR>";
                } elseif ($link['add']['html'] && $cols) {
                    echo "<TR {$color}>";
                    if ($remove && !isset($_REQUEST['_openSIS_PDF']) && $link['add']['html']['remove']) {
                        echo "<TD class=even align=left>" . $link['add']['html']['remove'] . "</TD>";
                    } elseif ($remove && !isset($_REQUEST['_openSIS_PDF'])) {
                        echo "<TD class=even align=left>" . button('add') . "</TD>";
                    }
                    foreach ($column_names as $key => $value) {
                        echo "<TD class=even align=left >" . $link['add']['html'][$key] . "</TD>";
                    }
                    echo "</TR>";
                    $count++;
                }
            }
            for ($i = $start; $i <= $stop; $i++) {
                $item = $result[$i];
                if (isset($_REQUEST['_openSIS_PDF']) && $options['print'] && count($item)) {
                    foreach ($item as $key => $value) {
                        $value = eregi_replace('<SELECT.*SELECTED\\>([^<]+)<.*</SELECT\\>', '\\1', $value);
                        $value = eregi_replace('<SELECT.*</SELECT\\>', '', $value);
                        if (strpos($value, 'LO_field') === false) {
                            $item[$key] = str_replace(' ', '&nbsp;', ereg_replace("<div onclick='[^']+'>", '', $value));
                        } else {
                            $item[$key] = ereg_replace("<div onclick='[^']+'>", '', $value);
                        }
                    }
                }
                if ($item['row_color']) {
                    $color = $item['row_color'];
                } elseif ($color == 'class=even') {
                    $color = $side_color;
                } else {
                    $color = 'class=even';
                }
                //$color = '#EDF3FE';
                if (isset($_REQUEST['_openSIS_PDF']) && $count % $repeat_headers == 0) {
                    if ($count != 0) {
                        echo '</TABLE><TABLE cellpadding=6 width=820 class=\\"grid\\">';
                        echo '<!-- NEW PAGE -->';
                    }
                    echo "<TR>";
                    if ($remove && !isset($_REQUEST['_openSIS_PDF'])) {
                        echo "<TD class=grid></TD>";
                    }
                    if ($cols) {
                        foreach ($column_names as $key => $value) {
                            echo "<TD class=grid >" . str_replace(' ', '&nbsp;', $value) . "</TD>";
                        }
                    }
                    echo "</TR>";
                }
                if ($count == 0) {
                    $count = $br;
                }
                echo "<TR {$color}>";
                $count++;
                if ($remove && !isset($_REQUEST['_openSIS_PDF'])) {
                    $button_title = $link['remove']['title'];
                    //if(!$button_title)
                    //$button_title = 'Remove';
                    $button_link = $link['remove']['link'];
                    if (count($link['remove']['variables'])) {
                        foreach ($link['remove']['variables'] as $var => $val) {
                            $button_link .= "&{$var}=" . $item[$val];
                        }
                    }
                    echo "<TD {$color}>" . button('remove', $button_title, $button_link) . "</TD>";
                }
                if ($cols) {
                    foreach ($column_names as $key => $value) {
                        if ($link[$key] && !isset($_REQUEST['_openSIS_PDF'])) {
                            echo "<TD {$color} >";
                            if ($key == 'FULL_NAME') {
                                echo '<DIV id=LOy' . ($count - $br) . ' style="height: 100%; min-height: 100%; position: relative;">';
                            }
                            if ($link[$key]['js'] === true) {
                                echo "<A HREF=# onclick='window.open(\"{$link[$key][link]}";
                                if (count($link[$key]['variables'])) {
                                    foreach ($link[$key]['variables'] as $var => $val) {
                                        echo "&{$var}=" . urlencode($item[$val]);
                                    }
                                }
                                echo "\",\"\",\"scrollbars=yes,resizable=yes,width=800,height=400\");'";
                                if ($link[$key]['extra']) {
                                    echo ' ' . $link[$key]['extra'];
                                }
                                echo ">";
                            } else {
                                echo "<A HREF={$link[$key][link]}";
                                if (count($link[$key]['variables'])) {
                                    foreach ($link[$key]['variables'] as $var => $val) {
                                        echo "&{$var}=" . urlencode($item[$val]);
                                    }
                                }
                                if ($link[$key]['extra']) {
                                    echo ' ' . $link[$key]['extra'];
                                }
                                echo " onclick='grabA(this); return false;'>";
                            }
                            if ($color == Preferences('HIGHLIGHT')) {
                                echo '';
                            } else {
                                echo '<b>';
                            }
                            echo $item[$key];
                            echo '</b>';
                            if (!$item[$key]) {
                                echo '***';
                            }
                            echo "</A>";
                            if ($key == 'FULL_NAME') {
                                echo '</DIV>';
                            }
                            echo "</TD>";
                        } else {
                            echo "<TD {$color} >";
                            if ($key == 'FULL_NAME') {
                                echo '<DIV id=LOy' . ($count - $br) . '  style="position: relative;">';
                            }
                            if ($color == Preferences('HIGHLIGHT')) {
                                echo '';
                            }
                            echo $item[$key];
                            if (!$item[$key]) {
                                echo '&nbsp;';
                            }
                            if ($key == 'FULL_NAME') {
                                echo '<DIV>';
                            }
                            echo "</TD>";
                        }
                    }
                }
                echo "</TR>";
            }
            if ($result_count != 0 && (!$link['add']['first'] || $link['add']['first'] && $stop - $start < $link['add']['first'])) {
                //if($remove && !isset($_REQUEST['_openSIS_PDF']))
                //	$cols++;
                if ($link['add']['link'] && !isset($_REQUEST['_openSIS_PDF'])) {
                    echo "<TR><TD colspan=" . ($remove ? $cols + 1 : $cols) . " align=left class=even>" . button('add', $link['add']['title'], $link['add']['link']) . "</TD></TR>";
                } elseif ($link['add']['span'] && !isset($_REQUEST['_openSIS_PDF'])) {
                    echo "<TR><TD colspan=" . ($remove ? $cols + 1 : $cols) . " align=left class=even>" . button('add') . $link['add']['span'] . "</TD></TR>";
                } elseif ($link['add']['html'] && $cols) {
                    if ($count % 2) {
                        $color = 'class=even';
                    } else {
                        $color = $side_color;
                    }
                    echo "<TR {$color}>";
                    if ($remove && !isset($_REQUEST['_openSIS_PDF']) && $link['add']['html']['remove']) {
                        echo "<TD class=even align=left>" . $link['add']['html']['remove'] . "</TD>";
                    } elseif ($remove && !isset($_REQUEST['_openSIS_PDF'])) {
                        echo "<TD class=even align=left class=grid_button>" . button('add') . "</TD>";
                    }
                    foreach ($column_names as $key => $value) {
                        echo "<TD class=even align=left  valign=top>" . $link['add']['html'][$key] . "</TD>";
                    }
                    echo "</TR>";
                }
            }
            if ($result_count != 0) {
                if (!isset($_REQUEST['_openSIS_PDF']) && $stop - $start > 10) {
                    echo '</TBODY>';
                }
                echo "</TABLE>";
                // SHADOW
                if (!isset($_REQUEST['_openSIS_PDF'])) {
                    echo '</TD ></TR></TABLE>';
                    echo "<script language='javascript' type='text/javascript'>\n";
                    #echo "alert('calling pager');\n";
                    $number_rec = 100;
                    echo "var pager = new Pager('results',{$number_rec});\n";
                    echo "pager.init();\n";
                    echo "pager.showPageNav('pager', 'pagerNavPosition');\n";
                    echo "pager.showPage(1);\n";
                    echo "</script>\n";
                }
                echo "</TD ></TR>";
                echo "</TABLE>";
                if ($options['center']) {
                    echo '';
                }
            }
            // END PRINT THE LIST ---
        }
        if ($result_count == 0) {
            // mab - problem with table closing if not opened above - do same conditional?
            if ($result_count > $num_displayed || ($options['count'] || $display_zero) && (($result_count == 0 || $display_count == 0) && $plural || ($result_count == 0 || $display_count == 0))) {
                #echo '<td>'; //edited for Search in parents (user>> associate student with parents)
                if ($link['add']['link'] && !isset($_REQUEST['_openSIS_PDF'])) {
                    echo '<table width=120px cellspacing=8 cellpadding=6 ><tr><TD align=left class=lone_add >' . button('add', $link['add']['title'], $link['add']['link']) . '</td></tr></table>';
                } elseif (($link['add']['html'] || $link['add']['span']) && count($column_names) && !isset($_REQUEST['_openSIS_PDF'])) {
                    $color = $side_color;
                    if ($options['center']) {
                        #echo '<CENTER>';
                        // WIDTH=100%
                        //echo "<TABLE cellpadding=1 bgcolor=#f8f8f9 width=100%><TR><TD>";
                        // SHADOW
                        echo '<TABLE width=100% cellpadding=0 cellspacing=0><TR><TD align=center>';
                    }
                    if ($link['add']['html']) {
                        /*Here also change the colour for left corner*/
                        echo "<TABLE cellpadding=6 cellspacing=1 width=96% class=\"grid\"><TR><TD class=subtabs></TD>";
                        foreach ($column_names as $key => $value) {
                            //Here to change the ListOutput Header Colour
                            echo "<TD class=subtabs><A><b>" . str_replace(' ', '&nbsp;', $value) . "</b></A></TD>";
                        }
                        echo "</TR>";
                        echo "<TR class=odd>";
                        if ($link['add']['html']['remove']) {
                            echo "<TD >" . $link['add']['html']['remove'] . "</TD>";
                        } else {
                            echo "<TD>" . button('add') . "</TD>";
                        }
                        foreach ($column_names as $key => $value) {
                            echo "<TD >" . $link['add']['html'][$key] . "</TD>";
                        }
                        echo "</TR>";
                        echo "</TABLE>";
                    } elseif ($link['add']['span'] && !isset($_REQUEST['_openSIS_PDF'])) {
                        echo "<TABLE><TR><TD align=center>" . button('add') . $link['add']['span'] . "</TD></TR></TABLE>";
                    }
                    // SHADOW
                    //echo '</TD></TR></TABLE>';
                    echo "</TD></TR></TABLE>";
                    if ($options['center']) {
                        echo '</CENTER>';
                    }
                }
            }
        }
        if ($result_count != 0) {
            if ($options['yscroll']) {
                echo '<div id="LOy_layer" style="position: absolute; top: 0; left: 0; visibility:hidden;">';
                echo '<TABLE cellpadding=6 id=LOy_table>';
                $i = 1;
                if ($cols && !isset($_REQUEST['_openSIS_PDF'])) {
                    $color = $side_color;
                    foreach ($result as $item) {
                        echo "<TR><TD {$color}  id=LO_row{$i}>";
                        if ($color == Preferences('HIGHLIGHT')) {
                            echo '';
                        }
                        echo $item['FULL_NAME'];
                        if (!$item['FULL_NAME']) {
                            echo '&nbsp;';
                        }
                        if ($color == Preferences('HIGHLIGHT')) {
                            echo '';
                        }
                        echo "</TD></TR>";
                        $i++;
                        if ($item['row_color']) {
                            $color = $item['row_color'];
                        } elseif ($color == 'class=even') {
                            $color = $side_color;
                        } else {
                            $color = 'class=even';
                        }
                    }
                }
                echo '</TABLE>';
                echo '</div>';
            }
            echo '<div id="LOx_layer" style="position: absolute; top: 0; left: 0; visibility:hidden;">';
            echo '<TABLE cellpadding=6 id=LOx_table><TR>';
            $i = 1;
            if ($remove && !isset($_REQUEST['_openSIS_PDF']) && $result_count != 0) {
                echo "<TD class=grid id=LO_col{$i}></TD>";
                $i++;
            }
            if ($cols && !isset($_REQUEST['_openSIS_PDF'])) {
                foreach ($column_names as $key => $value) {
                    echo '<TD class=grid id=LO_col' . $i . '><A class=column_heading><b>' . str_replace('controller', '', $value) . '</b></A></TD>';
                    $i++;
                }
            }
            echo '</TR></TABLE>';
            echo '</div>';
        }
    }
}
Beispiel #23
0
            PopTable('header', 'Find a Student');
            if ($extra['pdf'] != true) {
                echo "<FORM name=search id=search action=Modules.php?modname={$_REQUEST['modname']}&modfunc={$_REQUEST['modfunc']}&search_modfunc=list&next_modname={$_REQUEST['next_modname']}" . $extra['action'] . " method=POST>";
            } else {
                echo "<FORM name=search id=search action=for_export.php?modname={$_REQUEST['modname']}&modfunc={$_REQUEST['modfunc']}&search_modfunc=list&next_modname={$_REQUEST['next_modname']}" . $extra['action'] . " method=POST target=_blank>";
            }
            echo '<TABLE border=0>';
            Search('general_info');
            if ($extra['search']) {
                echo $extra['search'];
            }
            Search('student_fields');
            echo '<TABLE width=100%><TR><TD align=center><BR>';
            if (User('PROFILE') == 'admin') {
                echo '<INPUT type=checkbox name=address_group value=Y' . (Preferences('DEFAULT_FAMILIES') == 'Y' ? ' CHECKED' : '') . '>Group by Family<BR>';
                echo '<INPUT type=checkbox name=_search_all_schools value=Y' . (Preferences('DEFAULT_ALL_SCHOOLS') == 'Y' ? ' CHECKED' : '') . '>Search All Schools<BR>';
            }
            echo '<INPUT type=checkbox name=include_inactive value=Y>Include Inactive Students<BR>';
            echo '<BR>';
            //echo Buttons('Submit','Reset');
            if ($extra['pdf'] != true) {
                echo "<INPUT type=SUBMIT class=btn_medium value='Submit' onclick='formload_ajax(\"search\");'>&nbsp<INPUT type=RESET class=btn_medium value='Reset'>";
            } else {
                echo "<INPUT type=SUBMIT class=btn_medium value='Submit'>&nbsp<INPUT type=RESET class=btn_medium value='Reset'>";
            }
            echo '</TD></TR>';
            echo '</TABLE>';
            echo '</FORM>';
            // set focus to last name text box
            echo '<script type="text/javascript"><!--
				document.search.last.focus();
Beispiel #24
0
function _makeCommentsA($value, $column)
{
    global $THIS_RET, $current_commentsA_RET, $import_commentsA_RET, $commentsA_select, $tabindex;
    if ($import_commentsA_RET[$THIS_RET['STUDENT_ID']][$value]) {
        $select = $import_commentsA_RET[$THIS_RET['STUDENT_ID']][$value][1]['COMMENT'];
        $div = false;
    } else {
        if (!$current_commentsA_RET[$THIS_RET['STUDENT_ID']] && !$import_commentsA_RET[$THIS_RET['STUDENT_ID']] && AllowEdit()) {
            $select = Preferences('COMMENT_A', 'Gradebook');
            $div = false;
        } else {
            $select = $current_commentsA_RET[$THIS_RET['STUDENT_ID']][$value][1]['COMMENT'];
            $div = true;
        }
    }
    if (!isset($_REQUEST['_openSIS_PDF'])) {
        $return = SelectInput($select, 'values[' . $THIS_RET['STUDENT_ID'] . '][commentsA][' . $value . ']', '', $commentsA_select, 'N/A', 'tabindex=' . ($tabindex += 100), $div);
    } else {
        $return = $select != ' ' ? $select : 'o';
    }
    return $return;
}
function GetStuList(&$extra = array())
{
    global $contacts_RET, $view_other_RET, $_ROSARIO;
    if ((empty($extra['SELECT_ONLY']) || mb_strpos($extra['SELECT_ONLY'], 'GRADE_ID') !== false) && !isset($extra['functions']['GRADE_ID'])) {
        $functions = array('GRADE_ID' => 'GetGrade');
    } else {
        $functions = array();
    }
    if (isset($extra['functions'])) {
        $functions += $extra['functions'];
    }
    if (!isset($extra['MP']) && !isset($extra['DATE'])) {
        $extra['MP'] = UserMP();
        $extra['DATE'] = DBDate();
    } elseif (!$extra['MP']) {
        $extra['MP'] = GetCurrentMP('QTR', $extra['DATE'], false);
    } elseif (!$extra['DATE']) {
        $extra['DATE'] = DBDate();
    }
    if (isset($_REQUEST['expanded_view']) && $_REQUEST['expanded_view'] == 'true') {
        if (!$extra['columns_after']) {
            $extra['columns_after'] = array();
        }
        $view_fields_RET = DBGet(DBQuery("SELECT cf.ID,cf.TYPE,cf.TITLE FROM CUSTOM_FIELDS cf WHERE ((SELECT VALUE FROM PROGRAM_USER_CONFIG WHERE TITLE=cast(cf.ID AS TEXT) AND PROGRAM='StudentFieldsView' AND USER_ID='" . User('STAFF_ID') . "')='Y'" . ($extra['student_fields']['view'] ? " OR cf.ID IN (" . $extra['student_fields']['view'] . ")" : '') . ") ORDER BY cf.SORT_ORDER,cf.TITLE"));
        $view_address_RET = DBGet(DBQuery("SELECT VALUE FROM PROGRAM_USER_CONFIG WHERE PROGRAM='StudentFieldsView' AND TITLE='ADDRESS' AND USER_ID='" . User('STAFF_ID') . "'"));
        $view_address_RET = $view_address_RET[1]['VALUE'];
        $view_other_RET = DBGet(DBQuery("SELECT TITLE,VALUE FROM PROGRAM_USER_CONFIG WHERE PROGRAM='StudentFieldsView' AND TITLE IN ('CONTACT_INFO','HOME_PHONE','GUARDIANS','ALL_CONTACTS') AND USER_ID='" . User('STAFF_ID') . "'"), array(), array('TITLE'));
        if (!count($view_fields_RET) && !isset($view_address_RET) && !isset($view_other_RET['CONTACT_INFO'])) {
            //modif Francois: add translation
            $extra['columns_after'] = array('CONTACT_INFO' => '<IMG SRC="assets/down_phone_button.png" width="24">', 'CUSTOM_200000000' => _('Gender'), 'CUSTOM_200000001' => _('Ethnicity'), 'ADDRESS' => _('Mailing Address'), 'CITY' => _('City'), 'STATE' => _('State'), 'ZIPCODE' => _('Zipcode')) + $extra['columns_after'];
            $select = ',ssm.STUDENT_ID AS CONTACT_INFO,s.CUSTOM_200000000,s.CUSTOM_200000001,coalesce(a.MAIL_ADDRESS,a.ADDRESS) AS ADDRESS,coalesce(a.MAIL_CITY,a.CITY) AS CITY,coalesce(a.MAIL_STATE,a.STATE) AS STATE,coalesce(a.MAIL_ZIPCODE,a.ZIPCODE) AS ZIPCODE ';
            $extra['FROM'] = " LEFT OUTER JOIN STUDENTS_JOIN_ADDRESS sam ON (ssm.STUDENT_ID=sam.STUDENT_ID AND sam.RESIDENCE='Y') LEFT OUTER JOIN ADDRESS a ON (sam.ADDRESS_ID=a.ADDRESS_ID) " . $extra['FROM'];
            $functions['CONTACT_INFO'] = 'makeContactInfo';
            $RET = DBGet(DBQuery("SELECT ID,TYPE FROM CUSTOM_FIELDS WHERE ID IN ('200000000','200000001')"), array(), array('ID'));
            // if gender and ethnicity are converted to codeds or exports type
            if ($RET['200000000'][1]['TYPE'] == 'codeds' || $RET['200000000'][1]['TYPE'] == 'exports') {
                $functions['CUSTOM_200000000'] = 'DeCodeds';
            }
            if ($RET['200000001'][1]['TYPE'] == 'codeds' || $RET['200000001'][1]['TYPE'] == 'exports') {
                $functions['CUSTOM_200000001'] = 'DeCodeds';
            }
            $extra['singular'] = 'Student Address';
            $extra['plural'] = 'Student Addresses';
            $extra2['NoSearchTerms'] = true;
            $extra2['SELECT_ONLY'] = 'ssm.STUDENT_ID,p.PERSON_ID,p.FIRST_NAME,p.LAST_NAME,sjp.STUDENT_RELATION,pjc.TITLE,pjc.VALUE,a.PHONE,sjp.ADDRESS_ID ';
            $extra2['FROM'] .= ',ADDRESS a,STUDENTS_JOIN_ADDRESS sja LEFT OUTER JOIN STUDENTS_JOIN_PEOPLE sjp ON (sja.STUDENT_ID=sjp.STUDENT_ID AND sja.ADDRESS_ID=sjp.ADDRESS_ID AND (sjp.CUSTODY=\'Y\' OR sjp.EMERGENCY=\'Y\')) LEFT OUTER JOIN PEOPLE p ON (p.PERSON_ID=sjp.PERSON_ID) LEFT OUTER JOIN PEOPLE_JOIN_CONTACTS pjc ON (pjc.PERSON_ID=p.PERSON_ID) ';
            $extra2['WHERE'] .= ' AND a.ADDRESS_ID=sja.ADDRESS_ID AND sja.STUDENT_ID=ssm.STUDENT_ID ';
            $extra2['ORDER_BY'] .= 'sjp.CUSTODY';
            $extra2['group'] = array('STUDENT_ID', 'PERSON_ID');
            // EXPANDED VIEW AND ADDR BREAKS THIS QUERY ... SO, TURN 'EM OFF
            if (!isset($_REQUEST['_ROSARIO_PDF'])) {
                $expanded_view = $_REQUEST['expanded_view'];
                $_REQUEST['expanded_view'] = false;
                $addr = $_REQUEST['addr'];
                unset($_REQUEST['addr']);
                $contacts_RET = GetStuList($extra2);
                $_REQUEST['expanded_view'] = $expanded_view;
                $_REQUEST['addr'] = $addr;
            } else {
                unset($extra2['columns_after']['CONTACT_INFO']);
            }
        } else {
            if ($view_other_RET['CONTACT_INFO'][1]['VALUE'] == 'Y' && !isset($_REQUEST['_ROSARIO_PDF'])) {
                $select .= ',ssm.STUDENT_ID AS CONTACT_INFO ';
                $extra['columns_after']['CONTACT_INFO'] = '<IMG SRC="assets/down_phone_button.png" width="24">';
                $functions['CONTACT_INFO'] = 'makeContactInfo';
                $extra2 = $extra;
                $extra2['NoSearchTerms'] = true;
                $extra2['SELECT'] = '';
                $extra2['SELECT_ONLY'] = 'ssm.STUDENT_ID,p.PERSON_ID,p.FIRST_NAME,p.LAST_NAME,sjp.STUDENT_RELATION,pjc.TITLE,pjc.VALUE,a.PHONE,sjp.ADDRESS_ID ';
                $extra2['FROM'] .= ',ADDRESS a,STUDENTS_JOIN_ADDRESS sja LEFT OUTER JOIN STUDENTS_JOIN_PEOPLE sjp ON (sja.STUDENT_ID=sjp.STUDENT_ID AND sja.ADDRESS_ID=sjp.ADDRESS_ID AND (sjp.CUSTODY=\'Y\' OR sjp.EMERGENCY=\'Y\')) LEFT OUTER JOIN PEOPLE p ON (p.PERSON_ID=sjp.PERSON_ID) LEFT OUTER JOIN PEOPLE_JOIN_CONTACTS pjc ON (pjc.PERSON_ID=p.PERSON_ID) ';
                $extra2['WHERE'] .= ' AND a.ADDRESS_ID=sja.ADDRESS_ID AND sja.STUDENT_ID=ssm.STUDENT_ID ';
                $extra2['ORDER_BY'] .= 'sjp.CUSTODY';
                $extra2['group'] = array('STUDENT_ID', 'PERSON_ID');
                $extra2['functions'] = array();
                $extra2['link'] = array();
                // EXPANDED VIEW AND ADDR BREAKS THIS QUERY ... SO, TURN 'EM OFF
                $expanded_view = $_REQUEST['expanded_view'];
                $_REQUEST['expanded_view'] = false;
                $addr = $_REQUEST['addr'];
                unset($_REQUEST['addr']);
                $contacts_RET = GetStuList($extra2);
                $_REQUEST['expanded_view'] = $expanded_view;
                $_REQUEST['addr'] = $addr;
            }
            foreach ($view_fields_RET as $field) {
                $extra['columns_after']['CUSTOM_' . $field['ID']] = $field['TITLE'];
                if ($field['TYPE'] == 'date') {
                    $functions['CUSTOM_' . $field['ID']] = 'ProperDate';
                } elseif ($field['TYPE'] == 'numeric') {
                    $functions['CUSTOM_' . $field['ID']] = 'removeDot00';
                } elseif ($field['TYPE'] == 'codeds') {
                    $functions['CUSTOM_' . $field['ID']] = 'DeCodeds';
                } elseif ($field['TYPE'] == 'exports') {
                    $functions['CUSTOM_' . $field['ID']] = 'DeCodeds';
                }
                $select .= ',s.CUSTOM_' . $field['ID'];
            }
            if ($view_address_RET) {
                $extra['FROM'] = " LEFT OUTER JOIN STUDENTS_JOIN_ADDRESS sam ON (ssm.STUDENT_ID=sam.STUDENT_ID AND sam." . $view_address_RET . "='Y') LEFT OUTER JOIN ADDRESS a ON (sam.ADDRESS_ID=a.ADDRESS_ID) " . $extra['FROM'];
                $extra['columns_after'] += array('ADDRESS' => _(ucwords(mb_strtolower(str_replace('_', ' ', $view_address_RET)))) . ' ' . _('Address'), 'CITY' => _('City'), 'STATE' => _('State'), 'ZIPCODE' => _('Zipcode'));
                if ($view_address_RET != 'MAILING') {
                    $select .= ",a.ADDRESS_ID,a.ADDRESS,a.CITY,a.STATE,a.ZIPCODE,a.PHONE,ssm.STUDENT_ID AS PARENTS";
                } else {
                    $select .= ",a.ADDRESS_ID,coalesce(a.MAIL_ADDRESS,a.ADDRESS) AS ADDRESS,coalesce(a.MAIL_CITY,a.CITY) AS CITY,coalesce(a.MAIL_STATE,a.STATE) AS STATE,coalesce(a.MAIL_ZIPCODE,a.ZIPCODE) AS ZIPCODE,a.PHONE,ssm.STUDENT_ID AS PARENTS ";
                }
                $extra['singular'] = 'Student Address';
                $extra['plural'] = 'Student Addresses';
                if ($view_other_RET['HOME_PHONE'][1]['VALUE'] == 'Y') {
                    $functions['PHONE'] = 'makePhone';
                    $extra['columns_after']['PHONE'] = _('Home Phone');
                }
                if ($view_other_RET['GUARDIANS'][1]['VALUE'] == 'Y' || $view_other_RET['ALL_CONTACTS'][1]['VALUE'] == 'Y') {
                    $functions['PARENTS'] = 'makeParents';
                    if ($view_other_RET['ALL_CONTACTS'][1]['VALUE'] == 'Y') {
                        $extra['columns_after']['PARENTS'] = _('Contacts');
                    } else {
                        $extra['columns_after']['PARENTS'] = _('Guardians');
                    }
                }
            } elseif ($_REQUEST['addr'] || $extra['addr']) {
                $extra['FROM'] = " LEFT OUTER JOIN STUDENTS_JOIN_ADDRESS sam ON (ssm.STUDENT_ID=sam.STUDENT_ID " . $extra['STUDENTS_JOIN_ADDRESS'] . ") LEFT OUTER JOIN ADDRESS a ON (sam.ADDRESS_ID=a.ADDRESS_ID) " . $extra['FROM'];
                $distinct = 'DISTINCT ';
            }
        }
        $extra['SELECT'] .= $select;
    } else {
        if (isset($extra['student_fields']['view'])) {
            if (!$extra['columns_after']) {
                $extra['columns_after'] = array();
            }
            $view_fields_RET = DBGet(DBQuery("SELECT cf.ID,cf.TYPE,cf.TITLE FROM CUSTOM_FIELDS cf WHERE cf.ID IN (" . $extra['student_fields']['view'] . ") ORDER BY cf.SORT_ORDER,cf.TITLE"));
            foreach ($view_fields_RET as $field) {
                $extra['columns_after']['CUSTOM_' . $field['ID']] = $field['TITLE'];
                if ($field['TYPE'] == 'date') {
                    $functions['CUSTOM_' . $field['ID']] = 'ProperDate';
                } elseif ($field['TYPE'] == 'numeric') {
                    $functions['CUSTOM_' . $field['ID']] = 'removeDot00';
                } elseif ($field['TYPE'] == 'codeds') {
                    $functions['CUSTOM_' . $field['ID']] = 'DeCodeds';
                } elseif ($field['TYPE'] == 'exports') {
                    $functions['CUSTOM_' . $field['ID']] = 'DeCodeds';
                }
                $select .= ',s.CUSTOM_' . $field['ID'];
            }
            $extra['SELECT'] .= $select;
        }
        if (!empty($_REQUEST['addr']) || !empty($extra['addr'])) {
            $extra['FROM'] = " LEFT OUTER JOIN STUDENTS_JOIN_ADDRESS sam ON (ssm.STUDENT_ID=sam.STUDENT_ID " . $extra['STUDENTS_JOIN_ADDRESS'] . ") LEFT OUTER JOIN ADDRESS a ON (sam.ADDRESS_ID=a.ADDRESS_ID) " . $extra['FROM'];
            $distinct = 'DISTINCT ';
        }
    }
    switch (User('PROFILE')) {
        case 'admin':
            $sql = 'SELECT ';
            //$sql = 'SELECT '.$distinct;
            if (isset($extra['SELECT_ONLY'])) {
                $sql .= $extra['SELECT_ONLY'];
            } else {
                $sql .= "s.LAST_NAME||', '||s.FIRST_NAME||' '||coalesce(s.MIDDLE_NAME,' ') AS FULL_NAME,";
                $sql .= 's.LAST_NAME,s.FIRST_NAME,s.MIDDLE_NAME,s.STUDENT_ID,ssm.SCHOOL_ID,ssm.SCHOOL_ID AS LIST_SCHOOL_ID,ssm.GRADE_ID ' . $extra['SELECT'];
                if (isset($_REQUEST['include_inactive']) && $_REQUEST['include_inactive'] == 'Y') {
                    $sql .= ',' . db_case(array("(ssm.SYEAR='" . UserSyear() . "' AND ('" . $extra['DATE'] . "'>=ssm.START_DATE AND ('" . $extra['DATE'] . "'<=ssm.END_DATE OR ssm.END_DATE IS NULL)))", 'TRUE', '\'<span style="color:green">' . _('Active') . '</span>\'', '\'<span style="color:red">' . _('Inactive') . '</span>\'')) . ' AS ACTIVE';
                }
            }
            $sql .= " FROM STUDENTS s JOIN STUDENT_ENROLLMENT ssm ON (ssm.STUDENT_ID=s.STUDENT_ID";
            if (isset($_REQUEST['include_inactive']) && $_REQUEST['include_inactive'] == 'Y') {
                //$sql .= " AND ssm.ID=(SELECT max(ID) FROM STUDENT_ENROLLMENT WHERE STUDENT_ID=ssm.STUDENT_ID AND SYEAR<='".UserSyear()."')";
                $sql .= " AND ssm.ID=(SELECT ID FROM STUDENT_ENROLLMENT WHERE STUDENT_ID=ssm.STUDENT_ID AND SYEAR<='" . UserSyear() . "' ORDER BY SYEAR DESC,START_DATE DESC LIMIT 1)";
            } else {
                $sql .= " AND ssm.SYEAR='" . UserSyear() . "' AND ('" . $extra['DATE'] . "'>=ssm.START_DATE AND (ssm.END_DATE IS NULL OR '" . $extra['DATE'] . "'<=ssm.END_DATE))";
            }
            if (UserSchool() && $_REQUEST['_search_all_schools'] != 'Y') {
                $sql .= " AND ssm.SCHOOL_ID='" . UserSchool() . "'";
            } else {
                if (User('SCHOOLS')) {
                    $sql .= " AND ssm.SCHOOL_ID IN (" . mb_substr(str_replace(',', "','", User('SCHOOLS')), 2, -2) . ") ";
                }
                $extra['columns_after']['LIST_SCHOOL_ID'] = 'School';
                $functions['LIST_SCHOOL_ID'] = 'GetSchool';
            }
            $sql .= ")" . $extra['FROM'] . " WHERE TRUE";
            if (empty($extra['SELECT_ONLY']) && isset($_REQUEST['include_inactive']) && $_REQUEST['include_inactive'] == 'Y') {
                $extra['columns_after']['ACTIVE'] = _('Status');
            }
            break;
        case 'teacher':
            $sql = 'SELECT ';
            //$sql = 'SELECT '.$distinct;
            if ($extra['SELECT_ONLY']) {
                $sql .= $extra['SELECT_ONLY'];
            } else {
                $sql .= "s.LAST_NAME||', '||s.FIRST_NAME||' '||coalesce(s.MIDDLE_NAME,' ') AS FULL_NAME,";
                $sql .= 's.LAST_NAME,s.FIRST_NAME,s.MIDDLE_NAME,s.STUDENT_ID,ssm.SCHOOL_ID,ssm.GRADE_ID ' . $extra['SELECT'];
                if ($_REQUEST['include_inactive'] == 'Y') {
                    $sql .= ',' . db_case(array("('" . $extra['DATE'] . "'>=ssm.START_DATE AND (ssm.END_DATE IS NULL OR '" . $extra['DATE'] . "'<=ssm.END_DATE))", 'TRUE', '\'<span style="color:green">' . _('Active') . '</span>\'', '\'<span style="color:red">' . _('Inactive') . '</span>\'')) . ' AS ACTIVE';
                    $sql .= ',' . db_case(array("('" . $extra['DATE'] . "'>=ss.START_DATE AND (ss.END_DATE IS NULL OR '" . $extra['DATE'] . "'<=ss.END_DATE)) AND ss.MARKING_PERIOD_ID IN (" . GetAllMP($extra['MPTable'], $extra['MP']) . ")", 'TRUE', '\'<span style="color:green">' . _('Active') . '</span>\'', '\'<span style="color:red">' . _('Inactive') . '</span>\'')) . ' AS ACTIVE_SCHEDULE';
                }
            }
            $sql .= " FROM STUDENTS s JOIN SCHEDULE ss ON (ss.STUDENT_ID=s.STUDENT_ID AND ss.SYEAR='" . UserSyear() . "'";
            if ($_REQUEST['include_inactive'] == 'Y') {
                $sql .= " AND ss.START_DATE=(SELECT START_DATE FROM SCHEDULE WHERE STUDENT_ID=s.STUDENT_ID AND SYEAR=ss.SYEAR AND COURSE_PERIOD_ID=ss.COURSE_PERIOD_ID ORDER BY START_DATE DESC LIMIT 1)";
            } else {
                $sql .= " AND ss.MARKING_PERIOD_ID IN (" . GetAllMP($extra['MPTable'], $extra['MP']) . ") AND ('" . $extra['DATE'] . "'>=ss.START_DATE AND ('" . $extra['DATE'] . "'<=ss.END_DATE OR ss.END_DATE IS NULL))";
            }
            $sql .= ") JOIN COURSE_PERIODS cp ON (cp.COURSE_PERIOD_ID=ss.COURSE_PERIOD_ID AND " . ($extra['all_courses'] == 'Y' ? "cp.TEACHER_ID='" . User('STAFF_ID') . "'" : "cp.COURSE_PERIOD_ID='" . UserCoursePeriod() . "'") . ")\n\t\t\t\tJOIN STUDENT_ENROLLMENT ssm ON (ssm.STUDENT_ID=s.STUDENT_ID AND ssm.SYEAR=ss.SYEAR AND ssm.SCHOOL_ID='" . UserSchool() . "'";
            if ($_REQUEST['include_inactive'] == 'Y') {
                $sql .= " AND ssm.ID=(SELECT ID FROM STUDENT_ENROLLMENT WHERE STUDENT_ID=ssm.STUDENT_ID AND SYEAR=ssm.SYEAR ORDER BY START_DATE DESC LIMIT 1)";
            } else {
                $sql .= " AND ('" . $extra['DATE'] . "'>=ssm.START_DATE AND (ssm.END_DATE IS NULL OR '" . $extra['DATE'] . "'<=ssm.END_DATE))";
            }
            $sql .= ")" . $extra['FROM'] . " WHERE TRUE";
            if (!$extra['SELECT_ONLY'] && $_REQUEST['include_inactive'] == 'Y') {
                $extra['columns_after']['ACTIVE'] = _('School Status');
                $extra['columns_after']['ACTIVE_SCHEDULE'] = _('Course Status');
            }
            break;
        case 'parent':
        case 'student':
            $sql = 'SELECT ';
            if ($extra['SELECT_ONLY']) {
                $sql .= $extra['SELECT_ONLY'];
            } else {
                $sql .= "s.LAST_NAME||', '||s.FIRST_NAME||' '||coalesce(s.MIDDLE_NAME,' ') AS FULL_NAME,";
                $sql .= 's.LAST_NAME,s.FIRST_NAME,s.MIDDLE_NAME,s.STUDENT_ID,ssm.SCHOOL_ID,ssm.GRADE_ID ' . $extra['SELECT'];
            }
            $sql .= " FROM STUDENTS s JOIN STUDENT_ENROLLMENT ssm ON (ssm.STUDENT_ID=s.STUDENT_ID AND ssm.SYEAR='" . UserSyear() . "' AND ssm.SCHOOL_ID='" . UserSchool() . "'\n\t\t\t\t\tAND ('" . $extra['DATE'] . "'>=ssm.START_DATE AND (ssm.END_DATE IS NULL OR '" . $extra['DATE'] . "'<=ssm.END_DATE)) AND s.STUDENT_ID" . ($extra['ASSOCIATED'] ? " IN (SELECT STUDENT_ID FROM STUDENTS_JOIN_USERS WHERE STAFF_ID='" . $extra['ASSOCIATED'] . "')" : "='" . UserStudentID() . "'");
            $sql .= ")" . $extra['FROM'] . " WHERE TRUE";
            break;
        default:
            exit(_('Error'));
    }
    //$sql = appendSQL($sql,array('NoSearchTerms'=>$extra['NoSearchTerms']));
    $sql .= ' ' . $extra['WHERE'] . ' ';
    if (isset($extra['GROUP'])) {
        $sql .= ' GROUP BY ' . $extra['GROUP'];
    }
    if (!isset($extra['ORDER_BY']) && !isset($extra['SELECT_ONLY'])) {
        $sql .= ' ORDER BY ';
        if (Preferences('SORT') == 'Grade') {
            $sql .= '(SELECT SORT_ORDER FROM SCHOOL_GRADELEVELS WHERE ID=ssm.GRADE_ID),';
        }
        // it would be easier to sort on full_name but postgres sometimes yields strange results
        $sql .= 's.LAST_NAME,s.FIRST_NAME,s.MIDDLE_NAME';
        $sql .= $extra['ORDER'];
    } elseif (isset($extra['ORDER_BY'])) {
        $sql .= ' ORDER BY ' . $extra['ORDER_BY'];
    }
    //modif Francois: bugfix if PDF, dont echo SQL
    if (!isset($_REQUEST['_ROSARIO_PDF']) && 0) {
        //activate only for debug purpose
        echo '<!--' . $sql . '-->';
    }
    return DBGet(DBQuery($sql), $functions, $extra['group']);
}
function GetStuListAttn(&$extra)
{
    global $contacts_RET, $view_other_RET, $_openSIS;
    if ((!$extra['SELECT_ONLY'] || strpos($extra['SELECT_ONLY'], 'GRADE_ID') !== false) && !$extra['functions']['GRADE_ID']) {
        $functions = array('GRADE_ID' => 'GetGrade');
    } else {
        $functions = array();
    }
    if ($extra['functions']) {
        $functions += $extra['functions'];
    }
    if (!$extra['DATE']) {
        $queryMP = UserMP();
        $extra['DATE'] = DBDate();
    } else {
        $queryMP = UserMP();
    }
    if ($_REQUEST['expanded_view'] == 'true') {
        if (!$extra['columns_after']) {
            $extra['columns_after'] = array();
        }
        #############################################################################################
        //Commented as it crashing for Linux due to  Blank Database tables
        #############################################################################################
        $view_address_RET = DBGet(DBQuery('SELECT VALUE FROM program_user_config WHERE PROGRAM=\'StudentFieldsView\' AND TITLE=\'ADDRESS\' AND USER_ID=\'' . User('STAFF_ID') . '\''));
        $view_address_RET = $view_address_RET[1]['VALUE'];
        $view_other_RET = DBGet(DBQuery('SELECT TITLE,VALUE FROM program_user_config WHERE PROGRAM=\'StudentFieldsView\' AND TITLE IN (\'CONTACT_INFO\',\'HOME_PHONE\',\'GUARDIANS\',\'ALL_CONTACTS\') AND USER_ID=\'' . User('STAFF_ID') . '\''), array(), array('TITLE'));
        if (!count($view_fields_RET) && !isset($view_address_RET) && !isset($view_other_RET['CONTACT_INFO'])) {
            $extra['columns_after'] = array('CONTACT_INFO' => '<IMG SRC=assets/down_phone_button.gif border=0>', 'gender' => 'Gender', 'ethnicity' => 'Ethnicity', 'ADDRESS' => 'Mailing Address', 'CITY' => 'City', 'STATE' => 'State', 'ZIPCODE' => 'Zipcode') + $extra['columns_after'];
            $select = ',s.STUDENT_ID AS CONTACT_INFO,s.GENDER,s.ETHNICITY,a.STREET_ADDRESS_1 as ADDRESS,a.CITY,a.STATE,a.ZIPCODE';
            $extra['FROM'] = ' LEFT OUTER JOIN student_address a ON (ssm.STUDENT_ID=a.STUDENT_ID AND a.TYPE=\'Mail\')  ' . $extra['FROM'];
            $functions['CONTACT_INFO'] = 'makeContactInfo';
            // if gender is converted to codeds type
            //$functions['CUSTOM_200000000'] = 'DeCodeds';
            $extra['singular'] = 'Student Address';
            $extra['plural'] = 'Student Addresses';
            $extra2['NoSearchTerms'] = true;
            $extra2['SELECT_ONLY'] = 'ssm.STUDENT_ID,p.STAFF_ID AS PERSON_ID,p.FIRST_NAME,p.LAST_NAME,sjp.RELATIONSHIP as STUDENT_RELATION,p.TITLE,s.PHONE,a.ID AS ADDRESS_ID ';
            $extra2['FROM'] .= ',student_address a LEFT OUTER JOIN students_join_people sjp ON (a.STUDENT_ID=sjp.STUDENT_ID AND (p.CUSTODY=\'Y\' OR sjp.IS_EMERGENCY=\'Y\')) LEFT OUTER JOIN people p ON (p.STAFF_ID=sjp.PERSON_ID) ';
            $extra2['WHERE'] .= ' AND a.STUDENT_ID=sjp.STUDENT_ID AND sjp.STUDENT_ID=ssm.STUDENT_ID ';
            $extra2['ORDER_BY'] .= 'COALESCE(p.CUSTODY,\'N\') DESC';
            $extra2['group'] = array('STUDENT_ID', 'PERSON_ID');
            // EXPANDED VIEW AND ADDR BREAKS THIS QUERY ... SO, TURN 'EM OFF
            if (!$_REQUEST['_openSIS_PDF']) {
                $expanded_view = $_REQUEST['expanded_view'];
                $_REQUEST['expanded_view'] = false;
                $addr = $_REQUEST['addr'];
                unset($_REQUEST['addr']);
                $contacts_RET = GetStuList($extra2);
                $_REQUEST['expanded_view'] = $expanded_view;
                $_REQUEST['addr'] = $addr;
            } else {
                unset($extra2['columns_after']['CONTACT_INFO']);
            }
        } else {
            if ($view_other_RET['CONTACT_INFO'][1]['VALUE'] == 'Y' && !$_REQUEST['_openSIS_PDF']) {
                $select .= ',NULL AS CONTACT_INFO ';
                $extra['columns_after']['CONTACT_INFO'] = '<IMG SRC=assets/down_phone_button.gif border=0>';
                $functions['CONTACT_INFO'] = 'makeContactInfo';
                $extra2 = $extra;
                $extra2['NoSearchTerms'] = true;
                $extra2['SELECT'] = '';
                $extra2['SELECT_ONLY'] = 'ssm.STUDENT_ID,p.STAFF_ID AS PERSON_ID,p.FIRST_NAME,p.LAST_NAME,sjp.RELATIONSHIP AS STUDENT_RELATION,p.TITLE,s.PHONE,a.ID AS ADDRESS_ID,COALESCE(p.CUSTODY,\'N\') ';
                $extra2['FROM'] .= ',student_address a LEFT OUTER JOIN students_join_people sjp ON (a.STUDENT_ID=sjp.STUDENT_ID AND (p.CUSTODY=\'Y\' OR sjp.IS_EMERGENCY=\'Y\')) LEFT OUTER JOIN people p ON (p.STAFF_ID=sjp.PERSON_ID)  ';
                $extra2['WHERE'] .= ' AND a.STUDENT_ID=sjp.STUDENT_ID AND sjp.STUDENT_ID=ssm.STUDENT_ID ';
                $extra2['ORDER_BY'] .= 'COALESCE(p.CUSTODY,\'N\') DESC';
                $extra2['group'] = array('STUDENT_ID', 'PERSON_ID');
                $extra2['functions'] = array();
                $extra2['link'] = array();
                // EXPANDED VIEW AND ADDR BREAKS THIS QUERY ... SO, TURN 'EM OFF
                $expanded_view = $_REQUEST['expanded_view'];
                $_REQUEST['expanded_view'] = false;
                $addr = $_REQUEST['addr'];
                unset($_REQUEST['addr']);
                $contacts_RET = GetStuList($extra2);
                $_REQUEST['expanded_view'] = $expanded_view;
                $_REQUEST['addr'] = $addr;
            }
            foreach ($view_fields_RET as $field) {
                $extra['columns_after']['CUSTOM_' . $field['ID']] = $field['TITLE'];
                if ($field['TYPE'] == 'date') {
                    $functions['CUSTOM_' . $field['ID']] = 'ProperDate';
                } elseif ($field['TYPE'] == 'numeric') {
                    $functions['CUSTOM_' . $field['ID']] = 'removeDot00';
                } elseif ($field['TYPE'] == 'codeds') {
                    $functions['CUSTOM_' . $field['ID']] = 'DeCodeds';
                }
                $select .= ',s.CUSTOM_' . $field['ID'];
            }
            if ($view_address_RET) {
                if ($view_address_RET == 'RESIDENCE') {
                    $extra['FROM'] = ' LEFT OUTER JOIN student_address a ON (ssm.STUDENT_ID=a.STUDENT_ID AND a.TYPE=\'Home Address\')  ' . $extra['FROM'];
                } elseif ($view_address_RET == 'MAILING') {
                    $extra['FROM'] = ' LEFT OUTER JOIN student_address a ON (ssm.STUDENT_ID=a.STUDENT_ID AND a.TYPE=\'Mail\') ' . $extra['FROM'];
                } elseif ($view_address_RET == 'BUS_PICKUP') {
                    $extra['FROM'] = ' LEFT OUTER JOIN student_address a ON (a.STUDENT_ID=a.STUDENT_ID AND a.BUS_PICKUP=\'Y\') ' . $extra['FROM'];
                } else {
                    $extra['FROM'] = ' LEFT OUTER JOIN student_address a ON (a.STUDENT_ID=a.STUDENT_ID AND a.BUS_DROPOFF=\'Y\') ' . $extra['FROM'];
                }
                $extra['columns_after'] += array('ADDRESS' => ucwords(strtolower(str_replace('_', ' ', $view_address_RET))) . ' Address', 'CITY' => 'City', 'STATE' => 'State', 'ZIPCODE' => 'Zipcode');
                $select .= ',a.ID AS ADDRESS_ID,a.STREET_ADDRESS_1 as ADDRESS,a.CITY,a.STATE,a.ZIPCODE,s.PHONE,ssm.STUDENT_ID AS PARENTS';
                $extra['singular'] = 'Student Address';
                $extra['plural'] = 'Student Addresses';
                if ($view_other_RET['HOME_PHONE'][1]['VALUE'] == 'Y') {
                    $functions['PHONE'] = 'makePhone';
                    $extra['columns_after']['PHONE'] = 'Home Phone';
                }
                if ($view_other_RET['GUARDIANS'][1]['VALUE'] == 'Y' || $view_other_RET['ALL_CONTACTS'][1]['VALUE'] == 'Y') {
                    $functions['PARENTS'] = 'makeParents';
                    if ($view_other_RET['ALL_CONTACTS'][1]['VALUE'] == 'Y') {
                        $extra['columns_after']['PARENTS'] = 'Contacts';
                    } else {
                        $extra['columns_after']['PARENTS'] = 'Guardians';
                    }
                }
            } elseif ($_REQUEST['addr'] || $extra['addr']) {
                $extra['FROM'] = ' LEFT OUTER JOIN student_address a ON (ssm.STUDENT_ID=a.STUDENT_ID) ' . $extra['FROM'];
                $distinct = 'DISTINCT ';
            }
        }
        $extra['SELECT'] .= $select;
    } elseif ($_REQUEST['addr'] || $extra['addr']) {
        $extra['FROM'] = ' LEFT OUTER JOIN student_address a ON (ssm.STUDENT_ID=a.STUDENT_ID) ' . $extra['FROM'];
        $distinct = 'DISTINCT ';
    }
    switch (User('PROFILE')) {
        case 'admin':
            $sql = 'SELECT ';
            if ($extra['SELECT_ONLY']) {
                $sql .= $extra['SELECT_ONLY'];
            } else {
                if (Preferences('NAME') == 'Common') {
                    $sql .= 'CONCAT(s.LAST_NAME,\', \',coalesce(s.COMMON_NAME,s.FIRST_NAME)) AS FULL_NAME,';
                } else {
                    $sql .= 'CONCAT(s.LAST_NAME,\', \',s.FIRST_NAME,\' \',COALESCE(s.MIDDLE_NAME,\' \')) AS FULL_NAME,';
                }
                $sql .= 's.LAST_NAME,s.FIRST_NAME,s.MIDDLE_NAME,s.STUDENT_ID,ssm.SCHOOL_ID AS LIST_SCHOOL_ID,ssm.GRADE_ID ' . $extra['SELECT'];
                if ($_REQUEST['include_inactive'] == 'Y') {
                    $sql .= ',' . db_case(array('(ssm.SYEAR=\'' . UserSyear() . '\' AND (ssm.START_DATE IS NOT NULL AND (\'' . date('Y-m-d', strtotime($extra['DATE'])) . '\'<=ssm.END_DATE OR ssm.END_DATE IS NULL)))', 'true', "'<FONT color=green>Active</FONT>'", "'<FONT color=red>Inactive</FONT>'")) . ' AS ACTIVE ';
                }
            }
            $sql .= ' FROM students s,student_enrollment ssm ' . $extra['FROM'] . ' WHERE ssm.STUDENT_ID=s.STUDENT_ID ';
            if ($_REQUEST['include_inactive'] == 'Y') {
                $sql .= ' AND ssm.ID=(SELECT ID FROM student_enrollment WHERE STUDENT_ID=ssm.STUDENT_ID AND SYEAR<=\'' . UserSyear() . '\' ORDER BY START_DATE DESC LIMIT 1)';
            } else {
                $sql .= ' AND ssm.SYEAR=\'' . UserSyear() . '\' AND (ssm.START_DATE IS NOT NULL AND (\'' . date('Y-m-d', strtotime($extra['DATE'])) . '\'<=ssm.END_DATE OR ssm.END_DATE IS NULL)) ';
            }
            if (UserSchool() && $_REQUEST['_search_all_schools'] != 'Y') {
                $sql .= ' AND ssm.SCHOOL_ID=\'' . UserSchool() . '\'';
            } else {
                //
                $sql .= ' AND ssm.SCHOOL_ID IN (' . GetUserSchools(UserID(), true) . ') ';
                $extra['columns_after']['LIST_SCHOOL_ID'] = 'School';
                $functions['LIST_SCHOOL_ID'] = 'GetSchool';
            }
            if (!$extra['SELECT_ONLY'] && $_REQUEST['include_inactive'] == 'Y') {
                $extra['columns_after']['ACTIVE'] = 'Status';
            }
            break;
        case 'teacher':
            $sql = 'SELECT ';
            if ($extra['SELECT_ONLY']) {
                $sql .= $extra['SELECT_ONLY'];
            } else {
                if (Preferences('NAME') == 'Common') {
                    $sql .= 'CONCAT(s.LAST_NAME,\', \',coalesce(s.COMMON_NAME,s.FIRST_NAME)) AS FULL_NAME,';
                } else {
                    $sql .= 'CONCAT(s.LAST_NAME,\', \',s.FIRST_NAME,\' \',COALESCE(s.MIDDLE_NAME,\' \')) AS FULL_NAME,';
                }
                $sql .= 's.LAST_NAME,s.FIRST_NAME,s.MIDDLE_NAME,s.STUDENT_ID,ssm.SCHOOL_ID,ssm.GRADE_ID ' . $extra['SELECT'];
                if ($_REQUEST['include_inactive'] == 'Y') {
                    $sql .= ',' . db_case(array('(ssm.START_DATE IS NOT NULL AND  (\'' . $extra['DATE'] . '\'<=ssm.END_DATE OR ssm.END_DATE IS NULL))', 'true', "'<FONT color=green>Active</FONT>'", "'<FONT color=red>Inactive</FONT>'")) . ' AS ACTIVE';
                    $sql .= ',' . db_case(array('(\'' . $extra['DATE'] . '\'>=ss.START_DATE AND (\'' . $extra['DATE'] . '\'<=ss.END_DATE OR ss.END_DATE IS NULL))', 'true', "'<FONT color=green>Active</FONT>'", "'<FONT color=red>Inactive</FONT>'")) . ' AS ACTIVE_SCHEDULE';
                }
            }
            //
            $sql .= ' FROM students s,course_periods cp,schedule ss,student_enrollment ssm,course_period_var cpv ' . $extra['FROM'] . ' WHERE ssm.STUDENT_ID=s.STUDENT_ID AND cpv.COURSE_PERIOD_ID=cp.COURSE_PERIOD_ID AND cpv.ID="' . $extra['ID'] . '" AND ssm.STUDENT_ID=ss.STUDENT_ID AND ssm.SCHOOL_ID=\'' . UserSchool() . '\' AND ssm.SYEAR=\'' . UserSyear() . '\' AND ssm.SYEAR=cp.SYEAR AND ssm.SYEAR=ss.SYEAR AND ' . db_case(array(User('STAFF_ID'), 'cp.teacher_id', ' cp.teacher_id=' . User('STAFF_ID'), 'cp.secondary_teacher_id', ' cp.secondary_teacher_id=' . User('STAFF_ID'), 'cp.course_period_id IN(SELECT course_period_id from teacher_reassignment tra WHERE cp.course_period_id=tra.course_period_id AND tra.pre_teacher_id=' . User('STAFF_ID') . ')')) . ' AND cp.COURSE_PERIOD_ID=\'' . UserCoursePeriod() . '\' AND cp.COURSE_ID=ss.COURSE_ID AND cp.COURSE_PERIOD_ID=ss.COURSE_PERIOD_ID';
            if ($extra['cpvdate'] != '') {
                $sql .= $extra['cpvdate'];
            }
            if ($_REQUEST['include_inactive'] == 'Y') {
                $sql .= ' AND ssm.ID=(SELECT ID FROM student_enrollment WHERE STUDENT_ID=ssm.STUDENT_ID AND SYEAR=ssm.SYEAR ORDER BY START_DATE DESC LIMIT 1)';
                $sql .= ' AND ss.START_DATE=(SELECT START_DATE FROM schedule WHERE STUDENT_ID=ssm.STUDENT_ID AND SYEAR=ssm.SYEAR AND MARKING_PERIOD_ID IN (' . GetAllMP('', $queryMP) . ') AND COURSE_ID=cp.COURSE_ID AND COURSE_PERIOD_ID=cp.COURSE_PERIOD_ID ORDER BY START_DATE DESC LIMIT 1)';
            } else {
                $sql .= ' AND (ssm.START_DATE IS NOT NULL  AND \'' . $extra['DATE'] . '\'>=ssm.START_DATE AND (\'' . $extra['DATE'] . '\'<=ssm.END_DATE OR ssm.END_DATE IS NULL))';
                $sql .= ' AND (\'' . $extra['DATE'] . '\'>=ss.START_DATE AND (\'' . $extra['DATE'] . '\'<=ss.END_DATE OR ss.END_DATE IS NULL))';
            }
            if (!$extra['SELECT_ONLY'] && $_REQUEST['include_inactive'] == 'Y') {
                $extra['columns_after']['ACTIVE'] = 'School Status';
                $extra['columns_after']['ACTIVE_SCHEDULE'] = 'Course Status';
            }
            break;
        case 'parent':
        case 'student':
            $sql = 'SELECT ';
            if ($extra['SELECT_ONLY']) {
                $sql .= $extra['SELECT_ONLY'];
            } else {
                if (Preferences('NAME') == 'Common') {
                    $sql .= 'CONCAT(s.LAST_NAME,\', \',coalesce(s.COMMON_NAME,s.FIRST_NAME)) AS FULL_NAME,';
                } else {
                    $sql .= 'CONCAT(s.LAST_NAME,\', \',s.FIRST_NAME,\' \',COALESCE(s.MIDDLE_NAME,\' \')) AS FULL_NAME,';
                }
                $sql .= 's.LAST_NAME,s.FIRST_NAME,s.MIDDLE_NAME,s.STUDENT_ID,ssm.SCHOOL_ID,ssm.GRADE_ID ' . $extra['SELECT'];
            }
            $sql .= ' FROM students s,student_enrollment ssm ' . $extra['FROM'] . '
					WHERE ssm.STUDENT_ID=s.STUDENT_ID AND ssm.SYEAR=\'' . UserSyear() . '\' AND ssm.SCHOOL_ID=\'' . UserSchool() . '\' AND (\'' . DBDate() . '\' BETWEEN ssm.START_DATE AND ssm.END_DATE OR (ssm.END_DATE IS NULL AND \'' . DBDate() . '\'>ssm.START_DATE)) AND ssm.STUDENT_ID' . ($extra['ASSOCIATED'] ? ' IN (SELECT STUDENT_ID FROM students_join_users WHERE STAFF_ID=\'' . $extra['ASSOCIATED'] . '\')' : '=\'' . UserStudentID() . '\'');
            break;
        default:
            exit('Error');
    }
    $sql = appendSQL($sql, $extra);
    $sql .= $extra['WHERE'] . ' ';
    $sql .= CustomFields('where');
    if ($extra['GROUP']) {
        $sql .= ' GROUP BY ' . $extra['GROUP'];
    }
    if (!$extra['ORDER_BY'] && !$extra['SELECT_ONLY']) {
        if (Preferences('SORT') == 'Grade') {
            $sql .= ' ORDER BY (SELECT SORT_ORDER FROM school_gradelevels WHERE ID=ssm.GRADE_ID),FULL_NAME';
        } else {
            $sql .= ' ORDER BY FULL_NAME';
        }
        $sql .= $extra['ORDER'];
    } elseif ($extra['ORDER_BY']) {
        $sql .= ' ORDER BY ' . $extra['ORDER_BY'];
    }
    if ($extra['DEBUG'] === true) {
        echo '<!--' . $sql . '-->';
    }
    return DBGet(DBQuery($sql), $functions, $extra['group']);
}
Beispiel #27
0
    unset($_SESSION['_REQUEST_vars']['search_modfunc']);
    */
}
//if($_REQUEST['staff_id']=='new')
if (optional_param('staff_id', '', PARAM_ALPHANUM) == 'new') {
    unset($_SESSION['miss_attn']);
    unset($_SESSION['staff_id']);
    unset($_SESSION['_REQUEST_vars']['staff_id']);
    unset($_SESSION['_REQUEST_vars']['search_modfunc']);
    echo "<script language=javascript>parent.body.location='" . str_replace('&amp;', '&', PreparePHP_SELF($_SESSION['_REQUEST_vars'])) . "';</script>";
}
unset($_REQUEST['modfunc']);
echo "\n<HTML>\n\t<head>\n\t\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" />\n\t\t<meta http-equiv=\"Content-Style-Type\" content=\"text/css\" />\n\t\t<link rel=stylesheet type=\"text/css\" href=\"assets/stylesheet.css\">\n\t\t<script language=\"JavaScript\" type=\"text/javascript\">\n\t\t\n\t\t</script>\n\t\t<title>" . Config('TITLE') . "</title>\n\t</head>\n\t<BODY background=assets/themes/" . Preferences('THEME') . "/bg.jpg leftmargin=6 marginwidth=4 topmargin=0 " . (clean_param($_REQUEST['modcat'], PARAM_NOTAGS) ? "onload=openMenu('" . clean_param($_REQUEST['modcat'], PARAM_NOTAGS) . "');" : '') . ">";
// User Information
echo "<TABLE border=0 cellpadding=0 cellspacing=0 width=100%><TR><TD height=30>";
echo '<A HREF=index.php target=_top>' . DrawPNG('themes/' . Preferences('THEME') . '/logo.png', 'border=0 width=160') . '</A>';
echo "</TD></TR><TR>";
echo "<TD class=BoxContents style='border: inset #C9C9C9 2px; background-image:url(\"assets/bg.gif\")' width=100% valign=top>\n\t<FORM action=Side.php?modfunc=update method=POST>\n\t<INPUT type=hidden name=modcat value='' id=modcat_input>\n\t<b>" . User('NAME') . "</b>\n\t<BR>" . date('l F j, Y') . "\n\t<BR>";
if (User('PROFILE') == 'admin') {
    $schools = substr(str_replace(",", "','", User('SCHOOLS')), 2, -2);
    $QI = DBQuery("SELECT ID,TITLE FROM schools" . ($schools ? " WHERE ID IN ({$schools})" : ''));
    $RET = DBGet($QI);
    //	if(!UserSchool())
    //	{
    //		$_SESSION['UserSchool'] = $RET[1]['ID'];
    //		DBQuery("UPDATE staff SET CURRENT_SCHOOL_ID='".UserSchool()."' WHERE STAFF_ID='".User('STAFF_ID')."'");
    //	}
    echo "<SELECT name=school onChange='document.forms[0].submit();' style='width:150;'>";
    foreach ($RET as $school) {
        echo "<OPTION value={$school['ID']}" . (UserSchool() == $school['ID'] ? ' SELECTED' : '') . ">" . $school['TITLE'] . "</OPTION>";
    }
    $_REQUEST['month_date'] = mb_strtoupper(date('M'));
    $_REQUEST['year_date'] = date('y');
    $date = $_REQUEST['day_date'] . '-' . $_REQUEST['month_date'] . '-' . $_REQUEST['year_date'];
}
if ($_REQUEST['type']) {
    $_SESSION['FSA_type'] = $_REQUEST['type'];
} else {
    $_SESSION['_REQUEST_vars']['type'] = $_REQUEST['type'] = $_SESSION['FSA_type'];
}
if ($_REQUEST['type'] == 'staff') {
    $tabcolor_s = '#DFDFDF';
    $textcolor_s = '#999999';
    $tabcolor_u = Preferences('HEADER');
    $textcolor_u = '#FFFFFF';
} else {
    $tabcolor_s = Preferences('HEADER');
    $textcolor_s = '#FFFFFF';
    $tabcolor_u = '#DFDFDF';
    $textcolor_u = '#999999';
}
$header = '<TABLE class="cellpadding-0 cellspacing-0" style="height:14px;"><TR>';
//modif Francois: remove DrawTab params
$header .= '<TD style="width:10px;"></TD><TD>' . DrawTab(_('Students'), "Modules.php?modname={$_REQUEST['modname']}&day_date={$_REQUEST['day_date']}&month_date={$_REQUEST['month_date']}&year_date={$_REQUEST['year_date']}&type=student") . '</TD>';
$header .= '<TD style="width:10px;"></TD><TD>' . DrawTab(_('Users'), "Modules.php?modname={$_REQUEST['modname']}&day_date={$_REQUEST['day_date']}&month_date={$_REQUEST['month_date']}&year_date={$_REQUEST['year_date']}&type=staff") . '</TD>';
$header .= '<TD style="width:10px;"></TD></TR></TABLE>';
DrawHeader(($_SESSION['FSA_type'] == 'staff' ? _('User') : _('Student')) . ' ' . ProgramTitle(), User('PROFILE') == 'student' ? '' : '<TABLE style="background-color:#ffffff;"><TR><TD>' . $header . '</TD></TR></TABLE>');
if ($_REQUEST['search_modfunc'] == 'list') {
    $PHP_tmp_SELF = PreparePHP_SELF();
    echo '<FORM action="' . $PHP_tmp_SELF . '" method="POST">';
    DrawHeader(PrepareDate($date, '_date') . ' : <INPUT type=submit value=' . _('Go') . '>');
    echo '</FORM>';
Beispiel #29
0
     }
 }
 $AllowUse = DBGet(DBQuery("SELECT MODNAME FROM PROFILE_EXCEPTIONS WHERE PROFILE_ID='" . User('PROFILE_ID') . "' AND CAN_USE='Y'"));
 foreach ($AllowUse as $programs) {
     //if($programs['MODNAME']==$_REQUEST['modname'])
     if ($programs['MODNAME'] == optional_param('modname', '', PARAM_NOTAGS)) {
         $allowed = true;
         break;
     }
 }
 // if(substr($_REQUEST['modname'],0,5)=='misc/')
 if (substr(optional_param('modname', '', PARAM_NOTAGS), 0, 5) == 'misc/') {
     $allowed = true;
 }
 if ($allowed) {
     if (Preferences('SEARCH') != 'Y') {
         $_REQUEST['search_modfunc'] = 'list';
     }
     include 'modules/' . $modname;
 } else {
     if (User('USERNAME')) {
         if ($_SERVER['HTTP_X_FORWARDED_FOR']) {
             $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
         } else {
             $ip = $_SERVER['REMOTE_ADDR'];
         }
         echo "You're not allowed to use this program! This attempted violation has been logged and your IP address was captured.";
         DBQuery("INSERT INTO HACKING_LOG (HOST_NAME,IP_ADDRESS,LOGIN_DATE,VERSION,PHP_SELF,DOCUMENT_ROOT,SCRIPT_NAME,MODNAME,USERNAME) values('{$_SERVER['SERVER_NAME']}','{$ip}','" . date('Y-m-d') . "','{$openSISVersion}','{$_SERVER['PHP_SELF']}','{$_SERVER['DOCUMENT_ROOT']}','{$_SERVER['SCRIPT_NAME']}','{$_REQUEST['modname']}','" . User('USERNAME') . "')");
         Warehouse('footer');
         if ($openSISNotifyAddress) {
             //mail($openSISNotifyAddress,'HACKING ATTEMPT',"INSERT INTO HACKING_LOG (HOST_NAME,IP_ADDRESS,LOGIN_DATE,VERSION,PHP_SELF,DOCUMENT_ROOT,SCRIPT_NAME,MODNAME,USERNAME) values('$_SERVER[SERVER_NAME]','$ip','".date('Y-m-d')."','$openSISVersion','$_SERVER[PHP_SELF]','$_SERVER[DOCUMENT_ROOT]','$_SERVER[SCRIPT_NAME]','$_REQUEST[modname]','".User('USERNAME')."')");
Beispiel #30
0
if ($_REQUEST['modfunc'] == 'search') {
    echo '<BR>';
    PopTable('header', 'Advanced');
    echo "<FORM name=percentform action=Modules.php?modname=" . strip_tags(trim($_REQUEST[modname])) . "&list_by_day=" . strip_tags(trim($_REQUEST[list_by_day])) . "&day_start=" . strip_tags(trim($_REQUEST[day_start])) . "&day_end=" . strip_tags(trim($_REQUEST[day_end])) . "&month_start=" . strip_tags(trim($_REQUEST[month_start])) . "&month_end=" . strip_tags(trim($_REQUEST[month_end])) . "&year_start=" . strip_tags(trim($_REQUEST[year_start])) . "&year_end=" . strip_tags(trim($_REQUEST[year_end])) . " method=POST>";
    echo '<TABLE>';
    Search('general_info', $extra['grades']);
    if (!isset($extra)) {
        $extra = array();
    }
    Widgets('user', $extra);
    if ($extra['search']) {
        echo $extra['search'];
    }
    Search('student_fields', is_array($extra['student_fields']) ? $extra['student_fields'] : array());
    if (User('PROFILE') == 'admin') {
        echo '<CENTER><INPUT type=checkbox name=_search_all_schools value=Y' . (Preferences('DEFAULT_ALL_SCHOOLS') == 'Y' ? ' CHECKED' : '') . '><font color=black>Search All Schools</font></CENTER><BR>';
    }
    echo '<CENTER>' . Buttons('Submit') . '</CENTER>';
    echo '</FORM>';
    PopTable('footer');
}
if (!$_REQUEST['modfunc']) {
    if (!isset($extra)) {
        $extra = array();
    }
    Widgets('user');
    if ($_REQUEST['advanced'] == 'Y') {
        Widgets('all');
    }
    $extra['WHERE'] .= appendSQL('');
    $extra['WHERE'] .= CustomFields('where');