JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
make metaform support file uploads
[wfpl.git] / metaform.php
index 3e8c380..e66a477 100644 (file)
@@ -51,6 +51,7 @@ $GLOBALS['types'] = array(
        'delete' =>     array('checkbox',    'yesno',      'n/a'),
        'image' =>      array('image',       'oneline',    'varchar(120)'),
        'thumb' =>      array('image',       'oneline',    'varchar(240)'),
+       'file' =>       array('file',        'oneline',    'varchar(100)'),
        'submit' =>     array('submit',      'oneline',    'n/a')
 );
 
@@ -200,7 +201,7 @@ function view_sql() {
 function find_always_field($fields) {
        foreach($fields as $field) {
                list($name, $type, $input, $format, $sql) = $field;
-               if($input != 'submit' && $input != 'image' && $input != 'checkbox' && $input != 'radio') {
+               if($input != 'submit' && $input != 'image' && $input != 'file' && $input != 'checkbox' && $input != 'radio') {
                        return $name;
                }
        }
@@ -231,7 +232,7 @@ function make_html($whole_file = true) {
                        $tem->show('row');
                }
 
-               if($input == 'image' && !$uploads_output_already) {
+               if(($input == 'image' || $input='file') && !$uploads_output_already) {
                        $tem->show('uploads');
                        $tem->set('enctype_attr', '" enctype="multipart/form-data');
                        $uploads_output_already = true;
@@ -377,12 +378,11 @@ function make_php() {
                                }
                                $tem->show('image_settings');
                                $tem->show('image_upload');
-                               if(!$image_included_yet) {
-                                       $tem->show('image_include');
-                                       $tem->show('upload_max');
-                                       $tem->show('upload_settings');
-                                       $image_included_yet = true;
-                               }
+                               $has_uploads = true;
+                       } else if($input == 'file') {
+                               $tem->show('file_settings');
+                               $tem->show('file_upload');
+                               $has_uploads = true;
                        } else {
                                if($input == 'html') {
                                        $has_html_editors = true;
@@ -401,6 +401,12 @@ function make_php() {
                        }
                }
        }
+       if($has_uploads) {
+               $tem->show('uploads_include');
+               $tem->show('upload_max');
+               $tem->show('upload_settings');
+               $image_included_yet = true;
+       }
 
        if($has_html_editors) {
                $tem->show('show_extra_headers');