This commit is contained in:
Gerald Simane
2009-06-08 06:37:57 +00:00
parent 158402455f
commit 725e178014
660 changed files with 170054 additions and 169940 deletions
+1973 -1973
View File
File diff suppressed because it is too large Load Diff
+523 -523
View File
File diff suppressed because it is too large Load Diff
+255 -254
View File
@@ -1,254 +1,255 @@
/* ::::: datepicker ::::: */
/* :::: declarations :::: */
/*@IMPORT url("../spinbutton/spinbutton.css");*/
datepicker {-moz-binding: url("datepicker.xml#datepicker");}
datepicker-month {-moz-binding: url("datepicker.xml#datepicker-month");}
datepicker-year {-moz-binding: url("datepicker.xml#datepicker-year");}
datepicker-day {-moz-binding: url("datepicker.xml#datepicker-day");}
datepicker-calendar {-moz-binding: url("datepicker.xml#datepicker-calendar");}
datepicker-view {-moz-binding: url("datepicker.xml#datepicker-view");}
datepicker-button {-moz-binding: url("datepicker.xml#datepicker-button");}
/* :::: public style :::: */
datepicker {
font-family:monospace, cursive, serif, sans-serif;
font-size:12px;
}
/* partie centrale */
datepicker-calendar {
background-color:#E0EAFC;
color:black;
}
/* affichage des mois */
datepicker-month {
color:black;
}
/* affichage des années */
datepicker-year {
color:black;
}
/* afichage des jours */
datepicker-day {
color:black;
}
/* buttons pour revenir au mois courant */
datepicker-button.today {
list-style-image:url(date.png);
/* list-style-image:url(calendar.png); */
}
/* buttons pour changer de mois */
datepicker-button.previous-month {
/* list-style-image:url(chrome://browser/skin/Toolbar-small.png); */
list-style-image:url(navigation.png);
-moz-image-region:rect(0px 16px 16px 0px);
}
datepicker-button.next-month {
/* list-style-image:url(chrome://browser/skin/Toolbar-small.png); */
list-style-image:url(navigation.png);
-moz-image-region:rect(0px 32px 16px 16px);
}
/* jour selectionné */
datepicker-calendar[isyear][ismonth][currentday="1"] datepicker-day[value="1"],
datepicker-calendar[isyear][ismonth][currentday="2"] datepicker-day[value="2"],
datepicker-calendar[isyear][ismonth][currentday="3"] datepicker-day[value="3"],
datepicker-calendar[isyear][ismonth][currentday="4"] datepicker-day[value="4"],
datepicker-calendar[isyear][ismonth][currentday="5"] datepicker-day[value="5"],
datepicker-calendar[isyear][ismonth][currentday="6"] datepicker-day[value="6"],
datepicker-calendar[isyear][ismonth][currentday="7"] datepicker-day[value="7"],
datepicker-calendar[isyear][ismonth][currentday="8"] datepicker-day[value="8"],
datepicker-calendar[isyear][ismonth][currentday="9"] datepicker-day[value="9"],
datepicker-calendar[isyear][ismonth][currentday="10"] datepicker-day[value="10"],
datepicker-calendar[isyear][ismonth][currentday="11"] datepicker-day[value="11"],
datepicker-calendar[isyear][ismonth][currentday="12"] datepicker-day[value="12"],
datepicker-calendar[isyear][ismonth][currentday="13"] datepicker-day[value="13"],
datepicker-calendar[isyear][ismonth][currentday="14"] datepicker-day[value="14"],
datepicker-calendar[isyear][ismonth][currentday="15"] datepicker-day[value="15"],
datepicker-calendar[isyear][ismonth][currentday="16"] datepicker-day[value="16"],
datepicker-calendar[isyear][ismonth][currentday="17"] datepicker-day[value="17"],
datepicker-calendar[isyear][ismonth][currentday="18"] datepicker-day[value="18"],
datepicker-calendar[isyear][ismonth][currentday="19"] datepicker-day[value="19"],
datepicker-calendar[isyear][ismonth][currentday="20"] datepicker-day[value="20"],
datepicker-calendar[isyear][ismonth][currentday="21"] datepicker-day[value="21"],
datepicker-calendar[isyear][ismonth][currentday="22"] datepicker-day[value="22"],
datepicker-calendar[isyear][ismonth][currentday="23"] datepicker-day[value="23"],
datepicker-calendar[isyear][ismonth][currentday="24"] datepicker-day[value="24"],
datepicker-calendar[isyear][ismonth][currentday="25"] datepicker-day[value="25"],
datepicker-calendar[isyear][ismonth][currentday="26"] datepicker-day[value="26"],
datepicker-calendar[isyear][ismonth][currentday="27"] datepicker-day[value="27"],
datepicker-calendar[isyear][ismonth][currentday="28"] datepicker-day[value="28"],
datepicker-calendar[isyear][ismonth][currentday="29"] datepicker-day[value="29"],
datepicker-calendar[isyear][ismonth][currentday="30"] datepicker-day[value="30"],
datepicker-calendar[isyear][ismonth][currentday="31"] datepicker-day[value="31"] {
color:white;
background-color:#005B90;
}
/* survol d'une date */
datepicker-day:hover[value="1"], datepicker-day:hover[value="2"], datepicker-day:hover[value="3"], datepicker-day:hover[value="4"], datepicker-day:hover[value="5"], datepicker-day:hover[value="6"], datepicker-day:hover[value="7"],
datepicker-day:hover[value="8"], datepicker-day:hover[value="9"], datepicker-day:hover[value="10"], datepicker-day:hover[value="11"], datepicker-day:hover[value="12"], datepicker-day:hover[value="13"], datepicker-day:hover[value="14"],
datepicker-day:hover[value="15"], datepicker-day:hover[value="16"], datepicker-day:hover[value="17"], datepicker-day:hover[value="18"], datepicker-day:hover[value="19"], datepicker-day:hover[value="20"], datepicker-day:hover[value="21"],
datepicker-day:hover[value="22"], datepicker-day:hover[value="23"], datepicker-day:hover[value="24"], datepicker-day:hover[value="25"], datepicker-day:hover[value="26"], datepicker-day:hover[value="27"], datepicker-day:hover[value="28"],
datepicker-day:hover[value="29"], datepicker-day:hover[value="30"], datepicker-day:hover[value="31"] {
border:solid 1px lightcoral;
cursor:pointer;
}
/* jour d'aujourd'hui */
datepicker-view[isyear][ismonth][today="1"] datepicker-day[value="1"],
datepicker-view[isyear][ismonth][today="2"] datepicker-day[value="2"],
datepicker-view[isyear][ismonth][today="3"] datepicker-day[value="3"],
datepicker-view[isyear][ismonth][today="4"] datepicker-day[value="4"],
datepicker-view[isyear][ismonth][today="5"] datepicker-day[value="5"],
datepicker-view[isyear][ismonth][today="6"] datepicker-day[value="6"],
datepicker-view[isyear][ismonth][today="7"] datepicker-day[value="7"],
datepicker-view[isyear][ismonth][today="8"] datepicker-day[value="8"],
datepicker-view[isyear][ismonth][today="9"] datepicker-day[value="9"],
datepicker-view[isyear][ismonth][today="10"] datepicker-day[value="10"],
datepicker-view[isyear][ismonth][today="11"] datepicker-day[value="11"],
datepicker-view[isyear][ismonth][today="12"] datepicker-day[value="12"],
datepicker-view[isyear][ismonth][today="13"] datepicker-day[value="13"],
datepicker-view[isyear][ismonth][today="14"] datepicker-day[value="14"],
datepicker-view[isyear][ismonth][today="15"] datepicker-day[value="15"],
datepicker-view[isyear][ismonth][today="16"] datepicker-day[value="16"],
datepicker-view[isyear][ismonth][today="17"] datepicker-day[value="17"],
datepicker-view[isyear][ismonth][today="18"] datepicker-day[value="18"],
datepicker-view[isyear][ismonth][today="19"] datepicker-day[value="19"],
datepicker-view[isyear][ismonth][today="20"] datepicker-day[value="20"],
datepicker-view[isyear][ismonth][today="21"] datepicker-day[value="21"],
datepicker-view[isyear][ismonth][today="22"] datepicker-day[value="22"],
datepicker-view[isyear][ismonth][today="23"] datepicker-day[value="23"],
datepicker-view[isyear][ismonth][today="24"] datepicker-day[value="24"],
datepicker-view[isyear][ismonth][today="25"] datepicker-day[value="25"],
datepicker-view[isyear][ismonth][today="26"] datepicker-day[value="26"],
datepicker-view[isyear][ismonth][today="27"] datepicker-day[value="27"],
datepicker-view[isyear][ismonth][today="28"] datepicker-day[value="28"],
datepicker-view[isyear][ismonth][today="29"] datepicker-day[value="29"],
datepicker-view[isyear][ismonth][today="30"] datepicker-day[value="30"],
datepicker-view[isyear][ismonth][today="31"] datepicker-day[value="31"] {
color:#E85C0B;
}
/* jour d'aujourd'hui selectionné */
datepicker-view[isyear][ismonth][today="1"] datepicker-calendar[isyear][ismonth][currentday="1"] datepicker-day[value="1"],
datepicker-view[isyear][ismonth][today="2"] datepicker-calendar[isyear][ismonth][currentday="2"] datepicker-day[value="2"],
datepicker-view[isyear][ismonth][today="3"] datepicker-calendar[isyear][ismonth][currentday="3"] datepicker-day[value="3"],
datepicker-view[isyear][ismonth][today="4"] datepicker-calendar[isyear][ismonth][currentday="4"] datepicker-day[value="4"],
datepicker-view[isyear][ismonth][today="5"] datepicker-calendar[isyear][ismonth][currentday="5"] datepicker-day[value="5"],
datepicker-view[isyear][ismonth][today="6"] datepicker-calendar[isyear][ismonth][currentday="6"] datepicker-day[value="6"],
datepicker-view[isyear][ismonth][today="7"] datepicker-calendar[isyear][ismonth][currentday="7"] datepicker-day[value="7"],
datepicker-view[isyear][ismonth][today="8"] datepicker-calendar[isyear][ismonth][currentday="8"] datepicker-day[value="8"],
datepicker-view[isyear][ismonth][today="9"] datepicker-calendar[isyear][ismonth][currentday="9"] datepicker-day[value="9"],
datepicker-view[isyear][ismonth][today="10"] datepicker-calendar[isyear][ismonth][currentday="10"] datepicker-day[value="10"],
datepicker-view[isyear][ismonth][today="11"] datepicker-calendar[isyear][ismonth][currentday="11"] datepicker-day[value="11"],
datepicker-view[isyear][ismonth][today="12"] datepicker-calendar[isyear][ismonth][currentday="12"] datepicker-day[value="12"],
datepicker-view[isyear][ismonth][today="13"] datepicker-calendar[isyear][ismonth][currentday="13"] datepicker-day[value="13"],
datepicker-view[isyear][ismonth][today="14"] datepicker-calendar[isyear][ismonth][currentday="14"] datepicker-day[value="14"],
datepicker-view[isyear][ismonth][today="15"] datepicker-calendar[isyear][ismonth][currentday="15"] datepicker-day[value="15"],
datepicker-view[isyear][ismonth][today="16"] datepicker-calendar[isyear][ismonth][currentday="16"] datepicker-day[value="16"],
datepicker-view[isyear][ismonth][today="17"] datepicker-calendar[isyear][ismonth][currentday="17"] datepicker-day[value="17"],
datepicker-view[isyear][ismonth][today="18"] datepicker-calendar[isyear][ismonth][currentday="18"] datepicker-day[value="18"],
datepicker-view[isyear][ismonth][today="19"] datepicker-calendar[isyear][ismonth][currentday="19"] datepicker-day[value="19"],
datepicker-view[isyear][ismonth][today="20"] datepicker-calendar[isyear][ismonth][currentday="20"] datepicker-day[value="20"],
datepicker-view[isyear][ismonth][today="21"] datepicker-calendar[isyear][ismonth][currentday="21"] datepicker-day[value="21"],
datepicker-view[isyear][ismonth][today="22"] datepicker-calendar[isyear][ismonth][currentday="22"] datepicker-day[value="22"],
datepicker-view[isyear][ismonth][today="23"] datepicker-calendar[isyear][ismonth][currentday="23"] datepicker-day[value="23"],
datepicker-view[isyear][ismonth][today="24"] datepicker-calendar[isyear][ismonth][currentday="24"] datepicker-day[value="24"],
datepicker-view[isyear][ismonth][today="25"] datepicker-calendar[isyear][ismonth][currentday="25"] datepicker-day[value="25"],
datepicker-view[isyear][ismonth][today="26"] datepicker-calendar[isyear][ismonth][currentday="26"] datepicker-day[value="26"],
datepicker-view[isyear][ismonth][today="27"] datepicker-calendar[isyear][ismonth][currentday="27"] datepicker-day[value="27"],
datepicker-view[isyear][ismonth][today="28"] datepicker-calendar[isyear][ismonth][currentday="28"] datepicker-day[value="28"],
datepicker-view[isyear][ismonth][today="29"] datepicker-calendar[isyear][ismonth][currentday="29"] datepicker-day[value="29"],
datepicker-view[isyear][ismonth][today="30"] datepicker-calendar[isyear][ismonth][currentday="30"] datepicker-day[value="30"],
datepicker-view[isyear][ismonth][today="31"] datepicker-calendar[isyear][ismonth][currentday="31"] datepicker-day[value="31"] {
color:yellow;
background-color:#005B90;
}
/* moi courant */
datepicker-view[isyear][ismonth] datepicker-month {
font-weight:bold;
}
/* année courante */
datepicker-view[isyear] datepicker-year {
font-weight:bold;
}
/* colonne des dimanches */
datepicker columns column:first-child {
background-color:gainsboro;
border-right:solid gray 1px;
}
/* colonne des lundi */
datepicker columns column:first-child + column {
}
/* colonne des mardis */
datepicker columns column:first-child + column + column {
}
/* colonne des mercredis */
datepicker columns column:first-child + column + column + column {
}
/* colonne des jeudis */
datepicker columns column:first-child + column + column + column + column {
}
/* colonne des vendredi */
datepicker columns column:first-child + column + column + column + column + column {
}
/* colonne des samedis */
datepicker columns column:first-child + column + column + column + column + column + column {
border-left:solid gray 1px;
}
/* affichage des jours */
rows[anonid="datepicker-rows"] row:first-child {
font-weight:bold;
background-color:linen;
color:#005B90;
}
/* :::: private style :::: */
datepicker-button {
background-color:transparent;
-moz-appearance:toolbarbutton;
padding:3px;
-moz-box-pack:center;
-moz-box-align:center;
opacity:1.0 !important;
}
datepicker {
margin:0px;
padding:0px;
text-align:center;
cursor:default;
}
datepicker-month {
text-align:right;
width:65px;
display:none;
}
datepicker-day {
border:solid 1px transparent;
}
rows[anonid="datepicker-rows"] row:first-child {
border-bottom:solid gray 1px;
height:25px;
padding-top:3px;
}
/* mois affiché */
datepicker-view[currentmonth="0"] spacer:first-child + datepicker-month,
datepicker-view[currentmonth="1"] spacer:first-child + datepicker-month + datepicker-month,
datepicker-view[currentmonth="2"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="3"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="4"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="5"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="6"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="7"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="8"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="9"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="10"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="11"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month {
display:-moz-box;
}
@charset "utf-8"
/* ::::: datepicker ::::: */
/* :::: declarations :::: */
/*@IMPORT url("../spinbutton/spinbutton.css");*/
datepicker {-moz-binding: url("datepicker.xml#datepicker");}
datepicker-month {-moz-binding: url("datepicker.xml#datepicker-month");}
datepicker-year {-moz-binding: url("datepicker.xml#datepicker-year");}
datepicker-day {-moz-binding: url("datepicker.xml#datepicker-day");}
datepicker-calendar {-moz-binding: url("datepicker.xml#datepicker-calendar");}
datepicker-view {-moz-binding: url("datepicker.xml#datepicker-view");}
datepicker-button {-moz-binding: url("datepicker.xml#datepicker-button");}
/* :::: public style :::: */
datepicker {
font-family:monospace, cursive, serif, sans-serif;
font-size:12px;
}
/* partie centrale */
datepicker-calendar {
background-color:#E0EAFC;
color:black;
}
/* affichage des mois */
datepicker-month {
color:black;
}
/* affichage des années */
datepicker-year {
color:black;
}
/* afichage des jours */
datepicker-day {
color:black;
}
/* buttons pour revenir au mois courant */
datepicker-button.today {
list-style-image:url(date.png);
/* list-style-image:url(calendar.png); */
}
/* buttons pour changer de mois */
datepicker-button.previous-month {
/* list-style-image:url(chrome://browser/skin/Toolbar-small.png); */
list-style-image:url(navigation.png);
-moz-image-region:rect(0px 16px 16px 0px);
}
datepicker-button.next-month {
/* list-style-image:url(chrome://browser/skin/Toolbar-small.png); */
list-style-image:url(navigation.png);
-moz-image-region:rect(0px 32px 16px 16px);
}
/* jour selectionné */
datepicker-calendar[isyear][ismonth][currentday="1"] datepicker-day[value="1"],
datepicker-calendar[isyear][ismonth][currentday="2"] datepicker-day[value="2"],
datepicker-calendar[isyear][ismonth][currentday="3"] datepicker-day[value="3"],
datepicker-calendar[isyear][ismonth][currentday="4"] datepicker-day[value="4"],
datepicker-calendar[isyear][ismonth][currentday="5"] datepicker-day[value="5"],
datepicker-calendar[isyear][ismonth][currentday="6"] datepicker-day[value="6"],
datepicker-calendar[isyear][ismonth][currentday="7"] datepicker-day[value="7"],
datepicker-calendar[isyear][ismonth][currentday="8"] datepicker-day[value="8"],
datepicker-calendar[isyear][ismonth][currentday="9"] datepicker-day[value="9"],
datepicker-calendar[isyear][ismonth][currentday="10"] datepicker-day[value="10"],
datepicker-calendar[isyear][ismonth][currentday="11"] datepicker-day[value="11"],
datepicker-calendar[isyear][ismonth][currentday="12"] datepicker-day[value="12"],
datepicker-calendar[isyear][ismonth][currentday="13"] datepicker-day[value="13"],
datepicker-calendar[isyear][ismonth][currentday="14"] datepicker-day[value="14"],
datepicker-calendar[isyear][ismonth][currentday="15"] datepicker-day[value="15"],
datepicker-calendar[isyear][ismonth][currentday="16"] datepicker-day[value="16"],
datepicker-calendar[isyear][ismonth][currentday="17"] datepicker-day[value="17"],
datepicker-calendar[isyear][ismonth][currentday="18"] datepicker-day[value="18"],
datepicker-calendar[isyear][ismonth][currentday="19"] datepicker-day[value="19"],
datepicker-calendar[isyear][ismonth][currentday="20"] datepicker-day[value="20"],
datepicker-calendar[isyear][ismonth][currentday="21"] datepicker-day[value="21"],
datepicker-calendar[isyear][ismonth][currentday="22"] datepicker-day[value="22"],
datepicker-calendar[isyear][ismonth][currentday="23"] datepicker-day[value="23"],
datepicker-calendar[isyear][ismonth][currentday="24"] datepicker-day[value="24"],
datepicker-calendar[isyear][ismonth][currentday="25"] datepicker-day[value="25"],
datepicker-calendar[isyear][ismonth][currentday="26"] datepicker-day[value="26"],
datepicker-calendar[isyear][ismonth][currentday="27"] datepicker-day[value="27"],
datepicker-calendar[isyear][ismonth][currentday="28"] datepicker-day[value="28"],
datepicker-calendar[isyear][ismonth][currentday="29"] datepicker-day[value="29"],
datepicker-calendar[isyear][ismonth][currentday="30"] datepicker-day[value="30"],
datepicker-calendar[isyear][ismonth][currentday="31"] datepicker-day[value="31"] {
color:white;
background-color:#005B90;
}
/* survol d'une date */
datepicker-day:hover[value="1"], datepicker-day:hover[value="2"], datepicker-day:hover[value="3"], datepicker-day:hover[value="4"], datepicker-day:hover[value="5"], datepicker-day:hover[value="6"], datepicker-day:hover[value="7"],
datepicker-day:hover[value="8"], datepicker-day:hover[value="9"], datepicker-day:hover[value="10"], datepicker-day:hover[value="11"], datepicker-day:hover[value="12"], datepicker-day:hover[value="13"], datepicker-day:hover[value="14"],
datepicker-day:hover[value="15"], datepicker-day:hover[value="16"], datepicker-day:hover[value="17"], datepicker-day:hover[value="18"], datepicker-day:hover[value="19"], datepicker-day:hover[value="20"], datepicker-day:hover[value="21"],
datepicker-day:hover[value="22"], datepicker-day:hover[value="23"], datepicker-day:hover[value="24"], datepicker-day:hover[value="25"], datepicker-day:hover[value="26"], datepicker-day:hover[value="27"], datepicker-day:hover[value="28"],
datepicker-day:hover[value="29"], datepicker-day:hover[value="30"], datepicker-day:hover[value="31"] {
border:solid 1px lightcoral;
cursor:pointer;
}
/* jour d'aujourd'hui */
datepicker-view[isyear][ismonth][today="1"] datepicker-day[value="1"],
datepicker-view[isyear][ismonth][today="2"] datepicker-day[value="2"],
datepicker-view[isyear][ismonth][today="3"] datepicker-day[value="3"],
datepicker-view[isyear][ismonth][today="4"] datepicker-day[value="4"],
datepicker-view[isyear][ismonth][today="5"] datepicker-day[value="5"],
datepicker-view[isyear][ismonth][today="6"] datepicker-day[value="6"],
datepicker-view[isyear][ismonth][today="7"] datepicker-day[value="7"],
datepicker-view[isyear][ismonth][today="8"] datepicker-day[value="8"],
datepicker-view[isyear][ismonth][today="9"] datepicker-day[value="9"],
datepicker-view[isyear][ismonth][today="10"] datepicker-day[value="10"],
datepicker-view[isyear][ismonth][today="11"] datepicker-day[value="11"],
datepicker-view[isyear][ismonth][today="12"] datepicker-day[value="12"],
datepicker-view[isyear][ismonth][today="13"] datepicker-day[value="13"],
datepicker-view[isyear][ismonth][today="14"] datepicker-day[value="14"],
datepicker-view[isyear][ismonth][today="15"] datepicker-day[value="15"],
datepicker-view[isyear][ismonth][today="16"] datepicker-day[value="16"],
datepicker-view[isyear][ismonth][today="17"] datepicker-day[value="17"],
datepicker-view[isyear][ismonth][today="18"] datepicker-day[value="18"],
datepicker-view[isyear][ismonth][today="19"] datepicker-day[value="19"],
datepicker-view[isyear][ismonth][today="20"] datepicker-day[value="20"],
datepicker-view[isyear][ismonth][today="21"] datepicker-day[value="21"],
datepicker-view[isyear][ismonth][today="22"] datepicker-day[value="22"],
datepicker-view[isyear][ismonth][today="23"] datepicker-day[value="23"],
datepicker-view[isyear][ismonth][today="24"] datepicker-day[value="24"],
datepicker-view[isyear][ismonth][today="25"] datepicker-day[value="25"],
datepicker-view[isyear][ismonth][today="26"] datepicker-day[value="26"],
datepicker-view[isyear][ismonth][today="27"] datepicker-day[value="27"],
datepicker-view[isyear][ismonth][today="28"] datepicker-day[value="28"],
datepicker-view[isyear][ismonth][today="29"] datepicker-day[value="29"],
datepicker-view[isyear][ismonth][today="30"] datepicker-day[value="30"],
datepicker-view[isyear][ismonth][today="31"] datepicker-day[value="31"] {
color:#E85C0B;
}
/* jour d'aujourd'hui selectionné */
datepicker-view[isyear][ismonth][today="1"] datepicker-calendar[isyear][ismonth][currentday="1"] datepicker-day[value="1"],
datepicker-view[isyear][ismonth][today="2"] datepicker-calendar[isyear][ismonth][currentday="2"] datepicker-day[value="2"],
datepicker-view[isyear][ismonth][today="3"] datepicker-calendar[isyear][ismonth][currentday="3"] datepicker-day[value="3"],
datepicker-view[isyear][ismonth][today="4"] datepicker-calendar[isyear][ismonth][currentday="4"] datepicker-day[value="4"],
datepicker-view[isyear][ismonth][today="5"] datepicker-calendar[isyear][ismonth][currentday="5"] datepicker-day[value="5"],
datepicker-view[isyear][ismonth][today="6"] datepicker-calendar[isyear][ismonth][currentday="6"] datepicker-day[value="6"],
datepicker-view[isyear][ismonth][today="7"] datepicker-calendar[isyear][ismonth][currentday="7"] datepicker-day[value="7"],
datepicker-view[isyear][ismonth][today="8"] datepicker-calendar[isyear][ismonth][currentday="8"] datepicker-day[value="8"],
datepicker-view[isyear][ismonth][today="9"] datepicker-calendar[isyear][ismonth][currentday="9"] datepicker-day[value="9"],
datepicker-view[isyear][ismonth][today="10"] datepicker-calendar[isyear][ismonth][currentday="10"] datepicker-day[value="10"],
datepicker-view[isyear][ismonth][today="11"] datepicker-calendar[isyear][ismonth][currentday="11"] datepicker-day[value="11"],
datepicker-view[isyear][ismonth][today="12"] datepicker-calendar[isyear][ismonth][currentday="12"] datepicker-day[value="12"],
datepicker-view[isyear][ismonth][today="13"] datepicker-calendar[isyear][ismonth][currentday="13"] datepicker-day[value="13"],
datepicker-view[isyear][ismonth][today="14"] datepicker-calendar[isyear][ismonth][currentday="14"] datepicker-day[value="14"],
datepicker-view[isyear][ismonth][today="15"] datepicker-calendar[isyear][ismonth][currentday="15"] datepicker-day[value="15"],
datepicker-view[isyear][ismonth][today="16"] datepicker-calendar[isyear][ismonth][currentday="16"] datepicker-day[value="16"],
datepicker-view[isyear][ismonth][today="17"] datepicker-calendar[isyear][ismonth][currentday="17"] datepicker-day[value="17"],
datepicker-view[isyear][ismonth][today="18"] datepicker-calendar[isyear][ismonth][currentday="18"] datepicker-day[value="18"],
datepicker-view[isyear][ismonth][today="19"] datepicker-calendar[isyear][ismonth][currentday="19"] datepicker-day[value="19"],
datepicker-view[isyear][ismonth][today="20"] datepicker-calendar[isyear][ismonth][currentday="20"] datepicker-day[value="20"],
datepicker-view[isyear][ismonth][today="21"] datepicker-calendar[isyear][ismonth][currentday="21"] datepicker-day[value="21"],
datepicker-view[isyear][ismonth][today="22"] datepicker-calendar[isyear][ismonth][currentday="22"] datepicker-day[value="22"],
datepicker-view[isyear][ismonth][today="23"] datepicker-calendar[isyear][ismonth][currentday="23"] datepicker-day[value="23"],
datepicker-view[isyear][ismonth][today="24"] datepicker-calendar[isyear][ismonth][currentday="24"] datepicker-day[value="24"],
datepicker-view[isyear][ismonth][today="25"] datepicker-calendar[isyear][ismonth][currentday="25"] datepicker-day[value="25"],
datepicker-view[isyear][ismonth][today="26"] datepicker-calendar[isyear][ismonth][currentday="26"] datepicker-day[value="26"],
datepicker-view[isyear][ismonth][today="27"] datepicker-calendar[isyear][ismonth][currentday="27"] datepicker-day[value="27"],
datepicker-view[isyear][ismonth][today="28"] datepicker-calendar[isyear][ismonth][currentday="28"] datepicker-day[value="28"],
datepicker-view[isyear][ismonth][today="29"] datepicker-calendar[isyear][ismonth][currentday="29"] datepicker-day[value="29"],
datepicker-view[isyear][ismonth][today="30"] datepicker-calendar[isyear][ismonth][currentday="30"] datepicker-day[value="30"],
datepicker-view[isyear][ismonth][today="31"] datepicker-calendar[isyear][ismonth][currentday="31"] datepicker-day[value="31"] {
color:yellow;
background-color:#005B90;
}
/* moi courant */
datepicker-view[isyear][ismonth] datepicker-month {
font-weight:bold;
}
/* année courante */
datepicker-view[isyear] datepicker-year {
font-weight:bold;
}
/* colonne des dimanches */
datepicker columns column:first-child {
background-color:gainsboro;
border-right:solid gray 1px;
}
/* colonne des lundi */
datepicker columns column:first-child + column {
}
/* colonne des mardis */
datepicker columns column:first-child + column + column {
}
/* colonne des mercredis */
datepicker columns column:first-child + column + column + column {
}
/* colonne des jeudis */
datepicker columns column:first-child + column + column + column + column {
}
/* colonne des vendredi */
datepicker columns column:first-child + column + column + column + column + column {
}
/* colonne des samedis */
datepicker columns column:first-child + column + column + column + column + column + column {
border-left:solid gray 1px;
}
/* affichage des jours */
rows[anonid="datepicker-rows"] row:first-child {
font-weight:bold;
background-color:linen;
color:#005B90;
}
/* :::: private style :::: */
datepicker-button {
background-color:transparent;
-moz-appearance:toolbarbutton;
padding:3px;
-moz-box-pack:center;
-moz-box-align:center;
opacity:1.0 !important;
}
datepicker {
margin:0px;
padding:0px;
text-align:center;
cursor:default;
}
datepicker-month {
text-align:right;
width:65px;
display:none;
}
datepicker-day {
border:solid 1px transparent;
}
rows[anonid="datepicker-rows"] row:first-child {
border-bottom:solid gray 1px;
height:25px;
padding-top:3px;
}
/* mois affiché */
datepicker-view[currentmonth="0"] spacer:first-child + datepicker-month,
datepicker-view[currentmonth="1"] spacer:first-child + datepicker-month + datepicker-month,
datepicker-view[currentmonth="2"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="3"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="4"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="5"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="6"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="7"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="8"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="9"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="10"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month,
datepicker-view[currentmonth="11"] spacer:first-child + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month + datepicker-month {
display:-moz-box;
}
+144 -144
View File
@@ -1,144 +1,144 @@
<?php
include("../../vilesci/config.inc.php");
?>
/**
* Wenn einer der Tabs angeklickt wird wird der zugehoerige Tab
* im anderen Overlay auch geaendert
*/
function tabchange(select)
{
if(select=='lehreinheiten') //Auswahl des Lehreinheiten Tabs
{
document.getElementById('tab-mitarbeiter').selected=false;
document.getElementById('tab-mitarbeiter1').selected=false;
document.getElementById('tab-lehreinheiten').selected=true;
document.getElementById('tab-verband').selected=true;
document.getElementById('tabpanels-main').selectedIndex=1;
document.getElementById('tabpanels-left').selectedIndex=1;
}
else if(select=='mitarbeiter') //Auswahl des Mitarbeiter Tabs
{
document.getElementById('tab-lehreinheiten').selected=false;
document.getElementById('tab-verband').selected=false;
document.getElementById('tab-mitarbeiter').selected=true;
document.getElementById('tab-mitarbeiter1').selected=true;
document.getElementById('tabpanels-main').selectedIndex=0;
document.getElementById('tabpanels-left').selectedIndex=0;
}
}
/**
* Beim schliessen des Fensters wird ueberprueft ob Daten geaendert und noch
* nicht gespeichert wurden.
*/
function closeWindow()
{
//Wenn Daten geaendert wurden
if(treeMitarbeiterDetailChanged)
{
if(confirm("Wollen Sie die geänderten Daten speichern?"))
if(!saveMitarbeiter())
{
//Falls beim Speichern ein Fehler auftritt bleibt das Fenster offen!
return false;
}
else
window.close();
else
window.close();
}
else
window.close();
}
/**
* Wenn das Fenster Fertig geladen ist
*/
function onLoad()
{
//rebuild Listener setzen
document.getElementById('tree-liste-mitarbeiter').builder.addListener(treemenurebuildobserve);
//Eingabefelder deaktivieren
SetMitarbeiterDetailAktiv(false);
//studiengangsleiter als Default setzen
document.getElementById('tree-menu-mitarbeiter1').view.selection.select(6);
}
/**
* Aenderung des Studiensemesters
*/
function studiensemesterChange()
{
var items = document.getElementsByTagName('menuitem');
var stsem='';
//Markiertes Studiensemester holen
for(i in items)
{
if(items[i].id=='menu-properies-studiensemester-name' && items[i].getAttribute("checked")=='true')
stsem = items[i].label;
}
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// Request absetzen
var httpRequest = new XMLHttpRequest();
var url = "<?php echo APP_ROOT; ?>rdf/fas/db_dml.rdf.php";
httpRequest.open("POST", url, false, '','');
httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
var param = "type=variablechange";
param = param + "&stsem="+stsem;
//Parameter schicken
httpRequest.send(param);
// Bei status 4 ist sendung Ok
switch(httpRequest.readyState)
{
case 1,2,3: alert('Bad Ready State: '+httpRequest.status);
return false;
break;
case 4: if(httpRequest.status !=200)
{
alert('The server respond with a bad status code: '+httpRequest.status);
return false;
}
else
{
var response = httpRequest.responseText;
}
break;
}
// Returnwerte aus RDF abfragen
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/dbdml');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var subject = rdfService.GetResource("http://www.technikum-wien.at/dbdml/0");
var predicateNS = "http://www.technikum-wien.at/dbdml/rdf";
var dbdml_return = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#return" ));
var dbdml_errormsg = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#errormsg" ));
if(dbdml_return=='true')
{
//Statusbar setzen
setStatusBarText("Studiensemester erfolgreich geändert");
document.getElementById("tree-liste-funktionen").builder.refresh();
document.getElementById("statusbarpanel-semester").label = stsem;
MitarbeiterDetailStudiensemester_id = dbdml_errormsg;
}
else
{
alert("Fehler beim Speichern der Daten: "+dbdml_errormsg);
}
return true;
}
<?php
include("../../vilesci/config.inc.php");
?>
/**
* Wenn einer der Tabs angeklickt wird wird der zugehoerige Tab
* im anderen Overlay auch geaendert
*/
function tabchange(select)
{
if(select=='lehreinheiten') //Auswahl des Lehreinheiten Tabs
{
document.getElementById('tab-mitarbeiter').selected=false;
document.getElementById('tab-mitarbeiter1').selected=false;
document.getElementById('tab-lehreinheiten').selected=true;
document.getElementById('tab-verband').selected=true;
document.getElementById('tabpanels-main').selectedIndex=1;
document.getElementById('tabpanels-left').selectedIndex=1;
}
else if(select=='mitarbeiter') //Auswahl des Mitarbeiter Tabs
{
document.getElementById('tab-lehreinheiten').selected=false;
document.getElementById('tab-verband').selected=false;
document.getElementById('tab-mitarbeiter').selected=true;
document.getElementById('tab-mitarbeiter1').selected=true;
document.getElementById('tabpanels-main').selectedIndex=0;
document.getElementById('tabpanels-left').selectedIndex=0;
}
}
/**
* Beim schliessen des Fensters wird ueberprueft ob Daten geaendert und noch
* nicht gespeichert wurden.
*/
function closeWindow()
{
//Wenn Daten geaendert wurden
if(treeMitarbeiterDetailChanged)
{
if(confirm("Wollen Sie die geänderten Daten speichern?"))
if(!saveMitarbeiter())
{
//Falls beim Speichern ein Fehler auftritt bleibt das Fenster offen!
return false;
}
else
window.close();
else
window.close();
}
else
window.close();
}
/**
* Wenn das Fenster Fertig geladen ist
*/
function onLoad()
{
//rebuild Listener setzen
document.getElementById('tree-liste-mitarbeiter').builder.addListener(treemenurebuildobserve);
//Eingabefelder deaktivieren
SetMitarbeiterDetailAktiv(false);
//studiengangsleiter als Default setzen
document.getElementById('tree-menu-mitarbeiter1').view.selection.select(6);
}
/**
* Aenderung des Studiensemesters
*/
function studiensemesterChange()
{
var items = document.getElementsByTagName('menuitem');
var stsem='';
//Markiertes Studiensemester holen
for(i in items)
{
if(items[i].id=='menu-properies-studiensemester-name' && items[i].getAttribute("checked")=='true')
stsem = items[i].label;
}
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
// Request absetzen
var httpRequest = new XMLHttpRequest();
var url = "<?php echo APP_ROOT; ?>rdf/fas/db_dml.rdf.php";
httpRequest.open("POST", url, false, '','');
httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
var param = "type=variablechange";
param = param + "&stsem="+stsem;
//Parameter schicken
httpRequest.send(param);
// Bei status 4 ist sendung Ok
switch(httpRequest.readyState)
{
case 1,2,3: alert('Bad Ready State: '+httpRequest.status);
return false;
break;
case 4: if(httpRequest.status !=200)
{
alert('The server respond with a bad status code: '+httpRequest.status);
return false;
}
else
{
var response = httpRequest.responseText;
}
break;
}
// Returnwerte aus RDF abfragen
var dsource=parseRDFString(response, 'http://www.technikum-wien.at/dbdml');
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var subject = rdfService.GetResource("http://www.technikum-wien.at/dbdml/0");
var predicateNS = "http://www.technikum-wien.at/dbdml/rdf";
var dbdml_return = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#return" ));
var dbdml_errormsg = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#errormsg" ));
if(dbdml_return=='true')
{
//Statusbar setzen
setStatusBarText("Studiensemester erfolgreich geändert");
document.getElementById("tree-liste-funktionen").builder.refresh();
document.getElementById("statusbarpanel-semester").label = stsem;
MitarbeiterDetailStudiensemester_id = dbdml_errormsg;
}
else
{
alert("Fehler beim Speichern der Daten: "+dbdml_errormsg);
}
return true;
}
+299 -299
View File
@@ -1,300 +1,300 @@
<?php
include('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/fas/functions.inc.php');
require_once('../../include/fas/benutzer.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING_FAS))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
if (!$conn_vilesci = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$user = get_uid();
//Studiensemester_id holen
$benutzer = new benutzer($conn_vilesci);
$benutzer->loadVariables($user);
$stsem = $benutzer->variable->semester_aktuell;
$stsem_id = getStudiensemesterIdFromName($conn, $stsem);
echo "var studiensemester_id=".$stsem_id.";";
?>
var sink;
var MenuMitarbeiterAuswahl=0;
var treemenuobservedata='';
/**
* Observer der aufgerufen wird wenn Refresh des Funktionen-Trees
* fertig ausgefuehrt wurde.
*/
var treefunktionenobserve = {
onBeginLoad: function(aSink)
{
/* Statusbar setzen */
setStatusBarText('Loading ...');
/* Progressmeter anzeigen */
document.getElementById('statusbarpanel-progressmeter').hidden=false;
},
onInterrupt: function(aSink) { },
onResume: function(aSink) { },
onEndLoad: function(aSink)
{
//debug('onEndLoad Funktionen');
/* Statusbar leeren */
setStatusBarText('');
/* Progressmeter verstecken */
document.getElementById('statusbarpanel-progressmeter').hidden=true;
/* Mitarbeiter Value Changed zuruecksetzen und Speichern Button deaktivieren */
// MitarbeiterDetailRestore();
//debug('Starting Rebuild');
document.getElementById('tree-liste-funktionen').builder.rebuild();
},
onError: function(aSink, aStatus, aErrorMsg)
{
alert('Bei der Datenuebertragung ist ein Fehler Aufgetreten. Bitte Versuchen Sie es erneut.');
}
};
/**
* Observer der aufgerufen wird wenn Refresh des Mitarbeiter-Trees
* fertig ausgefuehrt wurde.
*/
var treemenuobserve = {
onBeginLoad: function(aSink)
{
/* Statusbar setzen */
setStatusBarText('Loading ...');
/* Progressmeter anzeigen */
document.getElementById('statusbarpanel-progressmeter').hidden=false;
},
onInterrupt: function(aSink) { },
onResume: function(aSink) { },
onEndLoad: function(aSink)
{
//debug('onEndLoad');
/* Statusbar leeren */
setStatusBarText('');
/* Progressmeter verstecken */
document.getElementById('statusbarpanel-progressmeter').hidden=true;
/* Mitarbeiter Value Changed zuruecksetzen und Speichern Button deaktivieren */
MitarbeiterDetailRestore();
document.getElementById('tree-liste-mitarbeiter').builder.rebuild();
},
onError: function(aSink, aStatus, aErrorMsg)
{
alert('Bei der Datenuebertragung ist ein Fehler Aufgetreten. Bitte Versuchen Sie es erneut.');
}
};
/**
* Observer der aufgerufen wird wenn Rebuild fertig abgearbeitet wurde
* (Funktioniert mit Moz 1.7.13 nicht richtig -> Seamonkey 1.0.2 funktioniert)
*/
var treemenurebuildobserve = {
willRebuild: function(aSink) { },
didRebuild: function(aSink)
{
//debug('didRebuild:'+treemenuobservedata);
//wenn treemenuobservedata = refresheintragmerken dann wird der Mitarbeiter wieder markiert
if(treemenuobservedata=='refresheintragmerken')
MitarbeiterSelectMitarbeiter();
treemenuobservedata='';
treeMitarbeiterReload=true;
}
}
/**
* Gibt eine Message auf die Javascript Console aus
*/
function debug(msg)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
.getService(Components.interfaces.nsIConsoleService);
consoleService.logStringMessage(msg);
}
/**
* Beim Auswaehlen eines Mitarbeiter-Filters werden die Mitarbeiter
* die diesem Filter entsprechen geladen
*/
function onMenuMitarbeiterSelect(id)
{
//Falls Daten geaendert wurden aber noch nicht gespeichert
if(treeMitarbeiterDetailChanged)
{
if(confirm("Wollen Sie die geänderten Daten speichern?"))
saveMitarbeiter();
else
treeMitarbeiterDetailChanged=false;
}
var tree=document.getElementById(id);
var content=document.getElementById('tree-liste-mitarbeiter');
var col = tree.columns ? tree.columns["tree-menu-mitarbeiter-col-filter"] : "tree-menu-mitarbeiter-col-filter";
var filter=tree.view.getCellText(tree.currentIndex,col);
var url = "<?php echo APP_ROOT; ?>rdf/fas/mitarbeiter.rdf.php";
var attributes="?type=unknown&leerzeichencodierung=true";
if(filter=="")
filter="Studiengangsleiter";
if (filter=="Studiengangsleiter")
{
attributes+="&stgl=true";
MenuMitarbeiterAuswahl=0;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="Fachbereichsleiter")
{
attributes+="&fbl=true";
MenuMitarbeiterAuswahl=1;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="Alle")
{
attributes+="&alle=true";
MenuMitarbeiterAuswahl=2;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="Aktive")
{
attributes+="&aktiv=true";
MenuMitarbeiterAuswahl=3;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="FixAngestellte")
{
attributes+="&fix=true&aktiv=true";
MenuMitarbeiterAuswahl=4;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="FixAngestellteAlle")
{
attributes+="&fix=true";
MenuMitarbeiterAuswahl=5;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="Inaktive")
{
attributes+="&aktiv=false";
MenuMitarbeiterAuswahl=6;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="Karenziert")
{
attributes+="&karenziert=true";
MenuMitarbeiterAuswahl=7;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="Ausgeschieden")
{
attributes+="&ausgeschieden=true";
MenuMitarbeiterAuswahl=8;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="FreiAngestellte")
{
attributes+="&fix=false&aktiv=true";
MenuMitarbeiterAuswahl=9;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="FreiAngestellteAlle")
{
attributes+="&fix=false";
MenuMitarbeiterAuswahl=10;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
//Timestamp anhaengen da beim Laden von Zwischengespeicherten Dateien kein
//Observer Event ausgeloest wird.
url+=attributes+'&'+gettimestamp();
treeMitarbeiterReload=false;
//Mitarbeiter Detail Felder deaktivieren
SetMitarbeiterDetailAktiv(false);
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//Alte Datasources loeschen
var oldDatasources = content.database.GetDataSources();
while(oldDatasources.hasMoreElements())
content.database.RemoveDataSource(oldDatasources.getNext());
//Neue Datasource setzen
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var newDs = rdfService.GetDataSource(url);
content.database.AddDataSource(newDs);
//Sink Observer anhaengen
sink = newDs.QueryInterface(Components.interfaces.nsIRDFXMLSink);
sink.addXMLSinkObserver(treemenuobserve);
}
/**
* Bei Auswahl des Verbandes wird lehreinheiten.rdf
* fuer die zugehoerige Gruppe/Studiengang geladen
*/
function onMenuVerbandSelect()
{
tree = document.getElementById('tree-verband');
//Studiengang, Gruppe und Ausbildungssemester holen
var col = tree.columns ? tree.columns["tree-verband-studiengang_id"] : "tree-verband-studiengang_id";
var studiengang_id=tree.view.getCellText(tree.currentIndex,col);
col = tree.columns ? tree.columns["tree-verband-gruppe_id"] : "tree-verband-gruppe_id";
var gruppe_id=tree.view.getCellText(tree.currentIndex,col);
col = tree.columns ? tree.columns["tree-verband-ausbildungssemester_id"] : "tree-verband-ausbildungssemester_id";
var ausbildungssemester_id=tree.view.getCellText(tree.currentIndex,col);
//Tree fuellen
lehreinheitentree = document.getElementById('tree-liste-lehreinheiten');
if(gruppe_id==0)
url = '<?php echo APP_ROOT; ?>rdf/fas/lehreinheiten.rdf.php?studiengang_id='+studiengang_id;
else
url = '<?php echo APP_ROOT; ?>rdf/fas/lehreinheiten.rdf.php?gruppe_id='+gruppe_id;
lehreinheitentree.setAttribute('datasources',url);
document.getElementById('textbox-lehreinheiten-detail-studiengang').value=studiengang_id;
document.getElementById('textbox-lehreinheiten-ausbildungssemester_id').value=ausbildungssemester_id;
}
/**
* Parst einen RDF String
*/
function parseRDFString(str, url)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var memoryDS = Components.classes["@mozilla.org/rdf/datasource;1?name=in-memory-datasource"].createInstance(Components.interfaces.nsIRDFDataSource);
var ios=Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
baseUri=ios.newURI(url,null,null);
var parser=Components.classes["@mozilla.org/rdf/xml-parser;1"].createInstance(Components.interfaces.nsIRDFXMLParser);
parser.parseString(memoryDS,baseUri,str);
return memoryDS;
}
/**
* Liefert Wert aus Datasource
*/
function getTargetHelper(dsource,subj,predi)
{
if (dsource.hasArcOut(subj, predi))
{
var target = dsource.GetTarget(subj, predi, true);
if (target instanceof Components.interfaces.nsIRDFLiteral)
return target.Value;
if (target instanceof Components.interfaces.nsIRDFInt) //Fuer Integer Werte
return target.Value;
}
return "";
<?php
include('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/fas/functions.inc.php');
require_once('../../include/fas/benutzer.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING_FAS))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
if (!$conn_vilesci = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$user = get_uid();
//Studiensemester_id holen
$benutzer = new benutzer($conn_vilesci);
$benutzer->loadVariables($user);
$stsem = $benutzer->variable->semester_aktuell;
$stsem_id = getStudiensemesterIdFromName($conn, $stsem);
echo "var studiensemester_id=".$stsem_id.";";
?>
var sink;
var MenuMitarbeiterAuswahl=0;
var treemenuobservedata='';
/**
* Observer der aufgerufen wird wenn Refresh des Funktionen-Trees
* fertig ausgefuehrt wurde.
*/
var treefunktionenobserve = {
onBeginLoad: function(aSink)
{
/* Statusbar setzen */
setStatusBarText('Loading ...');
/* Progressmeter anzeigen */
document.getElementById('statusbarpanel-progressmeter').hidden=false;
},
onInterrupt: function(aSink) { },
onResume: function(aSink) { },
onEndLoad: function(aSink)
{
//debug('onEndLoad Funktionen');
/* Statusbar leeren */
setStatusBarText('');
/* Progressmeter verstecken */
document.getElementById('statusbarpanel-progressmeter').hidden=true;
/* Mitarbeiter Value Changed zuruecksetzen und Speichern Button deaktivieren */
// MitarbeiterDetailRestore();
//debug('Starting Rebuild');
document.getElementById('tree-liste-funktionen').builder.rebuild();
},
onError: function(aSink, aStatus, aErrorMsg)
{
alert('Bei der Datenuebertragung ist ein Fehler Aufgetreten. Bitte Versuchen Sie es erneut.');
}
};
/**
* Observer der aufgerufen wird wenn Refresh des Mitarbeiter-Trees
* fertig ausgefuehrt wurde.
*/
var treemenuobserve = {
onBeginLoad: function(aSink)
{
/* Statusbar setzen */
setStatusBarText('Loading ...');
/* Progressmeter anzeigen */
document.getElementById('statusbarpanel-progressmeter').hidden=false;
},
onInterrupt: function(aSink) { },
onResume: function(aSink) { },
onEndLoad: function(aSink)
{
//debug('onEndLoad');
/* Statusbar leeren */
setStatusBarText('');
/* Progressmeter verstecken */
document.getElementById('statusbarpanel-progressmeter').hidden=true;
/* Mitarbeiter Value Changed zuruecksetzen und Speichern Button deaktivieren */
MitarbeiterDetailRestore();
document.getElementById('tree-liste-mitarbeiter').builder.rebuild();
},
onError: function(aSink, aStatus, aErrorMsg)
{
alert('Bei der Datenuebertragung ist ein Fehler Aufgetreten. Bitte Versuchen Sie es erneut.');
}
};
/**
* Observer der aufgerufen wird wenn Rebuild fertig abgearbeitet wurde
* (Funktioniert mit Moz 1.7.13 nicht richtig -> Seamonkey 1.0.2 funktioniert)
*/
var treemenurebuildobserve = {
willRebuild: function(aSink) { },
didRebuild: function(aSink)
{
//debug('didRebuild:'+treemenuobservedata);
//wenn treemenuobservedata = refresheintragmerken dann wird der Mitarbeiter wieder markiert
if(treemenuobservedata=='refresheintragmerken')
MitarbeiterSelectMitarbeiter();
treemenuobservedata='';
treeMitarbeiterReload=true;
}
}
/**
* Gibt eine Message auf die Javascript Console aus
*/
function debug(msg)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var consoleService = Components.classes["@mozilla.org/consoleservice;1"]
.getService(Components.interfaces.nsIConsoleService);
consoleService.logStringMessage(msg);
}
/**
* Beim Auswaehlen eines Mitarbeiter-Filters werden die Mitarbeiter
* die diesem Filter entsprechen geladen
*/
function onMenuMitarbeiterSelect(id)
{
//Falls Daten geaendert wurden aber noch nicht gespeichert
if(treeMitarbeiterDetailChanged)
{
if(confirm("Wollen Sie die geänderten Daten speichern?"))
saveMitarbeiter();
else
treeMitarbeiterDetailChanged=false;
}
var tree=document.getElementById(id);
var content=document.getElementById('tree-liste-mitarbeiter');
var col = tree.columns ? tree.columns["tree-menu-mitarbeiter-col-filter"] : "tree-menu-mitarbeiter-col-filter";
var filter=tree.view.getCellText(tree.currentIndex,col);
var url = "<?php echo APP_ROOT; ?>rdf/fas/mitarbeiter.rdf.php";
var attributes="?type=unknown&leerzeichencodierung=true";
if(filter=="")
filter="Studiengangsleiter";
if (filter=="Studiengangsleiter")
{
attributes+="&stgl=true";
MenuMitarbeiterAuswahl=0;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="Fachbereichsleiter")
{
attributes+="&fbl=true";
MenuMitarbeiterAuswahl=1;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="Alle")
{
attributes+="&alle=true";
MenuMitarbeiterAuswahl=2;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="Aktive")
{
attributes+="&aktiv=true";
MenuMitarbeiterAuswahl=3;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="FixAngestellte")
{
attributes+="&fix=true&aktiv=true";
MenuMitarbeiterAuswahl=4;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="FixAngestellteAlle")
{
attributes+="&fix=true";
MenuMitarbeiterAuswahl=5;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="Inaktive")
{
attributes+="&aktiv=false";
MenuMitarbeiterAuswahl=6;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="Karenziert")
{
attributes+="&karenziert=true";
MenuMitarbeiterAuswahl=7;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="Ausgeschieden")
{
attributes+="&ausgeschieden=true";
MenuMitarbeiterAuswahl=8;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=true;
}
if (filter=="FreiAngestellte")
{
attributes+="&fix=false&aktiv=true";
MenuMitarbeiterAuswahl=9;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
if (filter=="FreiAngestellteAlle")
{
attributes+="&fix=false";
MenuMitarbeiterAuswahl=10;
document.getElementById('toolbar-MitarbeiterEditor-neu').disabled=false;
}
//Timestamp anhaengen da beim Laden von Zwischengespeicherten Dateien kein
//Observer Event ausgeloest wird.
url+=attributes+'&'+gettimestamp();
treeMitarbeiterReload=false;
//Mitarbeiter Detail Felder deaktivieren
SetMitarbeiterDetailAktiv(false);
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
//Alte Datasources loeschen
var oldDatasources = content.database.GetDataSources();
while(oldDatasources.hasMoreElements())
content.database.RemoveDataSource(oldDatasources.getNext());
//Neue Datasource setzen
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService);
var newDs = rdfService.GetDataSource(url);
content.database.AddDataSource(newDs);
//Sink Observer anhaengen
sink = newDs.QueryInterface(Components.interfaces.nsIRDFXMLSink);
sink.addXMLSinkObserver(treemenuobserve);
}
/**
* Bei Auswahl des Verbandes wird lehreinheiten.rdf
* fuer die zugehoerige Gruppe/Studiengang geladen
*/
function onMenuVerbandSelect()
{
tree = document.getElementById('tree-verband');
//Studiengang, Gruppe und Ausbildungssemester holen
var col = tree.columns ? tree.columns["tree-verband-studiengang_id"] : "tree-verband-studiengang_id";
var studiengang_id=tree.view.getCellText(tree.currentIndex,col);
col = tree.columns ? tree.columns["tree-verband-gruppe_id"] : "tree-verband-gruppe_id";
var gruppe_id=tree.view.getCellText(tree.currentIndex,col);
col = tree.columns ? tree.columns["tree-verband-ausbildungssemester_id"] : "tree-verband-ausbildungssemester_id";
var ausbildungssemester_id=tree.view.getCellText(tree.currentIndex,col);
//Tree fuellen
lehreinheitentree = document.getElementById('tree-liste-lehreinheiten');
if(gruppe_id==0)
url = '<?php echo APP_ROOT; ?>rdf/fas/lehreinheiten.rdf.php?studiengang_id='+studiengang_id;
else
url = '<?php echo APP_ROOT; ?>rdf/fas/lehreinheiten.rdf.php?gruppe_id='+gruppe_id;
lehreinheitentree.setAttribute('datasources',url);
document.getElementById('textbox-lehreinheiten-detail-studiengang').value=studiengang_id;
document.getElementById('textbox-lehreinheiten-ausbildungssemester_id').value=ausbildungssemester_id;
}
/**
* Parst einen RDF String
*/
function parseRDFString(str, url)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var memoryDS = Components.classes["@mozilla.org/rdf/datasource;1?name=in-memory-datasource"].createInstance(Components.interfaces.nsIRDFDataSource);
var ios=Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService);
baseUri=ios.newURI(url,null,null);
var parser=Components.classes["@mozilla.org/rdf/xml-parser;1"].createInstance(Components.interfaces.nsIRDFXMLParser);
parser.parseString(memoryDS,baseUri,str);
return memoryDS;
}
/**
* Liefert Wert aus Datasource
*/
function getTargetHelper(dsource,subj,predi)
{
if (dsource.hasArcOut(subj, predi))
{
var target = dsource.GetTarget(subj, predi, true);
if (target instanceof Components.interfaces.nsIRDFLiteral)
return target.Value;
if (target instanceof Components.interfaces.nsIRDFInt) //Fuer Integer Werte
return target.Value;
}
return "";
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+220 -220
View File
@@ -1,221 +1,221 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../vilesci/config.inc.php');
echo '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungdetailoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungnotenoverlay.xul.php"?>';
?>
<overlay id="LehrveranstaltungOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/lvplanung/lehrveranstaltungoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<!-- ************************ -->
<!-- * Lehrveranstaltung * -->
<!-- ************************ -->
<vbox id="LehrveranstaltungEditor" flex="1" uid="" stg_kz="">
<popupset>
<popup id="lehrveranstaltung-tree-popup">
<menuitem label="Entfernen" oncommand="LeDelete();" id="lehrveranstaltung-tree-popup-entf" disabled="false"/>
</popup>
</popupset>
<toolbox>
<toolbar id="lehrveranstaltung-nav-toolbar">
<toolbarbutton id="lehrveranstaltung-toolbar-neu" label="Neue Lehreinheit" oncommand="LeNeu();" disabled="true" image="../skin/images/NeuDokument.png" tooltiptext="Neue Lehreinheit anlegen" />
<toolbarbutton id="lehrveranstaltung-toolbar-del" label="Loeschen" oncommand="LeDelete();" disabled="true" image="../skin/images/DeleteIcon.png" tooltiptext="Lehreinheiten löschen"/>
<toolbarbutton id="lehrveranstaltung-toolbar-refresh" label="Aktualisieren" oncommand="LvTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<toolbarbutton id="lehrveranstaltung-toolbar-lehrauftrag" label="Lehrauftrag" oncommand="LvCreateLehrauftrag()" disabled="false" image="../skin/images/person.gif" tooltiptext="Lehrauftrag ausdrucken" hidden="true"/>
<!--<toolbarbutton id="lehrveranstaltung-toolbar-refresh" label="Load" oncommand="debugload()" disabled="false"/>-->
</toolbar>
</toolbox>
<!-- ************* -->
<!-- * Auswahl * -->
<!-- ************* -->
<!-- Bem.: style="visibility:collapse" versteckt eine Spalte -->
<tree id="lehrveranstaltung-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/lehrveranstaltung_einheiten/liste"
style="margin:0px;" enableColumnDrag="true"
onselect="LeAuswahl(this);"
persist="height"
onkeypress="LvTreeKeyPress(event)"
flags="dont-build-content"
context="lehrveranstaltung-tree-popup"
>
<treecols>
<treecol id="lehrveranstaltung-treecol-kurzbz" label="Kurzbz" flex="2" hidden="false" primary="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#kurzbz"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-bezeichnung" label="Bezeichnung" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-sprache" label="Sprache" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#sprache" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-ects" label="ECTS" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#ects" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-semesterstunden" label="Semesterstunden" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#semesterstunden"/>
<treecol id="lehrveranstaltung-treecol-planstunden" label="Planstunden" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#planstunden"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lehre" label="Lehre" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehre"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lehrform" label="Lehrform" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrform_kurzbz"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-stundenblockung" label="Blockung" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#stundenblockung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-wochenrythmus" label="WR" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#wochenrythmus"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-startkw" label="StartKW" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#startkw"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-raumtyp" label="Raumtyp" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#raumtyp"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-raumtypalternativ" label="RaumtypAlt" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#raumtypalternativ"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-gruppen" label="Gruppen" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#gruppen"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lektoren" label="Lektoren" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lektoren"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-anmerkung" label="Anmerkung" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#anmerkung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-fachbereich" label="Institut" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#fachbereich"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-studiengang" label="Studiengang" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#studiengang"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-semester" label="Semester" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#semester"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-orgform_kurzbz" label="Organisationsform" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#orgform_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lehrveranstaltung_id" label="Lehrveranstaltung_id" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrveranstaltung_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lehreinheit_id" label="Lehreinheit_id" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehreinheit_id"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow dbID="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrveranstaltung_id" >
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#sprache"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#ects"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#semesterstunden"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#planstunden"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehre"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrform_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#stundenblockung"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#wochenrythmus"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#startkw"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#raumtyp"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#raumtypalternativ"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#gruppen"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lektoren"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#anmerkung"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#fachbereich"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#studiengang"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#semester"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#orgform_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrveranstaltung_id" />
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehreinheit_id"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
<splitter collapse="after" persist="state">
<grippy />
</splitter>
<!-- ************ -->
<!-- * Detail * -->
<!-- ************ -->
<vbox flex="1" style="overflow:auto;margin:0px;" persist="height">
<tabbox id="lehrveranstaltung-tabbox" flex="3" orient="vertical">
<tabs orient="horizontal" id="lehrveranstaltung-tabs">
<tab id="lehrveranstaltung-tab-detail" label="Details" />
<tab id="lehrveranstaltung-tab-lektor" label="Lektorenzuteilung" />
<tab id="lehrveranstaltung-tab-noten" label="Noten" />
</tabs>
<tabpanels id="lehrveranstaltung-tabpanels-main" flex="1">
<vbox id="lehrveranstaltung-detail" />
<vbox id="lehrveranstaltung-lektorzuteilung" />
<vbox id="lehrveranstaltung-noten" />
</tabpanels>
</tabbox>
</vbox>
</vbox>
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../vilesci/config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungdetailoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungnotenoverlay.xul.php"?>';
?>
<overlay id="LehrveranstaltungOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/phpRequest.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/lvplanung/lehrveranstaltungoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/functions.js.php" />
<!-- ************************ -->
<!-- * Lehrveranstaltung * -->
<!-- ************************ -->
<vbox id="LehrveranstaltungEditor" flex="1" uid="" stg_kz="">
<popupset>
<popup id="lehrveranstaltung-tree-popup">
<menuitem label="Entfernen" oncommand="LeDelete();" id="lehrveranstaltung-tree-popup-entf" disabled="false"/>
</popup>
</popupset>
<toolbox>
<toolbar id="lehrveranstaltung-nav-toolbar">
<toolbarbutton id="lehrveranstaltung-toolbar-neu" label="Neue Lehreinheit" oncommand="LeNeu();" disabled="true" image="../skin/images/NeuDokument.png" tooltiptext="Neue Lehreinheit anlegen" />
<toolbarbutton id="lehrveranstaltung-toolbar-del" label="Loeschen" oncommand="LeDelete();" disabled="true" image="../skin/images/DeleteIcon.png" tooltiptext="Lehreinheiten löschen"/>
<toolbarbutton id="lehrveranstaltung-toolbar-refresh" label="Aktualisieren" oncommand="LvTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<toolbarbutton id="lehrveranstaltung-toolbar-lehrauftrag" label="Lehrauftrag" oncommand="LvCreateLehrauftrag()" disabled="false" image="../skin/images/person.gif" tooltiptext="Lehrauftrag ausdrucken" hidden="true"/>
<!--<toolbarbutton id="lehrveranstaltung-toolbar-refresh" label="Load" oncommand="debugload()" disabled="false"/>-->
</toolbar>
</toolbox>
<!-- ************* -->
<!-- * Auswahl * -->
<!-- ************* -->
<!-- Bem.: style="visibility:collapse" versteckt eine Spalte -->
<tree id="lehrveranstaltung-tree" seltype="single" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/lehrveranstaltung_einheiten/liste"
style="margin:0px;" enableColumnDrag="true"
onselect="LeAuswahl(this);"
persist="height"
onkeypress="LvTreeKeyPress(event)"
flags="dont-build-content"
context="lehrveranstaltung-tree-popup"
>
<treecols>
<treecol id="lehrveranstaltung-treecol-kurzbz" label="Kurzbz" flex="2" hidden="false" primary="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#kurzbz"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-bezeichnung" label="Bezeichnung" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-sprache" label="Sprache" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#sprache" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-ects" label="ECTS" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#ects" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-semesterstunden" label="Semesterstunden" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#semesterstunden"/>
<treecol id="lehrveranstaltung-treecol-planstunden" label="Planstunden" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#planstunden"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lehre" label="Lehre" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehre"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lehrform" label="Lehrform" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrform_kurzbz"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-stundenblockung" label="Blockung" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#stundenblockung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-wochenrythmus" label="WR" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#wochenrythmus"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-startkw" label="StartKW" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#startkw"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-raumtyp" label="Raumtyp" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#raumtyp"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-raumtypalternativ" label="RaumtypAlt" flex="5" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#raumtypalternativ"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-gruppen" label="Gruppen" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#gruppen"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lektoren" label="Lektoren" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lektoren"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-anmerkung" label="Anmerkung" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#anmerkung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-fachbereich" label="Institut" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#fachbereich"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-studiengang" label="Studiengang" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#studiengang"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-semester" label="Semester" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#semester"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-orgform_kurzbz" label="Organisationsform" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#orgform_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lehrveranstaltung_id" label="Lehrveranstaltung_id" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrveranstaltung_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-treecol-lehreinheit_id" label="Lehreinheit_id" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehreinheit_id"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow dbID="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrveranstaltung_id" >
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#sprache"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#ects"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#semesterstunden"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#planstunden"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehre"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrform_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#stundenblockung"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#wochenrythmus"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#startkw"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#raumtyp"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#raumtypalternativ"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#gruppen"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lektoren"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#anmerkung"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#fachbereich"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#studiengang"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#semester"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#orgform_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehrveranstaltung_id" />
<treecell label="rdf:http://www.technikum-wien.at/lehrveranstaltung_einheiten/rdf#lehreinheit_id"/>
</treerow>
</treeitem>
</treechildren>
</template>
</tree>
<splitter collapse="after" persist="state">
<grippy />
</splitter>
<!-- ************ -->
<!-- * Detail * -->
<!-- ************ -->
<vbox flex="1" style="overflow:auto;margin:0px;" persist="height">
<tabbox id="lehrveranstaltung-tabbox" flex="3" orient="vertical">
<tabs orient="horizontal" id="lehrveranstaltung-tabs">
<tab id="lehrveranstaltung-tab-detail" label="Details" />
<tab id="lehrveranstaltung-tab-lektor" label="Lektorenzuteilung" />
<tab id="lehrveranstaltung-tab-noten" label="Noten" />
</tabs>
<tabpanels id="lehrveranstaltung-tabpanels-main" flex="1">
<vbox id="lehrveranstaltung-detail" />
<vbox id="lehrveranstaltung-lektorzuteilung" />
<vbox id="lehrveranstaltung-noten" />
</tabpanels>
</tabbox>
</vbox>
</vbox>
</overlay>
+133 -133
View File
@@ -1,133 +1,133 @@
<?php
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
include('../../vilesci/config.inc.php');
echo '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?>';
echo "<?xml-stylesheet href=\"".APP_ROOT."content/lfvt.css\" type=\"text/css\" ?>";
?>
<!DOCTYPE overlay>
<overlay id="STPLDetailsOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/studenten.js" />
<!-- ************************* -->
<!-- * Stundenplan Details * -->
<!-- ************************* -->
<vbox id="vboxSTPLDetailsListe">
<popupset>
<popup id="stpldetail-treestpldetail-popup">
<menuitem label="Bearbeiten" oncommand="STPLDetailEdit()" />
<menuitem label="Entfernen" oncommand="STPLDetailDelete()" />
</popup>
</popupset>
<tree id="treeStplDetails" seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/lehrstunde.rdf.php" ref="http://www.technikum-wien.at/lehrstunde/alle"
flags="dont-build-content"
enableColumnDrag="true"
style="margin:0px;"
context="stpldetail-treestpldetail-popup"
>
<treecols>
<treecol id="lehreinheit_id" label="LE_ID" flex="2" primary="false"
class="sortDirectionIndicator" sortActive="true" sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehreinheit_id" />
<splitter class="tree-splitter"/>
<treecol id="stplLektor" label="Lektor" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lektor" />
<splitter class="tree-splitter"/>
<treecol id="stplLehrfachKurzbz" label="Fach" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrfach" />
<splitter class="tree-splitter"/>
<treecol id="stplLehrform" label="Form" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrform" />
<splitter class="tree-splitter"/>
<treecol id="stplLehrfachBezeichnung" label="Lehrfach" flex="20" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrfach_bez" />
<splitter class="tree-splitter"/>
<treecol id="stpl_studiengang" label="Studiengang" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#studiengang" />
<splitter class="tree-splitter"/>
<treecol id="stplSemester" label="S" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#sem" />
<splitter class="tree-splitter"/>
<treecol id="stplVerband" label="V" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#ver" />
<splitter class="tree-splitter"/>
<treecol id="gruppe" label="G" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#grp" />
<splitter class="tree-splitter"/>
<treecol id="stpl_einheit" label="SpzGrp" flex="3" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#gruppe" />
<splitter class="tree-splitter"/>
<treecol id="stplOrt" label="Ort" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#ort_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="stpl_datum" label="Datum" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#datum" />
<splitter class="tree-splitter"/>
<treecol id="stpl_stunde" label="Std" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#stunde" />
<splitter class="tree-splitter"/>
<treecol id="stplUNR" label="UNR" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#unr" />
<splitter class="tree-splitter"/>
<treecol id="stundenplan_id" label="StundenplanID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#id" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehreinheit_id" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lektor" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrfach" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrform" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrfach_bez" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#studiengang" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#sem" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#ver" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#grp" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#gruppe" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#ort_kurzbz" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#datum" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#stunde" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#unr" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#id" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</vbox>
</overlay>
<?php
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
include('../../vilesci/config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo "<?xml-stylesheet href=\"".APP_ROOT."content/lfvt.css\" type=\"text/css\" ?>";
?>
<!DOCTYPE overlay>
<overlay id="STPLDetailsOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/studenten.js" />
<!-- ************************* -->
<!-- * Stundenplan Details * -->
<!-- ************************* -->
<vbox id="vboxSTPLDetailsListe">
<popupset>
<popup id="stpldetail-treestpldetail-popup">
<menuitem label="Bearbeiten" oncommand="STPLDetailEdit()" />
<menuitem label="Entfernen" oncommand="STPLDetailDelete()" />
</popup>
</popupset>
<tree id="treeStplDetails" seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/lehrstunde.rdf.php" ref="http://www.technikum-wien.at/lehrstunde/alle"
flags="dont-build-content"
enableColumnDrag="true"
style="margin:0px;"
context="stpldetail-treestpldetail-popup"
>
<treecols>
<treecol id="lehreinheit_id" label="LE_ID" flex="2" primary="false"
class="sortDirectionIndicator" sortActive="true" sortDirection="ascending"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehreinheit_id" />
<splitter class="tree-splitter"/>
<treecol id="stplLektor" label="Lektor" flex="2" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lektor" />
<splitter class="tree-splitter"/>
<treecol id="stplLehrfachKurzbz" label="Fach" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrfach" />
<splitter class="tree-splitter"/>
<treecol id="stplLehrform" label="Form" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrform" />
<splitter class="tree-splitter"/>
<treecol id="stplLehrfachBezeichnung" label="Lehrfach" flex="20" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrfach_bez" />
<splitter class="tree-splitter"/>
<treecol id="stpl_studiengang" label="Studiengang" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#studiengang" />
<splitter class="tree-splitter"/>
<treecol id="stplSemester" label="S" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#sem" />
<splitter class="tree-splitter"/>
<treecol id="stplVerband" label="V" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#ver" />
<splitter class="tree-splitter"/>
<treecol id="gruppe" label="G" flex="1" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#grp" />
<splitter class="tree-splitter"/>
<treecol id="stpl_einheit" label="SpzGrp" flex="3" hidden="false"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#gruppe" />
<splitter class="tree-splitter"/>
<treecol id="stplOrt" label="Ort" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#ort_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="stpl_datum" label="Datum" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#datum" />
<splitter class="tree-splitter"/>
<treecol id="stpl_stunde" label="Std" flex="1" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#stunde" />
<splitter class="tree-splitter"/>
<treecol id="stplUNR" label="UNR" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#unr" />
<splitter class="tree-splitter"/>
<treecol id="stundenplan_id" label="StundenplanID" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/lehrstunde/rdf#id" />
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehreinheit_id" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lektor" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrfach" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrform" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#lehrfach_bez" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#studiengang" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#sem" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#ver" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#grp" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#gruppe" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#ort_kurzbz" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#datum" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#stunde" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#unr" />
<treecell label="rdf:http://www.technikum-wien.at/lehrstunde/rdf#id" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
</vbox>
</overlay>
+75 -75
View File
@@ -1,76 +1,76 @@
<?php
/* Copyright (C) 2008 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
* Gerald Simane-Sequens <[email protected]>.
*/
header("Content-type: application/vnd.mozilla.xul+xml");
include('../../vilesci/config.inc.php');
include('../../include/functions.inc.php');
echo '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>';
/*echo '<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';*/
$uid=get_uid();
if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Fehler: Es konnte keine Verbindung zum Server aufgebaut werden!';
//$error_msg.=loadVariables($conn,$REMOTE_USER);
// Stundentafel abfragen
$sql_query="SET datestyle TO ISO; SELECT * FROM lehre.tbl_stunde ORDER BY stunde";
if(!$result_stunde=pg_exec($conn, $sql_query))
die(pg_last_error($this->conn));
$num_rows_stunde=pg_numrows($result_stunde);
?>
<!DOCTYPE overlay>
<!-- [<?php require_once("../../locale/de-AT/tempus.dtd"); ?>] -->
<overlay id="TempusOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/dragboard.js.php"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/lvplanung/stpl-semester-overlay.js.php"/>
<vbox id="vboxTimeTableSemester" flex="1">
<toolbox>
<toolbar id="toolbarTimeTableSemesterWeek" tbautostretch="always" persist="collapsed">
<separator orient="horizontal" class="thin" />
<toolbarbutton id="toolbarbuttonStplSemesterRefresh"
image="../skin/images/refresh.png"
oncommand="onSTPLSemesterRefresh();"
tooltiptext="Neu Laden"
/>
<toolbarbutton id="toolbarbuttonStplSemesterPrint"
image="../skin/images/drucken.png"
oncommand="onSTPLSemesterPrint();"
tooltiptext="Drucken"
/>
</toolbar>
</toolbox>
<iframe id="iframeTimeTableSemester" name="TimeTableSemester" flex="1"
src="<?php echo APP_ROOT; ?>content/lvplanung/timetable-week.xul.php?semesterplan=true" />
</vbox>
<?php
/* Copyright (C) 2008 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
* Gerald Simane-Sequens <[email protected]>.
*/
header("Content-type: application/vnd.mozilla.xul+xml");
include('../../vilesci/config.inc.php');
include('../../include/functions.inc.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
/*echo '<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>';
echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';*/
$uid=get_uid();
if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Fehler: Es konnte keine Verbindung zum Server aufgebaut werden!';
//$error_msg.=loadVariables($conn,$REMOTE_USER);
// Stundentafel abfragen
$sql_query="SET datestyle TO ISO; SELECT * FROM lehre.tbl_stunde ORDER BY stunde";
if(!$result_stunde=pg_exec($conn, $sql_query))
die(pg_last_error($this->conn));
$num_rows_stunde=pg_numrows($result_stunde);
?>
<!DOCTYPE overlay>
<!-- [<?php require_once("../../locale/de-AT/tempus.dtd"); ?>] -->
<overlay id="TempusOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/dragboard.js.php"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/lvplanung/stpl-semester-overlay.js.php"/>
<vbox id="vboxTimeTableSemester" flex="1">
<toolbox>
<toolbar id="toolbarTimeTableSemesterWeek" tbautostretch="always" persist="collapsed">
<separator orient="horizontal" class="thin" />
<toolbarbutton id="toolbarbuttonStplSemesterRefresh"
image="../skin/images/refresh.png"
oncommand="onSTPLSemesterRefresh();"
tooltiptext="Neu Laden"
/>
<toolbarbutton id="toolbarbuttonStplSemesterPrint"
image="../skin/images/drucken.png"
oncommand="onSTPLSemesterPrint();"
tooltiptext="Drucken"
/>
</toolbar>
</toolbox>
<iframe id="iframeTimeTableSemester" name="TimeTableSemester" flex="1"
src="<?php echo APP_ROOT; ?>content/lvplanung/timetable-week.xul.php?semesterplan=true" />
</vbox>
</overlay>
+137 -137
View File
@@ -1,138 +1,138 @@
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen(get_uid());
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
echo "<h2>Abgängerstatistik $stsem";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester($conn);
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$stsem)
$selected='selected';
else
$selected='';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$stsemester->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
{
$stgs = $rechte->getStgKz();
if($stgs[0]=='')
$stgwhere='';
else
{
$stgwhere=' AND studiengang_kz in(';
foreach ($stgs as $stg)
$stgwhere.="'$stg',";
$stgwhere = substr($stgwhere,0, strlen($stgwhere)-1);
$stgwhere.=' )';
}
// SELECT count(*) FROM public.tbl_prestudent WHERE studiengang_kz=stg.studiengang_kz) AS prestd,
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Abgewiesener' AND studiensemester_kurzbz='$stsem'
) AS abgewiesener,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Abbrecher' AND studiensemester_kurzbz='$stsem'
) AS abbrecher,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Unterbrecher' AND studiensemester_kurzbz='$stsem'
) AS unterbrecher,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem'
) AS absolvent
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv $stgwhere
ORDER BY kurzbzlang; ";
if($result = pg_query($conn, $qry))
{
echo "<table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th class='table-sortable:default'>Studiengang</th>
<th class='table-sortable:numeric'>Abgewiesene</th>
<th class='table-sortable:numeric'>Abbrecher</th>
<th class='table-sortable:numeric'>Unterbrecher</th>
<th class='table-sortable:numeric'>Absolventen</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
echo "<td align='center'>$row->abgewiesener</td>";
echo "<td align='center'>$row->abbrecher</td>";
echo "<td align='center'>$row->unterbrecher</td>";
echo "<td align='center'>$row->absolvent</td>";
echo "</tr>";
}
echo '</tbody></table>';
}
}
?>
</body>
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
$stsem = '';
$rechte = new benutzerberechtigung($conn);
$rechte->getBerechtigungen(get_uid());
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
echo "<h2>Abgängerstatistik $stsem";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester($conn);
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$stsem)
$selected='selected';
else
$selected='';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$stsemester->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
{
$stgs = $rechte->getStgKz();
if($stgs[0]=='')
$stgwhere='';
else
{
$stgwhere=' AND studiengang_kz in(';
foreach ($stgs as $stg)
$stgwhere.="'$stg',";
$stgwhere = substr($stgwhere,0, strlen($stgwhere)-1);
$stgwhere.=' )';
}
// SELECT count(*) FROM public.tbl_prestudent WHERE studiengang_kz=stg.studiengang_kz) AS prestd,
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abgewiesener' AND studiensemester_kurzbz='$stsem'
) AS abgewiesener,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Abbrecher' AND studiensemester_kurzbz='$stsem'
) AS abbrecher,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Unterbrecher' AND studiensemester_kurzbz='$stsem'
) AS unterbrecher,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem'
) AS absolvent
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv $stgwhere
ORDER BY kurzbzlang; ";
if($result = pg_query($conn, $qry))
{
echo "<table class='liste table-autosort:0 table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th class='table-sortable:default'>Studiengang</th>
<th class='table-sortable:numeric'>Abgewiesene</th>
<th class='table-sortable:numeric'>Abbrecher</th>
<th class='table-sortable:numeric'>Unterbrecher</th>
<th class='table-sortable:numeric'>Absolventen</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
echo "<td align='center'>$row->abgewiesener</td>";
echo "<td align='center'>$row->abbrecher</td>";
echo "<td align='center'>$row->unterbrecher</td>";
echo "<td align='center'>$row->absolvent</td>";
echo "</tr>";
}
echo '</tbody></table>';
}
}
?>
</body>
</html>
+156 -156
View File
@@ -1,157 +1,157 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]>,
* Rudolf Hangl <[email protected]> and
* Gerald Simane-Sequens <[email protected]>
*/
/**
* Exportiert eine Liste der Absolventen in ein Excel File.
* Das betreffende Studiensemester wird uebergeben.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studiensemester.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
//Parameter holen
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
if($studiensemester_kurzbz!='')
{
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Absolventenstatistik". "_".$studiensemester_kurzbz.".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Absolventenstatistik");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$stg_arr=array();
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbzlang', false);
foreach ($studiengang->result as $row)
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
$spalte=0;
$zeile=0;
$worksheet->write($zeile,$spalte,'Absolventenstatistik '.$studiensemester_kurzbz.' erstellt am '.date("d.m.Y"), $format_bold);
$spalte=0;
$zeile++;
$worksheet->write($zeile,$spalte,'UID',$format_bold);
$maxlength[$spalte]=3;
$worksheet->write($zeile,++$spalte,'NACHNAME',$format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,'VORNAME',$format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,'STG',$format_bold);
$maxlength[$spalte]=3;
$worksheet->write($zeile,++$spalte,'GESCHLECHT',$format_bold);
$maxlength[$spalte]=10;
// Daten holen
$qry = "SELECT
uid, vorname, nachname, studiengang_kz, geschlecht
FROM
campus.vw_student
WHERE
public.get_rolle_prestudent (prestudent_id, '$studiensemester_kurzbz')='Absolvent'
ORDER BY studiengang_kz, nachname, vorname";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$zeile++;
$spalte=0;
$worksheet->write($zeile,$spalte,$row->uid);
if(strlen($row->uid)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->uid);
$worksheet->write($zeile,++$spalte, $row->nachname);
if(strlen($row->nachname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->nachname);
$worksheet->write($zeile,++$spalte, $row->vorname);
if(strlen($row->vorname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->vorname);
$worksheet->write($zeile,++$spalte, $stg_arr[$row->studiengang_kz]);
if(strlen($stg_arr[$row->studiengang_kz])>$maxlength[$spalte])
$maxlength[$spalte]=strlen($stg_arr[$row->studiengang_kz]);
$worksheet->write($zeile,++$spalte, $row->geschlecht);
if(strlen($row->geschlecht)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->geschlecht);
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
}
else
{
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Absolventen</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
</head>
<body class="Background_main">
<h2>Absolventenstatistik</h2>
';
echo '<form method="GET" action="'.$_SERVER['PHP_SELF'].'">';
echo 'Studiensemester: <SELECT name="studiensemester_kurzbz">';
$stsem = new studiensemester($conn);
$stsem_akt = $stsem->getaktorNext();
$stsem->getAll();
foreach ($stsem->studiensemester as $row)
{
if($row->studiensemester_kurzbz==$stsem_akt)
$selected='selected';
else
$selected='';
echo "<OPTION value='$row->studiensemester_kurzbz' $selected>$row->studiensemester_kurzbz</OPTION>";
}
echo "</SELECT>";
echo " <input type='submit' value='Erstellen'>";
echo "</form></body></html>";
}
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]>,
* Rudolf Hangl <[email protected]> and
* Gerald Simane-Sequens <[email protected]>
*/
/**
* Exportiert eine Liste der Absolventen in ein Excel File.
* Das betreffende Studiensemester wird uebergeben.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studiensemester.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
//Parameter holen
$studiensemester_kurzbz = isset($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:'';
if($studiensemester_kurzbz!='')
{
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Absolventenstatistik". "_".$studiensemester_kurzbz.".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Absolventenstatistik");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$stg_arr=array();
$studiengang = new studiengang($conn);
$studiengang->getAll('typ, kurzbzlang', false);
foreach ($studiengang->result as $row)
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
$spalte=0;
$zeile=0;
$worksheet->write($zeile,$spalte,'Absolventenstatistik '.$studiensemester_kurzbz.' erstellt am '.date("d.m.Y"), $format_bold);
$spalte=0;
$zeile++;
$worksheet->write($zeile,$spalte,'UID',$format_bold);
$maxlength[$spalte]=3;
$worksheet->write($zeile,++$spalte,'NACHNAME',$format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,'VORNAME',$format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,'STG',$format_bold);
$maxlength[$spalte]=3;
$worksheet->write($zeile,++$spalte,'GESCHLECHT',$format_bold);
$maxlength[$spalte]=10;
// Daten holen
$qry = "SELECT
uid, vorname, nachname, studiengang_kz, geschlecht
FROM
campus.vw_student
WHERE
public.get_rolle_prestudent (prestudent_id, '$studiensemester_kurzbz')='Absolvent'
ORDER BY studiengang_kz, nachname, vorname";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$zeile++;
$spalte=0;
$worksheet->write($zeile,$spalte,$row->uid);
if(strlen($row->uid)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->uid);
$worksheet->write($zeile,++$spalte, $row->nachname);
if(strlen($row->nachname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->nachname);
$worksheet->write($zeile,++$spalte, $row->vorname);
if(strlen($row->vorname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->vorname);
$worksheet->write($zeile,++$spalte, $stg_arr[$row->studiengang_kz]);
if(strlen($stg_arr[$row->studiengang_kz])>$maxlength[$spalte])
$maxlength[$spalte]=strlen($stg_arr[$row->studiengang_kz]);
$worksheet->write($zeile,++$spalte, $row->geschlecht);
if(strlen($row->geschlecht)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->geschlecht);
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
}
else
{
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Absolventen</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
</head>
<body class="Background_main">
<h2>Absolventenstatistik</h2>
';
echo '<form method="GET" action="'.$_SERVER['PHP_SELF'].'">';
echo 'Studiensemester: <SELECT name="studiensemester_kurzbz">';
$stsem = new studiensemester($conn);
$stsem_akt = $stsem->getaktorNext();
$stsem->getAll();
foreach ($stsem->studiensemester as $row)
{
if($row->studiensemester_kurzbz==$stsem_akt)
$selected='selected';
else
$selected='';
echo "<OPTION value='$row->studiensemester_kurzbz' $selected>$row->studiensemester_kurzbz</OPTION>";
}
echo "</SELECT>";
echo " <input type='submit' value='Erstellen'>";
echo "</form></body></html>";
}
?>
+286 -286
View File
@@ -1,287 +1,287 @@
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/*
* Erstellt eine Liste mit den Absolventen eines Studiensemesters
* Aufteilung in
* - Anzahl Gesamt
* - Prozent Anteil
* - Vollzeit/Berufsbegleitend
* - Geschlecht
* - Herkunft (AT/EU/Nicht EU)
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
{
$stsem_obj = new studiensemester($conn);
$stsem = $stsem_obj->getaktorNext();
}
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
echo "<h2>Absolventenstatistik $stsem";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester($conn);
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$stsem)
$selected='selected';
else
$selected='';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$stsemester->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
{
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th></th>
<th>Anteil an Gesamt</th>
<th>Studienart</th>
<th>Geschlecht</th>
<th colspan=3>Staatsb&uuml;rgerschaft</th>
</tr>
<tr>
<th>Bachelor</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>BB / VZ</th>
<th>m / w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>
</thead>
<tbody>
";
//Bachelor
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem'
) a) AS gesamt_stg,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND typ='b'
) a) AS gesamt_alle,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='BB'
) a) AS bb,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='VZ'
) a) AS vz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='w'
) a) AS w,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m'
) a) AS m,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND nation_code='A'
) a) AS herkunft_at,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND eu AND nation_code<>'A'
) a) AS herkunft_eu,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND NOT eu
) a) AS herkunft_noteu,
true
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='b'
ORDER BY typ, kurzbzlang; ";
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m / $row->w</td>";
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
$gesamt_w += $row->w;
$gesamt_at += $row->herkunft_at;
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamt / ".sprintf('%0.2f', $gesamt_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamt_bb / $gesamt_vz</b></td>";
echo "<td align='center'><b>$gesamt_m / $gesamt_w</b></td>";
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
}
//Master
echo '
<tr>
<th>Master</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>BB / VZ</th>
<th>m / w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>';
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem'
) AS gesamt_stg,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND typ='m'
) AS gesamt_alle,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='BB'
) AS bb,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='VZ'
) AS vz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='w'
) AS w,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m'
) AS m,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND nation_code='A'
) AS herkunft_at,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND eu AND nation_code<>'A'
) AS herkunft_eu,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND NOT eu
) AS herkunft_noteu,
true
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='m'
ORDER BY typ, kurzbzlang; ";
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m / $row->w</td>";
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
$gesamt_w += $row->w;
$gesamt_at += $row->herkunft_at;
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamt / ".sprintf('%0.2f', $gesamt_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamt_bb / $gesamt_vz</b></td>";
echo "<td align='center'><b>$gesamt_m / $gesamt_w</b></td>";
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
}
echo '</tbody></table>';
}
?>
</body>
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/*
* Erstellt eine Liste mit den Absolventen eines Studiensemesters
* Aufteilung in
* - Anzahl Gesamt
* - Prozent Anteil
* - Vollzeit/Berufsbegleitend
* - Geschlecht
* - Herkunft (AT/EU/Nicht EU)
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
{
$stsem_obj = new studiensemester($conn);
$stsem = $stsem_obj->getaktorNext();
}
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
echo "<h2>Absolventenstatistik $stsem";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester($conn);
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$stsem)
$selected='selected';
else
$selected='';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$stsemester->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
{
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th></th>
<th>Anteil an Gesamt</th>
<th>Studienart</th>
<th>Geschlecht</th>
<th colspan=3>Staatsb&uuml;rgerschaft</th>
</tr>
<tr>
<th>Bachelor</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>BB / VZ</th>
<th>m / w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>
</thead>
<tbody>
";
//Bachelor
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem'
) a) AS gesamt_stg,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND typ='b'
) a) AS gesamt_alle,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='BB'
) a) AS bb,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='VZ'
) a) AS vz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='w'
) a) AS w,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m'
) a) AS m,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND nation_code='A'
) a) AS herkunft_at,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND eu AND nation_code<>'A'
) a) AS herkunft_eu,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND NOT eu
) a) AS herkunft_noteu,
true
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='b'
ORDER BY typ, kurzbzlang; ";
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m / $row->w</td>";
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
$gesamt_w += $row->w;
$gesamt_at += $row->herkunft_at;
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamt / ".sprintf('%0.2f', $gesamt_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamt_bb / $gesamt_vz</b></td>";
echo "<td align='center'><b>$gesamt_m / $gesamt_w</b></td>";
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
}
//Master
echo '
<tr>
<th>Master</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>BB / VZ</th>
<th>m / w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>';
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem'
) AS gesamt_stg,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND typ='m'
) AS gesamt_alle,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='BB'
) AS bb,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='VZ'
) AS vz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='w'
) AS w,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m'
) AS m,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND nation_code='A'
) AS herkunft_at,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND eu AND nation_code<>'A'
) AS herkunft_eu,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Absolvent' AND studiensemester_kurzbz='$stsem' AND geschlecht='m' AND NOT eu
) AS herkunft_noteu,
true
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='m'
ORDER BY typ, kurzbzlang; ";
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m / $row->w</td>";
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
$gesamt_w += $row->w;
$gesamt_at += $row->herkunft_at;
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamt / ".sprintf('%0.2f', $gesamt_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamt_bb / $gesamt_vz</b></td>";
echo "<td align='center'><b>$gesamt_m / $gesamt_w</b></td>";
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
}
echo '</tbody></table>';
}
?>
</body>
</html>
+1 -1
View File
@@ -198,7 +198,7 @@ else
<html>
<head>
<title>Studenten/Semester</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<style type="text/css">
td, th
File diff suppressed because it is too large Load Diff
+6 -6
View File
@@ -40,9 +40,9 @@
FROM
public.tbl_studiengang
JOIN public.tbl_prestudent USING(studiengang_kz)
JOIN public.tbl_prestudentrolle USING(prestudent_id)
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
tbl_prestudentrolle.rolle_kurzbz='Interessent'
tbl_prestudentstatus.status_kurzbz='Interessent'
AND studiensemester_kurzbz='$stsem'
AND studiengang_kz='$studiengang_kz'
AND ausbildungssemester=1
@@ -63,9 +63,9 @@
FROM
public.tbl_studiengang
JOIN public.tbl_prestudent USING(studiengang_kz)
JOIN public.tbl_prestudentrolle USING(prestudent_id)
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
tbl_prestudentrolle.rolle_kurzbz='Bewerber'
tbl_prestudentstatus.status_kurzbz='Bewerber'
AND studiensemester_kurzbz='$stsem'
AND studiengang_kz='$studiengang_kz'
AND ausbildungssemester=1
@@ -86,9 +86,9 @@
FROM
public.tbl_studiengang
JOIN public.tbl_prestudent USING(studiengang_kz)
JOIN public.tbl_prestudentrolle USING(prestudent_id)
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
tbl_prestudentrolle.rolle_kurzbz='Student'
tbl_prestudentstatus.status_kurzbz='Student'
AND studiensemester_kurzbz='$stsem'
AND studiengang_kz='$studiengang_kz'
AND ausbildungssemester=1
+5 -5
View File
@@ -97,14 +97,14 @@ loadVariables($conn, $user);
// Daten holen
$qry = "SELECT *, tbl_person.person_id
FROM
public.tbl_prestudentrolle, public.tbl_prestudent, public.tbl_person
public.tbl_prestudentstatus, public.tbl_prestudent, public.tbl_person
WHERE
tbl_prestudentrolle.prestudent_id=tbl_prestudent.prestudent_id AND
tbl_prestudentstatus.prestudent_id=tbl_prestudent.prestudent_id AND
tbl_prestudent.person_id=tbl_person.person_id AND
studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND
rolle_kurzbz in('Interessent','Bewerber','Student','Abbrecher','Unterbrecher','Diplomand','Incoming', 'Praktikant', 'Abgewiesener') AND
status_kurzbz in('Interessent','Bewerber','Student','Abbrecher','Unterbrecher','Diplomand','Incoming', 'Praktikant', 'Abgewiesener') AND
studiengang_kz not in(0, 203, 10001, 10002)
ORDER BY nachname, vorname, tbl_prestudentrolle.datum, tbl_prestudentrolle.insertamum, tbl_prestudentrolle.ext_id";
ORDER BY nachname, vorname, tbl_prestudentstatus.datum, tbl_prestudentstatus.insertamum, tbl_prestudentstatus.ext_id";
//'Outgoing',
//echo $qry;
@@ -190,7 +190,7 @@ loadVariables($conn, $user);
$maxlength[$i]=strlen($row->zgv_code);
}
switch($row->rolle_kurzbz)
switch($row->status_kurzbz)
{
case 'Interessent':
$kuerzel = 'i';
+152 -152
View File
@@ -1,153 +1,153 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/**
* Exportiert eine Liste der Absolventen in ein Excel File.
* Das betreffende Studiensemester wird uebergeben.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/dokument.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
loadVariables($conn, get_uid());
//Parameter holen
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
$studiensemester_kurzbz = isseT($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:$semester_aktuell;
if($studiengang_kz!='')
{
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Dokumente_".$studiensemester_kurzbz.".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Dokumente");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_rotate =& $workbook->addFormat();
$format_rotate->setTextRotation(270);
$format_rotate->setAlign('center');
$spalte=0;
$zeile=0;
$worksheet->write($zeile,$spalte,'NACHNAME',$format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,'VORNAME',$format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,'STATUS',$format_bold);
$maxlength[$spalte]=6;
$dokumente = new dokument($conn);
$dokumente->getDokumente($studiengang_kz);
$dokumente_arr = array();
foreach ($dokumente->result as $row)
{
$worksheet->write($zeile,++$spalte,$row->bezeichnung,$format_rotate);
$maxlength[$spalte]=3;
$dokumente_arr[$row->dokument_kurzbz]=$spalte;
}
// Daten holen
$qry = "SELECT nachname, vorname, prestudent_id, public.get_rolle_prestudent(prestudent_id, NULL) as status FROM
public.tbl_person JOIN public.tbl_prestudent USING(person_id)
WHERE
prestudent_id IN(
SELECT
distinct prestudent_id
FROM
public.tbl_prestudent JOIN public.tbl_prestudentrolle USING(prestudent_id)
WHERE
(SELECT count(*) as anzahl FROM public.tbl_dokumentstudiengang
WHERE
dokument_kurzbz NOT IN( SELECT dokument_kurzbz FROM tbl_dokumentprestudent WHERE
prestudent_id=tbl_prestudent.prestudent_id) AND studiengang_kz='$studiengang_kz')<>0
AND tbl_prestudentrolle.studiensemester_kurzbz='$studiensemester_kurzbz' AND studiengang_kz='$studiengang_kz'
)
ORDER BY nachname, vorname
";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$zeile++;
$spalte=0;
$worksheet->write($zeile,$spalte,$row->nachname);
if(strlen($row->nachname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->nachname);
$worksheet->write($zeile,++$spalte, $row->vorname);
if(strlen($row->vorname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->vorname);
$worksheet->write($zeile,++$spalte, $row->status);
if(strlen($row->status)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->status);
$dokumente = new dokument($conn);
$dokumente->getPrestudentDokumente($row->prestudent_id);
foreach ($dokumente->result as $docs)
{
if(isset($dokumente_arr[$docs->dokument_kurzbz]))
$worksheet->write($zeile,$dokumente_arr[$docs->dokument_kurzbz], 'X', $format_bold);
}
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
}
else
{
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Dokumente</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
</head>
<body class="Background_main">
<h2>Dokumente</h2>
Studiengang_kz und Studiensemester_kurzbz muss uebergeben werden
</body>
</html>
';
}
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/**
* Exportiert eine Liste der Absolventen in ein Excel File.
* Das betreffende Studiensemester wird uebergeben.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/dokument.class.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
loadVariables($conn, get_uid());
//Parameter holen
$studiengang_kz = isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'';
$studiensemester_kurzbz = isseT($_GET['studiensemester_kurzbz'])?$_GET['studiensemester_kurzbz']:$semester_aktuell;
if($studiengang_kz!='')
{
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Dokumente_".$studiensemester_kurzbz.".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Dokumente");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_rotate =& $workbook->addFormat();
$format_rotate->setTextRotation(270);
$format_rotate->setAlign('center');
$spalte=0;
$zeile=0;
$worksheet->write($zeile,$spalte,'NACHNAME',$format_bold);
$maxlength[$spalte]=8;
$worksheet->write($zeile,++$spalte,'VORNAME',$format_bold);
$maxlength[$spalte]=7;
$worksheet->write($zeile,++$spalte,'STATUS',$format_bold);
$maxlength[$spalte]=6;
$dokumente = new dokument($conn);
$dokumente->getDokumente($studiengang_kz);
$dokumente_arr = array();
foreach ($dokumente->result as $row)
{
$worksheet->write($zeile,++$spalte,$row->bezeichnung,$format_rotate);
$maxlength[$spalte]=3;
$dokumente_arr[$row->dokument_kurzbz]=$spalte;
}
// Daten holen
$qry = "SELECT nachname, vorname, prestudent_id, public.get_rolle_prestudent(prestudent_id, NULL) as status FROM
public.tbl_person JOIN public.tbl_prestudent USING(person_id)
WHERE
prestudent_id IN(
SELECT
distinct prestudent_id
FROM
public.tbl_prestudent JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
(SELECT count(*) as anzahl FROM public.tbl_dokumentstudiengang
WHERE
dokument_kurzbz NOT IN( SELECT dokument_kurzbz FROM tbl_dokumentprestudent WHERE
prestudent_id=tbl_prestudent.prestudent_id) AND studiengang_kz='$studiengang_kz')<>0
AND tbl_prestudentstatus.studiensemester_kurzbz='$studiensemester_kurzbz' AND studiengang_kz='$studiengang_kz'
)
ORDER BY nachname, vorname
";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$zeile++;
$spalte=0;
$worksheet->write($zeile,$spalte,$row->nachname);
if(strlen($row->nachname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->nachname);
$worksheet->write($zeile,++$spalte, $row->vorname);
if(strlen($row->vorname)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->vorname);
$worksheet->write($zeile,++$spalte, $row->status);
if(strlen($row->status)>$maxlength[$spalte])
$maxlength[$spalte]=strlen($row->status);
$dokumente = new dokument($conn);
$dokumente->getPrestudentDokumente($row->prestudent_id);
foreach ($dokumente->result as $docs)
{
if(isset($dokumente_arr[$docs->dokument_kurzbz]))
$worksheet->write($zeile,$dokumente_arr[$docs->dokument_kurzbz], 'X', $format_bold);
}
}
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
}
else
{
echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Dokumente</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
</head>
<body class="Background_main">
<h2>Dokumente</h2>
Studiengang_kz und Studiensemester_kurzbz muss uebergeben werden
</body>
</html>
';
}
?>
+12 -12
View File
@@ -26,11 +26,11 @@ echo '<h2>Studenten LAND</h2>';
$qry = "SELECT
studiengang_kz, studiensemester_kurzbz, kurztext as geburtsnation, geschlecht, count(*) as anzahl
FROM
public.tbl_person, public.tbl_prestudent, public.tbl_prestudentrolle, bis.tbl_nation
public.tbl_person, public.tbl_prestudent, public.tbl_prestudentstatus, bis.tbl_nation
WHERE
tbl_person.person_id=tbl_prestudent.person_id AND
tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id AND
tbl_prestudentrolle.rolle_kurzbz='Student' AND
tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id AND
tbl_prestudentstatus.status_kurzbz='Student' AND
tbl_nation.nation_code=tbl_person.geburtsnation
GROUP BY studiengang_kz, studiensemester_kurzbz, kurztext, geschlecht";
@@ -58,11 +58,11 @@ echo '<br><br><h2>Bewerber LAND</h2>';
$qry = "SELECT
studiengang_kz, studiensemester_kurzbz, kurztext as geburtsnation, geschlecht, count(*) as anzahl
FROM
public.tbl_person, public.tbl_prestudent, public.tbl_prestudentrolle, bis.tbl_nation
public.tbl_person, public.tbl_prestudent, public.tbl_prestudentstatus, bis.tbl_nation
WHERE
tbl_person.person_id=tbl_prestudent.person_id AND
tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id AND
tbl_prestudentrolle.rolle_kurzbz='Bewerber' AND
tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id AND
tbl_prestudentstatus.status_kurzbz='Bewerber' AND
tbl_nation.nation_code=tbl_person.geburtsnation
GROUP BY studiengang_kz, studiensemester_kurzbz, kurztext, geschlecht";
@@ -91,11 +91,11 @@ echo '<br><br><h2>Studenten Bundesland</h2>';
$qry = "SELECT
studiengang_kz, studiensemester_kurzbz, bulabez, geschlecht, count(*) as anzahl
FROM
public.tbl_person, public.tbl_prestudent, public.tbl_prestudentrolle, public.tbl_adresse, bis.tbl_gemeinde
public.tbl_person, public.tbl_prestudent, public.tbl_prestudentstatus, public.tbl_adresse, bis.tbl_gemeinde
WHERE
tbl_person.person_id=tbl_prestudent.person_id AND
tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id AND
tbl_prestudentrolle.rolle_kurzbz='Student' AND
tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id AND
tbl_prestudentstatus.status_kurzbz='Student' AND
tbl_adresse.person_id=tbl_person.person_id AND
tbl_adresse.plz=tbl_gemeinde.plz AND
tbl_person.geburtsnation='A'
@@ -125,11 +125,11 @@ echo '<br><br><h2>Bewerber Bundesland</h2>';
$qry = "SELECT
studiengang_kz, studiensemester_kurzbz, bulabez, geschlecht, count(*) as anzahl
FROM
public.tbl_person, public.tbl_prestudent, public.tbl_prestudentrolle, public.tbl_adresse, bis.tbl_gemeinde
public.tbl_person, public.tbl_prestudent, public.tbl_prestudentstatus, public.tbl_adresse, bis.tbl_gemeinde
WHERE
tbl_person.person_id=tbl_prestudent.person_id AND
tbl_prestudent.prestudent_id=tbl_prestudentrolle.prestudent_id AND
tbl_prestudentrolle.rolle_kurzbz='Bewerber' AND
tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id AND
tbl_prestudentstatus.status_kurzbz='Bewerber' AND
tbl_adresse.person_id=tbl_person.person_id AND
tbl_adresse.plz=tbl_gemeinde.plz AND
tbl_person.geburtsnation='A'
+286 -286
View File
@@ -1,287 +1,287 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/**
* Erstellt ein Excel File mit allen Lektoren und den Studiengaengen in denen diese Unterrichten
* Diese Liste wird dann per Mail an die Geschaeftsstelle gesendet.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/mail.class.php');
if (!$conn=pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
$stsem = new studiensemester($conn);
$semester_aktuell = $stsem->getaktorNext();
$file = 'lehrauftragsgesamtliste.xls';
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer($file);
// sending HTTP headers
//$workbook->send("Lehrauftragsgesamtliste.xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Lektoren");
//Formate Definieren
$format_left =& $workbook->addFormat();
$format_left->setLeft(2);
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_bold_border =& $workbook->addFormat();
$format_bold_border->setBold();
$format_bold_border->setBorder(2);
$format_bold_center =& $workbook->addFormat();
$format_bold_center->setBold();
$format_bold_center->setAlign('center');
$format_bold_center->setBorder(2);
$format_number =& $workbook->addFormat();
$format_number->setNumFormat('0,0.00');
$format_number_bold =& $workbook->addFormat();
$format_number_bold->setNumFormat('0,0.00');
$format_number_bold->setBold();
$format_number_bold->setLeft(2);
$i=0;
$studiensemester = new studiensemester($conn);
$stsem = $studiensemester->getNearest();
$worksheet->write(0,0,'Erstellt am '.date('d.m.Y')." Studiensemester: $stsem", $format_bold);
//Ueberschriften
$zeile=1;
$spalte=0;
$maxlength[$spalte]=10;
$worksheet->write($zeile+1,$spalte++,"Nachname", $format_bold);
$maxlength[$spalte]=10;
$worksheet->write($zeile+1,$spalte++,"Vorname", $format_bold);
$maxlength[$spalte]=10;
$worksheet->write($zeile+1,$spalte++,"UID", $format_bold);
$qry = "SELECT
distinct tbl_studiengang.studiengang_kz, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kuerzel
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE
tbl_lehreinheit.studiensemester_kurzbz='$stsem' AND
tbl_lehreinheitmitarbeiter.faktor is not null AND
tbl_lehreinheitmitarbeiter.faktor<>0 AND
tbl_lehreinheitmitarbeiter.stundensatz is not null AND
tbl_lehreinheitmitarbeiter.stundensatz<>0 AND
tbl_lehreinheitmitarbeiter.semesterstunden is not null AND
tbl_lehreinheitmitarbeiter.semesterstunden<>0 ORDER BY kuerzel";
$result = pg_query($conn, $qry);
while($row = pg_fetch_object($result))
{
$worksheet->write($zeile, $spalte,$row->kuerzel, $format_bold_center);
$worksheet->write($zeile, $spalte+1,$row->kuerzel, $format_bold_center);
$worksheet->write($zeile, $spalte+2,$row->kuerzel, $format_bold_center);
$worksheet->write($zeile, $spalte+3,$row->kuerzel, $format_bold_center);
$stg_spalte[$row->studiengang_kz]=$spalte;
$maxlength[$spalte]=7;
$worksheet->write($zeile+1, $spalte++,'Stunden', $format_bold_border);
$maxlength[$spalte]=5;
$worksheet->write($zeile+1, $spalte++,'Sätze', $format_bold_border);
$maxlength[$spalte]=6;
$worksheet->write($zeile+1, $spalte++,'Faktor', $format_bold_border);
$maxlength[$spalte]=6;
$worksheet->write($zeile+1, $spalte++,'Gesamt', $format_bold_border);
$worksheet->mergeCells($zeile,$spalte-4,$zeile,$spalte-1);
}
$maxlength[$spalte]=12;
$worksheet->write($zeile+1, $spalte,'Gesamtsumme', $format_bold);
$maxspalten = $spalte;
function drawStg($stg)
{
global $faktor_arr, $satz_arr, $stunden, $gesamt, $worksheet, $stg_spalte;
global $zeile, $row, $gesamtsumme, $format_number, $maxlength, $format_left;
$faktoren = '';
$saetze = '';
foreach ($faktor_arr as $faktor)
{
if($faktoren!='')
$faktoren.=', ';
$faktoren.=$faktor;
}
foreach ($satz_arr as $satz)
{
if($saetze!='')
$saetze.=', ';
$saetze.=$satz;
}
if(strlen($stunden)>$maxlength[$stg_spalte[$stg]])
$maxlength[$stg_spalte[$stg]]=strlen($stunden);
$worksheet->write($zeile, $stg_spalte[$stg], $stunden, $format_left);
if(strlen($saetze)>$maxlength[$stg_spalte[$stg]+1])
$maxlength[$stg_spalte[$stg]+1]=strlen($saetze);
$worksheet->write($zeile, $stg_spalte[$stg]+1, $saetze);
if(strlen($faktoren)>$maxlength[$stg_spalte[$stg]+2])
$maxlength[$stg_spalte[$stg]+2]=strlen($faktoren);
$worksheet->write($zeile, $stg_spalte[$stg]+2, $faktoren);
if(strlen($gesamt)>$maxlength[$stg_spalte[$stg]+3])
$maxlength[$stg_spalte[$stg]+3]=strlen($gesamt)+5;
$worksheet->write($zeile, $stg_spalte[$stg]+3, $gesamt, $format_number);
$gesamtsumme += $gesamt;
$faktor_arr = array();
$satz_arr = array();
$stunden = 0;
$gesamt = 0;
}
function drawGesamtsumme()
{
global $maxspalten, $zeile, $gesamtsumme, $worksheet, $format_number_bold, $maxlength;
if(strlen($gesamtsumme)>$maxlength[$maxspalten])
$maxlength[$maxspalten]=strlen($gesamtsumme);
$worksheet->write($zeile, $maxspalten, $gesamtsumme, $format_number_bold);
}
$qry = "
SELECT
mitarbeiter_uid, stundensatz, faktor, sum(tbl_lehreinheitmitarbeiter.semesterstunden) as stunden,
stundensatz*sum(tbl_lehreinheitmitarbeiter.semesterstunden)*faktor AS gesamt, studiengang_kz,
nachname, vorname
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN campus.vw_benutzer ON (mitarbeiter_uid=uid)
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
WHERE
studiensemester_kurzbz='$stsem' AND
tbl_lehreinheitmitarbeiter.faktor is not null AND
tbl_lehreinheitmitarbeiter.faktor<>0 AND
tbl_lehreinheitmitarbeiter.stundensatz is not null AND
tbl_lehreinheitmitarbeiter.stundensatz<>0 AND
tbl_lehreinheitmitarbeiter.semesterstunden is not null AND
tbl_lehreinheitmitarbeiter.semesterstunden<>0
GROUP BY mitarbeiter_uid, studiengang_kz, stundensatz, faktor, nachname, vorname ORDER BY nachname, vorname, studiengang_kz
";
if($result = pg_query($conn, $qry))
{
$lastuid='';
$laststg='';
$zeile++;
while($row = pg_fetch_object($result))
{
if($lastuid!=$row->mitarbeiter_uid)
{
if($lastuid!='')
{
// letzten Studiengang ausgeben
drawStg($laststg);
//Gesamtsumme ausgeben
drawGesamtsumme();
}
$zeile++;
$lastuid=$row->mitarbeiter_uid;
$laststg=$row->studiengang_kz;
$faktor_arr = array();
$satz_arr = array();
$stunden = 0;
$gesamt = 0;
$gesamtsumme=0;
if(strlen($row->nachname)>$maxlength[0])
$maxlength[0]=strlen($row->nachname);
$worksheet->write($zeile, 0, $row->nachname);
if(strlen($row->vorname)>$maxlength[1])
$maxlength[1]=strlen($row->vorname);
$worksheet->write($zeile, 1, $row->vorname);
if(strlen($row->mitarbeiter_uid)>$maxlength[2])
$maxlength[2]=strlen($row->mitarbeiter_uid);
$worksheet->write($zeile, 2, $row->mitarbeiter_uid);
foreach ($stg_spalte as $spalte)
{
$worksheet->write($zeile, $spalte, null, $format_left);
}
}
if($laststg!=$row->studiengang_kz && $laststg!='')
{
drawStg($laststg);
}
if($row->faktor!='' && $row->faktor!='0' && $row->stunden!='' && $row->stunden!='0' && $row->stundensatz!='' && $row->stundensatz!='0')
{
if(!in_array($row->faktor, $faktor_arr))
$faktor_arr[]=$row->faktor;
if(!in_array($row->stundensatz, $satz_arr))
$satz_arr[]=$row->stundensatz;
$stunden += $row->stunden;
$gesamt += $row->gesamt;
}
$laststg = $row->studiengang_kz;
}
drawStg($laststg);
drawGesamtsumme();
}
//foreach($maxlength as $i=>$breite)
// $worksheet->setColumn(0, $i, $breite+2);
$workbook->close();
//Mail versenden mit Excel File im Anhang
$to = MAIL_GST;
$subject = "Lehrauftragsgesamtliste ".date('d.m.Y');
$message = "Dies ist eine automatische eMail!\nAnbei die Lehrauftragsgesamtliste vom ".date('d.m.Y');
$fileatttype = "application/xls";
$fileattname = "lehrauftragsgesamtliste_".date('Y_m_d').".xls";
$mail = new mail($to, 'vilesci@'.DOMAIN, $subject, $message);
$mail->addAttachmentBinary($file, $fileatttype, $fileattname);
if($mail->send())
echo "Email mit Lehrauftragsgesamtliste wurde versandt";
else
echo "Fehler beim Versenden der Lehrauftragsgesamtliste";
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/**
* Erstellt ein Excel File mit allen Lektoren und den Studiengaengen in denen diese Unterrichten
* Diese Liste wird dann per Mail an die Geschaeftsstelle gesendet.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/Excel/excel.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/mail.class.php');
if (!$conn=pg_pconnect(CONN_STRING))
die('Es konnte keine Verbindung zum Server aufgebaut werden!');
$stsem = new studiensemester($conn);
$semester_aktuell = $stsem->getaktorNext();
$file = 'lehrauftragsgesamtliste.xls';
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer($file);
// sending HTTP headers
//$workbook->send("Lehrauftragsgesamtliste.xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Lektoren");
//Formate Definieren
$format_left =& $workbook->addFormat();
$format_left->setLeft(2);
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_bold_border =& $workbook->addFormat();
$format_bold_border->setBold();
$format_bold_border->setBorder(2);
$format_bold_center =& $workbook->addFormat();
$format_bold_center->setBold();
$format_bold_center->setAlign('center');
$format_bold_center->setBorder(2);
$format_number =& $workbook->addFormat();
$format_number->setNumFormat('0,0.00');
$format_number_bold =& $workbook->addFormat();
$format_number_bold->setNumFormat('0,0.00');
$format_number_bold->setBold();
$format_number_bold->setLeft(2);
$i=0;
$studiensemester = new studiensemester($conn);
$stsem = $studiensemester->getNearest();
$worksheet->write(0,0,'Erstellt am '.date('d.m.Y')." Studiensemester: $stsem", $format_bold);
//Ueberschriften
$zeile=1;
$spalte=0;
$maxlength[$spalte]=10;
$worksheet->write($zeile+1,$spalte++,"Nachname", $format_bold);
$maxlength[$spalte]=10;
$worksheet->write($zeile+1,$spalte++,"Vorname", $format_bold);
$maxlength[$spalte]=10;
$worksheet->write($zeile+1,$spalte++,"UID", $format_bold);
$qry = "SELECT
distinct tbl_studiengang.studiengang_kz, UPPER(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kuerzel
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE
tbl_lehreinheit.studiensemester_kurzbz='$stsem' AND
tbl_lehreinheitmitarbeiter.faktor is not null AND
tbl_lehreinheitmitarbeiter.faktor<>0 AND
tbl_lehreinheitmitarbeiter.stundensatz is not null AND
tbl_lehreinheitmitarbeiter.stundensatz<>0 AND
tbl_lehreinheitmitarbeiter.semesterstunden is not null AND
tbl_lehreinheitmitarbeiter.semesterstunden<>0 ORDER BY kuerzel";
$result = pg_query($conn, $qry);
while($row = pg_fetch_object($result))
{
$worksheet->write($zeile, $spalte,$row->kuerzel, $format_bold_center);
$worksheet->write($zeile, $spalte+1,$row->kuerzel, $format_bold_center);
$worksheet->write($zeile, $spalte+2,$row->kuerzel, $format_bold_center);
$worksheet->write($zeile, $spalte+3,$row->kuerzel, $format_bold_center);
$stg_spalte[$row->studiengang_kz]=$spalte;
$maxlength[$spalte]=7;
$worksheet->write($zeile+1, $spalte++,'Stunden', $format_bold_border);
$maxlength[$spalte]=5;
$worksheet->write($zeile+1, $spalte++,'Sätze', $format_bold_border);
$maxlength[$spalte]=6;
$worksheet->write($zeile+1, $spalte++,'Faktor', $format_bold_border);
$maxlength[$spalte]=6;
$worksheet->write($zeile+1, $spalte++,'Gesamt', $format_bold_border);
$worksheet->mergeCells($zeile,$spalte-4,$zeile,$spalte-1);
}
$maxlength[$spalte]=12;
$worksheet->write($zeile+1, $spalte,'Gesamtsumme', $format_bold);
$maxspalten = $spalte;
function drawStg($stg)
{
global $faktor_arr, $satz_arr, $stunden, $gesamt, $worksheet, $stg_spalte;
global $zeile, $row, $gesamtsumme, $format_number, $maxlength, $format_left;
$faktoren = '';
$saetze = '';
foreach ($faktor_arr as $faktor)
{
if($faktoren!='')
$faktoren.=', ';
$faktoren.=$faktor;
}
foreach ($satz_arr as $satz)
{
if($saetze!='')
$saetze.=', ';
$saetze.=$satz;
}
if(strlen($stunden)>$maxlength[$stg_spalte[$stg]])
$maxlength[$stg_spalte[$stg]]=strlen($stunden);
$worksheet->write($zeile, $stg_spalte[$stg], $stunden, $format_left);
if(strlen($saetze)>$maxlength[$stg_spalte[$stg]+1])
$maxlength[$stg_spalte[$stg]+1]=strlen($saetze);
$worksheet->write($zeile, $stg_spalte[$stg]+1, $saetze);
if(strlen($faktoren)>$maxlength[$stg_spalte[$stg]+2])
$maxlength[$stg_spalte[$stg]+2]=strlen($faktoren);
$worksheet->write($zeile, $stg_spalte[$stg]+2, $faktoren);
if(strlen($gesamt)>$maxlength[$stg_spalte[$stg]+3])
$maxlength[$stg_spalte[$stg]+3]=strlen($gesamt)+5;
$worksheet->write($zeile, $stg_spalte[$stg]+3, $gesamt, $format_number);
$gesamtsumme += $gesamt;
$faktor_arr = array();
$satz_arr = array();
$stunden = 0;
$gesamt = 0;
}
function drawGesamtsumme()
{
global $maxspalten, $zeile, $gesamtsumme, $worksheet, $format_number_bold, $maxlength;
if(strlen($gesamtsumme)>$maxlength[$maxspalten])
$maxlength[$maxspalten]=strlen($gesamtsumme);
$worksheet->write($zeile, $maxspalten, $gesamtsumme, $format_number_bold);
}
$qry = "
SELECT
mitarbeiter_uid, stundensatz, faktor, sum(tbl_lehreinheitmitarbeiter.semesterstunden) as stunden,
stundensatz*sum(tbl_lehreinheitmitarbeiter.semesterstunden)*faktor AS gesamt, studiengang_kz,
nachname, vorname
FROM
lehre.tbl_lehreinheitmitarbeiter JOIN campus.vw_benutzer ON (mitarbeiter_uid=uid)
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrveranstaltung USING(lehrveranstaltung_id)
WHERE
studiensemester_kurzbz='$stsem' AND
tbl_lehreinheitmitarbeiter.faktor is not null AND
tbl_lehreinheitmitarbeiter.faktor<>0 AND
tbl_lehreinheitmitarbeiter.stundensatz is not null AND
tbl_lehreinheitmitarbeiter.stundensatz<>0 AND
tbl_lehreinheitmitarbeiter.semesterstunden is not null AND
tbl_lehreinheitmitarbeiter.semesterstunden<>0
GROUP BY mitarbeiter_uid, studiengang_kz, stundensatz, faktor, nachname, vorname ORDER BY nachname, vorname, studiengang_kz
";
if($result = pg_query($conn, $qry))
{
$lastuid='';
$laststg='';
$zeile++;
while($row = pg_fetch_object($result))
{
if($lastuid!=$row->mitarbeiter_uid)
{
if($lastuid!='')
{
// letzten Studiengang ausgeben
drawStg($laststg);
//Gesamtsumme ausgeben
drawGesamtsumme();
}
$zeile++;
$lastuid=$row->mitarbeiter_uid;
$laststg=$row->studiengang_kz;
$faktor_arr = array();
$satz_arr = array();
$stunden = 0;
$gesamt = 0;
$gesamtsumme=0;
if(strlen($row->nachname)>$maxlength[0])
$maxlength[0]=strlen($row->nachname);
$worksheet->write($zeile, 0, $row->nachname);
if(strlen($row->vorname)>$maxlength[1])
$maxlength[1]=strlen($row->vorname);
$worksheet->write($zeile, 1, $row->vorname);
if(strlen($row->mitarbeiter_uid)>$maxlength[2])
$maxlength[2]=strlen($row->mitarbeiter_uid);
$worksheet->write($zeile, 2, $row->mitarbeiter_uid);
foreach ($stg_spalte as $spalte)
{
$worksheet->write($zeile, $spalte, null, $format_left);
}
}
if($laststg!=$row->studiengang_kz && $laststg!='')
{
drawStg($laststg);
}
if($row->faktor!='' && $row->faktor!='0' && $row->stunden!='' && $row->stunden!='0' && $row->stundensatz!='' && $row->stundensatz!='0')
{
if(!in_array($row->faktor, $faktor_arr))
$faktor_arr[]=$row->faktor;
if(!in_array($row->stundensatz, $satz_arr))
$satz_arr[]=$row->stundensatz;
$stunden += $row->stunden;
$gesamt += $row->gesamt;
}
$laststg = $row->studiengang_kz;
}
drawStg($laststg);
drawGesamtsumme();
}
//foreach($maxlength as $i=>$breite)
// $worksheet->setColumn(0, $i, $breite+2);
$workbook->close();
//Mail versenden mit Excel File im Anhang
$to = MAIL_GST;
$subject = "Lehrauftragsgesamtliste ".date('d.m.Y');
$message = "Dies ist eine automatische eMail!\nAnbei die Lehrauftragsgesamtliste vom ".date('d.m.Y');
$fileatttype = "application/xls";
$fileattname = "lehrauftragsgesamtliste_".date('Y_m_d').".xls";
$mail = new mail($to, 'vilesci@'.DOMAIN, $subject, $message);
$mail->addAttachmentBinary($file, $fileatttype, $fileattname);
if($mail->send())
echo "Email mit Lehrauftragsgesamtliste wurde versandt";
else
echo "Fehler beim Versenden der Lehrauftragsgesamtliste";
?>
+256 -256
View File
@@ -1,257 +1,257 @@
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/*
* Erstellt eine Tablle mit der Anzahl der Lektoren die im angegebenen
* StudienJAHR einen Lehrauftrag im jeweiligen Institut haben, getrennt nach Fixangestellten und Freien
* und der Anzahl der Stunden die in diesem Institut gehalten wurden
* Bei einem klick auf das Institut wird die Detailansicht angezeigt, in der die einzelnen
* Lektoren Namentlich aufscheinen.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/fachbereich.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$ws='';
$ss='';
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
{
$stsem_obj = new studiensemester($conn);
$stsem = $stsem_obj->getaktorNext();
}
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
if(isset($_GET['details']) && isset($_GET['fachbereich_kurzbz']))
{
$ss = (isset($_GET['ss'])?$_GET['ss']:'');
$ws = (isset($_GET['ws'])?$_GET['ws']:'');
$fachbereich = new fachbereich($conn);
if(!$fachbereich->load($_GET['fachbereich_kurzbz']))
die('Institut existiert nicht');
echo "<h2>Lektorenstatistik (Lehrauftrag ohne Betreuungen) $ws / $ss - ".$fachbereich->bezeichnung.'</h2>';
$qry = "SELECT distinct mitarbeiter_uid, nachname, vorname, titelpre, titelpost
FROM lehre.tbl_lehreinheitmitarbeiter
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrfach USING(lehrfach_id)
JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid)
JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
JOIN public.tbl_person USING(person_id)
WHERE studiensemester_kurzbz in('$ws','$ss')
AND fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."' AND fixangestellt
ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
echo "Fixangestellt - Anzahl: ".pg_num_rows($result)."
<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>TitelPre</th>
<th>Nachname</th>
<th>Vorname</th>
<th>Titelpost</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->titelpre</td>";
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->titelpost</td>";
echo "</tr>";
}
}
echo '</tbody></table>';
$qry = "SELECT distinct mitarbeiter_uid, nachname, vorname, titelpre, titelpost
FROM lehre.tbl_lehreinheitmitarbeiter
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrfach USING(lehrfach_id)
JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid)
JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
JOIN public.tbl_person USING(person_id)
WHERE studiensemester_kurzbz in('$ws','$ss')
AND fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."' AND NOT fixangestellt
ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
echo "<br /><br />Freiangestellt - Anzahl: ".pg_num_rows($result)."
<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>TitelPre</th>
<th>Nachname</th>
<th>Vorname</th>
<th>Titelpost</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->titelpre</td>";
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->titelpost</td>";
echo "</tr>";
}
}
echo '</tbody></table>';
}
else
{
if(substr($stsem, 0, 2)=='WS')
{
$stsem_obj = new studiensemester($conn);
$ss = $stsem_obj->getNextFrom($stsem);
$ws = $stsem;
}
else
{
$stsem_obj = new studiensemester($conn);
$ws = $stsem_obj->getPreviousFrom($stsem);
$ss = $stsem;
}
echo "<h2>Lektorenstatistik (Lehrauftrag ohne Betreuungen) $ws / $ss";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester($conn);
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$ws)
$selected='selected';
else
$selected='';
if(substr($stsemester->studiensemester_kurzbz, 0, 2)=='WS')
{
$stsem_obj = new studiensemester($conn);
$ss1 = $stsem_obj->getNextFrom($stsemester->studiensemester_kurzbz);
$ws1 = $stsemester->studiensemester_kurzbz;
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$ws1.'/'.$ss1.'</option>';
}
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
{
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th colspan=2>Anzahl</th>
<th colspan=2>ALVS</th>
</tr>
<tr>
<th>Institute</th>
<th>fix</th>
<th>extern</th>
<th>$ws</th>
<th>$ss</th>
</tr>
</thead>
<tbody>
";
$qry = "SELECT
bezeichnung, fachbereich_kurzbz,
(SELECT count(*) FROM (SELECT distinct mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE studiensemester_kurzbz in('$ws','$ss') AND fachbereich_kurzbz=a.fachbereich_kurzbz AND fixangestellt) a) as fix,
(SELECT count(*) FROM (SELECT distinct mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE studiensemester_kurzbz in('$ws','$ss') AND fachbereich_kurzbz=a.fachbereich_kurzbz AND NOT fixangestellt) a) as extern,
(SELECT sum(semesterstunden) FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE studiensemester_kurzbz='$ws' AND fachbereich_kurzbz=a.fachbereich_kurzbz AND faktor>0 AND stundensatz>0) as ws,
(SELECT sum(semesterstunden) FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE studiensemester_kurzbz='$ss' AND fachbereich_kurzbz=a.fachbereich_kurzbz AND faktor>0 AND stundensatz>0) as ss
FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung";
/*
Mitarbeiter laut institutszuordnung
(SELECT count(*) FROM public.tbl_benutzerfunktion JOIN public.tbl_mitarbeiter on (uid=mitarbeiter_uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND funktion_kurzbz='oezuordnung' AND fixangestellt AND aktiv) as fix,
(SELECT count(*) FROM public.tbl_benutzerfunktion JOIN public.tbl_mitarbeiter on (uid=mitarbeiter_uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND funktion_kurzbz='oezuordnung' AND NOT fixangestellt AND aktiv) as extern,
*/
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt_fix=0;
$gesamt_extern=0;
$gesamt_ws=0;
$gesamt_ss=0;
while($row = pg_fetch_object($result))
{
if($row->fix==0 && $row->extern==0)
{
continue;
}
echo '<tr>';
echo "<td><a href='".$_SERVER['PHP_SELF']."?details=true&fachbereich_kurzbz=$row->fachbereich_kurzbz&ss=$ss&ws=$ws'>$row->bezeichnung</a></td>";
echo "<td align='center'>$row->fix</td>";
echo "<td align='center'>$row->extern</td>";
echo "<td align='center'>$row->ws</td>";
echo "<td align='center'>$row->ss</td>";
echo "</tr>";
$gesamt_fix+=$row->fix;
$gesamt_extern+=$row->extern;
$gesamt_ws+=$row->ws;
$gesamt_ss+=$row->ss;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td align='center'>&nbsp;</td>";
echo "<td align='center'>&nbsp;</td>";
echo "<td align='center'><b>$gesamt_ws</b></td>";
echo "<td align='center'><b>$gesamt_ss</b></td>";
echo "</tr>";
}
echo '</tbody></table>';
}
}
?>
</body>
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/*
* Erstellt eine Tablle mit der Anzahl der Lektoren die im angegebenen
* StudienJAHR einen Lehrauftrag im jeweiligen Institut haben, getrennt nach Fixangestellten und Freien
* und der Anzahl der Stunden die in diesem Institut gehalten wurden
* Bei einem klick auf das Institut wird die Detailansicht angezeigt, in der die einzelnen
* Lektoren Namentlich aufscheinen.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/fachbereich.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$ws='';
$ss='';
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
{
$stsem_obj = new studiensemester($conn);
$stsem = $stsem_obj->getaktorNext();
}
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
if(isset($_GET['details']) && isset($_GET['fachbereich_kurzbz']))
{
$ss = (isset($_GET['ss'])?$_GET['ss']:'');
$ws = (isset($_GET['ws'])?$_GET['ws']:'');
$fachbereich = new fachbereich($conn);
if(!$fachbereich->load($_GET['fachbereich_kurzbz']))
die('Institut existiert nicht');
echo "<h2>Lektorenstatistik (Lehrauftrag ohne Betreuungen) $ws / $ss - ".$fachbereich->bezeichnung.'</h2>';
$qry = "SELECT distinct mitarbeiter_uid, nachname, vorname, titelpre, titelpost
FROM lehre.tbl_lehreinheitmitarbeiter
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrfach USING(lehrfach_id)
JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid)
JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
JOIN public.tbl_person USING(person_id)
WHERE studiensemester_kurzbz in('$ws','$ss')
AND fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."' AND fixangestellt
ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
echo "Fixangestellt - Anzahl: ".pg_num_rows($result)."
<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>TitelPre</th>
<th>Nachname</th>
<th>Vorname</th>
<th>Titelpost</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->titelpre</td>";
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->titelpost</td>";
echo "</tr>";
}
}
echo '</tbody></table>';
$qry = "SELECT distinct mitarbeiter_uid, nachname, vorname, titelpre, titelpost
FROM lehre.tbl_lehreinheitmitarbeiter
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
JOIN lehre.tbl_lehrfach USING(lehrfach_id)
JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid)
JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
JOIN public.tbl_person USING(person_id)
WHERE studiensemester_kurzbz in('$ws','$ss')
AND fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."' AND NOT fixangestellt
ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
echo "<br /><br />Freiangestellt - Anzahl: ".pg_num_rows($result)."
<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>TitelPre</th>
<th>Nachname</th>
<th>Vorname</th>
<th>Titelpost</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->titelpre</td>";
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->titelpost</td>";
echo "</tr>";
}
}
echo '</tbody></table>';
}
else
{
if(substr($stsem, 0, 2)=='WS')
{
$stsem_obj = new studiensemester($conn);
$ss = $stsem_obj->getNextFrom($stsem);
$ws = $stsem;
}
else
{
$stsem_obj = new studiensemester($conn);
$ws = $stsem_obj->getPreviousFrom($stsem);
$ss = $stsem;
}
echo "<h2>Lektorenstatistik (Lehrauftrag ohne Betreuungen) $ws / $ss";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester($conn);
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$ws)
$selected='selected';
else
$selected='';
if(substr($stsemester->studiensemester_kurzbz, 0, 2)=='WS')
{
$stsem_obj = new studiensemester($conn);
$ss1 = $stsem_obj->getNextFrom($stsemester->studiensemester_kurzbz);
$ws1 = $stsemester->studiensemester_kurzbz;
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$ws1.'/'.$ss1.'</option>';
}
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
{
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th colspan=2>Anzahl</th>
<th colspan=2>ALVS</th>
</tr>
<tr>
<th>Institute</th>
<th>fix</th>
<th>extern</th>
<th>$ws</th>
<th>$ss</th>
</tr>
</thead>
<tbody>
";
$qry = "SELECT
bezeichnung, fachbereich_kurzbz,
(SELECT count(*) FROM (SELECT distinct mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE studiensemester_kurzbz in('$ws','$ss') AND fachbereich_kurzbz=a.fachbereich_kurzbz AND fixangestellt) a) as fix,
(SELECT count(*) FROM (SELECT distinct mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE studiensemester_kurzbz in('$ws','$ss') AND fachbereich_kurzbz=a.fachbereich_kurzbz AND NOT fixangestellt) a) as extern,
(SELECT sum(semesterstunden) FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE studiensemester_kurzbz='$ws' AND fachbereich_kurzbz=a.fachbereich_kurzbz AND faktor>0 AND stundensatz>0) as ws,
(SELECT sum(semesterstunden) FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE studiensemester_kurzbz='$ss' AND fachbereich_kurzbz=a.fachbereich_kurzbz AND faktor>0 AND stundensatz>0) as ss
FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung";
/*
Mitarbeiter laut institutszuordnung
(SELECT count(*) FROM public.tbl_benutzerfunktion JOIN public.tbl_mitarbeiter on (uid=mitarbeiter_uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND funktion_kurzbz='oezuordnung' AND fixangestellt AND aktiv) as fix,
(SELECT count(*) FROM public.tbl_benutzerfunktion JOIN public.tbl_mitarbeiter on (uid=mitarbeiter_uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND funktion_kurzbz='oezuordnung' AND NOT fixangestellt AND aktiv) as extern,
*/
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt_fix=0;
$gesamt_extern=0;
$gesamt_ws=0;
$gesamt_ss=0;
while($row = pg_fetch_object($result))
{
if($row->fix==0 && $row->extern==0)
{
continue;
}
echo '<tr>';
echo "<td><a href='".$_SERVER['PHP_SELF']."?details=true&fachbereich_kurzbz=$row->fachbereich_kurzbz&ss=$ss&ws=$ws'>$row->bezeichnung</a></td>";
echo "<td align='center'>$row->fix</td>";
echo "<td align='center'>$row->extern</td>";
echo "<td align='center'>$row->ws</td>";
echo "<td align='center'>$row->ss</td>";
echo "</tr>";
$gesamt_fix+=$row->fix;
$gesamt_extern+=$row->extern;
$gesamt_ws+=$row->ws;
$gesamt_ss+=$row->ss;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td align='center'>&nbsp;</td>";
echo "<td align='center'>&nbsp;</td>";
echo "<td align='center'><b>$gesamt_ws</b></td>";
echo "<td align='center'><b>$gesamt_ss</b></td>";
echo "</tr>";
}
echo '</tbody></table>';
}
}
?>
</body>
</html>
+9 -9
View File
@@ -75,7 +75,7 @@ echo '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Lehreinheit</title>
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<style>
@@ -197,7 +197,7 @@ if($result = pg_query($conn, $qry))
echo "<td align='right' style='border-top: 1px solid black; font-weight: bold;'>".sprintf('%.2f',$stunden_lv)."</td>";
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo "<td align='right' style='border-top: 1px solid black; font-weight: bold'>".number_format($kosten_lv,2,',','.')." &euro;</td>";
echo "<td align='right' style='border-top: 1px solid black; font-weight: bold'>".number_format($kosten_lv,2,',','.')." </td>";
echo '<td>&nbsp;</td>';
echo '</tr>';
$gesamtkosten_lva +=$kosten_lv;
@@ -238,7 +238,7 @@ if($result = pg_query($conn, $qry))
echo "<td align='right'>$row->lektor_semesterstunden</td>";
echo "<td>$gruppen</td>";
echo "<td>$row->nachname $row->vorname</td>";
echo "<td align='right'>".number_format(($row->lektor_stundensatz*$row->lektor_faktor*$row->lektor_semesterstunden),2,',','.')." &euro;</td>";
echo "<td align='right'>".number_format(($row->lektor_stundensatz*$row->lektor_faktor*$row->lektor_semesterstunden),2,',','.')." </td>";
echo '<td>&nbsp;</td>';
echo '</tr>';
$kosten_lv +=($row->lektor_stundensatz*$row->lektor_faktor*$row->lektor_semesterstunden);
@@ -253,8 +253,8 @@ if($result = pg_query($conn, $qry))
echo "<td align='right' style='border-top: 1px solid black; font-weight: bold;'>".sprintf('%.2f',$stunden_lv)."</td>";
echo '<td>&nbsp;</td>';
echo '<td>&nbsp;</td>';
echo "<td align='right' style='border-top: 1px solid black; font-weight: bold'>".number_format($kosten_lv,2,',','.')." &euro;</td>";
echo '<td align="right"><b>'.number_format($gesamtkosten_lva,2,',','.').' &euro;</b></td>';
echo "<td align='right' style='border-top: 1px solid black; font-weight: bold'>".number_format($kosten_lv,2,',','.')." </td>";
echo '<td align="right"><b>'.number_format($gesamtkosten_lva,2,',','.').' </b></td>';
echo '</tr>';
}
@@ -345,7 +345,7 @@ if($result = pg_query($conn, $qry))
$benutzer->load($row->student_uid);
echo "<td>$benutzer->nachname $benutzer->vorname</td>";
echo "<td>$row->nachname $row->vorname</td>";
echo "<td align='right'>".number_format(($row->stundensatz*$row->faktor*$row->stunden),2,',','.')." &euro;</td>";
echo "<td align='right'>".number_format(($row->stundensatz*$row->faktor*$row->stunden),2,',','.')." </td>";
echo '<td>&nbsp;</td>';
echo '</tr>';
$gesamtkosten_betreuung +=($row->stundensatz*$row->faktor*$row->stunden);
@@ -360,8 +360,8 @@ if($result = pg_query($conn, $qry))
echo "<td align='right' style='border-top: 1px solid black;'><b>".number_format($stunden_betreuung,2)."</b></td>";
echo "<td>&nbsp;</td>";
echo "<td>&nbsp;</td>";
echo "<td align='right' style='border-top: 1px solid black;'><b>".number_format($gesamtkosten_betreuung,2,',','.')." &euro;</b></td>";
echo "<td align='right' ><b>".number_format($gesamtkosten_betreuung,2,',','.')." &euro;</b></td>";
echo "<td align='right' style='border-top: 1px solid black;'><b>".number_format($gesamtkosten_betreuung,2,',','.')." </b></td>";
echo "<td align='right' ><b>".number_format($gesamtkosten_betreuung,2,',','.')." </b></td>";
echo '</tr>';
echo '<tr>';
@@ -373,7 +373,7 @@ if($result = pg_query($conn, $qry))
echo "<td>&nbsp;</td>";
echo "<td>&nbsp;</td>";
echo "<td>&nbsp;</td>";
echo "<td align='right' style='border-top: 1px solid black;'><b>".number_format(($gesamtkosten_betreuung+$gesamtkosten_lva),2,',','.')." &euro;</b></td>";
echo "<td align='right' style='border-top: 1px solid black;'><b>".number_format(($gesamtkosten_betreuung+$gesamtkosten_lva),2,',','.')." </b></td>";
echo '</tr>';
}
}
+334 -334
View File
@@ -1,335 +1,335 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/lehrveranstaltung.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/Excel/excel.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Datenbankverbindung konnte nicht hergestellt werden');
$user = get_uid();
loadVariables($conn, $user);
$stg_arr = array();
$studiengang = new studiengang($conn);
$studiengang->getAll();
foreach ($studiengang->result as $row)
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
// ****** FUNKTIONEN ******* //
function drawBetreuungen()
{
global $row, $gesamtkosten_lva, $kosten_lv, $zeile, $spalte, $stsem1, $stsem2, $last_fb, $worksheet;
global $stunden_lv, $format_bold, $format_colored, $gesamtkosten_betreuung, $stunden_betreuungen;
global $gesamtkosten_fb, $conn, $format_number, $format_number1;
$qry_fb = "SELECT
*
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person, lehre.tbl_lehrfach
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id AND
tbl_person.person_id=tbl_projektbetreuer.person_id AND
(tbl_lehreinheit.studiensemester_kurzbz='$stsem1' OR
tbl_lehreinheit.studiensemester_kurzbz='$stsem2') AND
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0 AND
tbl_lehrfach.fachbereich_kurzbz='$last_fb'
";
$gesamtkosten_betreuung=0;
if($result_fb = pg_query($conn, $qry_fb))
{
$spalte=11;
$worksheet->writeNumber($zeile, ++$spalte, $gesamtkosten_lva, $format_number);
if(pg_num_rows($result_fb)>0)
{
$zeile++;
$zeile++;
$worksheet->write($zeile, 1, "Betreuungen", $format_bold);
$spalte=2;
$worksheet->write($zeile, $spalte, "Titel", $format_colored);
$worksheet->write($zeile, ++$spalte, "", $format_colored);
$worksheet->write($zeile, ++$spalte, "", $format_colored);
$worksheet->write($zeile, ++$spalte, "", $format_colored);
$worksheet->write($zeile, ++$spalte, "Stunden", $format_colored);
$worksheet->write($zeile, ++$spalte, "Summe", $format_colored);
$worksheet->write($zeile, ++$spalte, "Student", $format_colored);
$worksheet->write($zeile, ++$spalte, "Lektor", $format_colored);
$worksheet->write($zeile, ++$spalte, "Kosten", $format_colored);
$stunden_betreuung=0;
while($row_fb = pg_fetch_object($result_fb))
{
$zeile++;
$spalte=2;
$worksheet->write($zeile, $spalte, $row_fb->titel);
$spalte+=2;
$worksheet->write($zeile, ++$spalte, '');
$worksheet->write($zeile, ++$spalte, number_format($row_fb->stunden,2));
$worksheet->write($zeile, ++$spalte, '');
$benutzer = new benutzer($conn);
$benutzer->load($row_fb->student_uid);
$worksheet->write($zeile, ++$spalte, "$benutzer->nachname $benutzer->vorname");
$worksheet->write($zeile, ++$spalte, "$row_fb->nachname $row_fb->vorname");
$worksheet->writeNumber($zeile, ++$spalte, ($row_fb->stundensatz*$row_fb->faktor*$row_fb->stunden), $format_number1);
$gesamtkosten_betreuung +=($row_fb->stundensatz*$row_fb->faktor*$row_fb->stunden);
$stunden_betreuung+=$row_fb->stunden;
}
$zeile++;
$spalte=7;
$worksheet->writeNumber($zeile, $spalte, $stunden_betreuung, $format_number);
$spalte=11;
$worksheet->writeNumber($zeile, $spalte, $gesamtkosten_betreuung, $format_number);
$spalte=12;
$worksheet->writeNumber($zeile, $spalte, $gesamtkosten_betreuung, $format_number);
}
$gesamtkosten_fb += ($gesamtkosten_betreuung+$gesamtkosten_lva);
$gesamtkosten_lva=0;
}
else
echo 'Error';
}
// ****** END FUNKTIONEN ******* //
$stsem1 = $semester_aktuell;
$stsem_obj = new studiensemester($conn);
if(substr($stsem1,0,1)=='S') //Eigentlich gehoert =='W', nur kurzfristige aenderung
$stsem2 = $stsem_obj->getNextFrom($stsem1);
else
$stsem2 = $stsem_obj->getPreviousFrom($stsem1);
$qry = "SELECT
tbl_lehrveranstaltung.kurzbz as kurzbz, tbl_lehrveranstaltung.bezeichnung as bezeichnung, tbl_lehrveranstaltung.lehrveranstaltung_id,
tbl_lehrveranstaltung.ects as ects, tbl_lehrveranstaltung.semesterstunden as semesterstunden,
tbl_lehrfach.kurzbz as lf_kurzbz, tbl_lehrfach.bezeichnung as lf_bezeichnung, tbl_lehreinheit.lehreinheit_id as lehreinheit_id,
tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz, tbl_lehreinheitmitarbeiter.semesterstunden as lektor_semesterstunden,
tbl_lehreinheitmitarbeiter.stundensatz as lektor_stundensatz, tbl_lehreinheitmitarbeiter.faktor as lektor_faktor,
tbl_person.vorname, tbl_person.nachname, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.semester,
tbl_lehrfach.fachbereich_kurzbz
FROM
lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter,
lehre.tbl_lehrfach, public.tbl_benutzer, public.tbl_person
WHERE
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehrfach.lehrfach_id=tbl_lehreinheit.lehrfach_id AND
tbl_benutzer.uid=tbl_lehreinheitmitarbeiter.mitarbeiter_uid AND
tbl_person.person_id=tbl_benutzer.person_id AND
(tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem1)."' OR
tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem2)."')
ORDER BY
tbl_lehrfach.fachbereich_kurzbz,
tbl_lehrveranstaltung.studiengang_kz,
tbl_lehrveranstaltung.semester,
tbl_lehrveranstaltung.bezeichnung,
tbl_lehrveranstaltung.lehrveranstaltung_id,
tbl_lehreinheit.lehreinheit_id";
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("LVPlanungGesamtSJ". "_" . date("Y_m_d") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("LV-Planung Gesamt");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_colored =& $workbook->addFormat();
$format_colored->setFgColor(22);
$format_colored->setBorder(1);
$format_colored->setBold();
$format_colored1 =& $workbook->addFormat();
$format_colored1->setFgColor(22);
$format_colored1->setBorder(1);
$format_colored1->setBold();
$format_number =& $workbook->addFormat();
$format_number->setNumFormat("#,##0.00");
$format_number->setBold();
$format_number1 =& $workbook->addFormat();
$format_number1->setNumFormat("#,##0.00");
$worksheet->write(0, 0,"LV-Planung für $stsem1/$stsem2", $format_bold);
$zeile=3;
$spalte=0;
$worksheet->write($zeile, $spalte,'Fachbereich', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Kurzbz', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Bezeichnung', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Lehrform', $format_colored1);
$worksheet->write($zeile, ++$spalte,'ECTS', $format_colored1);
$worksheet->write($zeile, ++$spalte,'StudentenStunden', $format_colored1);
$worksheet->write($zeile, ++$spalte,'LektorenStunden', $format_colored1);
$worksheet->write($zeile, ++$spalte,'GesamtStunden', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Gruppen', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Lektor', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Kosten', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Summe', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Gesamtkosten', $format_colored1);
if($result = pg_query($conn, $qry))
{
$last_lva='';
$stunden_lv=0;
$kosten_lv=0;
$gesamtkosten_lva=0;
$gesamtkosten_fb=0;
$last_fb='';
while($row = pg_fetch_object($result))
{
if($last_lva!=$row->lehrveranstaltung_id)
{
if($last_lva!='')
{
$zeile++;
$spalte=7;
$worksheet->write($zeile, $spalte,sprintf('%.2f',$stunden_lv), $format_bold);
$spalte=11;
$worksheet->writeNumber($zeile, $spalte, $kosten_lv, $format_number);
$gesamtkosten_lva +=$kosten_lv;
$stunden_lv=0;
$kosten_lv=0;
}
if($last_fb!=$row->fachbereich_kurzbz && $last_fb!='')
{
drawBetreuungen();
}
if($last_fb=='' || $last_fb!=$row->fachbereich_kurzbz)
{
$zeile++;
$worksheet->write($zeile, 0, $row->fachbereich_kurzbz, $format_bold);
$zeile++;
$last_fb = $row->fachbereich_kurzbz;
}
$last_lva=$row->lehrveranstaltung_id;
$zeile++;
$spalte=0;
$worksheet->write($zeile, $spalte, $row->fachbereich_kurzbz, $format_colored);
$worksheet->write($zeile, ++$spalte, $stg_arr[$row->studiengang_kz].'-'.$row->semester.' '.$row->kurzbz, $format_colored);
$worksheet->write($zeile, ++$spalte,$row->bezeichnung, $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte, $row->ects, $format_colored);
$worksheet->write($zeile, ++$spalte,$row->semesterstunden, $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
}
$gruppen='';
$qry_grp = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id='$row->lehreinheit_id'";
if($result_grp=pg_query($conn, $qry_grp))
{
while($row_grp = pg_fetch_object($result_grp))
{
if($gruppen=='')
$gruppen = ($row_grp->gruppe_kurzbz!=''?$row_grp->gruppe_kurzbz:trim($stg_arr[$row_grp->studiengang_kz].'-'.$row_grp->semester.$row_grp->verband.$row_grp->gruppe));
else
$gruppen .= ','.($row_grp->gruppe_kurzbz!=''?$row_grp->gruppe_kurzbz:trim($stg_arr[$row_grp->studiengang_kz].'-'.$row_grp->semester.$row_grp->verband.$row_grp->gruppe));
}
}
$zeile++;
$spalte=1;
$worksheet->write($zeile, ++$spalte, "$row->lf_bezeichnung ($row->lf_kurzbz)");
$worksheet->write($zeile, ++$spalte, $row->lehrform_kurzbz);
$spalte++;
$worksheet->write($zeile, ++$spalte, "");
$worksheet->write($zeile, ++$spalte, $row->lektor_semesterstunden);
$worksheet->write($zeile, ++$spalte, "");
$worksheet->write($zeile, ++$spalte, $gruppen);
$worksheet->write($zeile, ++$spalte, "$row->nachname $row->vorname");
$worksheet->writeNumber($zeile, ++$spalte, ($row->lektor_stundensatz*$row->lektor_faktor*$row->lektor_semesterstunden), $format_number1);
$kosten_lv +=($row->lektor_stundensatz*$row->lektor_faktor*$row->lektor_semesterstunden);
$stunden_lv +=$row->lektor_semesterstunden;
}
$zeile++;
$spalte=7;
$worksheet->write($zeile, $spalte,sprintf('%.2f',$stunden_lv), $format_bold);
$spalte=11;
$worksheet->writeNumber($zeile, $spalte, $kosten_lv, $format_number);
$gesamtkosten_lva +=$kosten_lv;
$stunden_lv=0;
$kosten_lv=0;
drawBetreuungen();
}
$zeile++;
$spalte=8;
$worksheet->write($zeile, $spalte, 'Gesamt:', $format_bold);
$spalte=12;
$worksheet->writeNumber($zeile, $spalte, $gesamtkosten_fb, $format_number);
$worksheet->setColumn(0, 0, 30); //FB
$worksheet->setColumn(0, 1, 15); //Kurzbz
$worksheet->setColumn(0, 2, 40); //bezeichnung
$worksheet->setColumn(0, 3, 5); //Lehrform
$worksheet->setColumn(0, 4, 5); //ECTS
$worksheet->setColumn(0, 5, 10); //Studentenstuden
$worksheet->setColumn(0, 6, 10); //LektorStunden
$worksheet->setColumn(0, 7, 10); //Gesamtstunden
$worksheet->setColumn(0, 8, 10); //Gruppen
$worksheet->setColumn(0, 9, 10); //Lektor
$worksheet->setColumn(0, 10, 10); //Kosten
$worksheet->setColumn(0, 11, 20); //Gesamtkosten
$workbook->close();
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/lehrveranstaltung.class.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/Excel/excel.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Datenbankverbindung konnte nicht hergestellt werden');
$user = get_uid();
loadVariables($conn, $user);
$stg_arr = array();
$studiengang = new studiengang($conn);
$studiengang->getAll();
foreach ($studiengang->result as $row)
$stg_arr[$row->studiengang_kz] = $row->kuerzel;
// ****** FUNKTIONEN ******* //
function drawBetreuungen()
{
global $row, $gesamtkosten_lva, $kosten_lv, $zeile, $spalte, $stsem1, $stsem2, $last_fb, $worksheet;
global $stunden_lv, $format_bold, $format_colored, $gesamtkosten_betreuung, $stunden_betreuungen;
global $gesamtkosten_fb, $conn, $format_number, $format_number1;
$qry_fb = "SELECT
*
FROM
lehre.tbl_projektarbeit, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung, lehre.tbl_projektbetreuer, public.tbl_person, lehre.tbl_lehrfach
WHERE
tbl_projektarbeit.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND
tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND
tbl_projektarbeit.projektarbeit_id=tbl_projektbetreuer.projektarbeit_id AND
tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id AND
tbl_person.person_id=tbl_projektbetreuer.person_id AND
(tbl_lehreinheit.studiensemester_kurzbz='$stsem1' OR
tbl_lehreinheit.studiensemester_kurzbz='$stsem2') AND
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stundensatz*tbl_projektbetreuer.stunden)>0 AND
tbl_lehrfach.fachbereich_kurzbz='$last_fb'
";
$gesamtkosten_betreuung=0;
if($result_fb = pg_query($conn, $qry_fb))
{
$spalte=11;
$worksheet->writeNumber($zeile, ++$spalte, $gesamtkosten_lva, $format_number);
if(pg_num_rows($result_fb)>0)
{
$zeile++;
$zeile++;
$worksheet->write($zeile, 1, "Betreuungen", $format_bold);
$spalte=2;
$worksheet->write($zeile, $spalte, "Titel", $format_colored);
$worksheet->write($zeile, ++$spalte, "", $format_colored);
$worksheet->write($zeile, ++$spalte, "", $format_colored);
$worksheet->write($zeile, ++$spalte, "", $format_colored);
$worksheet->write($zeile, ++$spalte, "Stunden", $format_colored);
$worksheet->write($zeile, ++$spalte, "Summe", $format_colored);
$worksheet->write($zeile, ++$spalte, "Student", $format_colored);
$worksheet->write($zeile, ++$spalte, "Lektor", $format_colored);
$worksheet->write($zeile, ++$spalte, "Kosten", $format_colored);
$stunden_betreuung=0;
while($row_fb = pg_fetch_object($result_fb))
{
$zeile++;
$spalte=2;
$worksheet->write($zeile, $spalte, $row_fb->titel);
$spalte+=2;
$worksheet->write($zeile, ++$spalte, '');
$worksheet->write($zeile, ++$spalte, number_format($row_fb->stunden,2));
$worksheet->write($zeile, ++$spalte, '');
$benutzer = new benutzer($conn);
$benutzer->load($row_fb->student_uid);
$worksheet->write($zeile, ++$spalte, "$benutzer->nachname $benutzer->vorname");
$worksheet->write($zeile, ++$spalte, "$row_fb->nachname $row_fb->vorname");
$worksheet->writeNumber($zeile, ++$spalte, ($row_fb->stundensatz*$row_fb->faktor*$row_fb->stunden), $format_number1);
$gesamtkosten_betreuung +=($row_fb->stundensatz*$row_fb->faktor*$row_fb->stunden);
$stunden_betreuung+=$row_fb->stunden;
}
$zeile++;
$spalte=7;
$worksheet->writeNumber($zeile, $spalte, $stunden_betreuung, $format_number);
$spalte=11;
$worksheet->writeNumber($zeile, $spalte, $gesamtkosten_betreuung, $format_number);
$spalte=12;
$worksheet->writeNumber($zeile, $spalte, $gesamtkosten_betreuung, $format_number);
}
$gesamtkosten_fb += ($gesamtkosten_betreuung+$gesamtkosten_lva);
$gesamtkosten_lva=0;
}
else
echo 'Error';
}
// ****** END FUNKTIONEN ******* //
$stsem1 = $semester_aktuell;
$stsem_obj = new studiensemester($conn);
if(substr($stsem1,0,1)=='S') //Eigentlich gehoert =='W', nur kurzfristige aenderung
$stsem2 = $stsem_obj->getNextFrom($stsem1);
else
$stsem2 = $stsem_obj->getPreviousFrom($stsem1);
$qry = "SELECT
tbl_lehrveranstaltung.kurzbz as kurzbz, tbl_lehrveranstaltung.bezeichnung as bezeichnung, tbl_lehrveranstaltung.lehrveranstaltung_id,
tbl_lehrveranstaltung.ects as ects, tbl_lehrveranstaltung.semesterstunden as semesterstunden,
tbl_lehrfach.kurzbz as lf_kurzbz, tbl_lehrfach.bezeichnung as lf_bezeichnung, tbl_lehreinheit.lehreinheit_id as lehreinheit_id,
tbl_lehreinheit.lehrform_kurzbz as lehrform_kurzbz, tbl_lehreinheitmitarbeiter.semesterstunden as lektor_semesterstunden,
tbl_lehreinheitmitarbeiter.stundensatz as lektor_stundensatz, tbl_lehreinheitmitarbeiter.faktor as lektor_faktor,
tbl_person.vorname, tbl_person.nachname, tbl_lehrveranstaltung.studiengang_kz, tbl_lehrveranstaltung.semester,
tbl_lehrfach.fachbereich_kurzbz
FROM
lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehreinheitmitarbeiter,
lehre.tbl_lehrfach, public.tbl_benutzer, public.tbl_person
WHERE
tbl_lehrveranstaltung.lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id AND
tbl_lehreinheit.lehreinheit_id=tbl_lehreinheitmitarbeiter.lehreinheit_id AND
tbl_lehrfach.lehrfach_id=tbl_lehreinheit.lehrfach_id AND
tbl_benutzer.uid=tbl_lehreinheitmitarbeiter.mitarbeiter_uid AND
tbl_person.person_id=tbl_benutzer.person_id AND
(tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem1)."' OR
tbl_lehreinheit.studiensemester_kurzbz='".addslashes($stsem2)."')
ORDER BY
tbl_lehrfach.fachbereich_kurzbz,
tbl_lehrveranstaltung.studiengang_kz,
tbl_lehrveranstaltung.semester,
tbl_lehrveranstaltung.bezeichnung,
tbl_lehrveranstaltung.lehrveranstaltung_id,
tbl_lehreinheit.lehreinheit_id";
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("LVPlanungGesamtSJ". "_" . date("Y_m_d") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("LV-Planung Gesamt");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_colored =& $workbook->addFormat();
$format_colored->setFgColor(22);
$format_colored->setBorder(1);
$format_colored->setBold();
$format_colored1 =& $workbook->addFormat();
$format_colored1->setFgColor(22);
$format_colored1->setBorder(1);
$format_colored1->setBold();
$format_number =& $workbook->addFormat();
$format_number->setNumFormat("#,##0.00");
$format_number->setBold();
$format_number1 =& $workbook->addFormat();
$format_number1->setNumFormat("#,##0.00");
$worksheet->write(0, 0,"LV-Planung für $stsem1/$stsem2", $format_bold);
$zeile=3;
$spalte=0;
$worksheet->write($zeile, $spalte,'Fachbereich', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Kurzbz', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Bezeichnung', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Lehrform', $format_colored1);
$worksheet->write($zeile, ++$spalte,'ECTS', $format_colored1);
$worksheet->write($zeile, ++$spalte,'StudentenStunden', $format_colored1);
$worksheet->write($zeile, ++$spalte,'LektorenStunden', $format_colored1);
$worksheet->write($zeile, ++$spalte,'GesamtStunden', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Gruppen', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Lektor', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Kosten', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Summe', $format_colored1);
$worksheet->write($zeile, ++$spalte,'Gesamtkosten', $format_colored1);
if($result = pg_query($conn, $qry))
{
$last_lva='';
$stunden_lv=0;
$kosten_lv=0;
$gesamtkosten_lva=0;
$gesamtkosten_fb=0;
$last_fb='';
while($row = pg_fetch_object($result))
{
if($last_lva!=$row->lehrveranstaltung_id)
{
if($last_lva!='')
{
$zeile++;
$spalte=7;
$worksheet->write($zeile, $spalte,sprintf('%.2f',$stunden_lv), $format_bold);
$spalte=11;
$worksheet->writeNumber($zeile, $spalte, $kosten_lv, $format_number);
$gesamtkosten_lva +=$kosten_lv;
$stunden_lv=0;
$kosten_lv=0;
}
if($last_fb!=$row->fachbereich_kurzbz && $last_fb!='')
{
drawBetreuungen();
}
if($last_fb=='' || $last_fb!=$row->fachbereich_kurzbz)
{
$zeile++;
$worksheet->write($zeile, 0, $row->fachbereich_kurzbz, $format_bold);
$zeile++;
$last_fb = $row->fachbereich_kurzbz;
}
$last_lva=$row->lehrveranstaltung_id;
$zeile++;
$spalte=0;
$worksheet->write($zeile, $spalte, $row->fachbereich_kurzbz, $format_colored);
$worksheet->write($zeile, ++$spalte, $stg_arr[$row->studiengang_kz].'-'.$row->semester.' '.$row->kurzbz, $format_colored);
$worksheet->write($zeile, ++$spalte,$row->bezeichnung, $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte, $row->ects, $format_colored);
$worksheet->write($zeile, ++$spalte,$row->semesterstunden, $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
$worksheet->write($zeile, ++$spalte,"", $format_colored);
}
$gruppen='';
$qry_grp = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id='$row->lehreinheit_id'";
if($result_grp=pg_query($conn, $qry_grp))
{
while($row_grp = pg_fetch_object($result_grp))
{
if($gruppen=='')
$gruppen = ($row_grp->gruppe_kurzbz!=''?$row_grp->gruppe_kurzbz:trim($stg_arr[$row_grp->studiengang_kz].'-'.$row_grp->semester.$row_grp->verband.$row_grp->gruppe));
else
$gruppen .= ','.($row_grp->gruppe_kurzbz!=''?$row_grp->gruppe_kurzbz:trim($stg_arr[$row_grp->studiengang_kz].'-'.$row_grp->semester.$row_grp->verband.$row_grp->gruppe));
}
}
$zeile++;
$spalte=1;
$worksheet->write($zeile, ++$spalte, "$row->lf_bezeichnung ($row->lf_kurzbz)");
$worksheet->write($zeile, ++$spalte, $row->lehrform_kurzbz);
$spalte++;
$worksheet->write($zeile, ++$spalte, "");
$worksheet->write($zeile, ++$spalte, $row->lektor_semesterstunden);
$worksheet->write($zeile, ++$spalte, "");
$worksheet->write($zeile, ++$spalte, $gruppen);
$worksheet->write($zeile, ++$spalte, "$row->nachname $row->vorname");
$worksheet->writeNumber($zeile, ++$spalte, ($row->lektor_stundensatz*$row->lektor_faktor*$row->lektor_semesterstunden), $format_number1);
$kosten_lv +=($row->lektor_stundensatz*$row->lektor_faktor*$row->lektor_semesterstunden);
$stunden_lv +=$row->lektor_semesterstunden;
}
$zeile++;
$spalte=7;
$worksheet->write($zeile, $spalte,sprintf('%.2f',$stunden_lv), $format_bold);
$spalte=11;
$worksheet->writeNumber($zeile, $spalte, $kosten_lv, $format_number);
$gesamtkosten_lva +=$kosten_lv;
$stunden_lv=0;
$kosten_lv=0;
drawBetreuungen();
}
$zeile++;
$spalte=8;
$worksheet->write($zeile, $spalte, 'Gesamt:', $format_bold);
$spalte=12;
$worksheet->writeNumber($zeile, $spalte, $gesamtkosten_fb, $format_number);
$worksheet->setColumn(0, 0, 30); //FB
$worksheet->setColumn(0, 1, 15); //Kurzbz
$worksheet->setColumn(0, 2, 40); //bezeichnung
$worksheet->setColumn(0, 3, 5); //Lehrform
$worksheet->setColumn(0, 4, 5); //ECTS
$worksheet->setColumn(0, 5, 10); //Studentenstuden
$worksheet->setColumn(0, 6, 10); //LektorStunden
$worksheet->setColumn(0, 7, 10); //Gesamtstunden
$worksheet->setColumn(0, 8, 10); //Gruppen
$worksheet->setColumn(0, 9, 10); //Lektor
$worksheet->setColumn(0, 10, 10); //Kosten
$worksheet->setColumn(0, 11, 20); //Gesamtkosten
$workbook->close();
?>
+203 -203
View File
@@ -1,203 +1,203 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/**
* Exportiert die Mitarbeiterdaten in ein Excel File.
* Der Mitarbeiterfilter und die zu exportierenden Spalten werden per GET uebergeben.
* Die Adressen der Mitarbeiter werden immer dazugehaengt
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/mitarbeiter.class.php');
require_once('../../include/Excel/excel.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$user = get_uid();
loadVariables($conn, $user);
//Parameter holen
if (isset($_GET['fix']))
$fix = $_GET['fix'];
else
$fix=null;
if (isset($_GET['stgl']))
$stgl = ($_GET['stgl']=='true'?true:false);
else
$stgl=null;
if (isset($_GET['fbl']))
$fbl = $_GET['fbl'];
else
$fbl=null;
if (isset($_GET['aktiv']))
$aktiv = $_GET['aktiv'];
else
$aktiv=null;
if (isset($_GET['karenziert']))
$karenziert = $_GET['karenziert'];
else
$karenziert=null;
if (isset($_GET['ausgeschieden']))
$ausgeschieden = $_GET['ausgeschieden'];
else
$ausgeschieden=null;
if (isset($_GET['zustelladresse']))
$zustelladresse = $_GET['zustelladresse'];
else
$zustelladresse = null;
//die Spalten die Exportiert werden sollen, werden per GET uebergeben
//spalte1=nachname, spalte2=vorname, spalte3=gebdatum, ...
$anzSpalten=0;
$varname='spalte'.(string)$anzSpalten;
while (isset($_GET[$varname]))
{
$spalte[$anzSpalten]=$_GET[$varname];
$anzSpalten++;
$varname='spalte'.(string)$anzSpalten;
}
$zustelladresse=true;
// Mitarbeiter holen
$mitarbeiterDAO=new mitarbeiter($conn);
$mitarbeiterDAO->getPersonal($fix, $stgl, $fbl, $aktiv, $karenziert, $ausgeschieden, $semester_aktuell);
//Sortieren der Eintraege nach Nachname, Vorname
//Umlaute werden ersetzt damit diese nicht unten angereiht werden
//sondern richtig mitsortiert
$vorname=array();
$nachname=array();
$umlaute = array('ö','Ö','ü','Ü','ä','Ä');
$umlauterep = array('o','O','u','U','a','A');
foreach ($mitarbeiterDAO->result as $key=>$foo)
{
$vorname[$key]=str_replace($umlaute, $umlauterep, $foo->vorname);
$nachname[$key]=str_replace($umlaute, $umlauterep, $foo->nachname);
}
array_multisort($nachname, SORT_ASC, $vorname, SORT_ASC, $mitarbeiterDAO->result);
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Mitarbeiter". "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Mitarbeiter");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
//Zeilenueberschriften ausgeben
for ($i=0;$i<$anzSpalten;$i++)
$worksheet->write(0,$i,strtoupper(str_replace('_bezeichnung','',$spalte[$i])), $format_bold);
$worksheet->write(0,$i,"STRASSE", $format_bold);
$worksheet->write(0,$i+1,"PLZ", $format_bold);
$worksheet->write(0,$i+2,"ORT", $format_bold);
$worksheet->write(0,$i+3,"FIRMENNAME", $format_bold);
//Maximale Spaltenbreite ermitteln damit sie am Schluss gesetzt werden kann
$j=1;
$maxlength = array();
for ($i=0;$i<$anzSpalten;$i++)
$maxlength[$i]=strlen(str_replace('_bezeichnung','',$spalte[$i]));
$maxlength[$i]=strlen('STRASSE');
$maxlength[$i+1]=strlen('PLZ');
$maxlength[$i+2]=strlen('ORT');
$maxlength[$i+3]=strlen('FIRMENNAME');
//Zeilen (Mitarbeiter) ausgeben
foreach ($mitarbeiterDAO->result as $mitarbeiter)
{
//Spalten ausgeben
for ($i=0;$i<$anzSpalten;$i++)
{
if(is_bool($mitarbeiter->$spalte[$i]))
$mitarbeiter->$spalte[$i] = ($mitarbeiter->$spalte[$i]?'Ja':'Nein');
if(strlen($mitarbeiter->$spalte[$i])>$maxlength[$i])
$maxlength[$i] = strlen($mitarbeiter->$spalte[$i]);
$worksheet->write($j,$i, $mitarbeiter->$spalte[$i]);
}
//Zustelladresse aus der Datenbank holen und dazuhaengen
$qry = "SELECT * FROM public.tbl_adresse WHERE person_id='$mitarbeiter->person_id' AND zustelladresse=true LIMIT 1";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(strlen($row->strasse)>$maxlength[$i])
$maxlength[$i]=strlen($row->strasse);
$worksheet->write($j,$i, $row->strasse);
if(strlen($row->plz)>$maxlength[$i+1])
$maxlength[$i+1]=strlen($row->plz);
$worksheet->write($j,$i+1, $row->plz);
if(strlen($row->ort)>$maxlength[$i+2])
$maxlength[$i+2]=strlen($row->ort);
$worksheet->write($j,$i+2, $row->ort);
if($row->firma_id!='')
{
$qry = "SELECT * FROM public.tbl_firma WHERE firma_id='$row->firma_id'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(strlen($row->name)>$maxlength[$i+3])
$maxlength[$i+3]=strlen($row->name);
$worksheet->write($j,$i+3, $row->name);
}
}
}
}
}
$j++;
}
//Die Breite der Spalten setzen
for ($i=0;$i<$anzSpalten;$i++)
$worksheet->setColumn($i, $i, $maxlength[$i]+2);
$worksheet->setColumn($i, $i, $maxlength[$i]+2);
$worksheet->setColumn($i+1, $i+1, $maxlength[$i+1]+2);
$worksheet->setColumn($i+2, $i+2, $maxlength[$i+2]+2);
$workbook->close();
?>
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/**
* Exportiert die Mitarbeiterdaten in ein Excel File.
* Der Mitarbeiterfilter und die zu exportierenden Spalten werden per GET uebergeben.
* Die Adressen der Mitarbeiter werden immer dazugehaengt
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/mitarbeiter.class.php');
require_once('../../include/Excel/excel.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$user = get_uid();
loadVariables($conn, $user);
//Parameter holen
if (isset($_GET['fix']))
$fix = $_GET['fix'];
else
$fix=null;
if (isset($_GET['stgl']))
$stgl = ($_GET['stgl']=='true'?true:false);
else
$stgl=null;
if (isset($_GET['fbl']))
$fbl = $_GET['fbl'];
else
$fbl=null;
if (isset($_GET['aktiv']))
$aktiv = $_GET['aktiv'];
else
$aktiv=null;
if (isset($_GET['karenziert']))
$karenziert = $_GET['karenziert'];
else
$karenziert=null;
if (isset($_GET['ausgeschieden']))
$ausgeschieden = $_GET['ausgeschieden'];
else
$ausgeschieden=null;
if (isset($_GET['zustelladresse']))
$zustelladresse = $_GET['zustelladresse'];
else
$zustelladresse = null;
//die Spalten die Exportiert werden sollen, werden per GET uebergeben
//spalte1=nachname, spalte2=vorname, spalte3=gebdatum, ...
$anzSpalten=0;
$varname='spalte'.(string)$anzSpalten;
while (isset($_GET[$varname]))
{
$spalte[$anzSpalten]=$_GET[$varname];
$anzSpalten++;
$varname='spalte'.(string)$anzSpalten;
}
$zustelladresse=true;
// Mitarbeiter holen
$mitarbeiterDAO=new mitarbeiter($conn);
$mitarbeiterDAO->getPersonal($fix, $stgl, $fbl, $aktiv, $karenziert, $ausgeschieden, $semester_aktuell);
//Sortieren der Eintraege nach Nachname, Vorname
//Umlaute werden ersetzt damit diese nicht unten angereiht werden
//sondern richtig mitsortiert
$vorname=array();
$nachname=array();
$umlaute = array('ö','Ö','ü','Ü','ä','Ä');
$umlauterep = array('o','O','u','U','a','A');
foreach ($mitarbeiterDAO->result as $key=>$foo)
{
$vorname[$key]=str_replace($umlaute, $umlauterep, $foo->vorname);
$nachname[$key]=str_replace($umlaute, $umlauterep, $foo->nachname);
}
array_multisort($nachname, SORT_ASC, $vorname, SORT_ASC, $mitarbeiterDAO->result);
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Mitarbeiter". "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Mitarbeiter");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
//Zeilenueberschriften ausgeben
for ($i=0;$i<$anzSpalten;$i++)
$worksheet->write(0,$i,strtoupper(str_replace('_bezeichnung','',$spalte[$i])), $format_bold);
$worksheet->write(0,$i,"STRASSE", $format_bold);
$worksheet->write(0,$i+1,"PLZ", $format_bold);
$worksheet->write(0,$i+2,"ORT", $format_bold);
$worksheet->write(0,$i+3,"FIRMENNAME", $format_bold);
//Maximale Spaltenbreite ermitteln damit sie am Schluss gesetzt werden kann
$j=1;
$maxlength = array();
for ($i=0;$i<$anzSpalten;$i++)
$maxlength[$i]=strlen(str_replace('_bezeichnung','',$spalte[$i]));
$maxlength[$i]=strlen('STRASSE');
$maxlength[$i+1]=strlen('PLZ');
$maxlength[$i+2]=strlen('ORT');
$maxlength[$i+3]=strlen('FIRMENNAME');
//Zeilen (Mitarbeiter) ausgeben
foreach ($mitarbeiterDAO->result as $mitarbeiter)
{
//Spalten ausgeben
for ($i=0;$i<$anzSpalten;$i++)
{
if(is_bool($mitarbeiter->$spalte[$i]))
$mitarbeiter->$spalte[$i] = ($mitarbeiter->$spalte[$i]?'Ja':'Nein');
if(strlen($mitarbeiter->$spalte[$i])>$maxlength[$i])
$maxlength[$i] = strlen($mitarbeiter->$spalte[$i]);
$worksheet->write($j,$i, $mitarbeiter->$spalte[$i]);
}
//Zustelladresse aus der Datenbank holen und dazuhaengen
$qry = "SELECT * FROM public.tbl_adresse WHERE person_id='$mitarbeiter->person_id' AND zustelladresse=true LIMIT 1";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(strlen($row->strasse)>$maxlength[$i])
$maxlength[$i]=strlen($row->strasse);
$worksheet->write($j,$i, $row->strasse);
if(strlen($row->plz)>$maxlength[$i+1])
$maxlength[$i+1]=strlen($row->plz);
$worksheet->write($j,$i+1, $row->plz);
if(strlen($row->ort)>$maxlength[$i+2])
$maxlength[$i+2]=strlen($row->ort);
$worksheet->write($j,$i+2, $row->ort);
if($row->firma_id!='')
{
$qry = "SELECT * FROM public.tbl_firma WHERE firma_id='$row->firma_id'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
if(strlen($row->name)>$maxlength[$i+3])
$maxlength[$i+3]=strlen($row->name);
$worksheet->write($j,$i+3, $row->name);
}
}
}
}
}
$j++;
}
//Die Breite der Spalten setzen
for ($i=0;$i<$anzSpalten;$i++)
$worksheet->setColumn($i, $i, $maxlength[$i]+2);
$worksheet->setColumn($i, $i, $maxlength[$i]+2);
$worksheet->setColumn($i+1, $i+1, $maxlength[$i+1]+2);
$worksheet->setColumn($i+2, $i+2, $maxlength[$i+2]+2);
$workbook->close();
?>
+196 -196
View File
@@ -1,197 +1,197 @@
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/*
* Generiert eine Liste mit den Institutszuordnungen der Mitarbeiter
* und einer aufschluesselung ob diese Fixangestellt sind
* Bei einem klick auf das Institut wird die Detailansicht angezeigt, in der die einzelnen
* Lektoren Namentlich aufscheinen.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/fachbereich.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
if(isset($_GET['details']) && isset($_GET['fachbereich_kurzbz']))
{
$fachbereich = new fachbereich($conn);
if(!$fachbereich->load($_GET['fachbereich_kurzbz']))
die('Institut existiert nicht');
echo "<h2>Mitarbeiterstatistik (Hauptzuordnung) - ".$fachbereich->bezeichnung.'</h2>';
$qry = "SELECT distinct uid, nachname, vorname, titelpre, titelpost
FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid)
WHERE fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."'
AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv
ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
echo "Fixangestellt - Anzahl: ".pg_num_rows($result)."
<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>TitelPre</th>
<th>Nachname</th>
<th>Vorname</th>
<th>Titelpost</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->titelpre</td>";
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->titelpost</td>";
echo "</tr>";
}
}
echo '</tbody></table>';
$qry = "SELECT distinct uid, nachname, vorname, titelpre, titelpost
FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid)
WHERE fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."'
AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv
ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
echo "<br /><br />Freiangestellt - Anzahl: ".pg_num_rows($result)."
<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>TitelPre</th>
<th>Nachname</th>
<th>Vorname</th>
<th>Titelpost</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->titelpre</td>";
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->titelpost</td>";
echo "</tr>";
}
}
echo '</tbody></table>';
}
else
{
echo "<h2>Mitarbeiterstatistik (Hauptzuordnung)";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<br><br>';
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th colspan=2>Anzahl</th>
</tr>
<tr>
<th>Institute</th>
<th>fix</th>
<th>extern</th>
</tr>
</thead>
<tbody>
";
//Bachelor
$qry = "SELECT
bezeichnung, fachbereich_kurzbz,
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as fix,
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as extern
FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung";
if($result = pg_query($conn, $qry))
{
$gesamt_fix=0;
$gesamt_extern=0;
while($row = pg_fetch_object($result))
{
if($row->fix==0 && $row->extern==0)
{
continue;
}
echo '<tr>';
echo "<td><a href='".$_SERVER['PHP_SELF']."?details=true&fachbereich_kurzbz=".$row->fachbereich_kurzbz."'>$row->bezeichnung</a></td>";
echo "<td align='center'>$row->fix</td>";
echo "<td align='center'>$row->extern</td>";
echo "</tr>";
$gesamt_fix+=$row->fix;
$gesamt_extern+=$row->extern;
}
$qry = "SELECT
(SELECT count(*) FROM campus.vw_mitarbeiter WHERE uid NOT in(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung') AND aktiv AND fixangestellt) as fix,
(SELECT count(*) FROM campus.vw_mitarbeiter WHERE uid NOT in(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung') AND aktiv AND NOT fixangestellt) as extern
";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>Nicht zugeordnet</td>";
echo "<td align='center'>$row->fix</td>";
echo "<td align='center'>$row->extern</td>";
echo "</tr>";
$gesamt_fix += $row->fix;
$gesamt_extern += $row->extern;
}
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td align='center'><b>$gesamt_fix</b></td>";
echo "<td align='center'><b>$gesamt_extern</b></td>";
echo "</tr>";
}
echo '</tbody></table>';
}
?>
</body>
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/*
* Generiert eine Liste mit den Institutszuordnungen der Mitarbeiter
* und einer aufschluesselung ob diese Fixangestellt sind
* Bei einem klick auf das Institut wird die Detailansicht angezeigt, in der die einzelnen
* Lektoren Namentlich aufscheinen.
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/fachbereich.class.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
if(isset($_GET['details']) && isset($_GET['fachbereich_kurzbz']))
{
$fachbereich = new fachbereich($conn);
if(!$fachbereich->load($_GET['fachbereich_kurzbz']))
die('Institut existiert nicht');
echo "<h2>Mitarbeiterstatistik (Hauptzuordnung) - ".$fachbereich->bezeichnung.'</h2>';
$qry = "SELECT distinct uid, nachname, vorname, titelpre, titelpost
FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid)
WHERE fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."'
AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv
ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
echo "Fixangestellt - Anzahl: ".pg_num_rows($result)."
<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>TitelPre</th>
<th>Nachname</th>
<th>Vorname</th>
<th>Titelpost</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->titelpre</td>";
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->titelpost</td>";
echo "</tr>";
}
}
echo '</tbody></table>';
$qry = "SELECT distinct uid, nachname, vorname, titelpre, titelpost
FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid)
WHERE fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."'
AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv
ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
{
echo "<br /><br />Freiangestellt - Anzahl: ".pg_num_rows($result)."
<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th>TitelPre</th>
<th>Nachname</th>
<th>Vorname</th>
<th>Titelpost</th>
</tr>
</thead>
<tbody>
";
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>$row->titelpre</td>";
echo "<td>$row->nachname</td>";
echo "<td>$row->vorname</td>";
echo "<td>$row->titelpost</td>";
echo "</tr>";
}
}
echo '</tbody></table>';
}
else
{
echo "<h2>Mitarbeiterstatistik (Hauptzuordnung)";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<br><br>';
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th colspan=2>Anzahl</th>
</tr>
<tr>
<th>Institute</th>
<th>fix</th>
<th>extern</th>
</tr>
</thead>
<tbody>
";
//Bachelor
$qry = "SELECT
bezeichnung, fachbereich_kurzbz,
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as fix,
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as extern
FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung";
if($result = pg_query($conn, $qry))
{
$gesamt_fix=0;
$gesamt_extern=0;
while($row = pg_fetch_object($result))
{
if($row->fix==0 && $row->extern==0)
{
continue;
}
echo '<tr>';
echo "<td><a href='".$_SERVER['PHP_SELF']."?details=true&fachbereich_kurzbz=".$row->fachbereich_kurzbz."'>$row->bezeichnung</a></td>";
echo "<td align='center'>$row->fix</td>";
echo "<td align='center'>$row->extern</td>";
echo "</tr>";
$gesamt_fix+=$row->fix;
$gesamt_extern+=$row->extern;
}
$qry = "SELECT
(SELECT count(*) FROM campus.vw_mitarbeiter WHERE uid NOT in(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung') AND aktiv AND fixangestellt) as fix,
(SELECT count(*) FROM campus.vw_mitarbeiter WHERE uid NOT in(SELECT uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung') AND aktiv AND NOT fixangestellt) as extern
";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
{
echo '<tr>';
echo "<td>Nicht zugeordnet</td>";
echo "<td align='center'>$row->fix</td>";
echo "<td align='center'>$row->extern</td>";
echo "</tr>";
$gesamt_fix += $row->fix;
$gesamt_extern += $row->extern;
}
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td align='center'><b>$gesamt_fix</b></td>";
echo "<td align='center'><b>$gesamt_extern</b></td>";
echo "</tr>";
}
echo '</tbody></table>';
}
?>
</body>
</html>
+1 -1
View File
@@ -304,7 +304,7 @@ else
<html>
<head>
<title>Lehreinheit</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<style type="text/css">
td, th
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+487 -487
View File
@@ -1,487 +1,487 @@
<?php
/* Copyright (C) 2009 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]>,
* Rudolf Hangl <[email protected]> and
* Gerald Simane-Sequens <[email protected]>.
*/
/**
* Exportiert die Daten von Prestudenten und Studenten in ein Excel File.
*
* Parameter:
* GET:
* studiensemester_kurzbz ... Studiensemester
* POST:
* data ... Liste der PrestudentIDs der Personen die im Export aufscheinen sollen getrennt durch ','
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/Excel/excel.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$user = get_uid();
$datum_obj = new datum();
loadVariables($conn, $user);
//Parameter holen
$data = $_REQUEST['data'];
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
//$typ = $_GET['typ'];
$maxlength= array();
$zeile=1;
$zgv_arr=array();
$zgvmas_arr=array();
//ZGV laden
$qry = "SELECT * FROM bis.tbl_zgv ORDER BY zgv_kurzbz";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$zgv_arr[$row->zgv_code]=$row->zgv_kurzbz;
}
}
//ZGV Master laden
$qry = "SELECT * FROM bis.tbl_zgvmaster ORDER BY zgvmas_kurzbz";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$zgvmas_arr[$row->zgvmas_code]=$row->zgvmas_kurzbz;
}
}
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Studenten". "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Studenten");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
//Zeilenueberschriften ausgeben
$i=0;
$zeile=1;
$worksheet->write($zeile,$i,"ANREDE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"TITELPRE", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"NACHNAME", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"VORNAME", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"TITELPOST", $format_bold);
$maxlength[$i]=9;
$worksheet->write($zeile,++$i,"EMail Privat", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"GEBURTSDATUM", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"PERSONENKENNZEICHEN", $format_bold);
$maxlength[$i]=19;
$worksheet->write($zeile,++$i,"STAATSBÜRGERSCHAFT", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"SVNR", $format_bold);
$maxlength[$i]=4;
$worksheet->write($zeile,++$i,"ERSATZKENNZEICHEN", $format_bold);
$maxlength[$i]=17;
$worksheet->write($zeile,++$i,"GESCHLECHT", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"SEMESTER", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"VERBAND", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"GRUPPE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Ort", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Datum", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV Master", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Master Ort", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Master Datum", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"STATUS", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"STATI IN ANDEREN STUDIENGÄNGEN", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"EMail Intern", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"TELEFON", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"GRUPPEN", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"UID", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"ORGFORM", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"VORNAMEN", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"RT_PUNKTE1", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"RT_PUNKTE2", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"RT_GESAMTPUNKTE", $format_bold);
$maxlength[$i]=18;
$zeile++;
$ids = explode(';',$data);
$prestudent_ids = '';
foreach ($ids as $id)
{
if($id!='')
{
if($prestudent_ids!='')
$prestudent_ids .= ',';
$prestudent_ids .= "'$id'";
}
}
// Student holen
$qry = "SELECT *, tbl_prestudent.studiengang_kz as prestgkz FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student USING(prestudent_id) WHERE prestudent_id in($prestudent_ids) ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
while($row = pg_fetch_object($result))
{
draw_content($row);
$zeile++;
}
function draw_content($row)
{
global $maxlength, $datum_obj;
global $zeile, $worksheet, $conn;
global $zgv_arr, $zgvmas_arr;
global $studiensemester_kurzbz;
$prestudent = new prestudent($conn, null, null);
$prestudent->getLastStatus($row->prestudent_id);
$status = $prestudent->rolle_kurzbz;
$orgform = $prestudent->orgform_kurzbz;
$i=0;
//Anrede
if(strlen($row->anrede)>$maxlength[$i])
$maxlength[$i] = strlen($row->anrede);
$worksheet->write($zeile,$i, $row->anrede);
$i++;
//Titelpre
if(strlen($row->titelpre)>$maxlength[$i])
$maxlength[$i] = strlen($row->titelpre);
$worksheet->write($zeile,$i, $row->titelpre);
$i++;
//Nachname
if(strlen($row->nachname)>$maxlength[$i])
$maxlength[$i] = strlen($row->nachname);
$worksheet->write($zeile,$i, $row->nachname);
$i++;
//Vorname
if(strlen($row->vorname)>$maxlength[$i])
$maxlength[$i] = strlen($row->vorname);
$worksheet->write($zeile,$i, $row->vorname);
$i++;
//Titelpost
if(strlen($row->titelpost)>$maxlength[$i])
$maxlength[$i] = strlen($row->titelpost);
$worksheet->write($zeile,$i, $row->titelpost);
$i++;
//Email Privat
//ZustellEmailAdresse aus der Datenbank holen und dazuhaengen
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp='email' AND person_id='$row->person_id' AND zustellung=true ORDER BY kontakt_id DESC LIMIT 1";
if($result_1 = pg_query($conn, $qry_1))
{
if($row_1 = pg_fetch_object($result_1))
{
if(strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=strlen($row_1->kontakt);
$worksheet->write($zeile,$i, $row_1->kontakt);
}
}
$i++;
//Geburtsdatum
if(strlen($row->gebdatum)>$maxlength[$i])
$maxlength[$i] = strlen($row->gebdatum);
$worksheet->write($zeile,$i, $datum_obj->convertISODate($row->gebdatum));
$i++;
//Personenkennzeichen
if(isset($row->matrikelnr))
{
if(strlen($row->matrikelnr)>$maxlength[$i])
$maxlength[$i] = strlen($row->matrikelnr);
$worksheet->writeString($zeile,$i, $row->matrikelnr);
}
$i++;
//Staatsbuergerschaft
if(strlen($row->staatsbuergerschaft)>$maxlength[$i])
$maxlength[$i] = strlen($row->staatsbuergerschaft);
$worksheet->write($zeile,$i, $row->staatsbuergerschaft);
$i++;
//SVNR
if(strlen($row->svnr)>$maxlength[$i])
$maxlength[$i] = strlen($row->svnr);
$worksheet->write($zeile,$i, $row->svnr);
$i++;
//Ersatzkennzeichen
if(strlen($row->ersatzkennzeichen)>$maxlength[$i])
$maxlength[$i] = strlen($row->ersatzkennzeichen);
$worksheet->write($zeile,$i, $row->ersatzkennzeichen);
$i++;
//Geschlecht
if(strlen($row->geschlecht)>$maxlength[$i])
$maxlength[$i] = strlen($row->geschlecht);
$worksheet->write($zeile,$i, $row->geschlecht);
$i++;
$qry = "SELECT * FROM public.tbl_studentlehrverband JOIN public.tbl_student USING(student_uid) WHERE prestudent_id='$row->prestudent_id' AND studiensemester_kurzbz='$studiensemester_kurzbz'";
if($result_sem = pg_query($conn, $qry))
{
if($row_sem = pg_fetch_object($result_sem))
{
$semester = $row_sem->semester;
$verband = $row_sem->verband;
$gruppe = $row_sem->gruppe;
}
else
{
$semester = '';
$verband = '';
$gruppe = '';
}
}
//Semester
if(isset($semester))
{
if(strlen($semester)>$maxlength[$i])
$maxlength[$i] = strlen($semester);
$worksheet->write($zeile,$i, $semester);
}
$i++;
//Verband
if(isset($verband))
{
if(strlen($verband)>$maxlength[$i])
$maxlength[$i] = strlen($verband);
$worksheet->write($zeile,$i, $verband);
}
$i++;
//Gruppe
if(isset($gruppe))
{
if(strlen($gruppe)>$maxlength[$i])
$maxlength[$i] = strlen($gruppe);
$worksheet->write($zeile,$i, $gruppe);
}
$i++;
//ZGV
if($row->zgv_code!='' && isset($zgv_arr[$row->zgv_code]))
{
if(strlen($zgv_arr[$row->zgv_code])>$maxlength[$i])
$maxlength[$i] = strlen($zgv_arr[$row->zgv_code]);
$worksheet->write($zeile,$i, $zgv_arr[$row->zgv_code]);
}
$i++;
//ZGV Ort
if(strlen($row->zgvort)>$maxlength[$i])
$maxlength[$i] = strlen($row->zgvort);
$worksheet->write($zeile,$i, $row->zgvort);
$i++;
//ZGV Datum
if(strlen($row->zgvdatum)>$maxlength[$i])
$maxlength[$i] = strlen($row->zgvdatum);
$worksheet->write($zeile,$i, $row->zgvdatum);
$i++;
//ZGV Master
if($row->zgvmas_code!='' && isset($zgvmas_arr[$row->zgvmas_code]))
{
if(strlen($zgvmas_arr[$row->zgvmas_code])>$maxlength[$i])
$maxlength[$i] = strlen($zgvmas_arr[$row->zgvmas_code]);
$worksheet->write($zeile,$i, $zgvmas_arr[$row->zgvmas_code]);
}
$i++;
//ZGV Master Ort
if(strlen($row->zgvmaort)>$maxlength[$i])
$maxlength[$i] = strlen($row->zgvmaort);
$worksheet->write($zeile,$i, $row->zgvmaort);
$i++;
//ZGV Master Datum
if(strlen($row->zgvmadatum)>$maxlength[$i])
$maxlength[$i] = strlen($row->zgvmadatum);
$worksheet->write($zeile,$i, $row->zgvmadatum);
$i++;
//Status
if(strlen($status)>$maxlength[$i])
$maxlength[$i] = strlen($status);
$worksheet->write($zeile,$i, $status);
$i++;
//Stati in anderen Studiengaengen
$stati='';
$qry_1 = "SELECT UPPER(typ::varchar(1) || kurzbz) as stg, get_rolle_prestudent(prestudent_id, null) as status FROM
public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE person_id='$row->person_id' AND tbl_prestudent.studiengang_kz<>'$row->prestgkz'";
if($result_1 = pg_query($conn, $qry_1))
{
while($row_1 = pg_fetch_object($result_1))
{
if($stati!='')
$stati.=', ';
$stati.= $row_1->status.' ('.$row_1->stg.')';
}
}
if(strlen($stati)>$maxlength[$i])
$maxlength[$i] = strlen($stati);
$worksheet->write($zeile,$i, $stati);
$i++;
//Email Intern
if(isset($row->student_uid))
{
if(strlen($row->student_uid.'@'.DOMAIN)>$maxlength[$i])
$maxlength[$i] = strlen($row->student_uid.'@'.DOMAIN);
$worksheet->write($zeile,$i, $row->student_uid.'@'.DOMAIN);
}
$i++;
//Telefon
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp in('mobil','telefon','so.tel') AND person_id='$row->person_id' AND zustellung=true LIMIT 1";
if($result_1 = pg_query($conn, $qry_1))
{
if($row_1 = pg_fetch_object($result_1))
{
if(strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=strlen($row_1->kontakt);
$worksheet->writeString($zeile,$i, $row_1->kontakt);
}
}
$i++;
//Spezialgruppen
$grps='';
$qry_1 = "SELECT gruppe_kurzbz FROM public.tbl_student JOIN public.tbl_benutzergruppe ON (student_uid=uid) WHERE tbl_student.prestudent_id='$row->prestudent_id' AND tbl_benutzergruppe.studiensemester_kurzbz='$studiensemester_kurzbz'";
if($result_1 = pg_query($conn, $qry_1))
{
while($row_1 = pg_fetch_object($result_1))
{
if($grps!='')
$grps.=',';
$grps.=$row_1->gruppe_kurzbz;
}
}
if(strlen($grps)>$maxlength[$i])
$maxlength[$i]=strlen($grps);
$worksheet->write($zeile,$i, $grps);
$i++;
//UID
if(isset($row->student_uid))
{
if(strlen($row->student_uid)>$maxlength[$i])
$maxlength[$i] = strlen($row->student_uid);
$worksheet->write($zeile,$i, $row->student_uid);
}
$i++;
//Orgform
if(strlen($orgform)>$maxlength[$i])
$maxlength[$i] = strlen($orgform);
$worksheet->write($zeile,$i, $orgform);
$i++;
//Vornamen
if(strlen($row->vornamen)>$maxlength[$i])
$maxlength[$i] = strlen($row->vornamen);
$worksheet->write($zeile,$i, $row->vornamen);
$i++;
//RT_Punkte1
if(strlen($row->rt_punkte1)>$maxlength[$i])
$maxlength[$i] = strlen($row->rt_punkte1);
$worksheet->write($zeile,$i, $row->rt_punkte1);
$i++;
//RT_Punkte2
if(strlen($row->rt_punkte2)>$maxlength[$i])
$maxlength[$i] = strlen($row->rt_punkte2);
$worksheet->write($zeile,$i, $row->rt_punkte2);
$i++;
//RT_Gesamtpunkte
if(strlen($row->rt_gesamtpunkte)>$maxlength[$i])
$maxlength[$i] = strlen($row->rt_gesamtpunkte);
$worksheet->write($zeile,$i, $row->rt_gesamtpunkte);
$i++;
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
<?php
/* Copyright (C) 2009 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]>,
* Rudolf Hangl <[email protected]> and
* Gerald Simane-Sequens <[email protected]>.
*/
/**
* Exportiert die Daten von Prestudenten und Studenten in ein Excel File.
*
* Parameter:
* GET:
* studiensemester_kurzbz ... Studiensemester
* POST:
* data ... Liste der PrestudentIDs der Personen die im Export aufscheinen sollen getrennt durch ','
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/functions.inc.php');
require_once('../../include/person.class.php');
require_once('../../include/benutzer.class.php');
require_once('../../include/student.class.php');
require_once('../../include/prestudent.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/Excel/excel.php');
// Datenbank Verbindung
if (!$conn = pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
$user = get_uid();
$datum_obj = new datum();
loadVariables($conn, $user);
//Parameter holen
$data = $_REQUEST['data'];
$studiensemester_kurzbz = $_GET['studiensemester_kurzbz'];
//$typ = $_GET['typ'];
$maxlength= array();
$zeile=1;
$zgv_arr=array();
$zgvmas_arr=array();
//ZGV laden
$qry = "SELECT * FROM bis.tbl_zgv ORDER BY zgv_kurzbz";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$zgv_arr[$row->zgv_code]=$row->zgv_kurzbz;
}
}
//ZGV Master laden
$qry = "SELECT * FROM bis.tbl_zgvmaster ORDER BY zgvmas_kurzbz";
if($result = pg_query($conn, $qry))
{
while($row = pg_fetch_object($result))
{
$zgvmas_arr[$row->zgvmas_code]=$row->zgvmas_kurzbz;
}
}
// Creating a workbook
$workbook = new Spreadsheet_Excel_Writer();
// sending HTTP headers
$workbook->send("Studenten". "_" . date("d_m_Y") . ".xls");
// Creating a worksheet
$worksheet =& $workbook->addWorksheet("Studenten");
$format_bold =& $workbook->addFormat();
$format_bold->setBold();
$format_title =& $workbook->addFormat();
$format_title->setBold();
// let's merge
$format_title->setAlign('merge');
//Zeilenueberschriften ausgeben
$i=0;
$zeile=1;
$worksheet->write($zeile,$i,"ANREDE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"TITELPRE", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"NACHNAME", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"VORNAME", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"TITELPOST", $format_bold);
$maxlength[$i]=9;
$worksheet->write($zeile,++$i,"EMail Privat", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"GEBURTSDATUM", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"PERSONENKENNZEICHEN", $format_bold);
$maxlength[$i]=19;
$worksheet->write($zeile,++$i,"STAATSBÜRGERSCHAFT", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"SVNR", $format_bold);
$maxlength[$i]=4;
$worksheet->write($zeile,++$i,"ERSATZKENNZEICHEN", $format_bold);
$maxlength[$i]=17;
$worksheet->write($zeile,++$i,"GESCHLECHT", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"SEMESTER", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"VERBAND", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"GRUPPE", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Ort", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Datum", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"ZGV Master", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"ZGV Master Ort", $format_bold);
$maxlength[$i]=14;
$worksheet->write($zeile,++$i,"ZGV Master Datum", $format_bold);
$maxlength[$i]=16;
$worksheet->write($zeile,++$i,"STATUS", $format_bold);
$maxlength[$i]=6;
$worksheet->write($zeile,++$i,"STATI IN ANDEREN STUDIENGÄNGEN", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"EMail Intern", $format_bold);
$maxlength[$i]=12;
$worksheet->write($zeile,++$i,"TELEFON", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"GRUPPEN", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"UID", $format_bold);
$maxlength[$i]=3;
$worksheet->write($zeile,++$i,"ORGFORM", $format_bold);
$maxlength[$i]=7;
$worksheet->write($zeile,++$i,"VORNAMEN", $format_bold);
$maxlength[$i]=8;
$worksheet->write($zeile,++$i,"RT_PUNKTE1", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"RT_PUNKTE2", $format_bold);
$maxlength[$i]=10;
$worksheet->write($zeile,++$i,"RT_GESAMTPUNKTE", $format_bold);
$maxlength[$i]=18;
$zeile++;
$ids = explode(';',$data);
$prestudent_ids = '';
foreach ($ids as $id)
{
if($id!='')
{
if($prestudent_ids!='')
$prestudent_ids .= ',';
$prestudent_ids .= "'$id'";
}
}
// Student holen
$qry = "SELECT *, tbl_prestudent.studiengang_kz as prestgkz FROM public.tbl_prestudent JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student USING(prestudent_id) WHERE prestudent_id in($prestudent_ids) ORDER BY nachname, vorname";
if($result = pg_query($conn, $qry))
while($row = pg_fetch_object($result))
{
draw_content($row);
$zeile++;
}
function draw_content($row)
{
global $maxlength, $datum_obj;
global $zeile, $worksheet, $conn;
global $zgv_arr, $zgvmas_arr;
global $studiensemester_kurzbz;
$prestudent = new prestudent($conn, null, null);
$prestudent->getLastStatus($row->prestudent_id);
$status = $prestudent->status_kurzbz;
$orgform = $prestudent->orgform_kurzbz;
$i=0;
//Anrede
if(strlen($row->anrede)>$maxlength[$i])
$maxlength[$i] = strlen($row->anrede);
$worksheet->write($zeile,$i, $row->anrede);
$i++;
//Titelpre
if(strlen($row->titelpre)>$maxlength[$i])
$maxlength[$i] = strlen($row->titelpre);
$worksheet->write($zeile,$i, $row->titelpre);
$i++;
//Nachname
if(strlen($row->nachname)>$maxlength[$i])
$maxlength[$i] = strlen($row->nachname);
$worksheet->write($zeile,$i, $row->nachname);
$i++;
//Vorname
if(strlen($row->vorname)>$maxlength[$i])
$maxlength[$i] = strlen($row->vorname);
$worksheet->write($zeile,$i, $row->vorname);
$i++;
//Titelpost
if(strlen($row->titelpost)>$maxlength[$i])
$maxlength[$i] = strlen($row->titelpost);
$worksheet->write($zeile,$i, $row->titelpost);
$i++;
//Email Privat
//ZustellEmailAdresse aus der Datenbank holen und dazuhaengen
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp='email' AND person_id='$row->person_id' AND zustellung=true ORDER BY kontakt_id DESC LIMIT 1";
if($result_1 = pg_query($conn, $qry_1))
{
if($row_1 = pg_fetch_object($result_1))
{
if(strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=strlen($row_1->kontakt);
$worksheet->write($zeile,$i, $row_1->kontakt);
}
}
$i++;
//Geburtsdatum
if(strlen($row->gebdatum)>$maxlength[$i])
$maxlength[$i] = strlen($row->gebdatum);
$worksheet->write($zeile,$i, $datum_obj->convertISODate($row->gebdatum));
$i++;
//Personenkennzeichen
if(isset($row->matrikelnr))
{
if(strlen($row->matrikelnr)>$maxlength[$i])
$maxlength[$i] = strlen($row->matrikelnr);
$worksheet->writeString($zeile,$i, $row->matrikelnr);
}
$i++;
//Staatsbuergerschaft
if(strlen($row->staatsbuergerschaft)>$maxlength[$i])
$maxlength[$i] = strlen($row->staatsbuergerschaft);
$worksheet->write($zeile,$i, $row->staatsbuergerschaft);
$i++;
//SVNR
if(strlen($row->svnr)>$maxlength[$i])
$maxlength[$i] = strlen($row->svnr);
$worksheet->write($zeile,$i, $row->svnr);
$i++;
//Ersatzkennzeichen
if(strlen($row->ersatzkennzeichen)>$maxlength[$i])
$maxlength[$i] = strlen($row->ersatzkennzeichen);
$worksheet->write($zeile,$i, $row->ersatzkennzeichen);
$i++;
//Geschlecht
if(strlen($row->geschlecht)>$maxlength[$i])
$maxlength[$i] = strlen($row->geschlecht);
$worksheet->write($zeile,$i, $row->geschlecht);
$i++;
$qry = "SELECT * FROM public.tbl_studentlehrverband JOIN public.tbl_student USING(student_uid) WHERE prestudent_id='$row->prestudent_id' AND studiensemester_kurzbz='$studiensemester_kurzbz'";
if($result_sem = pg_query($conn, $qry))
{
if($row_sem = pg_fetch_object($result_sem))
{
$semester = $row_sem->semester;
$verband = $row_sem->verband;
$gruppe = $row_sem->gruppe;
}
else
{
$semester = '';
$verband = '';
$gruppe = '';
}
}
//Semester
if(isset($semester))
{
if(strlen($semester)>$maxlength[$i])
$maxlength[$i] = strlen($semester);
$worksheet->write($zeile,$i, $semester);
}
$i++;
//Verband
if(isset($verband))
{
if(strlen($verband)>$maxlength[$i])
$maxlength[$i] = strlen($verband);
$worksheet->write($zeile,$i, $verband);
}
$i++;
//Gruppe
if(isset($gruppe))
{
if(strlen($gruppe)>$maxlength[$i])
$maxlength[$i] = strlen($gruppe);
$worksheet->write($zeile,$i, $gruppe);
}
$i++;
//ZGV
if($row->zgv_code!='' && isset($zgv_arr[$row->zgv_code]))
{
if(strlen($zgv_arr[$row->zgv_code])>$maxlength[$i])
$maxlength[$i] = strlen($zgv_arr[$row->zgv_code]);
$worksheet->write($zeile,$i, $zgv_arr[$row->zgv_code]);
}
$i++;
//ZGV Ort
if(strlen($row->zgvort)>$maxlength[$i])
$maxlength[$i] = strlen($row->zgvort);
$worksheet->write($zeile,$i, $row->zgvort);
$i++;
//ZGV Datum
if(strlen($row->zgvdatum)>$maxlength[$i])
$maxlength[$i] = strlen($row->zgvdatum);
$worksheet->write($zeile,$i, $row->zgvdatum);
$i++;
//ZGV Master
if($row->zgvmas_code!='' && isset($zgvmas_arr[$row->zgvmas_code]))
{
if(strlen($zgvmas_arr[$row->zgvmas_code])>$maxlength[$i])
$maxlength[$i] = strlen($zgvmas_arr[$row->zgvmas_code]);
$worksheet->write($zeile,$i, $zgvmas_arr[$row->zgvmas_code]);
}
$i++;
//ZGV Master Ort
if(strlen($row->zgvmaort)>$maxlength[$i])
$maxlength[$i] = strlen($row->zgvmaort);
$worksheet->write($zeile,$i, $row->zgvmaort);
$i++;
//ZGV Master Datum
if(strlen($row->zgvmadatum)>$maxlength[$i])
$maxlength[$i] = strlen($row->zgvmadatum);
$worksheet->write($zeile,$i, $row->zgvmadatum);
$i++;
//Status
if(strlen($status)>$maxlength[$i])
$maxlength[$i] = strlen($status);
$worksheet->write($zeile,$i, $status);
$i++;
//Stati in anderen Studiengaengen
$stati='';
$qry_1 = "SELECT UPPER(typ::varchar(1) || kurzbz) as stg, get_rolle_prestudent(prestudent_id, null) as status FROM
public.tbl_prestudent JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE person_id='$row->person_id' AND tbl_prestudent.studiengang_kz<>'$row->prestgkz'";
if($result_1 = pg_query($conn, $qry_1))
{
while($row_1 = pg_fetch_object($result_1))
{
if($stati!='')
$stati.=', ';
$stati.= $row_1->status.' ('.$row_1->stg.')';
}
}
if(strlen($stati)>$maxlength[$i])
$maxlength[$i] = strlen($stati);
$worksheet->write($zeile,$i, $stati);
$i++;
//Email Intern
if(isset($row->student_uid))
{
if(strlen($row->student_uid.'@'.DOMAIN)>$maxlength[$i])
$maxlength[$i] = strlen($row->student_uid.'@'.DOMAIN);
$worksheet->write($zeile,$i, $row->student_uid.'@'.DOMAIN);
}
$i++;
//Telefon
$qry_1 = "SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp in('mobil','telefon','so.tel') AND person_id='$row->person_id' AND zustellung=true LIMIT 1";
if($result_1 = pg_query($conn, $qry_1))
{
if($row_1 = pg_fetch_object($result_1))
{
if(strlen($row_1->kontakt)>$maxlength[$i])
$maxlength[$i]=strlen($row_1->kontakt);
$worksheet->writeString($zeile,$i, $row_1->kontakt);
}
}
$i++;
//Spezialgruppen
$grps='';
$qry_1 = "SELECT gruppe_kurzbz FROM public.tbl_student JOIN public.tbl_benutzergruppe ON (student_uid=uid) WHERE tbl_student.prestudent_id='$row->prestudent_id' AND tbl_benutzergruppe.studiensemester_kurzbz='$studiensemester_kurzbz'";
if($result_1 = pg_query($conn, $qry_1))
{
while($row_1 = pg_fetch_object($result_1))
{
if($grps!='')
$grps.=',';
$grps.=$row_1->gruppe_kurzbz;
}
}
if(strlen($grps)>$maxlength[$i])
$maxlength[$i]=strlen($grps);
$worksheet->write($zeile,$i, $grps);
$i++;
//UID
if(isset($row->student_uid))
{
if(strlen($row->student_uid)>$maxlength[$i])
$maxlength[$i] = strlen($row->student_uid);
$worksheet->write($zeile,$i, $row->student_uid);
}
$i++;
//Orgform
if(strlen($orgform)>$maxlength[$i])
$maxlength[$i] = strlen($orgform);
$worksheet->write($zeile,$i, $orgform);
$i++;
//Vornamen
if(strlen($row->vornamen)>$maxlength[$i])
$maxlength[$i] = strlen($row->vornamen);
$worksheet->write($zeile,$i, $row->vornamen);
$i++;
//RT_Punkte1
if(strlen($row->rt_punkte1)>$maxlength[$i])
$maxlength[$i] = strlen($row->rt_punkte1);
$worksheet->write($zeile,$i, $row->rt_punkte1);
$i++;
//RT_Punkte2
if(strlen($row->rt_punkte2)>$maxlength[$i])
$maxlength[$i] = strlen($row->rt_punkte2);
$worksheet->write($zeile,$i, $row->rt_punkte2);
$i++;
//RT_Gesamtpunkte
if(strlen($row->rt_gesamtpunkte)>$maxlength[$i])
$maxlength[$i] = strlen($row->rt_gesamtpunkte);
$worksheet->write($zeile,$i, $row->rt_gesamtpunkte);
$i++;
}
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
$worksheet->setColumn($i, $i, $breite+2);
$workbook->close();
?>
+1 -1
View File
@@ -121,7 +121,7 @@ else
<html>
<head>
<title>Studenten/Semester</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
<style type="text/css">
td, th
+346 -346
View File
@@ -1,347 +1,347 @@
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/*
* Erstellt eine Liste der Studenten eines Studiensemesters
* Aufteilung in
* - Anzahl Gesamt
* - Prozent Anteil
* - Vollzeit/Berufsbegleitend
* - Geschlecht
* - Herkunft (AT/EU/Nicht EU)
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$stsem_obj = new studiensemester($conn);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
{
$stsem = $stsem_obj->getaktorNext();
}
$stsem_obj->load($stsem);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
echo "<h2>Studentenstatistik $stsem";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester($conn);
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$stsem)
$selected='selected';
else
$selected='';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$stsemester->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
{
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th></th>
<th>Anteil an Gesamt</th>
<th>Extern</th>
<th>Studienart</th>
<th>Geschlecht</th>
<th colspan=3>Staatsb&uuml;rgerschaft</th>
</tr>
</thead>
<tbody>
<tr>
<th>Bachelor</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>In / Out</th>
<th>BB / VZ</th>
<th>m / w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>
";
//Bachelor
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem'
) a) AS gesamt_stg,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND typ='b'
) a) AS gesamt_alle,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Incoming' AND studiensemester_kurzbz='$stsem'
) a) AS inc,
(SELECT count(*) FROM (SELECT distinct student_uid FROM public.tbl_student JOIN bis.tbl_bisio USING (student_uid)
WHERE studiengang_kz=stg.studiengang_kz AND (bis>='$stsem_obj->start' OR bis is null) AND von<='$stsem_obj->ende'
) a) AS out,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='BB'
) a) AS bb,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='VZ'
) a) AS vz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND geschlecht='w'
) a) AS w,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND geschlecht='m'
) a) AS m,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND nation_code='A'
) a) AS herkunft_at,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND eu AND nation_code<>'A'
) a) AS herkunft_eu,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND NOT eu
) a) AS herkunft_noteu,
true
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='b'
ORDER BY typ, kurzbzlang; ";
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
$gesamt_inc=0;
$gesamt_out=0;
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->inc / $row->out</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m / $row->w</td>";
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
$gesamt_w += $row->w;
$gesamt_at += $row->herkunft_at;
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
$gesamt_inc+=$row->inc;
$gesamt_out+=$row->out;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamt / ".sprintf('%0.2f', $gesamt_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamt_inc / $gesamt_out</b></td>";
echo "<td align='center'><b>$gesamt_bb / $gesamt_vz</b></td>";
echo "<td align='center'><b>$gesamt_m / $gesamt_w</b></td>";
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
}
$gesamtsumme = $gesamt;
$gesamtsumme_prozent = $gesamt_prozent;
$gesamtsumme_bb = $gesamt_bb;
$gesamtsumme_vz = $gesamt_vz;
$gesamtsumme_m = $gesamt_m;
$gesamtsumme_w = $gesamt_w;
$gesamtsumme_at = $gesamt_at;
$gesamtsumme_eu = $gesamt_eu;
$gesamtsumme_noteu = $gesamt_noteu;
$gesamtsumme_inc = $gesamt_inc;
$gesamtsumme_out = $gesamt_out;
//Master
echo '
<tr>
<th>Master</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>In / Out</th>
<th>BB / VZ</th>
<th>m / w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>';
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem'
) AS gesamt_stg,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND typ='m'
) AS gesamt_alle,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Incoming' AND studiensemester_kurzbz='$stsem'
) a) AS inc,
(SELECT count(*) FROM (SELECT distinct student_uid FROM public.tbl_student JOIN bis.tbl_bisio USING (student_uid)
WHERE studiengang_kz=stg.studiengang_kz AND (bis>='$stsem_obj->start' OR bis is null) AND von<='$stsem_obj->ende'
) a) AS out,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='BB'
) a) AS bb,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='VZ'
) a) AS vz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND geschlecht='w'
) a) AS w,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND geschlecht='m'
) a) AS m,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND nation_code='A'
) a) AS herkunft_at,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND eu AND nation_code<>'A'
) a) AS herkunft_eu,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentrolle USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND rolle_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND NOT eu
) a) AS herkunft_noteu,
true
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='m'
ORDER BY typ, kurzbzlang; ";
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
$gesamt_inc=0;
$gesamt_out=0;
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->inc / $row->out</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m / $row->w</td>";
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
$gesamt_w += $row->w;
$gesamt_at += $row->herkunft_at;
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
$gesamt_inc+=$row->inc;
$gesamt_out+=$row->out;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamt / ".sprintf('%0.2f', $gesamt_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamt_inc / $gesamt_out</b></td>";
echo "<td align='center'><b>$gesamt_bb / $gesamt_vz</b></td>";
echo "<td align='center'><b>$gesamt_m / $gesamt_w</b></td>";
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
}
$gesamtsumme += $gesamt;
$gesamtsumme_prozent = 100;
$gesamtsumme_bb += $gesamt_bb;
$gesamtsumme_vz += $gesamt_vz;
$gesamtsumme_m += $gesamt_m;
$gesamtsumme_w += $gesamt_w;
$gesamtsumme_at += $gesamt_at;
$gesamtsumme_eu += $gesamt_eu;
$gesamtsumme_noteu += $gesamt_noteu;
$gesamtsumme_inc += $gesamt_inc;
$gesamtsumme_out += $gesamt_out;
echo '<tr>';
echo '<td><b>GESAMTSUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamtsumme / ".sprintf('%0.2f', $gesamtsumme_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamtsumme_inc / $gesamtsumme_out</b></td>";
echo "<td align='center'><b>$gesamtsumme_bb / $gesamtsumme_vz</b></td>";
echo "<td align='center'><b>$gesamtsumme_m / $gesamtsumme_w</b></td>";
echo "<td align='center'><b>$gesamtsumme_at</b></td>";
echo "<td align='center'><b>$gesamtsumme_eu</b></td>";
echo "<td align='center'><b>$gesamtsumme_noteu</b></td>";
echo "</tr>";
echo '</tbody></table>';
}
?>
</body>
<?php
/* Copyright (C) 2007 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
/*
* Erstellt eine Liste der Studenten eines Studiensemesters
* Aufteilung in
* - Anzahl Gesamt
* - Prozent Anteil
* - Vollzeit/Berufsbegleitend
* - Geschlecht
* - Herkunft (AT/EU/Nicht EU)
*/
require_once('../../vilesci/config.inc.php');
require_once('../../include/studiensemester.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/functions.inc.php');
if(!$conn = pg_pconnect(CONN_STRING))
die('Fehler beim Connecten zur DB');
$stsem_obj = new studiensemester($conn);
if(isset($_GET['stsem']))
$stsem = $_GET['stsem'];
else
{
$stsem = $stsem_obj->getaktorNext();
}
$stsem_obj->load($stsem);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="../../skin/vilesci.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="../../include/js/tablesort/table.css" type="text/css">
<script src="../../include/js/tablesort/table.js" type="text/javascript"></script>
</head>
<body>';
echo "<h2>Studentenstatistik $stsem";
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
echo '</h2>';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="GET">Studiensemester: <SELECT name="stsem">';
$studsem = new studiensemester($conn);
$studsem->getAll();
foreach ($studsem->studiensemester as $stsemester)
{
if($stsemester->studiensemester_kurzbz==$stsem)
$selected='selected';
else
$selected='';
echo '<option value="'.$stsemester->studiensemester_kurzbz.'" '.$selected.'>'.$stsemester->studiensemester_kurzbz.'</option>';
}
echo '</SELECT>
<input type="submit" value="Anzeigen" /></form><br><br>';
if($stsem!='')
{
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
<thead>
<tr>
<th></th>
<th></th>
<th>Anteil an Gesamt</th>
<th>Extern</th>
<th>Studienart</th>
<th>Geschlecht</th>
<th colspan=3>Staatsb&uuml;rgerschaft</th>
</tr>
</thead>
<tbody>
<tr>
<th>Bachelor</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>In / Out</th>
<th>BB / VZ</th>
<th>m / w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>
";
//Bachelor
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem'
) a) AS gesamt_stg,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND typ='b'
) a) AS gesamt_alle,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Incoming' AND studiensemester_kurzbz='$stsem'
) a) AS inc,
(SELECT count(*) FROM (SELECT distinct student_uid FROM public.tbl_student JOIN bis.tbl_bisio USING (student_uid)
WHERE studiengang_kz=stg.studiengang_kz AND (bis>='$stsem_obj->start' OR bis is null) AND von<='$stsem_obj->ende'
) a) AS out,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='BB'
) a) AS bb,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='VZ'
) a) AS vz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND geschlecht='w'
) a) AS w,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND geschlecht='m'
) a) AS m,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND nation_code='A'
) a) AS herkunft_at,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND eu AND nation_code<>'A'
) a) AS herkunft_eu,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND NOT eu
) a) AS herkunft_noteu,
true
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='b'
ORDER BY typ, kurzbzlang; ";
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
$gesamt_inc=0;
$gesamt_out=0;
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->inc / $row->out</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m / $row->w</td>";
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
$gesamt_w += $row->w;
$gesamt_at += $row->herkunft_at;
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
$gesamt_inc+=$row->inc;
$gesamt_out+=$row->out;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamt / ".sprintf('%0.2f', $gesamt_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamt_inc / $gesamt_out</b></td>";
echo "<td align='center'><b>$gesamt_bb / $gesamt_vz</b></td>";
echo "<td align='center'><b>$gesamt_m / $gesamt_w</b></td>";
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
}
$gesamtsumme = $gesamt;
$gesamtsumme_prozent = $gesamt_prozent;
$gesamtsumme_bb = $gesamt_bb;
$gesamtsumme_vz = $gesamt_vz;
$gesamtsumme_m = $gesamt_m;
$gesamtsumme_w = $gesamt_w;
$gesamtsumme_at = $gesamt_at;
$gesamtsumme_eu = $gesamt_eu;
$gesamtsumme_noteu = $gesamt_noteu;
$gesamtsumme_inc = $gesamt_inc;
$gesamtsumme_out = $gesamt_out;
//Master
echo '
<tr>
<th>Master</th>
<th>Studiengänge</th>
<th>Absolut / %</th>
<th>In / Out</th>
<th>BB / VZ</th>
<th>m / w</th>
<th>&Ouml;sterreich</th>
<th>EU</th>
<th>Nicht-EU</th>
</tr>';
$qry = "SELECT studiengang_kz, kurzbz, typ, kurzbzlang, bezeichnung, orgform_kurzbz,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem'
) AS gesamt_stg,
(SELECT count(*) FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_studiengang USING(studiengang_kz)
WHERE status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND typ='m'
) AS gesamt_alle,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Incoming' AND studiensemester_kurzbz='$stsem'
) a) AS inc,
(SELECT count(*) FROM (SELECT distinct student_uid FROM public.tbl_student JOIN bis.tbl_bisio USING (student_uid)
WHERE studiengang_kz=stg.studiengang_kz AND (bis>='$stsem_obj->start' OR bis is null) AND von<='$stsem_obj->ende'
) a) AS out,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='BB'
) a) AS bb,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND orgform_kurzbz='VZ'
) a) AS vz,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND geschlecht='w'
) a) AS w,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND geschlecht='m'
) a) AS m,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND nation_code='A'
) a) AS herkunft_at,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND eu AND nation_code<>'A'
) a) AS herkunft_eu,
(SELECT count(*) FROM (SELECT distinct prestudent_id FROM public.tbl_prestudent JOIN public.tbl_prestudentstatus USING (prestudent_id) JOIN public.tbl_person USING(person_id) JOIN bis.tbl_nation on(staatsbuergerschaft=nation_code)
WHERE studiengang_kz=stg.studiengang_kz AND status_kurzbz='Student' AND studiensemester_kurzbz='$stsem' AND NOT eu
) a) AS herkunft_noteu,
true
FROM
public.tbl_studiengang stg
WHERE
studiengang_kz>0 AND studiengang_kz<10000 AND aktiv AND typ='m'
ORDER BY typ, kurzbzlang; ";
//echo '<pre>'.$qry.'</pre><br><br>';
if($result = pg_query($conn, $qry))
{
$gesamt=0;
$gesamt_prozent=0;
$gesamt_bb=0;
$gesamt_vz=0;
$gesamt_m=0;
$gesamt_w=0;
$gesamt_at=0;
$gesamt_eu=0;
$gesamt_noteu=0;
$gesamt_inc=0;
$gesamt_out=0;
while($row = pg_fetch_object($result))
{
echo '<tr>';
echo '<td>&nbsp;</td>';
echo "<td>".strtoupper($row->typ.$row->kurzbz)." ($row->kurzbzlang)</td>";
$prozent = ($row->gesamt_alle!=0?$row->gesamt_stg/$row->gesamt_alle*100:0);
echo "<td align='center'>$row->gesamt_stg / ".sprintf('%0.2f', $prozent)." %</td>";
echo "<td align='center'>$row->inc / $row->out</td>";
echo "<td align='center'>$row->bb / $row->vz</td>";
echo "<td align='center'>$row->m / $row->w</td>";
echo "<td align='center'>$row->herkunft_at</td>";
echo "<td align='center'>$row->herkunft_eu</td>";
echo "<td align='center'>$row->herkunft_noteu</td>";
echo "</tr>";
$gesamt+=$row->gesamt_stg;
$gesamt_prozent+=$prozent;
$gesamt_bb += $row->bb;
$gesamt_vz += $row->vz;
$gesamt_m += $row->m;
$gesamt_w += $row->w;
$gesamt_at += $row->herkunft_at;
$gesamt_eu += $row->herkunft_eu;
$gesamt_noteu += $row->herkunft_noteu;
$gesamt_inc+=$row->inc;
$gesamt_out+=$row->out;
}
echo '<tr>';
echo '<td><b>SUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamt / ".sprintf('%0.2f', $gesamt_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamt_inc / $gesamt_out</b></td>";
echo "<td align='center'><b>$gesamt_bb / $gesamt_vz</b></td>";
echo "<td align='center'><b>$gesamt_m / $gesamt_w</b></td>";
echo "<td align='center'><b>$gesamt_at</b></td>";
echo "<td align='center'><b>$gesamt_eu</b></td>";
echo "<td align='center'><b>$gesamt_noteu</b></td>";
echo "</tr>";
}
$gesamtsumme += $gesamt;
$gesamtsumme_prozent = 100;
$gesamtsumme_bb += $gesamt_bb;
$gesamtsumme_vz += $gesamt_vz;
$gesamtsumme_m += $gesamt_m;
$gesamtsumme_w += $gesamt_w;
$gesamtsumme_at += $gesamt_at;
$gesamtsumme_eu += $gesamt_eu;
$gesamtsumme_noteu += $gesamt_noteu;
$gesamtsumme_inc += $gesamt_inc;
$gesamtsumme_out += $gesamt_out;
echo '<tr>';
echo '<td><b>GESAMTSUMME</b></td>';
echo "<td>&nbsp;</td>";
echo "<td align='center'><b>$gesamtsumme / ".sprintf('%0.2f', $gesamtsumme_prozent)." %</b></td>";
echo "<td align='center'><b>$gesamtsumme_inc / $gesamtsumme_out</b></td>";
echo "<td align='center'><b>$gesamtsumme_bb / $gesamtsumme_vz</b></td>";
echo "<td align='center'><b>$gesamtsumme_m / $gesamtsumme_w</b></td>";
echo "<td align='center'><b>$gesamtsumme_at</b></td>";
echo "<td align='center'><b>$gesamtsumme_eu</b></td>";
echo "<td align='center'><b>$gesamtsumme_noteu</b></td>";
echo "</tr>";
echo '</tbody></table>';
}
?>
</body>
</html>
+2 -2
View File
@@ -83,7 +83,7 @@ function InteressentzuBewerber()
req.add('type', 'addrolle');
req.add('prestudent_id', paramList);
req.add('rolle_kurzbz', 'Bewerber');
req.add('status_kurzbz', 'Bewerber');
var response = req.executePOST();
@@ -208,7 +208,7 @@ function InteressentAddRolle(rolle)
req.add('type', 'addrolle');
req.add('prestudent_id', paramList);
req.add('rolle_kurzbz', rolle);
req.add('status_kurzbz', rolle);
var response = req.executePOST();
+24 -24
View File
@@ -471,21 +471,21 @@ if(!$error)
}
}
if($_POST['rolle_kurzbz']=='Bewerber' && !$prestd->anmeldungreihungstest)
if($_POST['status_kurzbz']=='Bewerber' && !$prestd->anmeldungreihungstest)
{
$error = true;
$errormsg .= "\n $prestd->vorname $prestd->nachname: Um einen Interessenten zum Bewerber zu machen, muss das Reihungstestdatum gesetzt sein.";
$anzahl_fehler++;
}
if($_POST['rolle_kurzbz']=='Bewerber' && !$prestd->reihungstestangetreten)
if($_POST['status_kurzbz']=='Bewerber' && !$prestd->reihungstestangetreten)
{
$error = true;
$errormsg .= "\n $prestd->vorname $prestd->nachname: Um einen Interessenten zum Bewerber zu machen, muss das Feld 'Zum Reihungstest angetreten' gesetzt sein.";
$anzahl_fehler++;
}
if($_POST['rolle_kurzbz']=='Bewerber' && $prestd->zgv_code=='')
if($_POST['status_kurzbz']=='Bewerber' && $prestd->zgv_code=='')
{
$error = true;
$errormsg .= "\n $prestd->vorname $prestd->nachname: Um einen Interessenten zum Bewerber zu machen, muss die Zugangsvoraussetzung eingetragen sein.";
@@ -494,7 +494,7 @@ if(!$error)
$stg_obj = new studiengang($conn);
$stg_obj->load($prestd->studiengang_kz);
if($_POST['rolle_kurzbz']=='Bewerber' && $prestd->zgvmas_code=='' && $stg_obj->typ=='m')
if($_POST['status_kurzbz']=='Bewerber' && $prestd->zgvmas_code=='' && $stg_obj->typ=='m')
{
$error = true;
$errormsg .= "\n $prestd->vorname $prestd->nachname: Um einen Interessenten zum Bewerber zu machen, muss die Zugangsvoraussetzung Master eingetragen sein.";
@@ -505,18 +505,18 @@ if(!$error)
{
if($prestd->getLastStatus($prestudent_id))
{
if($_POST['rolle_kurzbz']=='Absolvent' || $_POST['rolle_kurzbz']=='Diplomand')
if($_POST['status_kurzbz']=='Absolvent' || $_POST['status_kurzbz']=='Diplomand')
$studiensemester = $semester_aktuell;
else
$studiensemester = $prestd->studiensemester_kurzbz;
$hlp = new prestudent($conn);
if($_POST['rolle_kurzbz']=='Student')
if($_POST['status_kurzbz']=='Student')
$sem=$_POST['semester'];
else
$sem=$prestd->ausbildungssemester;
$hlp->getPrestudentRolle($prestudent_id, $_POST['rolle_kurzbz'], $studiensemester, "datum, insertamum", $sem);
$hlp->getPrestudentRolle($prestudent_id, $_POST['status_kurzbz'], $studiensemester, "datum, insertamum", $sem);
if(count($hlp->result)>0)
{
$errormsg .= "\n$prestd->vorname $prestd->nachname: Diese Rolle ist bereits vorhanden";
@@ -527,9 +527,9 @@ if(!$error)
{
//Wenn der Status auf Aufgenommener oder Wartender geaendert wird,
//muss ein Bewerberstatus vorhanden sein
if($_POST['rolle_kurzbz']=='Aufgenommener' || $_POST['rolle_kurzbz']=='Wartender')
if($_POST['status_kurzbz']=='Aufgenommener' || $_POST['status_kurzbz']=='Wartender')
{
$qry = "SELECT * FROM public.tbl_prestudentrolle WHERE prestudent_id='".$prestudent_id."' AND rolle_kurzbz='Bewerber'";
$qry = "SELECT * FROM public.tbl_prestudentstatus WHERE prestudent_id='".$prestudent_id."' AND status_kurzbz='Bewerber'";
if($result_bw = pg_query($conn, $qry))
{
if(pg_num_rows($result_bw)==0)
@@ -546,7 +546,7 @@ if(!$error)
{
$prestd_neu = new prestudent($conn);
$prestd_neu->prestudent_id = $prestudent_id;
$prestd_neu->rolle_kurzbz = $_POST['rolle_kurzbz'];
$prestd_neu->status_kurzbz = $_POST['status_kurzbz'];
$prestd_neu->studiensemester_kurzbz = $studiensemester;
$prestd_neu->datum = date('Y-m-d');
$prestd_neu->ausbildungssemester = $sem;
@@ -558,19 +558,19 @@ if(!$error)
if($prestd_neu->save_rolle())
{
//Unterbrecher und Abbrecher werden ins 0. Semester verschoben
if($_POST['rolle_kurzbz']=='Unterbrecher' || $_POST['rolle_kurzbz']=='Abbrecher')
if($_POST['status_kurzbz']=='Unterbrecher' || $_POST['status_kurzbz']=='Abbrecher')
{
$student = new student($conn);
$uid = $student->getUid($prestudent_id);
$student->load($uid);
$student->studiensemester_kurzbz=$semester_aktuell;
$student->semester = '0';
if($_POST['rolle_kurzbz']=='Abbrecher')
if($_POST['status_kurzbz']=='Abbrecher')
{
$student->verband='A';
$student->gruppe='';
}
if($_POST['rolle_kurzbz']=='Unterbrecher')
if($_POST['status_kurzbz']=='Unterbrecher')
{
$student->verband='B';
$student->gruppe='';
@@ -613,7 +613,7 @@ if(!$error)
//Wenn Unterbrecher zu Studenten werden, dann wird das Semester mituebergeben
//Verband und Gruppe wird entfernt.
if($_POST['rolle_kurzbz']=='Student')
if($_POST['status_kurzbz']=='Student')
{
$student = new student($conn);
$uid = $student->getUid($prestudent_id);
@@ -636,7 +636,7 @@ if(!$error)
}
//bei Abbrechern und Absolventen wird der Aktiv Status auf false gesetzt
if($_POST['rolle_kurzbz']=='Abbrecher' || $_POST['rolle_kurzbz']=='Absolvent')
if($_POST['status_kurzbz']=='Abbrecher' || $_POST['status_kurzbz']=='Absolvent')
{
$student = new student($conn);
$uid = $student->getUid($prestudent_id);
@@ -686,18 +686,18 @@ if(!$error)
{
//Loescht eine Prestudentrolle
if(isset($_POST['studiensemester_kurzbz']) && isset($_POST['rolle_kurzbz']) &&
if(isset($_POST['studiensemester_kurzbz']) && isset($_POST['status_kurzbz']) &&
isset($_POST['prestudent_id']) && is_numeric($_POST['prestudent_id']) &&
isset($_POST['ausbildungssemester']) && is_numeric($_POST['ausbildungssemester']))
{
if($_POST['rolle_kurzbz']=='Student' && !$rechte->isBerechtigt('admin', null, 'suid'))
if($_POST['status_kurzbz']=='Student' && !$rechte->isBerechtigt('admin', null, 'suid'))
{
$return = false;
$errormsg = 'Studentenrolle kann nur durch den Administrator geloescht werden';
}
else
{
$qry = "SELECT count(*) as anzahl FROM public.tbl_prestudentrolle WHERE prestudent_id='".addslashes($_POST['prestudent_id'])."'";
$qry = "SELECT count(*) as anzahl FROM public.tbl_prestudentstatus WHERE prestudent_id='".addslashes($_POST['prestudent_id'])."'";
if($result = pg_query($conn, $qry))
{
if($row = pg_fetch_object($result))
@@ -726,11 +726,11 @@ if(!$error)
if(!$error)
{
$rolle = new prestudent($conn, null, true);
if($rolle->load_rolle($_POST['prestudent_id'],$_POST['rolle_kurzbz'],$_POST['studiensemester_kurzbz'], $_POST['ausbildungssemester']))
if($rolle->load_rolle($_POST['prestudent_id'],$_POST['status_kurzbz'],$_POST['studiensemester_kurzbz'], $_POST['ausbildungssemester']))
{
if($rechte->isBerechtigt('admin', $_POST['studiengang_kz'], 'suid') || $rechte->isBerechtigt('assistenz', $_POST['studiengang_kz'], 'suid'))
{
if($rolle->delete_rolle($_POST['prestudent_id'],$_POST['rolle_kurzbz'],$_POST['studiensemester_kurzbz'], $_POST['ausbildungssemester']))
if($rolle->delete_rolle($_POST['prestudent_id'],$_POST['status_kurzbz'],$_POST['studiensemester_kurzbz'], $_POST['ausbildungssemester']))
{
$return = true;
}
@@ -789,14 +789,14 @@ if(!$error)
if(!$error)
{
if(($_POST['studiensemester_old']=='') || (!$rolle->load_rolle($_POST['prestudent_id'], $_POST['rolle_kurzbz'], $_POST['studiensemester_old'], $_POST['ausbildungssemester_old'])))
if(($_POST['studiensemester_old']=='') || (!$rolle->load_rolle($_POST['prestudent_id'], $_POST['status_kurzbz'], $_POST['studiensemester_old'], $_POST['ausbildungssemester_old'])))
{
$rolle->new = true;
$rolle->insertamum = date('Y-m-d H:i:s');
$rolle->insertvon = $user;
$rolle->rolle_kurzbz = $_POST['rolle_kurzbz'];
$rolle->status_kurzbz = $_POST['status_kurzbz'];
if($_POST['rolle_kurzbz']=='Student')
if($_POST['status_kurzbz']=='Student')
{
//Die Rolle Student darf nur eingefuegt werden, wenn schon eine Studentenrolle vorhanden ist
$qry = "SELECT count(*) as anzahl FROM public.tbl_student WHERE prestudent_id='".addslashes($_POST['prestudent_id'])."'";
@@ -980,7 +980,7 @@ if(!$error)
//Prestudentrolle hinzugfuegen
$rolle = new prestudent($conn);
$rolle->prestudent_id = $prestd->prestudent_id;
$rolle->rolle_kurzbz = 'Student';
$rolle->status_kurzbz = 'Student';
$rolle->studiensemester_kurzbz = $hlp->result[0]->studiensemester_kurzbz;
$rolle->ausbildungssemester = $hlp->result[0]->ausbildungssemester;
$rolle->orgform_kurzbz = $hlp->result[0]->orgform_kurzbz;
+3 -3
View File
@@ -479,9 +479,9 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
ondblclick="StudentRolleBearbeiten()"
>
<treecols>
<treecol id="student-prestudent-tree-rolle-rolle_kurzbz" label="Kurzbz" flex="2" hidden="false" primary="true" persist="hidden, width, ordinal"
<treecol id="student-prestudent-tree-rolle-status_kurzbz" label="Kurzbz" flex="2" hidden="false" primary="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#rolle_kurzbz"/>
sort="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#status_kurzbz"/>
<splitter class="tree-splitter"/>
<treecol id="student-prestudent-tree-rolle-studiensemester_kurzbz" label="StSem" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
@@ -510,7 +510,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<treechildren flex="1" >
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#rolle_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#status_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#studiensemester_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#ausbildungssemester"/>
<treecell label="rdf:http://www.technikum-wien.at/prestudentrolle/rdf#datum"/>
+350 -350
View File
@@ -1,350 +1,350 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../vilesci/config.inc.php');
echo '<?xml version="1.0" encoding="ISO-8859-15" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentdetailoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentzeugnisoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentkontooverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentiooverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentnotenoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentpruefungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentabschlusspruefungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentprojektarbeitoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentgruppenoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/interessentdokumenteoverlay.xul.php"?>';
if(isset($_GET['xulapp']))
$xulapp=$_GET['xulapp'];
else
$xulapp='';
?>
<!DOCTYPE overlay >
<overlay id="StudentenOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/student/studentoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/student/interessentoverlay.js.php" />
<!-- *************** -->
<!-- * Studenten * -->
<!-- *************** -->
<vbox id="studentenEditor" persist="height">
<popupset>
<menupopup id="student-tree-popup" onpopupshown="">
<menuitem label="Student aus dieser Gruppe entfernen" oncommand="StudentGruppeDel();" id="student-tree-popup-gruppedel" hidden="false"/>
<menuitem label="EMail senden (intern)" oncommand="StudentSendMail();" id="student-tree-popup-mail" hidden="false"/>
<menuitem label="EMail senden (privat)" oncommand="StudentSendMailPrivat();" id="student-tree-popup-mailprivat" hidden="false"/>
<menuseparator />
<menuitem label="Personendetails anzeigen" oncommand="StudentShowPersonendetails();" id="student-tree-popup-personendetails" hidden="false"/>
<!--
<menuitem label="Interessenten löschen" oncommand="StudentDeleteInteressent();" id="student-tree-popup-deleteinteressent" hidden="false"/>
-->
</menupopup>
</popupset>
<hbox>
<toolbox flex="1">
<toolbar id="student-nav-toolbar">
<?php
if($xulapp!='tempus')
{
?>
<toolbarbutton id="interessent-toolbar-neu" label="Neu" oncommand="InteressentNeu()" disabled="false" image="../skin/images/NeuDokument.png" tooltiptext="Interessent neu anlegen" />
<toolbarbutton id="student-toolbar-buchung" label="Neue Buchung" oncommand="StudentKontoNeu()" disabled="false" tooltiptext="neue Buchung anlegen"/>
<toolbarbutton label="Status ändern " id="student-toolbar-status" type="menu">
<menupopup id="student-status-menu-popup" >
<menuitem id="student-toolbar-abbrecher" label="-> Abbrecher" oncommand="StudentAddRolle('Abbrecher','0')" disabled="false" tooltiptext="Student zum Abbrecher machen" hidden="true"/>
<menuitem id="student-toolbar-unterbrecher" label="-> Unterbrecher" oncommand="StudentAddRolle('Unterbrecher','0')" disabled="false" tooltiptext="Student zum Unterbrecher machen" hidden="true"/>
<menuitem id="student-toolbar-student" label="-> Student" oncommand="StudentUnterbrecherZuStudent()" disabled="false" tooltiptext="Ab/Unterbrecher wieder zum Studenten machen" hidden="true"/>
<menuitem id="student-toolbar-diplomand" label="-> Diplomand" oncommand="StudentAddRolle('Diplomand')" disabled="false" tooltiptext="Studenten zum Diplomanden machen" hidden="true"/>
<menuitem id="student-toolbar-absolvent" label="-> Absolvent" oncommand="StudentAddRolle('Absolvent')" disabled="false" tooltiptext="Studenten zum Absolventen machen" hidden="true"/>
<menuitem id="interessent-toolbar-zubewerber" label="-> Bewerber" oncommand="InteressentzuBewerber()" disabled="false" tooltiptext="Interessent zum Bewerber machen" hidden="true"/>
<menuitem id="interessent-toolbar-zustudent" label="-> Student" oncommand="InteressentzuStudent()" disabled="false" tooltiptext="Bewerber zu Studenten machen" hidden="true"/>
<menuitem id="interessent-toolbar-aufgenommener" label="-> Aufgenommener" oncommand="InteressentAddRolle('Aufgenommener')" disabled="false" tooltiptext="Interessent zum Aufgenommenen machen" hidden="true"/>
<menuitem id="interessent-toolbar-warteliste" label="-> Warteliste" oncommand="InteressentAddRolle('Wartender')" disabled="false" tooltiptext="Interessent zum Wartenden machen" hidden="true"/>
<menuitem id="interessent-toolbar-absage" label="-> Absage" oncommand="InteressentAddRolle('Abgewiesener')" disabled="false" tooltiptext="Interessent zum Absager machen" hidden="true"/>
</menupopup>
</toolbarbutton>
<toolbarbutton id="student-toolbar-export" label="Export" oncommand="StudentExport()" disabled="false" image="../skin/images/ExcelIcon.png" tooltiptext="Daten ins Excel Exportieren"/>
<?php
}
?>
<toolbarbutton id="student-toolbar-refresh" label="Aktualisieren" oncommand="StudentTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<textbox id="student-toolbar-textbox-suche" control="student-toolbar-button-search" onkeypress="StudentSearchFieldKeyPress(event)" />
<button id="student-toolbar-button-search" oncommand="StudentSuche()" label="Suchen"/>
<?php
if($xulapp!='tempus')
{
?>
<toolbarbutton label="Filter " id="student-toolbar-filter" type="menu">
<menupopup id="student-filter-menu-popup" >
<menuitem id="student-toolbar-filter-dokumente" label="fehlende Dokumente" oncommand="InteressentDokumenteFilter()" disabled="false" tooltiptext="Liste aller Studenten mit Fehlenden Dokumenten"/>
<menuitem id="student-toolbar-filter-offenebuchungen" label="offene Buchungen" oncommand="StudentKontoFilterStudenten('konto')" disabled="false" tooltiptext="Liste aller Studenten mit offenen Buchungen"/>
<menuitem id="student-toolbar-filter-studiengebuehr" label="nicht gebuchte Studiengebuehr" oncommand="StudentKontoFilterStudenten('studiengebuehr')" disabled="false" tooltiptext="Liste aller Studenten die noch nicht mit Studienbebuehr belastet wurden" />
<menuitem id="student-toolbar-filter-zgvohnedatum" label="ZGV eingetragen ohne Datum" oncommand="StudentKontoFilterStudenten('zgvohnedatum')" disabled="false" tooltiptext="Liste aller Studenten die ZGV eingetragen haben bei denen aber kein ZGV Datum gesetzt ist" />
</menupopup>
</toolbarbutton>
<?php
}
?>
<spacer flex="1"/>
<label id="student-toolbar-label-anzahl"/>
</toolbar>
</toolbox>
</hbox>
<!-- ************* -->
<!-- * Auswahl * -->
<!-- ************* -->
<tree id="student-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/student/alle"
<?php echo ($xulapp!='tempus'?'onselect="StudentAuswahl();"':'') ?>
flags="dont-build-content"
enableColumnDrag="true"
style="margin:0px;"
persist="hidden, height"
ondraggesture="nsDragAndDrop.startDrag(event,studentDDObserver);"
context="student-tree-popup"
>
<treecols>
<treecol id="student-treecol-uid" label="UID" flex="1" primary="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#uid" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-titelpre" label="TitelPre" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#titelpre" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-nachname" label="Nachname" flex="1" hidden="false" persist="hidden, width, ordinal"
sortActive="true"
sortDirection="ascending"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#nachname" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-vorname" label="Vorname" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#vorname" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-vornamen" label="Vornamen" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#vornamen" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-titelpost" label="TitelPost" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#titelpost" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-svnr" label="SVNR" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#svnr" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-ersatzkennzeichen" label="Ersatzkennzeichen" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#ersatzkennzeichen" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-geburtsdatum" label="Geburtsdatum" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#geburtsdatum_iso" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-semester" label="Sem." flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#semester" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-verband" label="Verb." flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#verband" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-gruppe" label="Grp." flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#gruppe" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-studiengang" label="Studiengang" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#studiengang" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-studiengang_kz" label="Studiengang_kz" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#studiengang_kz" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-matrikelnummer" label="Personenkennzeichen" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#matrikelnummer" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-prestudent_id" label="PreStudentID" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#prestudent_id" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-person_id" label="PersonID" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#person_id" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-status" label="Status" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#status" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-mail_privat" label="EMail (Privat)" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#mail_privat" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-mail_intern" label="EMail (Intern)" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#mail_intern" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-anmerkungen" label="Anmerkungen" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#anmerkungen" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-anmerkungpre" label="AnmerkungPre" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#anmerkungpre" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-orgform" label="OrgForm" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#orgform" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-aufmerksamdurch" label="Aufmerksamdurch" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#orgform" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-punkte" label="Reihungstestpunkte" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#punkte" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-rt_punkte1" label="RT_Punkte1" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#punkte1" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-rt_punkte2" label="RT_Punkte2" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#punkte2" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-dual" label="Dual" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#dual_bezeichnung" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#uid" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#titelpre" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#nachname" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#vorname" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#vornamen" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#titelpost" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#svnr" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#ersatzkennzeichen" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#geburtsdatum" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#semester" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#verband" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#gruppe" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#studiengang" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#studiengang_kz" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#matrikelnummer" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#prestudent_id" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#status" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#mail_privat" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#mail_intern" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#anmerkungen" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#anmerkungpre" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#orgform" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#aufmerksamdurch_kurzbz" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#punkte" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#punkte1" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#punkte2" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#dual_bezeichnung" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<?php
if($xulapp!='tempus')
{
?>
<splitter collapse="after" persist="state">
<grippy />
</splitter>
<!-- ************ -->
<!-- * Detail * -->
<!-- ************ -->
<vbox flex="1" style="overflow:auto;margin:0px;" persist="height">
<tabbox id="student-tabbox" flex="3" orient="vertical">
<tabs orient="horizontal" id="student-content-tabs">
<tab id="student-tab-detail" label="Details" />
<tab id="student-tab-kontakt" label="Kontakt" />
<tab id="student-tab-prestudent" label="PreStudent" />
<tab id="student-tab-dokumente" label="Dokumente" />
<tab id="student-tab-konto" label="Konto" />
<tab id="student-tab-betriebsmittel" label="Betriebsmittel" />
<tab id="student-tab-io" label="In/Out" />
<tab id="student-tab-noten" label="Noten" />
<tab id="student-tab-zeugnis" label="Zeugnis" />
<tab id="student-tab-pruefung" label="Prüfung" />
<tab id="student-tab-abschlusspruefung" label="AbschlussPrüfung" />
<tab id="student-tab-projektarbeit" label="Projektarbeit" />
<tab id="student-tab-gruppen" label="Gruppen" onclick="StudentGruppenLoadData();"/>
<tab id="student-tab-funktionen" label="Funktionen" onclick="StudentFunktionIFrameLoad();"/>
</tabs>
<tabpanels id="student-tabpanels-main" flex="1">
<vbox id="student-detail" style="margin-top:10px;" />
<iframe id="student-kontakt" src="" style="margin-top:10px;" />
<vbox id="student-prestudent" style="margin-top:10px;" />
<vbox id="interessent-dokumente" style="margin-top:10px;" />
<vbox id="student-konto" style="margin-top:10px;" />
<iframe id="student-betriebsmittel" src="" style="margin-top:10px;" />
<vbox id="student-io" style="margin-top:10px;" />
<vbox id="student-noten" style="margin-top:10px;" />
<vbox id="student-zeugnis" style="margin-top:10px;" />
<vbox id="student-pruefung" style="margin-top:10px;" />
<vbox id="student-abschlusspruefung" style="margin-top:10px;" />
<vbox id="student-projektarbeit" style="margin-top:10px;" />
<vbox id="student-gruppen" style="margin-top:10px;" />
<iframe id="student-funktionen" src="" style="margin-top:10px;" />
</tabpanels>
</tabbox>
</vbox>
<?php
}
?>
</vbox>
</overlay>
<?php
/* Copyright (C) 2006 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <[email protected]>,
* Andreas Oesterreicher <[email protected]> and
* Rudolf Hangl <[email protected]>.
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
header("Content-type: application/vnd.mozilla.xul+xml");
require_once('../../vilesci/config.inc.php');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentdetailoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentzeugnisoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentkontooverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentiooverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentnotenoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentpruefungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentabschlusspruefungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentprojektarbeitoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentgruppenoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/student/interessentdokumenteoverlay.xul.php"?>';
if(isset($_GET['xulapp']))
$xulapp=$_GET['xulapp'];
else
$xulapp='';
?>
<!DOCTYPE overlay >
<overlay id="StudentenOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/student/studentoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/student/interessentoverlay.js.php" />
<!-- *************** -->
<!-- * Studenten * -->
<!-- *************** -->
<vbox id="studentenEditor" persist="height">
<popupset>
<menupopup id="student-tree-popup" onpopupshown="">
<menuitem label="Student aus dieser Gruppe entfernen" oncommand="StudentGruppeDel();" id="student-tree-popup-gruppedel" hidden="false"/>
<menuitem label="EMail senden (intern)" oncommand="StudentSendMail();" id="student-tree-popup-mail" hidden="false"/>
<menuitem label="EMail senden (privat)" oncommand="StudentSendMailPrivat();" id="student-tree-popup-mailprivat" hidden="false"/>
<menuseparator />
<menuitem label="Personendetails anzeigen" oncommand="StudentShowPersonendetails();" id="student-tree-popup-personendetails" hidden="false"/>
<!--
<menuitem label="Interessenten löschen" oncommand="StudentDeleteInteressent();" id="student-tree-popup-deleteinteressent" hidden="false"/>
-->
</menupopup>
</popupset>
<hbox>
<toolbox flex="1">
<toolbar id="student-nav-toolbar">
<?php
if($xulapp!='tempus')
{
?>
<toolbarbutton id="interessent-toolbar-neu" label="Neu" oncommand="InteressentNeu()" disabled="false" image="../skin/images/NeuDokument.png" tooltiptext="Interessent neu anlegen" />
<toolbarbutton id="student-toolbar-buchung" label="Neue Buchung" oncommand="StudentKontoNeu()" disabled="false" tooltiptext="neue Buchung anlegen"/>
<toolbarbutton label="Status ändern " id="student-toolbar-status" type="menu">
<menupopup id="student-status-menu-popup" >
<menuitem id="student-toolbar-abbrecher" label="-> Abbrecher" oncommand="StudentAddRolle('Abbrecher','0')" disabled="false" tooltiptext="Student zum Abbrecher machen" hidden="true"/>
<menuitem id="student-toolbar-unterbrecher" label="-> Unterbrecher" oncommand="StudentAddRolle('Unterbrecher','0')" disabled="false" tooltiptext="Student zum Unterbrecher machen" hidden="true"/>
<menuitem id="student-toolbar-student" label="-> Student" oncommand="StudentUnterbrecherZuStudent()" disabled="false" tooltiptext="Ab/Unterbrecher wieder zum Studenten machen" hidden="true"/>
<menuitem id="student-toolbar-diplomand" label="-> Diplomand" oncommand="StudentAddRolle('Diplomand')" disabled="false" tooltiptext="Studenten zum Diplomanden machen" hidden="true"/>
<menuitem id="student-toolbar-absolvent" label="-> Absolvent" oncommand="StudentAddRolle('Absolvent')" disabled="false" tooltiptext="Studenten zum Absolventen machen" hidden="true"/>
<menuitem id="interessent-toolbar-zubewerber" label="-> Bewerber" oncommand="InteressentzuBewerber()" disabled="false" tooltiptext="Interessent zum Bewerber machen" hidden="true"/>
<menuitem id="interessent-toolbar-zustudent" label="-> Student" oncommand="InteressentzuStudent()" disabled="false" tooltiptext="Bewerber zu Studenten machen" hidden="true"/>
<menuitem id="interessent-toolbar-aufgenommener" label="-> Aufgenommener" oncommand="InteressentAddRolle('Aufgenommener')" disabled="false" tooltiptext="Interessent zum Aufgenommenen machen" hidden="true"/>
<menuitem id="interessent-toolbar-warteliste" label="-> Warteliste" oncommand="InteressentAddRolle('Wartender')" disabled="false" tooltiptext="Interessent zum Wartenden machen" hidden="true"/>
<menuitem id="interessent-toolbar-absage" label="-> Absage" oncommand="InteressentAddRolle('Abgewiesener')" disabled="false" tooltiptext="Interessent zum Absager machen" hidden="true"/>
</menupopup>
</toolbarbutton>
<toolbarbutton id="student-toolbar-export" label="Export" oncommand="StudentExport()" disabled="false" image="../skin/images/ExcelIcon.png" tooltiptext="Daten ins Excel Exportieren"/>
<?php
}
?>
<toolbarbutton id="student-toolbar-refresh" label="Aktualisieren" oncommand="StudentTreeRefresh()" disabled="false" image="../skin/images/refresh.png" tooltiptext="Liste neu laden"/>
<textbox id="student-toolbar-textbox-suche" control="student-toolbar-button-search" onkeypress="StudentSearchFieldKeyPress(event)" />
<button id="student-toolbar-button-search" oncommand="StudentSuche()" label="Suchen"/>
<?php
if($xulapp!='tempus')
{
?>
<toolbarbutton label="Filter " id="student-toolbar-filter" type="menu">
<menupopup id="student-filter-menu-popup" >
<menuitem id="student-toolbar-filter-dokumente" label="fehlende Dokumente" oncommand="InteressentDokumenteFilter()" disabled="false" tooltiptext="Liste aller Studenten mit Fehlenden Dokumenten"/>
<menuitem id="student-toolbar-filter-offenebuchungen" label="offene Buchungen" oncommand="StudentKontoFilterStudenten('konto')" disabled="false" tooltiptext="Liste aller Studenten mit offenen Buchungen"/>
<menuitem id="student-toolbar-filter-studiengebuehr" label="nicht gebuchte Studiengebuehr" oncommand="StudentKontoFilterStudenten('studiengebuehr')" disabled="false" tooltiptext="Liste aller Studenten die noch nicht mit Studienbebuehr belastet wurden" />
<menuitem id="student-toolbar-filter-zgvohnedatum" label="ZGV eingetragen ohne Datum" oncommand="StudentKontoFilterStudenten('zgvohnedatum')" disabled="false" tooltiptext="Liste aller Studenten die ZGV eingetragen haben bei denen aber kein ZGV Datum gesetzt ist" />
</menupopup>
</toolbarbutton>
<?php
}
?>
<spacer flex="1"/>
<label id="student-toolbar-label-anzahl"/>
</toolbar>
</toolbox>
</hbox>
<!-- ************* -->
<!-- * Auswahl * -->
<!-- ************* -->
<tree id="student-tree" seltype="multi" hidecolumnpicker="false" flex="1"
datasources="rdf:null" ref="http://www.technikum-wien.at/student/alle"
<?php echo ($xulapp!='tempus'?'onselect="StudentAuswahl();"':'') ?>
flags="dont-build-content"
enableColumnDrag="true"
style="margin:0px;"
persist="hidden, height"
ondraggesture="nsDragAndDrop.startDrag(event,studentDDObserver);"
context="student-tree-popup"
>
<treecols>
<treecol id="student-treecol-uid" label="UID" flex="1" primary="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#uid" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-titelpre" label="TitelPre" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#titelpre" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-nachname" label="Nachname" flex="1" hidden="false" persist="hidden, width, ordinal"
sortActive="true"
sortDirection="ascending"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#nachname" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-vorname" label="Vorname" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#vorname" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-vornamen" label="Vornamen" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#vornamen" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-titelpost" label="TitelPost" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#titelpost" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-svnr" label="SVNR" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#svnr" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-ersatzkennzeichen" label="Ersatzkennzeichen" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#ersatzkennzeichen" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-geburtsdatum" label="Geburtsdatum" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#geburtsdatum_iso" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-semester" label="Sem." flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#semester" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-verband" label="Verb." flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#verband" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-gruppe" label="Grp." flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#gruppe" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-studiengang" label="Studiengang" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#studiengang" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-studiengang_kz" label="Studiengang_kz" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#studiengang_kz" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-matrikelnummer" label="Personenkennzeichen" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#matrikelnummer" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-prestudent_id" label="PreStudentID" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#prestudent_id" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-person_id" label="PersonID" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#person_id" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-status" label="Status" flex="1" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#status" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-mail_privat" label="EMail (Privat)" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#mail_privat" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-mail_intern" label="EMail (Intern)" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#mail_intern" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-anmerkungen" label="Anmerkungen" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#anmerkungen" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-anmerkungpre" label="AnmerkungPre" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#anmerkungpre" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-orgform" label="OrgForm" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#orgform" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-aufmerksamdurch" label="Aufmerksamdurch" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#orgform" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-punkte" label="Reihungstestpunkte" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#punkte" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-rt_punkte1" label="RT_Punkte1" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#punkte1" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-rt_punkte2" label="RT_Punkte2" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#punkte2" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
<treecol id="student-treecol-dual" label="Dual" flex="1" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/student/rdf#dual_bezeichnung" onclick="StudentTreeSort()"/>
<splitter class="tree-splitter"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#uid" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#titelpre" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#nachname" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#vorname" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#vornamen" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#titelpost" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#svnr" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#ersatzkennzeichen" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#geburtsdatum" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#semester" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#verband" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#gruppe" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#studiengang" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#studiengang_kz" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#matrikelnummer" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#prestudent_id" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#person_id" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#status" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#mail_privat" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#mail_intern" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#anmerkungen" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#anmerkungpre" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#orgform" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#aufmerksamdurch_kurzbz" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#punkte" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#punkte1" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#punkte2" />
<treecell label="rdf:http://www.technikum-wien.at/student/rdf#dual_bezeichnung" />
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<?php
if($xulapp!='tempus')
{
?>
<splitter collapse="after" persist="state">
<grippy />
</splitter>
<!-- ************ -->
<!-- * Detail * -->
<!-- ************ -->
<vbox flex="1" style="overflow:auto;margin:0px;" persist="height">
<tabbox id="student-tabbox" flex="3" orient="vertical">
<tabs orient="horizontal" id="student-content-tabs">
<tab id="student-tab-detail" label="Details" />
<tab id="student-tab-kontakt" label="Kontakt" />
<tab id="student-tab-prestudent" label="PreStudent" />
<tab id="student-tab-dokumente" label="Dokumente" />
<tab id="student-tab-konto" label="Konto" />
<tab id="student-tab-betriebsmittel" label="Betriebsmittel" />
<tab id="student-tab-io" label="In/Out" />
<tab id="student-tab-noten" label="Noten" />
<tab id="student-tab-zeugnis" label="Zeugnis" />
<tab id="student-tab-pruefung" label="Prüfung" />
<tab id="student-tab-abschlusspruefung" label="AbschlussPrüfung" />
<tab id="student-tab-projektarbeit" label="Projektarbeit" />
<tab id="student-tab-gruppen" label="Gruppen" onclick="StudentGruppenLoadData();"/>
<tab id="student-tab-funktionen" label="Funktionen" onclick="StudentFunktionIFrameLoad();"/>
</tabs>
<tabpanels id="student-tabpanels-main" flex="1">
<vbox id="student-detail" style="margin-top:10px;" />
<iframe id="student-kontakt" src="" style="margin-top:10px;" />
<vbox id="student-prestudent" style="margin-top:10px;" />
<vbox id="interessent-dokumente" style="margin-top:10px;" />
<vbox id="student-konto" style="margin-top:10px;" />
<iframe id="student-betriebsmittel" src="" style="margin-top:10px;" />
<vbox id="student-io" style="margin-top:10px;" />
<vbox id="student-noten" style="margin-top:10px;" />
<vbox id="student-zeugnis" style="margin-top:10px;" />
<vbox id="student-pruefung" style="margin-top:10px;" />
<vbox id="student-abschlusspruefung" style="margin-top:10px;" />
<vbox id="student-projektarbeit" style="margin-top:10px;" />
<vbox id="student-gruppen" style="margin-top:10px;" />
<iframe id="student-funktionen" src="" style="margin-top:10px;" />
</tabpanels>
</tabbox>
</vbox>
<?php
}
?>
</vbox>
</overlay>
+8 -8
View File
@@ -1481,7 +1481,7 @@ function StudentPrestudentRolleDelete()
if (tree.currentIndex==-1) return;
//markierte Rolle holen
var rolle_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-rolle_kurzbz', tree.currentIndex);
var status_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-status_kurzbz', tree.currentIndex);
var studiensemester_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', tree.currentIndex);
var prestudent_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-prestudent_id', tree.currentIndex);
var ausbildungssemester = getTreeCellText(tree, 'student-prestudent-tree-rolle-ausbildungssemester', tree.currentIndex);
@@ -1494,7 +1494,7 @@ function StudentPrestudentRolleDelete()
req.add('type', 'deleterolle');
req.add('rolle_kurzbz', rolle_kurzbz);
req.add('status_kurzbz', status_kurzbz);
req.add('prestudent_id', prestudent_id);
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
req.add('ausbildungssemester', ausbildungssemester);
@@ -1530,12 +1530,12 @@ function StudentRolleBearbeiten()
if (tree.currentIndex==-1) return;
//Ausgewaehlte Nr holen
var rolle_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-rolle_kurzbz', tree.currentIndex);
var status_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-status_kurzbz', tree.currentIndex);
var studiensemester_kurzbz = getTreeCellText(tree, 'student-prestudent-tree-rolle-studiensemester_kurzbz', tree.currentIndex);
var prestudent_id = getTreeCellText(tree, 'student-prestudent-tree-rolle-prestudent_id', tree.currentIndex);
var ausbildungssemester = getTreeCellText(tree, 'student-prestudent-tree-rolle-ausbildungssemester', tree.currentIndex);
window.open('<?php echo APP_ROOT?>content/student/studentrolledialog.xul.php?prestudent_id='+prestudent_id+'&rolle_kurzbz='+rolle_kurzbz+'&studiensemester_kurzbz='+studiensemester_kurzbz+'&ausbildungssemester='+ausbildungssemester,"Status","chrome, status=no, width=500, height=300, centerscreen, resizable");
window.open('<?php echo APP_ROOT?>content/student/studentrolledialog.xul.php?prestudent_id='+prestudent_id+'&status_kurzbz='+status_kurzbz+'&studiensemester_kurzbz='+studiensemester_kurzbz+'&ausbildungssemester='+ausbildungssemester,"Status","chrome, status=no, width=500, height=300, centerscreen, resizable");
}
// ****
@@ -1546,9 +1546,9 @@ function StudentRolleSpeichern(dialog, studiensemester_old, ausbildungssemester_
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
prestudent_id = dialog.getElementById('student-rolle-textbox-prestudent_id').value;
if(studiensemester_old=='')
rolle_kurzbz = dialog.getElementById('student-rolle-menulist-rolle_kurzbz').value;
status_kurzbz = dialog.getElementById('student-rolle-menulist-status_kurzbz').value;
else
rolle_kurzbz = dialog.getElementById('student-rolle-textbox-rolle_kurzbz').value;
status_kurzbz = dialog.getElementById('student-rolle-textbox-status_kurzbz').value;
studiensemester_kurzbz = dialog.getElementById('student-rolle-menulist-studiensemester').value;
ausbildungssemester = dialog.getElementById('student-rolle-menulist-ausbildungssemester').value;
datum = dialog.getElementById('student-rolle-datum-datum').value;
@@ -1565,7 +1565,7 @@ function StudentRolleSpeichern(dialog, studiensemester_old, ausbildungssemester_
req.add('type', 'saverolle');
req.add('rolle_kurzbz', rolle_kurzbz);
req.add('status_kurzbz', status_kurzbz);
req.add('prestudent_id', prestudent_id);
req.add('studiensemester_kurzbz', studiensemester_kurzbz);
req.add('studiensemester_old', studiensemester_old);
@@ -1749,7 +1749,7 @@ function StudentAddRolle(rolle, semester, studiensemester)
req.add('type', 'addrolle');
req.add('prestudent_id', paramList);
req.add('rolle_kurzbz', rolle);
req.add('status_kurzbz', rolle);
req.add('semester', semester);
if(typeof(studiensemester)!='unknown')
req.add('studiensemester_kurzbz', studiensemester);
+6 -6
View File
@@ -34,11 +34,11 @@ var ausbildungssemester_old;
// ****
// * Laedt die Rolle
// ****
function StudentRolleInit(prestudent_id, rolle_kurzbz, studiensemester_kurzbz, ausbildungssemester)
function StudentRolleInit(prestudent_id, status_kurzbz, studiensemester_kurzbz, ausbildungssemester)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
if(rolle_kurzbz!='')
if(status_kurzbz!='')
{
document.getElementById('student-rolle-grid-row-textbox').hidden=false;
document.getElementById('student-rolle-grid-row-menulist').hidden=true;
@@ -47,14 +47,14 @@ function StudentRolleInit(prestudent_id, rolle_kurzbz, studiensemester_kurzbz, a
ausbildungssemester_old=ausbildungssemester;
//Daten holen
var url = '<?php echo APP_ROOT ?>rdf/prestudentrolle.rdf.php?prestudent_id='+prestudent_id+'&rolle_kurzbz='+rolle_kurzbz+'&studiensemester_kurzbz='+studiensemester_kurzbz+'&ausbildungssemester='+ausbildungssemester+'&'+gettimestamp();
var url = '<?php echo APP_ROOT ?>rdf/prestudentrolle.rdf.php?prestudent_id='+prestudent_id+'&status_kurzbz='+status_kurzbz+'&studiensemester_kurzbz='+studiensemester_kurzbz+'&ausbildungssemester='+ausbildungssemester+'&'+gettimestamp();
var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].
getService(Components.interfaces.nsIRDFService);
var dsource = rdfService.GetDataSourceBlocking(url);
var subject = rdfService.GetResource("http://www.technikum-wien.at/prestudentrolle/" + prestudent_id+"/"+rolle_kurzbz+"/"+studiensemester_kurzbz+"/"+ausbildungssemester);
var subject = rdfService.GetResource("http://www.technikum-wien.at/prestudentrolle/" + prestudent_id+"/"+status_kurzbz+"/"+studiensemester_kurzbz+"/"+ausbildungssemester);
var predicateNS = "http://www.technikum-wien.at/prestudentrolle/rdf";
@@ -72,7 +72,7 @@ function StudentRolleInit(prestudent_id, rolle_kurzbz, studiensemester_kurzbz, a
document.getElementById('student-rolle-grid-row-menulist').hidden=false;
//Defaultwerte bei Neuem Datensatz
rolle_kurzbz = 'Interessent';
status_kurzbz = 'Interessent';
studiensemester_kurzbz=window.opener.getStudiensemester();
ausbildungssemester='1';
datum = '<?php echo date('d.m.Y') ?>';
@@ -80,7 +80,7 @@ function StudentRolleInit(prestudent_id, rolle_kurzbz, studiensemester_kurzbz, a
}
document.getElementById('student-rolle-textbox-prestudent_id').value=prestudent_id;
document.getElementById('student-rolle-textbox-rolle_kurzbz').value=rolle_kurzbz;
document.getElementById('student-rolle-textbox-status_kurzbz').value=status_kurzbz;
document.getElementById('student-rolle-menulist-studiensemester').value=studiensemester_kurzbz;
document.getElementById('student-rolle-menulist-ausbildungssemester').value=ausbildungssemester;
document.getElementById('student-rolle-datum-datum').value=datum;
+6 -6
View File
@@ -44,10 +44,10 @@ if(isset($_GET['prestudent_id']))
else
$prestudent_id='';
if(isset($_GET['rolle_kurzbz']))
$rolle_kurzbz=$_GET['rolle_kurzbz'];
if(isset($_GET['status_kurzbz']))
$status_kurzbz=$_GET['status_kurzbz'];
else
$rolle_kurzbz='';
$status_kurzbz='';
if(isset($_GET['studiensemester_kurzbz']))
$studiensemester_kurzbz=$_GET['studiensemester_kurzbz'];
@@ -74,7 +74,7 @@ if($prestudent_id!='')
<window id="student-rolle-dialog" title="Status"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="StudentRolleInit(<?php echo "'$prestudent_id','$rolle_kurzbz','$studiensemester_kurzbz','$ausbildungssemester'";?>)"
onload="StudentRolleInit(<?php echo "'$prestudent_id','$status_kurzbz','$studiensemester_kurzbz','$ausbildungssemester'";?>)"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/student/studentrolledialog.js.php" />
@@ -92,11 +92,11 @@ if($prestudent_id!='')
<rows>
<row id="student-rolle-grid-row-textbox" hidden="false">
<label value="Rolle"/>
<textbox disabled="true" id="student-rolle-textbox-rolle_kurzbz" />
<textbox disabled="true" id="student-rolle-textbox-status_kurzbz" />
</row>
<row id="student-rolle-grid-row-menulist" hidden="true">
<label value="Rolle"/>
<menulist id="student-rolle-menulist-rolle_kurzbz" disabled="false">
<menulist id="student-rolle-menulist-status_kurzbz" disabled="false">
<menupopup>
<menuitem value="Interessent" label="Interessent"/>
<menuitem value="Bewerber" label="Bewerber"/>
+223 -223
View File
@@ -1,224 +1,224 @@
<?php
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>';
include('../vilesci/config.inc.php');
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentenoverlay.xul.php?xulapp=tempus"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/stpl-week-overlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/stpl-semester-overlay.xul.php"?>';
/*echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';*/
?>
<!DOCTYPE overlay >
<!-- [<?php require_once("../locale/de-AT/tempus.dtd"); ?>] -->
<overlay id="TempusOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/fasoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/tempusoverlay.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/dragboard.js.php"/>
<tree id="tree-verband" onmouseup="onVerbandSelect();"
seltype="single" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,lvbgrpDDObserver);"
datasources="../rdf/lehrverbandsgruppe.rdf.php?prestudent=false" ref="http://www.technikum-wien.at/lehrverbandsgruppe/alle-verbaende"
ondragdrop="nsDragAndDrop.drop(event,verbandtreeDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,verbandtreeDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,verbandtreeDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,verbandtreeDDObserver)"
>
<treecols>
<treecol id="bez" label="Bezeichnung" flex="15" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="stg" label="STG" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stg_kz" label="KZ" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="sem" label="Sem" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="ver" label="Ver" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="grp" label="Grp" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="gruppe" label="SpzGruppe" flex="1" hidden="true"/>
<treecol id="typ" label="Typ" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stsem" label="StSem" flex="1" persist="hidden, width, ordinal" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#name"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stg"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stg_kz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#sem"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#ver"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#grp"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#gruppe"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#typ"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stsem"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<tree id="tree-ort" onselect="onOrtSelect();"
seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/ort.rdf.php" ref="http://www.technikum-wien.at/ort/alle-orte">
<treecols>
<treecol id="raumtyp" label="Raumtyp" flex="2" primary="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="ort_kurzbz" label="Raum" flex="4" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="hierarchie" label="HI" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="ort_bezeichnung" label="Bezeichnung" flex="3" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="max_person" label="MaxP" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="raumtypen" label="Raumtypen" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="stockwerk" label="Stockwerk" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="planbezeichnung" label="Planbezeichnung" flex="1" hidden="true" persist="hidden, width, ordinal"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#raumtyp"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#ort_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#hierarchie"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#ort_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#max_person"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#raumtypen"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#stockwerk"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#planbezeichnung"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<!--
<tree id="tree-lektor" onselect="onLektorSelect();"
seltype="single" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,mitarbeiterDDObserver);"
datasources="../rdf/mitarbeiter.rdf.php" ref="http://www.technikum-wien.at/mitarbeiter/_alle">
<treecols>
<treecol id="kurzbz" label="Kuerzel" flex="2" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="nachname" label="Nachname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="vornamen" label="Vornamen" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="titel" label="Titel" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="uid" label="UID" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vornamen"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
-->
<tree id="tree-lektor" onmouseup="onLektorSelect(event);"
seltype="multi" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,mitarbeiterDDObserver);"
ondragdrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,LektorFunktionDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,LektorFunktionDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,LektorFunktionDDObserver)"
datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/liste"
context="fasoverlay-lektor-tree-popup"
>
<treecols>
<treecol id="kurzbz" label="Kuerzel" flex="2" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="nachname" label="Nachname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="vorname" label="Vorname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="titel" label="Titel" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="uid" label="UID" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="studiengang_kz" label="Studiengangkz" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#studiengang_kz"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox id="vbox-main">
<popupset>
<popup id="fasoverlay-lektor-tree-popup">
<menuitem label="Mail senden" oncommand="LektorFunktionMail();" />
<menuseparator />
<menuitem label="Entfernen" oncommand="LektorFunktionDel();" />
</popup>
</popupset>
<tabbox id="tabbox-main" flex="3" orient="vertical">
<tabs orient="horizontal">
<tab id="tab-week" label="Wochenplan" />
<tab id="tab-semester" label="Semesterplan" />
<tab id="tab-studenten" label="Studenten" />
<tab id="tab-lfvt" label="Lehrveranstaltung" />
</tabs>
<tabpanels id="tabpanels-main" flex="1">
<!-- Wochenplan -->
<hbox id="hboxTimeTableWeek" />
<!-- Semesterplan -->
<vbox id="vboxTimeTableSemester" />
<!-- Studenten -->
<vbox id="studentenEditor" />
<!-- Lehrfachverteilung -->
<vbox id="LehrveranstaltungEditor" />
</tabpanels>
</tabbox>
</vbox>
<?php
header("Content-type: application/vnd.mozilla.xul+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
include('../vilesci/config.inc.php');
echo '<?xul-overlay href="'.APP_ROOT.'content/student/studentenoverlay.xul.php?xulapp=tempus"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/lehrveranstaltungoverlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/stpl-week-overlay.xul.php"?>';
echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/stpl-semester-overlay.xul.php"?>';
/*echo '<?xml-stylesheet href="'.APP_ROOT.'skin/tempus.css" type="text/css"?>';*/
?>
<!DOCTYPE overlay >
<!-- [<?php require_once("../locale/de-AT/tempus.dtd"); ?>] -->
<overlay id="TempusOverlay"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/fasoverlay.js.php" />
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/tempusoverlay.js.php" />
<script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/DragAndDrop.js"/>
<script type="application/x-javascript" src="<?php echo APP_ROOT; ?>content/dragboard.js.php"/>
<tree id="tree-verband" onmouseup="onVerbandSelect();"
seltype="single" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,lvbgrpDDObserver);"
datasources="../rdf/lehrverbandsgruppe.rdf.php?prestudent=false" ref="http://www.technikum-wien.at/lehrverbandsgruppe/alle-verbaende"
ondragdrop="nsDragAndDrop.drop(event,verbandtreeDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,verbandtreeDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,verbandtreeDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,verbandtreeDDObserver)"
>
<treecols>
<treecol id="bez" label="Bezeichnung" flex="15" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="stg" label="STG" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stg_kz" label="KZ" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="sem" label="Sem" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="ver" label="Ver" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="grp" label="Grp" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="gruppe" label="SpzGruppe" flex="1" hidden="true"/>
<treecol id="typ" label="Typ" flex="1" persist="hidden, width, ordinal" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="stsem" label="StSem" flex="1" persist="hidden, width, ordinal" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#name"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stg"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stg_kz"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#sem"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#ver"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#grp"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#gruppe"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#typ"/>
<treecell label="rdf:http://www.technikum-wien.at/lehrverbandsgruppe/rdf#stsem"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<tree id="tree-ort" onselect="onOrtSelect();"
seltype="single" hidecolumnpicker="false" flex="1"
datasources="../rdf/ort.rdf.php" ref="http://www.technikum-wien.at/ort/alle-orte">
<treecols>
<treecol id="raumtyp" label="Raumtyp" flex="2" primary="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="ort_kurzbz" label="Raum" flex="4" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="hierarchie" label="HI" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="ort_bezeichnung" label="Bezeichnung" flex="3" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="max_person" label="MaxP" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="raumtypen" label="Raumtypen" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="stockwerk" label="Stockwerk" flex="1" hidden="true" persist="hidden, width, ordinal"/>
<splitter class="tree-splitter"/>
<treecol id="planbezeichnung" label="Planbezeichnung" flex="1" hidden="true" persist="hidden, width, ordinal"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#raumtyp"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#ort_kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#hierarchie"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#ort_bezeichnung"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#max_person"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#raumtypen"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#stockwerk"/>
<treecell label="rdf:http://www.technikum-wien.at/ort/rdf#planbezeichnung"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<!--
<tree id="tree-lektor" onselect="onLektorSelect();"
seltype="single" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,mitarbeiterDDObserver);"
datasources="../rdf/mitarbeiter.rdf.php" ref="http://www.technikum-wien.at/mitarbeiter/_alle">
<treecols>
<treecol id="kurzbz" label="Kuerzel" flex="2" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="nachname" label="Nachname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="vornamen" label="Vornamen" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="titel" label="Titel" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="uid" label="UID" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vornamen"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
-->
<tree id="tree-lektor" onmouseup="onLektorSelect(event);"
seltype="multi" hidecolumnpicker="false" flex="1"
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,mitarbeiterDDObserver);"
ondragdrop="nsDragAndDrop.drop(event,LektorFunktionDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,LektorFunktionDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,LektorFunktionDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,LektorFunktionDDObserver)"
datasources="rdf:null" ref="http://www.technikum-wien.at/mitarbeiter/liste"
context="fasoverlay-lektor-tree-popup"
>
<treecols>
<treecol id="kurzbz" label="Kuerzel" flex="2" primary="true" />
<splitter class="tree-splitter"/>
<treecol id="nachname" label="Nachname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="vorname" label="Vorname" flex="2" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="titel" label="Titel" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="uid" label="UID" flex="1" hidden="true"/>
<splitter class="tree-splitter"/>
<treecol id="studiengang_kz" label="Studiengangkz" flex="1" hidden="true"/>
</treecols>
<template>
<rule>
<treechildren>
<treeitem uri="rdf:*">
<treerow>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#kurzbz"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#nachname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#vorname"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#titelpre"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#uid"/>
<treecell label="rdf:http://www.technikum-wien.at/mitarbeiter/rdf#studiengang_kz"/>
</treerow>
</treeitem>
</treechildren>
</rule>
</template>
</tree>
<vbox id="vbox-main">
<popupset>
<popup id="fasoverlay-lektor-tree-popup">
<menuitem label="Mail senden" oncommand="LektorFunktionMail();" />
<menuseparator />
<menuitem label="Entfernen" oncommand="LektorFunktionDel();" />
</popup>
</popupset>
<tabbox id="tabbox-main" flex="3" orient="vertical">
<tabs orient="horizontal">
<tab id="tab-week" label="Wochenplan" />
<tab id="tab-semester" label="Semesterplan" />
<tab id="tab-studenten" label="Studenten" />
<tab id="tab-lfvt" label="Lehrveranstaltung" />
</tabs>
<tabpanels id="tabpanels-main" flex="1">
<!-- Wochenplan -->
<hbox id="hboxTimeTableWeek" />
<!-- Semesterplan -->
<vbox id="vboxTimeTableSemester" />
<!-- Studenten -->
<vbox id="studentenEditor" />
<!-- Lehrfachverteilung -->
<vbox id="LehrveranstaltungEditor" />
</tabpanels>
</tabbox>
</vbox>
</overlay>