Search in sources :

Example 16 with Table

use of web.Table in project common by zenlunatics.

the class MethodForm method write.

// --------------------------------------------------------------------------
// write generic form based on method parameters
private void write(Method method, Request request) throws IOException {
    HTMLWriter writer = request.writer;
    open(method.getName(), request);
    String[] labels = method.getAnnotation(AdminTask.class).value();
    int label = 0;
    Class<?>[] parameter_types = method.getParameterTypes();
    Table table = new Table(writer);
    for (int i = 0; i < parameter_types.length; i++) if (labels.length > label && labels[label].equals("_owner_")) {
        table.tr().td();
        ++label;
        writer.write("_owner_");
        table.td();
        new RowsSelect("arg" + i, "SELECT id,first,last FROM people ORDER BY first,last", "first,last", "id", request).write(request);
    } else if (parameter_types[i] == boolean.class) {
        table.tr().td().td();
        writer.checkbox("arg" + i, labels.length > label ? labels[label++] : null, null, false, false);
    } else if (parameter_types[i] == Calendar.class) {
        table.tr().td().td();
        writer.dateInput("arg" + i, null);
    } else if (parameter_types[i] == String.class || parameter_types[i] == int.class || parameter_types[i] == float.class) {
        table.tr().td();
        if (labels.length > label)
            writer.write(labels[label++]);
        table.td();
        writer.write("<textarea name=\"arg" + i + "\"></textarea>");
    } else if (parameter_types[i] == FileItem.class) {
        table.tr().td();
        if (labels.length > label)
            writer.write(labels[label++]);
        table.td();
        writer.fileInput("arg" + i);
    }
    table.close();
    close(writer);
}
Also used : FileItem(org.apache.commons.fileupload.FileItem) HTMLWriter(web.HTMLWriter) Table(web.Table) Calendar(java.util.Calendar) AdminTask(web.AdminTask) RowsSelect(db.RowsSelect)

Aggregations

Table (web.Table)16 JDBCTable (db.JDBCTable)12 HTMLWriter (web.HTMLWriter)12 BufferedReader (java.io.BufferedReader)2 File (java.io.File)2 FileReader (java.io.FileReader)2 SQLException (java.sql.SQLException)2 ArrayList (java.util.ArrayList)2 Calendar (java.util.Calendar)2 List (java.util.List)2 Module (app.Module)1 DBObject (db.DBObject)1 Form (db.Form)1 NameValuePairs (db.NameValuePairs)1 RowsSelect (db.RowsSelect)1 Schema (db.Schema)1 Select (db.Select)1 ViewDef (db.ViewDef)1 ResultSet (java.sql.ResultSet)1 ResultSetMetaData (java.sql.ResultSetMetaData)1