Skripti http://oppe.admin.ut.ee/ained/tulemus/nimekiri.asp kood

VÄRVIDE TÄHENDUSED
   Serveripoolne skript
   Kliendipoolne skript
   Link
   Include-lause
   Freimid
   Kommentaarid
   Objekti link
   HTML ja tavaline tekst


<%
'Tartu Ülikooli õppeaineregistri WWW-liides
'Autor: Aulis Sibola
'Juhendaja: Jaanus Pöial

'Õppetooli ainete väljastus.
'Ained leitakse teaduskonna, instituudi ja õppetooli koodi järgi.
'Siit suunutakse konkreetse aine infosse või õppetooli kõikide
'ainete infosse.
%>

<!--#INCLUDE  file="header.lisamine"-->
<%
'Kui kasutaja soovib SQL-is viga esile kutsuda (küsides ülakoma),
'saadetakse teaduskondade loetellu:
if InStr(Request("TK"),"'") or InStr(Request("INS"),"'") or InStr(Request("OT"),"'") then
  Response.Redirect("algus.asp#oppetool")
end if

'Kui soovitakse jooksva õppeaasta aineid, tuleb aastaarv arvutada:
if Request("selaastal") = "OK" then%>

<!--#INCLUDE  file="jooksevaasta.inc"-->
<%end if

'Ühenduse loomine:
Set yhendus = Server.CreateObject("ADODB.Connection")
'Andmebaasi avamine:
yhendus.Open "Aineregister"

'Õppetooli nime selgitamine ja dokumendi tiitli väljastus:
'Päringustring:
Paring = "select nimi from dba_oppetool where teaduskond = '"  & _
   Request("TK") & "' and instituut = '"  & _
   Request("INS") & "' and kood = '"  & _
   Request("OT") & "'"

'Päring andmebaasis:
Set oppetool = yhendus.Execute(Paring)
'Kui õppetooli pole, siis suunatakse õppetoolide loetellu:
if oppetool.EOF then
  Response.Redirect("oppetool.asp?TK=" & Request("TK"))
else
'Tiitlisse panekuks asendatakse ¯(z~) z~-ga
  oppnimi=replace(oppetool("nimi"),"¯","z~")%>

  <html>
  <head>
  <title><%=oppnimi%>  (<%=Request("TK")&Request("INS")&"."&Request("OT")%>)</title>
  </head>
  <!--#INCLUDE  file="body.htm"-->
<%end if%>
<center>
<h2>Ainete loetelu (<%=oppetool("nimi")%>):</h2>
</center>
<%
'Õppetooli päringu sulgemine:
oppetool.close
'Õppetooli nime lõpp

'Ainete leidmine andmebaasist
'Päringustring:
'Kui soovitakse jooksva õppeaasta aineid:
if Request("selaastal") = "OK" then
  Paring = "select teaduskond, instituut, oppetool, nr, algoppeaasta, loppoppeaasta, nimi " & _
   "from DBA_Aine, DBA_Tekst, DBA_ajakava where " & _
   "DBA_Aine.kood = DBA_ajakava.aine and " & _
   "DBA_ajakava.aasta = " & JooksevAasta & " and " & _
   "DBA_Aine.kood = DBA_Tekst.aine and " & _
   "DBA_Tekst.lõppaasta is Null and " & _
   "teaduskond = '"  & Request("TK") & "' and "  & _
   "instituut = '"  & Request("INS") & "' and "  & _
   "oppetool = '"  & Request("OT") & "' "  & _
   "group by nimi, teaduskond, instituut, oppetool, nr, algoppeaasta, loppoppeaasta " & _
   "order by instituut, oppetool, nr"
'Soovitakse kõiki aineid:
else
  Paring = "select teaduskond, instituut, oppetool, nr, algoppeaasta, loppoppeaasta, nimi " & _
   "from DBA_Aine, DBA_Tekst where " & _
   "DBA_Aine.kood = DBA_Tekst.aine and " & _
   "DBA_Tekst.lõppaasta is Null and " & _
   "teaduskond = '"  & Request("TK") & "' and "  & _
   "instituut = '"  & Request("INS") & "' and "  & _
   "oppetool = '"  & Request("OT") & "' "  & _
   "order by instituut, oppetool, nr"
end if

'Päring andmebaasis:
Set ained = yhendus.Execute(Paring)

eileidu = true 'Kontrollimaks, kas aineid leiti.

'Kui aineid leitakse ja ei soovita näha jooksva õppeaasta aineid,
'siis väljastatakse võimalus näha jooksva õppeaasta aineid ja õppetooli
'aineid ühel lehel.
if not ained.EOF then
  if Request("selaastal") <> "OK" then
%>

<form action=nimekiri.asp method=POST>
<input type=hidden name=TK value=<%=Request("TK")%>>
<input type=hidden name=INS value=<%=Request("INS")%>>
<input type=hidden name=OT value=<%=Request("OT")%>>
<input type=hidden name=selaastal value=OK>
<table width="100%">
<tr>
<td align=left><input type=submit value="Jätta alles sel õppeaastal loetavad ained"></td>
<td align=right><a href=ained.asp?<%=Request("TK")&Request("INS")&"."&Request("OT")%>><b>Kõik ained korraga</b></a></td>
</tr>
</table>
</form>
<%
  end if 'selaastal kontroll
  'Ained leiduvad:
  eileidu = false
end if 'ainete leidumise kontroll
%>


<!-- Ained väljastatakse tabelis -->
<table border=0>
<%
'Ainete väljastus:
Do While Not ained.EOF
%>
<tr>
  <td><%=ained("teaduskond")&ained("instituut")&"."&ained("oppetool")&"."&ained("nr")%></td><%
if IsNull(ained("nimi")) then
%>
  <td><a href=aine.asp?<%=ained("teaduskond")&ained("instituut")&"."&ained("oppetool")&"."&ained("nr")%>>__</a><%
else
%>
<td><a href=aine.asp?<%=ained("teaduskond")&ained("instituut")&"."&ained("oppetool")&"."&ained("nr")%>><%=ained("nimi")%></a><%
end if

'Kui aine on lõpetatud, siis väljastatakse vastav teade
'(lõpetatud või ühekordne):
if Not(IsNull(ained("loppoppeaasta"))) then
    if ained("algoppeaasta") = ained("loppoppeaasta") then
     Response.Write " (&uuml;hekordne aine " & ained("algoppeaasta") & "/"
     Response.Write ained("algoppeaasta") + 1 & " &otilde;a.)"
    else
     Response.Write " (l&otilde;petatud " & ained("loppoppeaasta") & " a.)"
    end if
   end if%>
</td>
</tr>
<%
  ained.MoveNext
Loop 'tsükli lõpp

'Ainete päringu sulgemine:
ained.close
'Ühenduse sulgemine:
yhendus.close
%>
</table>
<%
'Kui aineid ei leitud, väljastatakse vastav teade:
if eileidu then
%>
<h3>Ained puuduvad...</h3><%
end if%>


<!--#INCLUDE  file="footer.htm"-->