Ignore:
Timestamp:
Jun 1, 2010, 2:45:21 PM (13 years ago)
Author:
roberth
Message:

Implemented file upload template fields

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/grails-app/taglib/dbnp/studycapturing/WizardTagLib.groovy

    r502 r507  
    510510                )
    511511        }
     512
     513        /**
     514         * File form element
     515         * @param Map attributes
     516         * @param Closure help content
     517         */
     518        def fileFieldElement = { attrs, body ->
     519                // render term element
     520                baseElement.call(
     521                        'fileField',
     522                        attrs,
     523                        body
     524                )
     525        }
     526
     527        def fileField = { attrs ->
     528            /*
     529            out << '<input type="file" name="' + attrs.name + '"/>'
     530            if( attrs.value ) {
     531                out << '<a href="' + resource(dir: '') + '/file/get/' + attrs.value + '" class="isExample">Now contains: ' + attrs.value + '</a>'
     532            }
     533            */
     534
     535            out << '<div id="upload_button_' + attrs.name + '" class="upload_button">Upload</div>';
     536            out << '<input type="hidden" name="' + attrs.name + '" id="' + attrs.name + '" value="' + attrs.value + '">';
     537            out << '<div id="' + attrs.name + 'Example" class="upload_info"></div>';
     538            out << '<script type="text/javascript">';
     539            out << '  $(document).ready( function() { ';
     540            out << '    var filename = "' + attrs.value + '";';
     541            out << '    fileUploadField( "' + attrs.name + '" );';
     542            out << '    if( filename != "" ) {';
     543            out << '      $("#' + attrs.name + 'Example").html("Current file: " + createFileHTML( filename ) )';
     544            out << '    }';
     545            out << '  } );';
     546            out << "</script>\n";
     547        }
    512548
    513549        /**
     
    925961                                                ){helpText}
    926962                                                break
     963                                        case ['FILE']:
     964                                                inputElement = (renderType == 'element') ? 'fileFieldElement' : 'fileField'
     965                                                out << "$inputElement"(
     966                                                        description: ucName,
     967                                                        name: prependName + it.escapedName(),
     968                                                        value: fieldValue ? fieldValue : "",
     969                                                        addExampleElement: true
     970                                                ){helpText}
     971                                                break
    927972                                        default:
    928973                                                // unsupported field type
Note: See TracChangeset for help on using the changeset viewer.