X-Git-Url: https://jasonwoof.com/gitweb/?a=blobdiff_plain;f=metaform.php;h=62ef5069f8afd9c2eb6b25fe52e7e862ee87c99c;hb=4a25d3b6318f7f361df3adfac17366452fe3ed49;hp=65343ea5d7004e72f69a6212fa37050e880f49ac;hpb=856f805c6cbb6e712c662214f3b5821442f808a0;p=wfpl.git diff --git a/metaform.php b/metaform.php index 65343ea..62ef506 100644 --- a/metaform.php +++ b/metaform.php @@ -37,7 +37,7 @@ $GLOBALS['types'] = array( 'phone' => array('textbox', 'phone', 'varchar(32)'), 'state' => array('states', 'oneline', 'varchar(2)'), 'money' => array('textbox', 'money', 'varchar(32)'), - 'date' => array('textbox', 'mdy_to_ymd', 'char(10)'), + 'date' => array('date', 'mdy_to_ymd', 'char(10)'), 'dollars' => array('textbox', 'dollars', 'varchar(32)'), 'url' => array('textbox', 'url', 'varchar(200)'), 'hidden' => array('hidden', 'unix', 'varchar(200)'), @@ -46,35 +46,38 @@ $GLOBALS['types'] = array( 'html' => array('html', 'unix', 'text'), 'pulldown' => array('pulldown', 'options', 'varchar(100)'), 'radio' => array('radio', 'oneline', 'varchar(200)'), - 'leftcheck' => array('leftcheck', 'yesno', 'varchar(3)'), - 'checkbox' => array('checkbox', 'bool', 'int(1)'), - 'yesno' => array('checkbox', 'yesno', 'varchar(3)'), + 'checkbox' => array('leftcheck', 'bool', 'int(1)'), + 'rightcheck' => array('checkbox', 'bool', 'int(1)'), + 'rightyesno' => array('checkbox', 'yesno', 'varchar(3)'), + 'yesno' => array('leftcheck', 'yesno', 'varchar(3)'), 'delete' => array('checkbox', 'yesno', 'n/a'), 'image' => array('image', 'oneline', 'varchar(200)'), 'submit' => array('submit', 'oneline', 'n/a') ); function list_available_types() { - $types = ''; + ksort($GLOBALS['types']); foreach($GLOBALS['types'] as $key => $value) { - if($types) { - $types .= ', '; - } - $types .= $key; + tem_set('type', $key); + tem_show('types'); + tem_show('types_sep'); } - tem_set('available_types', $types); } function metaform() { if(isset($_REQUEST['form_name'])) { - $GLOBALS['form_name'] = ereg_replace('[^a-z0-9_-]', '', $_REQUEST['form_name']); + $GLOBALS['form_name'] = format_varname($_REQUEST['form_name']); + $GLOBALS['singular'] = format_varname($_REQUEST['singular']); + tem_set('singular', $GLOBALS['singular']); $GLOBALS['opt_email'] = format_yesno($_REQUEST['opt_email']); tem_set('opt_email', $GLOBALS['opt_email']); $GLOBALS['opt_db'] = format_yesno($_REQUEST['opt_db']); tem_set('opt_db', $GLOBALS['opt_db']); $GLOBALS['opt_listing'] = format_yesno($_REQUEST['opt_listing']); tem_set('opt_listing', $GLOBALS['opt_listing']); + $GLOBALS['opt_display'] = format_yesno($_REQUEST['opt_display']); + tem_set('opt_display', $GLOBALS['opt_display']); $GLOBALS['opt_http_pass'] = format_yesno($_REQUEST['opt_http_pass']); tem_set('opt_http_pass', $GLOBALS['opt_http_pass']); } else { @@ -111,8 +114,9 @@ function metaform() { set_form_action(); + tem_load('code/wfpl/metaform/main.html'); list_available_types(); - tem_output('code/wfpl/metaform/main.html'); + tem_output(); } @@ -207,6 +211,7 @@ function make_html($whole_file = true) { $tem = new tem(); $tem->load('code/wfpl/metaform/template.html'); $tem->set('form_name', $GLOBALS['form_name']); + $tem->set('singular', $GLOBALS['singular']); $fields = get_fields(); $tem->set('always_field', find_always_field($fields)); foreach($fields as $field) { @@ -226,6 +231,19 @@ function make_html($whole_file = true) { $tem->set('html_field_name', $name); $tem->show('replace_textarea'); } + if($GLOBALS['opt_display']) { + switch($input) { + case 'textarea': + $tem->show('display_multiline'); + break; + case 'html': + $tem->show('display_html'); + break; + default: + $tem->show('display_short'); + } + $tem->show('display_row'); + } } if($GLOBALS['opt_db'] == 'Yes') { @@ -236,9 +254,15 @@ function make_html($whole_file = true) { } if($GLOBALS['opt_listing'] == 'Yes') { + if($GLOBALS['opt_display'] != 'Yes') { + $tem->show('opt_display_a_else'); + } $tem->show('opt_listing_1'); - } else { - $tem->show('opt_listing_1_else'); + } + + if($GLOBALS['opt_display'] == 'Yes') { + $tem->show('opt_display_1'); + $tem->show('opt_display_2'); } if($GLOBALS['opt_email'] == 'Yes' && $GLOBALS['opt_db'] != 'Yes') { @@ -274,6 +298,7 @@ function make_php() { $tem = new tem(); $tem->load('code/wfpl/metaform/template.php'); $tem->set('form_name', $GLOBALS['form_name']); + $tem->set('singular', $GLOBALS['singular']); $fields = get_fields(); $db_fields = ''; $php_fields = ''; @@ -318,9 +343,13 @@ function make_php() { if($GLOBALS['opt_listing'] == 'Yes') { $tem->show('opt_listing_1'); $tem->show('opt_listing_2'); - $tem->show('opt_listing_4'); + } + if($GLOBALS['opt_display'] == 'Yes') { + $tem->show('opt_display_1'); + $tem->show('opt_display_2'); } else { - $tem->show('opt_listing_4_else'); + $tem->show('opt_display_1_else'); + $tem->show('opt_display_2_else'); } if($GLOBALS['opt_db'] == 'Yes') { $tem->show('opt_db_1'); @@ -409,6 +438,7 @@ function preview() { unset($preview_tem); $preview = ereg_replace('type="submit"', 'type="submit" disabled="disabled"', $preview); tem_set('preview', $preview); + tem_show('hiddens'); set_form_action(); tem_output(); } @@ -427,7 +457,7 @@ function download_tar() { if($GLOBALS['opt_email'] == 'Yes') { $data["$name.email.txt"] = make_email(); } - make_wfpl_tar($name, $data); + make_tar($name, $data); }