src/chxj_hdml.c
/**
 * It is a handler who processes the FORM tag. 
 *
 * @param pdoc   [i/o] The pointer to the HDML structure at the output
 *                     destination is specified.
 * @param node   [i]   The FORM tag node is specified. 
 * @return The conversion result is returned. 
 */
It is a handler who processes the FORM tag.
@param pdoc   [i/o] The pointer to the HDML structure at the output
destination is specified.
@param node   [i]   The FORM tag node is specified.
@return The conversion result is returned.
It is a handler who processes the FORM tag . @param pdoc [ i / o ] The pointer to the HDML structure at the output destination is specified . @param node [ i ] The FORM tag node is specified . @return The conversion result is returned .
static char *
s_hdml_start_form_tag(void *pdoc, Node *node) 
{
  hdml_t       *hdml;
  request_rec  *r;
  Attr         *attr;
  Doc          *doc;
  char         *act;
  hdml = GET_HDML(pdoc);
  doc  = hdml->doc;
  r    = hdml->doc->r;
  act  = NULL;
  hdml->form_tmp = apr_psprintf(r->pool,
                  "<NODISPLAY NAME=F%d>\r\n",
                  hdml->pure_form_cnt);
  hdml->form_tmp = apr_pstrcat(r->pool,
                              hdml->form_tmp,
                             "<ACTION TYPE=ACCEPT TASK=GO METHOD=POST DEST=\"",
                              NULL);
  for (attr = qs_get_attr(doc,node); 
       attr; 
       attr = qs_get_next_attr(doc,attr)) {
    char *name  = qs_get_attr_name(doc,attr);
    char *value = qs_get_attr_value(doc,attr);
    if (STRCASEEQ('a','A',"action",name)) {
      value = chxj_encoding_parameter(hdml->doc->r, value);
      act = apr_psprintf(r->pool, "%s", value);
      break;
    }
  }
  if (act) {
    hdml->form_tmp = apr_pstrcat(r->pool,
                                 hdml->form_tmp,
                                 act,
                                 NULL);
  }
  hdml->form_tmp = apr_pstrcat(r->pool,
                               hdml->form_tmp,
                               "\" ",
                               NULL);
  hdml->form_tmp = apr_pstrcat(r->pool,
                               hdml->form_tmp,
                               "POSTDATA=\"", 
                               NULL);
  hdml->hdml_br_flag = 0;
  return hdml->out;
}
static char * s_hdml_start_form_tag ( void * pdoc , Node * node ) { hdml_t * hdml ; request_rec * r ; Attr * attr ; Doc * doc ; char * act ; hdml = GET_HDML ( pdoc ) ; doc = hdml -> doc ; r = hdml -> doc -> r ; act = NULL ; hdml -> form_tmp = apr_psprintf ( r -> pool , " \r \n " , hdml -> pure_form_cnt ) ; hdml -> form_tmp = apr_pstrcat ( r -> pool , hdml -> form_tmp , " \" " , NULL ) ; for ( attr = qs_get_attr ( doc , node ) ; attr ; attr = qs_get_next_attr ( doc , attr ) ) { char * name = qs_get_attr_name ( doc , attr ) ; char * value = qs_get_attr_value ( doc , attr ) ; if ( STRCASEEQ ( ' ' , ' ' , " " , name ) ) { value = chxj_encoding_parameter ( hdml -> doc -> r , value ) ; act = apr_psprintf ( r -> pool , " " , value ) ; break ; } } if ( act ) { hdml -> form_tmp = apr_pstrcat ( r -> pool , hdml -> form_tmp , act , NULL ) ; } hdml -> form_tmp = apr_pstrcat ( r -> pool , hdml -> form_tmp , " \" " , NULL ) ; hdml -> form_tmp = apr_pstrcat ( r -> pool , hdml -> form_tmp , " \" " , NULL ) ; hdml -> hdml_br_flag = 0 ; return hdml -> out ; }
It is a handler who processes the FORM tag.
It is a handler who processes the FORM tag .
/* Get Attributes */