Terav C - Võrgurakendused 2 - projektileht

From ICO wiki
Jump to navigationJump to search

Üldist

Liikmed

  • Aleksandr Laidoner
  • Oliver Dalberg
  • Tarmo Sillajõe
  • Andre Tšernikov

Teema valik - Pildiportaal

Valisime teemaks pildiportaali.

Ülesanne 1 - XML

Tähtaeg 15.04.2013

XML - fail

Antud xml'i annab välja Pildiportaali veebiteenus selleks, et kliendid saaks kuvada galerii infot. \\ Lae alla: http://sdrv.ms/ZsX5Nz

<?xml version="1.0" encoding="utf-8"?>
<galeriid>
  <galerii id="1" kategooria="Loomad">
    <pildid>      
      <pilt number="1" vaade="suur">
        <nimi>Lind</nimi>
        <kirjeldus>Ilus roheline lind</kirjeldus>
        <formaat>jpg</formaat>
        <suurus yhik="MB">2</suurus>
        <lisatud>
          <paev>01</paev>
          <kuu>03</kuu>
          <aasta>2012</aasta>
        </lisatud>
      </pilt>
      <pilt number="2" vaade="ikoon">
        <nimi>Lind</nimi>
        <kirjeldus>Ilus roheline lind</kirjeldus>
        <formaat>jpg</formaat>
        <suurus yhik="KB">200</suurus>
        <lisatud>
          <paev>01</paev>
          <kuu>03</kuu>
          <aasta>2012</aasta>
        </lisatud>
      </pilt>
      <pilt number="3" vaade="suur">
        <nimi>Koer</nimi>
        <kirjeldus>Minu koer</kirjeldus>
        <formaat>jpg</formaat>
        <suurus yhik="MB">3</suurus>
        <lisatud>
          <paev>02</paev>
          <kuu>03</kuu>
          <aasta>2012</aasta>
        </lisatud>
      </pilt>
      <pilt number="4" vaade="ikoon">
        <nimi>Koer</nimi>
        <kirjeldus>Minu koer</kirjeldus>
        <formaat>png</formaat>
        <suurus yhik="KB">230</suurus>
        <lisatud>
          <paev>02</paev>
          <kuu>03</kuu>
          <aasta>2012</aasta>
        </lisatud>
      </pilt>      
    </pildid>
  </galerii>
  <galerii id="2" kategooria="Linnad">
    <pildid>
      <pilt number="1" vaade="suur">
        <nimi>Tallinn</nimi>
        <kirjeldus>Tallinn kevadel</kirjeldus>
        <formaat>jpg</formaat>
        <suurus yhik="MB">2</suurus>
        <lisatud>
          <paev>08</paev>
          <kuu>03</kuu>
          <aasta>2012</aasta>
        </lisatud>
      </pilt>
      <pilt number="2" vaade="ikoon">
        <nimi>Tallinn</nimi>
        <kirjeldus>Tallinn kevadel</kirjeldus>
        <formaat>raw</formaat>
        <suurus yhik="KB">220</suurus>
        <lisatud>
          <paev>08</paev>
          <kuu>03</kuu>
          <aasta>2012</aasta>
        </lisatud>
      </pilt>
    </pildid>
  </galerii>
</galeriid>

XSL - stiilifailid

Stiilifail 1 - inimsõbralik vaade xml faili sisust

Antud stiilifail vormindab inimsõbralikul tabeli kujul ülaloleva XML'i

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
    <xsl:output method="html" indent="yes"/>
    <xsl:template match="/">
      <html>
        <head>
          <title>XML to HTML 1</title>
          <style>
            .theader { font-style:italic; text-decoration:underline; }
          </style>
        
        </head>
        <body>
          <H1>getPildid sõnumi sisu.</H1>
          <xsl:for-each select="/galeriid/galerii">
            <h3>
              <xsl:text>Galerii nr. </xsl:text>
              <xsl:value-of select="@id"/>
              <xsl:text> (</xsl:text>
              <xsl:value-of select="@kategooria"/>
              <xsl:text>)</xsl:text>
            </h3>
            <table>
              <tr class="theader">
                <td>pilt.number</td>
                <td>pilt.vaade</td>
                <td>nimi</td>
                <td>kirjeldus</td>
                <td>formaat</td>
                <td>suurus</td>
              </tr>
              <xsl:for-each select ="pildid/pilt">
                <tr>
                  <td>
                    <xsl:value-of select="@number"/>
                  </td>
                  <td>
                    <xsl:value-of select="@vaade"/>
                  </td>
                  <td>
                    <xsl:value-of select="nimi"/>
                  </td>
                  <td>
                    <xsl:value-of select="kirjeldus"/>
                  </td>
                  <td>
                    <xsl:value-of select="formaat"/>
                  </td>
                  <td>
                    <xsl:value-of select="suurus"/>
                    <xsl:value-of select="suurus/@yhik"/>
                  </td>
                </tr>
              </xsl:for-each>
            </table>
          </xsl:for-each>
        </body>
      </html>

    </xsl:template>
</xsl:stylesheet>

Stiilifail 2 - galerii vaade (ikoonid)

Antud stiilifail vormindab XML'i galeriilaadseks HTML'iks

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
  <xsl:output method="html" indent="yes"/>
  <xsl:template match="/">
    <!-- http://www.w3schools.com/css/css_image_gallery.asp -->
    <html>
      <head>
        <title>XML to HTML - Gallery</title>
        <style>
          div.img
          {
          margin: 2px;
          border: 1px solid #0000ff;
          height: auto;
          width: auto;
          float: left;
          text-align: center;
          }
          div.img img
          {
          display: inline;
          margin: 3px;
          border: 1px solid #ffffff;
          }
          div.img a:hover img {border: 1px solid #0000ff;}
          div.desc
          {
          text-align: center;
          font-weight: normal;
          width: 120px;
          margin: 2px;
          }
        </style>

      </head>
      <body>
        <xsl:for-each select="/galeriid/galerii">
            <xsl:for-each select ="pildid/pilt">
              <xsl:if test="@vaade='ikoon'">
                <div class="img">
                  <a target="_blank" href="#">
                    <img 
                        src="http://fc09.deviantart.net/fs6/i/2005/039/d/c/Not_Available_Icon_by_blacxthornE.jpg" 
                        width="110" 
                        height="90"/>
                  
                   </a>
                  <div class="desc">
                    <xsl:value-of select="kirjeldus"/>
                  </div>
                </div>
              </xsl:if>
            </xsl:for-each>
        </xsl:for-each>
      </body>
    </html>

  </xsl:template>
</xsl:stylesheet>

Stiilifail 3 - thumbnails xml

Antud stiilifail vormindab xml'i ringi selliselt, et kuvab masinsõbralikul kujul xml'i.

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
    <xsl:output method="xml" indent="yes"/>
    <xsl:template match="/">
      <thumbnails>
      
          <xsl:for-each select="/galeriid/galerii">

              <xsl:for-each select ="pildid/pilt">
                <xsl:if test="@vaade='ikoon'">
                  <thumb>
                    <xsl:attribute name="number">
                      <xsl:value-of select="@number"/>
                    </xsl:attribute>
                    <nimi>
                      <xsl:value-of select="nimi"/>
                    </nimi>
                    <kirjeldus>
                      <xsl:value-of select="kirjeldus"/>
                    </kirjeldus>
                    <url>
                      <xsl:text>http://pildiportaal.mingidomeen.ee/getThumb.aspx?id=</xsl:text>
                      <xsl:value-of select="@number"/>
                    </url>
                    <lisatud>
                      <xsl:value-of select="lisatud/aasta"/>
                      <xsl:text>-</xsl:text>
                      <xsl:value-of select="lisatud/kuu"/>
                      <xsl:text>-</xsl:text>
                      <xsl:value-of select="lisatud/paev"/>
                    </lisatud>
                  </thumb>
                  
                </xsl:if>
              </xsl:for-each>
          </xsl:for-each>

      </thumbnails>
    </xsl:template>
</xsl:stylesheet>

Skeemifail

Ülesanne 2 - Veebiteenus

Tähtaeg 20.05.2013

Ülesanne 3 - Klient

Tähtaeg 10.06.2013