Return TypeFunction nameArguments
voidhdsPage::Head(hzHttpEvent*,)

Declared in file: hzDissemino.h
Defined in file : hdsGenerate.cpp

Function Logic:

0:START 1:strrchr pEnd 2:pEnd 3:Filename2Mimetype type 4:type 5:hzChain::Clear 6:hrc 7:HTTPMSG_OK 8:items

Function body:

void hdsPage::Head (hzHttpEvent* pE)
{
   _hzfunc("hdsPage::Head") ;
   ifstream    is ;
   hzXDate     d ;
   hzChain     Z ;
   const char* pEnd ;
   hzMimetype  type ;
   HttpRC      hrc ;
   hzEcode     rc ;
   pEnd = strrchr(*m_Url, CHAR_PERIOD) ;
   if (pEnd)
       type = Filename2Mimetype(pEnd) ;
   else
       type = HMTYPE_TXT_HTML ;
   Z.Clear() ;
   switch  (hrc)
   {
   case HTTPMSG_OK:        Z << "HTTP/1.1 200 OK\r\n" ;        break ;
   case HTTPMSG_NOTFOUND:  Z << "HTTP/1.1 404 Not found\r\n" ; break ;
   default:
       Z.Printf("HTTP/1.1 %03d\r\n", hrc) ;
   } ;
   d.SysDateTime() ;
   Z.Printf("Date: %s\r\n", d.Txt(FMT_DT_INET)) ;
   Z << "Server: HTTP/1.0 (HadronZoo, Linux)\r\n" ;
   Z.Printf("Last-Modified: %s\r\n", d.Txt(FMT_DT_INET)) ;
   d.altdate(SECOND, 1000);
   Z.Printf("Expires: %s\r\n", d.Txt(FMT_DT_INET)) ;
   Z << "Accept-Ranges: bytes\r\n" ;
   if (hrc == HTTPMSG_OK)
       Z.Printf("Content-Length: 0\r\n") ;
   Z << "Content-Type: " << Mimetype2Txt(type) << "\n\n" ;
   pE->SendRawChain(HTTPMSG_OK, HMTYPE_TXT_HTML, Z, 0,false) ;
}