c HEADER - print out HTTP headers
      subroutine header()
      character crlf*2
      crlf = char(13) // char(10)

      write(*, '(3A)') 'Content-type: text/html; charset=utf8',crlf,crlf
      end

c HTMLS - Start HTML
      subroutine htmls(title)
      character title*(*)

      write(*,'(A)') '<html>'
      write(*,'(A)') '<head>'
      write(*,'(3A)') '<title>', title, '</title>'
      write(*,'(A)') '<link rel="stylesheet" href="flog.css">'
      write(*,'(A)') '</head>'
      write(*,'(A)') '<body>'
      end

c HTMLE - End HTML
      subroutine htmle()
      write(*,'(A)') '</body></html>'
      end

c ENTRYS - start a blog entry with the given title and date
      subroutine entrys(eid, title, date)
      integer eid
      character eidbuf*8
      character title*(*)
      character date*(*)

      write(eidbuf, '(I8)') eid
      do 100, I=1,8
  100 if (eidbuf(I:I) .ne. ' ') goto 110

  110 write(*,'(A)')  '<div class="post">'
      write(*,'(5A)') '<h2><a href="flog.cgi?mode=read&eid=',
     -                eidbuf(I:8), '">', title(:length(title)),
     -                '</a></h2>'
      write(*,'(2A)') 'Written ',date(:length(date))
      write(*,'(A)')  '<p>'
      end

c ENTRYE - end a blog entry
      subroutine entrye()
      write(*,'(A)') '</div>'
      end
