Return TypeFunction nameArguments
voidhdsFormref::Generate(hzChain&,hzHttpEvent*,unsigned int&,)

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

Function Logic:

0:START 1:m_Line!=nLine 2:hzChain::AddByte x 3:x; 4:hzChain::AddByte 5:nLine 6:pFormdef 7:!pFormdef 8:hzChain::Printf 9: No text 10:pFormdef->m_nActions==1 11:hzMapM::First x hzMapM::GetObj url 12:m_flagVE&VE_MULTIPART 13:hzChain::Printf 14:hzChain::Printf 15:m_flagVE&VE_MULTIPART 16:hzChain::Printf 17:hzChain::Printf 18:relLn pE nV 19:nVm_VEs.Count(); 20:pVE hdsVE::Generate 21:nLine!=m_Line 22:hzChain::AddByte x 23:x; 24:hzChain::AddByte 25:items 26: No text

Function body:

void hdsFormref::Generate (hzChain& C, hzHttpEvent* pE, unsigned int& nLine)
{
   _hzfunc("hdsFormref::Generate") ;
   hzList<hdsVE*>::Iter    ih ;
   hdsFormdef*     pFormdef ;
   hdsVE*          pVE ;
   hzString        url ;
   uint32_t        nV ;
   uint32_t        relLn ;
   uint32_t        x ;
   if (m_Line != nLine)
   {
       C.AddByte(CHAR_NL) ;
       for (x = m_Indent ; x ; x--)
           C.AddByte(CHAR_TAB) ;
       nLine = m_Line ;
   }
   pFormdef = m_pApp->m_FormDefs[m_Formname] ;
   if (!pFormdef)
   {
       C.Printf("<p>ERROR: NULL FORM DEF</p>\n") ;
       return ;
   }
   if (pFormdef->m_nActions == 1)
   {
       x = m_pApp->m_FormRef2Url.First(this) ;
       url = m_pApp->m_FormRef2Url.GetObj(x) ;
       if (m_flagVE & VE_MULTIPART)
           C.Printf("<form name="%s" method="POST" action="%s" onsubmit="return ck%s()" enctype="multipart/form-data">\n"          ,
               *m_Formname, *url, *m_Formname) ;
       else
           C.Printf("<form name="%s" method="POST" action="%s" onsubmit="return ck%s()">\n"        , *m_Formname, *url, *m_Formname) ;
   }
   else
   {
       if (m_flagVE & VE_MULTIPART)
           C.Printf("<form name="%s" method="POST" enctype="multipart/form-data">\n"      ,
               *m_Formname, *url, *url) ;
       else
           C.Printf("<form name="%s" method="POST">\n"    , *m_Formname, *url, *url) ;
   }
   relLn = nLine ;
   pE->m_pContextForm = this ;
   for (nV = 0; nV < pFormdef->m_VEs.Count() ; nV++)
   {
       pVE = pFormdef->m_VEs[nV] ; pVE->Generate(C, pE, relLn) ;
   }
   if (nLine != m_Line)
   {
       C.AddByte(CHAR_NL) ;
       for (x = m_Indent ; x ; x--)
           C.AddByte(CHAR_TAB) ;
   }
   C << "</form>\n" ;
}