Patch title: Release 89 bulk changes
Abstract:
File: /protocol/http/style/default.style
Key:
    Removed line
    Added line
   
# Copyright  Hubert Tonneau  hubert.tonneau@pliant.cx
#
# This program is free software; you can redistribute it and
# modify it under the terms of the GNU General Public Licens
# as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be us
# but WITHOUT ANY WARRANTY; without even the implied warrant
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See 
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public 
# version 2 along with this program; if not, write to the Fr
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 

module "/pliant/language/compiler.pli"
# Copyright  Hubert Tonneau  hubert.tonneau@pliant.cx
#
# This program is free software; you can redistribute it and
# modify it under the terms of the GNU General Public Licens
# as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be us
# but WITHOUT ANY WARRANTY; without even the implied warrant
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See 
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public 
# version 2 along with this program; if not, write to the Fr
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 

module "/pliant/language/compiler.pli"
module "/pliant/language/context.pli"
module "/pliant/language/stream.pli"
module "/pliant/language/parser.pli"
module "/pliant/language/parser/multiline.pli"
module "/pliant/protocol/http/server.pli"
module "/pliant/admin/md5.pli"
module "common.pli"
submodule "common.style"
submodule "/pliant/graphic/color/rgb888.pli"

constant smart_input false
module "/pliant/language/stream.pli"
module "/pliant/language/parser.pli"
module "/pliant/language/parser/multiline.pli"
module "/pliant/protocol/http/server.pli"
module "/pliant/admin/md5.pli"
module "common.pli"
submodule "common.style"
submodule "/pliant/graphic/color/rgb888.pli"

constant smart_input false
constant common_path "/common/"+string:pliant_release_number+"/"



method p standard_text_hook text
  arg_rw HtmlPage p ; arg Str text
  if (p attribute font ssr)
    var Str extra := " font [dq]"+(p attribute font face)+"[
    var Str sentence := html_decode text
    if not (p attribute font linebreak)



method p standard_text_hook text
  arg_rw HtmlPage p ; arg Str text
  if (p attribute font ssr)
    var Str extra := " font [dq]"+(p attribute font face)+"[
    var Str sentence := html_decode text
    if not (p attribute font linebreak)
      p:http_stream writechars "<img src=[dq]/common/"+(http
      p:http_stream writechars "<img src=[dq]"+common_path+(http_encode "text "+string:sentence+extra)+"[dq] border=[dq]0[dq] align=[dq]middle[dq]>"
    else
      while sentence<>""
        if (sentence 0 1)<>" "
          var Int i := sentence search " " sentence:len
    else
      while sentence<>""
        if (sentence 0 1)<>" "
          var Int i := sentence search " " sentence:len
          p:http_stream writechars "<img src=[dq]/common/"+(
          p:http_stream writechars "<img src=[dq]"+common_path+(http_encode "text "+string:(sentence 0 i)+extra)+"[dq] border=[dq]0[dq] align=[dq]middle[dq]>"
          sentence := sentence i sentence:len
        else
          p:http_stream writechars " "
          sentence := sentence 1 sentence:len
  eif (p attribute fixed is_active)
    p:http_stream writechars (replace text " " "&nbsp;")
  else
    p:http_stream writechars text

method page standard_begin_hook
  arg_rw HtmlPage page
  implicit page
    write "<!DOCTYPE HTML PUBLIC [dq]-//W3C//DTD HTML 4.01 T
    write "<html>[lf]"
    write "<head>[lf]"
    if (attribute common url_icon)<>""
      write "<link rel=[dq]icon[dq] type=[dq]image/png[dq] h
          sentence := sentence i sentence:len
        else
          p:http_stream writechars " "
          sentence := sentence 1 sentence:len
  eif (p attribute fixed is_active)
    p:http_stream writechars (replace text " " "&nbsp;")
  else
    p:http_stream writechars text

method page standard_begin_hook
  arg_rw HtmlPage page
  implicit page
    write "<!DOCTYPE HTML PUBLIC [dq]-//W3C//DTD HTML 4.01 T
    write "<html>[lf]"
    write "<head>[lf]"
    if (attribute common url_icon)<>""
      write "<link rel=[dq]icon[dq] type=[dq]image/png[dq] h
    write "<script src=[dq]/common/pliant.js[dq] language=[d
    write "<script src=[dq]"+common_path+"pliant.js[dq] language=[dq]JavaScript[dq] type=[dq]text/javascript[dq]></script>[lf]"
    if (attribute common head)<>""
      write (attribute common head) ; write "[lf]"
    if (attribute common css)<>""
      write "<style type=[dq]text/css[dq]>[lf]"
      write (attribute common css) ; write "[lf]"
      write "</style>[lf]"
    write "</head>[lf]"
    write "<body"
    write " onLoad=[dq]refresh()[dq]"
    var ColorRGB888 bg := attribute common bgcolor
    if bg:r<>255 or bg:g<>255 or bg:b<>255
      write " bgcolor=[dq]"+(string bg "html")+"[dq]"
    if (attribute common body)<>""
      write " "+(attribute common body)
    write ">[lf]"
    # write "<!-- "+http_request:query_first_line+" -->[lf]"
    var Str enctype := ""
    if browser="konqueror"
      enctype := " enctype [dq]multipart/form-data[dq]"
    write "<form name=[dq]pliant[dq] method=[dq]POST[dq]"+en
    write "<input type=[dq]hidden[dq] name=[dq]_pliant_x[dq]
    write "<input type=[dq]hidden[dq] name=[dq]_pliant_y[dq]
    write "<input type=[dq]hidden[dq] name=[dq]_[dq] value=[
    var Pointer:ColorRGB888 fc :> attribute font color
    if (attribute font face)<>"" or fc:r<>0 or fc:g<>0 or fc
      write "<font face=[dq]"+(attribute font face)+"[dq] co
    if (attribute common header)<>""
      write (attribute common header) ; write "[lf]"  
    page_header


  style_tag how
    write "<a href=[dq]"+(full_url target has:section sectio
    if (attribute common head)<>""
      write (attribute common head) ; write "[lf]"
    if (attribute common css)<>""
      write "<style type=[dq]text/css[dq]>[lf]"
      write (attribute common css) ; write "[lf]"
      write "</style>[lf]"
    write "</head>[lf]"
    write "<body"
    write " onLoad=[dq]refresh()[dq]"
    var ColorRGB888 bg := attribute common bgcolor
    if bg:r<>255 or bg:g<>255 or bg:b<>255
      write " bgcolor=[dq]"+(string bg "html")+"[dq]"
    if (attribute common body)<>""
      write " "+(attribute common body)
    write ">[lf]"
    # write "<!-- "+http_request:query_first_line+" -->[lf]"
    var Str enctype := ""
    if browser="konqueror"
      enctype := " enctype [dq]multipart/form-data[dq]"
    write "<form name=[dq]pliant[dq] method=[dq]POST[dq]"+en
    write "<input type=[dq]hidden[dq] name=[dq]_pliant_x[dq]
    write "<input type=[dq]hidden[dq] name=[dq]_pliant_y[dq]
    write "<input type=[dq]hidden[dq] name=[dq]_[dq] value=[
    var Pointer:ColorRGB888 fc :> attribute font color
    if (attribute font face)<>"" or fc:r<>0 or fc:g<>0 or fc
      write "<font face=[dq]"+(attribute font face)+"[dq] co
    if (attribute common header)<>""
      write (attribute common header) ; write "[lf]"  
    page_header


  style_tag how
    write "<a href=[dq]"+(full_url target has:section sectio
    write "<img src=[dq]/common/icon/how.png[dq] border=[dq]
    write "<img src=[dq]"+common_path+"icon/how.png[dq] border=[dq]0[dq]>"
    write "</a>"

  style_tag title
    head "<title>"+label+"</title>[lf]"
    if has:logo
      write "<table width=[dq]100%[dq]><tr><td width=[dq]100
    if button<>"" or round>0
      box button button bsize bsize_x bsize_y margin margin_
        center
          font font face size ssr color color linebreak fals
            text html_decode:label
    else
      if ssr
        var Str url := "text "+(string html_decode:label)+" 
    write "</a>"

  style_tag title
    head "<title>"+label+"</title>[lf]"
    if has:logo
      write "<table width=[dq]100%[dq]><tr><td width=[dq]100
    if button<>"" or round>0
      box button button bsize bsize_x bsize_y margin margin_
        center
          font font face size ssr color color linebreak fals
            text html_decode:label
    else
      if ssr
        var Str url := "text "+(string html_decode:label)+" 
        write "<center><img src=[dq]/common/"+http_encode:ur
        write "<center><img src=[dq]"+common_path+http_encode:url+"[dq]></center>"
      else
        write "<h1><center>"+label+"</center></h1>"
    if has:logo
      write "</td><td>"
      if has:link
        write "<a href=[dq]"+link+"[dq]>"
      write "<img src=[dq]"+logo+"[dq]"+(shunt has:link " bo
      if has:link
        write "</a>"
      write "</td></tr></table>"
    write "<br>[lf]"

  style_tag chapter
    write "<br><br>[lf]"
    if (attribute header button)<>"" or (attribute header ro
      box button (attribute header button) bsize (attribute 
        font font (attribute header face) (attribute header 
          if (attribute header ssr)
            text (repeat (attribute header tabulation) " ")+
          else
            fixed text:(repeat (attribute header tabulation)
    else
      if (attribute header ssr)
        var Str url := "text "+(string html_decode:label)+" 
      else
        write "<h1><center>"+label+"</center></h1>"
    if has:logo
      write "</td><td>"
      if has:link
        write "<a href=[dq]"+link+"[dq]>"
      write "<img src=[dq]"+logo+"[dq]"+(shunt has:link " bo
      if has:link
        write "</a>"
      write "</td></tr></table>"
    write "<br>[lf]"

  style_tag chapter
    write "<br><br>[lf]"
    if (attribute header button)<>"" or (attribute header ro
      box button (attribute header button) bsize (attribute 
        font font (attribute header face) (attribute header 
          if (attribute header ssr)
            text (repeat (attribute header tabulation) " ")+
          else
            fixed text:(repeat (attribute header tabulation)
    else
      if (attribute header ssr)
        var Str url := "text "+(string html_decode:label)+" 
        write "<p><img src=[dq]/common/"+http_encode:url+"[d
        write "<p><img src=[dq]"+common_path+http_encode:url+"[dq]></p>[lf]"
      else
        write "<h1>"+label+"</h1>[lf]"

  style_open header
    write "<br>[lf]"
    push level level+1
    var Float f := shunt level=1 factor1 level=2 factor2 fac
    if button<>"" or round>0
      box button button bsize bsize_x*f bsize_y*f margin mar
        font font face size*f ssr color (shade color (shunt 
          if ssr
            text (repeat tabulation " ")+html_decode:label
          else
            fixed text:(repeat tabulation " ") ; text html_d
    else
      if ssr
        var Str url := "text "+(string html_decode:label)+" 
      else
        write "<h1>"+label+"</h1>[lf]"

  style_open header
    write "<br>[lf]"
    push level level+1
    var Float f := shunt level=1 factor1 level=2 factor2 fac
    if button<>"" or round>0
      box button button bsize bsize_x*f bsize_y*f margin mar
        font font face size*f ssr color (shade color (shunt 
          if ssr
            text (repeat tabulation " ")+html_decode:label
          else
            fixed text:(repeat tabulation " ") ; text html_d
    else
      if ssr
        var Str url := "text "+(string html_decode:label)+" 
        write "<p><img src=[dq]/common/"+http_encode:url+"[d
        write "<p><img src=[dq]"+common_path+http_encode:url+"[dq]></p>[lf]"
      else
        write "<h"+(string level+1)+">"+label+"</h"+(string 
  style_close header
    void


  style_open box
    var ColorRGB888 c := color
    var ColorRGB888 c2 := shade c 0.5
    if not has:header
      c2 := c
    var CBool colored := not has:transparent and (button<>""
    write "<table cellspacing=[dq]0[dq] cellpadding=[dq]"+st
    if has:width
      write " width=[dq]"+width+"[dq]"
    if has:left
      write " align=[dq]left[dq]"
    if has:right
      write " align=[dq]right[dq]"
    # write_attributes
    write "><tr>[lf]"
    if button<>""
      var Str opt := " button [dq]"+button+"[dq]"+(shunt bsi
      else
        write "<h"+(string level+1)+">"+label+"</h"+(string 
  style_close header
    void


  style_open box
    var ColorRGB888 c := color
    var ColorRGB888 c2 := shade c 0.5
    if not has:header
      c2 := c
    var CBool colored := not has:transparent and (button<>""
    write "<table cellspacing=[dq]0[dq] cellpadding=[dq]"+st
    if has:width
      write " width=[dq]"+width+"[dq]"
    if has:left
      write " align=[dq]left[dq]"
    if has:right
      write " align=[dq]right[dq]"
    # write_attributes
    write "><tr>[lf]"
    if button<>""
      var Str opt := " button [dq]"+button+"[dq]"+(shunt bsi
      write "<td><img src=[dq]/common/border%200"+http_encod
      write "<td background=[dq]/common/border%201"+http_enc
      write "<td><img src=[dq]/common/border%202"+http_encod
      write "<td><img src=[dq]"+common_path+"border%200"+http_encode:opt+"[dq]></td>[lf]"
      write "<td background=[dq]"+common_path+"border%201"+http_encode:opt+"[dq]></td>[lf]"
      write "<td><img src=[dq]"+common_path+"border%202"+http_encode:opt+"[dq]></td>[lf]"
      write "</tr><tr>[lf]"
      if has:header
      write "</tr><tr>[lf]"
      if has:header
        write "<td background=[dq]/common/border%203"+http_e
        write "<td background=[dq]"+common_path+"border%203"+http_encode:opt+"[dq]></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c+"[dq]><center>"
        if hssr
          var Str url := "text "+(string html_decode:header)
        write "<td bgcolor=[dq]#"+string:c+"[dq]><center>"
        if hssr
          var Str url := "text "+(string html_decode:header)
          write "<img src=[dq]/common/"+http_encode:url+"[dq
          write "<img src=[dq]"+common_path+http_encode:url+"[dq]>"
        else
          write header
        write "</center></td>[lf]"
        else
          write header
        write "</center></td>[lf]"
        write "<td background=[dq]/common/border%205"+http_e
        write "<td background=[dq]"+common_path+"border%205"+http_encode:opt+"[dq]></td>[lf]"
        write "</tr><tr>[lf]"
        write "</tr><tr>[lf]"
        write "<td><img src=[dq]/common/border%203"+http_enc
        write "<td><img src=[dq]"+common_path+"border%203"+http_encode:opt+"[dq]></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c+"[dq]></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c+"[dq]></td>[lf]"
        write "<td><img src=[dq]/common/border%205"+http_enc
        write "<td><img src=[dq]"+common_path+"border%205"+http_encode:opt+"[dq]></td>[lf]"
        write "</tr><tr>[lf]"
        var Str opt := " button [dq]"+button+"[dq]"+(shunt b
        write "</tr><tr>[lf]"
        var Str opt := " button [dq]"+button+"[dq]"+(shunt b
        write "<td><img src=[dq]/common/border%203"+http_enc
        write "<td><img src=[dq]"+common_path+"border%203"+http_encode:opt+"[dq]></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c2+"[dq]></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c2+"[dq]></td>[lf]"
        write "<td><img src=[dq]/common/border%205"+http_enc
        write "<td><img src=[dq]"+common_path+"border%205"+http_encode:opt+"[dq]></td>[lf]"
      write "</tr><tr>[lf]"
      write "</tr><tr>[lf]"
      write "<td background=[dq]/common/border%203"+http_enc
      write "<td background=[dq]"+common_path+"border%203"+http_encode:opt+"[dq]></td>[lf]"
    eif round>0
      var Str opt := " size "+string:round+" "+string:round+
    eif round>0
      var Str opt := " size "+string:round+" "+string:round+
      write "<td><img src=[dq]/common/corner%200"+http_encod
      write "<td><img src=[dq]"+common_path+"corner%200"+http_encode:opt+"[dq]></td>[lf]"
      write "<td bgcolor=[dq]#"+string:c+"[dq]></td>[lf]"
      write "<td bgcolor=[dq]#"+string:c+"[dq]></td>[lf]"
      write "<td><img src=[dq]/common/corner%201"+http_encod
      write "<td><img src=[dq]"+common_path+"corner%201"+http_encode:opt+"[dq]></td>[lf]"
      write "</tr><tr>[lf]"
      if has:header
        write "<td bgcolor=[dq]#"+string:c+"[dq]></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c+"[dq]><center>"
        if hssr
          var Str url := "text "+(string html_decode:header)
      write "</tr><tr>[lf]"
      if has:header
        write "<td bgcolor=[dq]#"+string:c+"[dq]></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c+"[dq]><center>"
        if hssr
          var Str url := "text "+(string html_decode:header)
          write "<img src=[dq]/common/"+http_encode:url+"[dq
          write "<img src=[dq]"+common_path+http_encode:url+"[dq]>"
        else
          write header
        write "</center></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c+"[dq]></td>[lf]"
        write "</tr><tr>[lf]"
        write "<td colspan=[dq]3[dq] height=[dq]"+string:rou
        write "</tr><tr>[lf]"
        write "<td colspan=[dq]3[dq] height=[dq]"+string:rou
        write "</tr><tr>[lf]"
      write "<td bgcolor=[dq]#"+string:c2+"[dq]></td>[lf]"
    else
      if has:header
        write "<td"+(shunt colored " bgcolor=[dq]#"+string:c
        if hssr
          var Str url := "text "+(string html_decode:header)
        else
          write header
        write "</center></td>[lf]"
        write "<td bgcolor=[dq]#"+string:c+"[dq]></td>[lf]"
        write "</tr><tr>[lf]"
        write "<td colspan=[dq]3[dq] height=[dq]"+string:rou
        write "</tr><tr>[lf]"
        write "<td colspan=[dq]3[dq] height=[dq]"+string:rou
        write "</tr><tr>[lf]"
      write "<td bgcolor=[dq]#"+string:c2+"[dq]></td>[lf]"
    else
      if has:header
        write "<td"+(shunt colored " bgcolor=[dq]#"+string:c
        if hssr
          var Str url := "text "+(string html_decode:header)
          write "<img src=[dq]/common/"+http_encode:url+"[dq
          write "<img src=[dq]"+common_path+http_encode:url+"[dq]>"
        else
          write header
        write "</center></td>[lf]"
        write "</tr><tr>[lf]"
    write "<td width=[dq]100%[dq] height=[dq]100%[dq]"
    if colored
      write " bgcolor=[dq]#"+string:c2+"[dq]"
    write ">"
    html_stack mark
    if colored
      push common bgcolor c2
  style_close box
    html_stack rewind
    write "</td>[lf]"
    var ColorRGB888 c := color
    var ColorRGB888 c2 := shade c 0.5
    if not has:header
      c2 := c
    if button<>""
      var Str opt := " button [dq]"+button+"[dq]"+(shunt bsi
        else
          write header
        write "</center></td>[lf]"
        write "</tr><tr>[lf]"
    write "<td width=[dq]100%[dq] height=[dq]100%[dq]"
    if colored
      write " bgcolor=[dq]#"+string:c2+"[dq]"
    write ">"
    html_stack mark
    if colored
      push common bgcolor c2
  style_close box
    html_stack rewind
    write "</td>[lf]"
    var ColorRGB888 c := color
    var ColorRGB888 c2 := shade c 0.5
    if not has:header
      c2 := c
    if button<>""
      var Str opt := " button [dq]"+button+"[dq]"+(shunt bsi
      write "<td background=[dq]/common/border%205"+http_enc
      write "<td background=[dq]"+common_path+"border%205"+http_encode:opt+"[dq]></td>[lf]"
      write "</tr><tr>[lf]"
      write "</tr><tr>[lf]"
      write "<td><img src=[dq]/common/border%206"+http_encod
      write "<td background=[dq]/common/border%207"+http_enc
      write "<td><img src=[dq]/common/border%208"+http_encod
      write "<td><img src=[dq]"+common_path+"border%206"+http_encode:opt+"[dq]></td>[lf]"
      write "<td background=[dq]"+common_path+"border%207"+http_encode:opt+"[dq]></td>[lf]"
      write "<td><img src=[dq]"+common_path+"border%208"+http_encode:opt+"[dq]></td>[lf]"
    eif round>0
      var Str opt := " size "+string:round+" color [dq]"+str
      write "<td bgcolor=[dq]#"+string:c2+"[dq]></td>[lf]"
      write "</tr><tr>[lf]"
    eif round>0
      var Str opt := " size "+string:round+" color [dq]"+str
      write "<td bgcolor=[dq]#"+string:c2+"[dq]></td>[lf]"
      write "</tr><tr>[lf]"
      write "<td><img src=[dq]/common/corner%202"+http_encod
      write "<td><img src=[dq]"+common_path+"corner%202"+http_encode:opt+"[dq]></td>[lf]"
      write "<td bgcolor=[dq]#"+string:c2+"[dq]></td>[lf]"
      write "<td bgcolor=[dq]#"+string:c2+"[dq]></td>[lf]"
      write "<td><img src=[dq]/common/corner%203"+http_encod
      write "<td><img src=[dq]"+common_path+"corner%203"+http_encode:opt+"[dq]></td>[lf]"
    write "</tr></table>[lf]"


  style_tag button
    if button=""
      write "<input type=[dq]submit[dq] name=[dq]"+target+"[
    else
      var Str action := "[dq]button_pressed('"+target+"')[dq
      var Str event := shunt browser="netscape" "onMouseUp" 
    write "</tr></table>[lf]"


  style_tag button
    if button=""
      write "<input type=[dq]submit[dq] name=[dq]"+target+"[
    else
      var Str action := "[dq]button_pressed('"+target+"')[dq
      var Str event := shunt browser="netscape" "onMouseUp" 
      var Str url := "/common/button"+(http_encode " [dq]"+h
      var Str url := common_path+"button"+(http_encode " [dq]"+html_decode:label+"[dq] font [dq]"+face+"[dq] "+string:size+(shunt extend=defined " extend "+string:extend "")+(shunt center " center" "")+" tcolor [dq]"+string:tcolor+"[dq] button [dq]"+button+"[dq]"+(shunt bsize_x=defined " bsize "+string:bsize_x+" "+string:bsize_y "")+(shunt margin_left=defined " margin "+string:margin_left+" "+string:margin_top+" "+string:margin_right+" "+string:margin_bottom "")+" bcolor [dq]"+string:bcolor+"[dq] bgcolor [dq]"+string:(attribute common bgcolor)+"[dq]")
      write "<img src=[dq]"+url+"[dq] align=[dq]middle[dq] "
    if not has:noeol
      write "<br>[lf]"

  style_tag icon
    var Str action := "[dq]button_pressed('"+target+"')[dq]"
    var Str event := shunt browser="netscape" "onMouseUp" "o
    var Str url := src
    if button<>""
      write "<img src=[dq]"+url+"[dq] align=[dq]middle[dq] "
    if not has:noeol
      write "<br>[lf]"

  style_tag icon
    var Str action := "[dq]button_pressed('"+target+"')[dq]"
    var Str event := shunt browser="netscape" "onMouseUp" "o
    var Str url := src
    if button<>""
      url := "/common/icon"+(http_encode " [dq]"+src+"[dq]"+
      url := common_path+"icon"+(http_encode " [dq]"+src+"[dq]"+(shunt isize_x=defined " isize "+string:isize_x+" "+string:isize_y "")+(shunt dull=defined " dull "+string:dull "")+" button [dq]"+button+"[dq]"+(shunt bsize_x=defined " bsize "+string:bsize_x+" "+string:bsize_y "")+(shunt margin_left=defined " margin "+string:margin_left+" "+string:margin_top+" "+string:margin_right+" "+string:margin_bottom "")+" bcolor [dq]"+string:bcolor+"[dq] bgcolor [dq]"+string:(attribute common bgcolor)+"[dq]")
    write "<img src=[dq]"+url+"[dq] align=[dq]middle[dq] alt


    write "<img src=[dq]"+url+"[dq] align=[dq]middle[dq] alt