Search in sources :

Example 11 with Table

use of web.Table in project common by zenlunatics.

the class Admin method writeViewDefCache.

// --------------------------------------------------------------------------
private void writeViewDefCache(Request request) throws IOException {
    String remove = request.getParameter("remove");
    if (remove != null)
        request.releaseViewDef(remove);
    HTMLWriter writer = request.writer;
    Table table = new Table(writer).addClass("table table-condensed table-striped").addStyle("width", "auto");
    Map<String, ViewDef> view_defs = request.site.getViewDefs();
    for (String name : view_defs.keySet()) {
        table.tr().td(name).td();
        DBObject.write(view_defs.get(name), writer);
        table.td();
        writer.aOnClick("remove", componentReplaceJS("action=get_view_def_cache&remove=" + name, request));
    }
    table.close();
}
Also used : HTMLWriter(web.HTMLWriter) Table(web.Table) JDBCTable(db.JDBCTable) ViewDef(db.ViewDef)

Example 12 with Table

use of web.Table in project common by zenlunatics.

the class Admin method importFile.

// --------------------------------------------------------------------------
private void importFile(Request request) throws IOException {
    String step = request.getParameter("step");
    HTMLWriter writer = request.writer;
    if (step == null) {
        String id = writer.componentOpen(null, null);
        web.Form form = componentFormOpen(id, request).setSubmitText("Start");
        writer.hiddenInput("action", "import file");
        writer.hiddenInput("step", "2");
        form.rowOpen("filename");
        writer.textInput("filename", null, null);
        form.close();
        writer.tagClose();
    } else if ("2".equals(step)) {
        String filename = request.getParameter("filename");
        BufferedReader br = new BufferedReader(new FileReader(request.site.getBaseFilePath().append(filename).toString()));
        String l = br.readLine();
        br.close();
        writer.write("$('").write(request.getParameter("id")).write("').innerHTML='");
        web.Form form = componentFormOpen(null, request).setSubmitText("Import");
        writer.hiddenInput("action", "import file");
        writer.hiddenInput("filename", filename);
        writer.hiddenInput("step", "3");
        form.rowOpen("table");
        writer.textInput("table", null, null);
        form.rowOpen("columns");
        Table table = new Table(writer);
        String[] types = new String[] { "INT", "VARCHAR" };
        String[] columns = l.split("\t");
        for (String column : columns) {
            table.tr().td();
            writer.checkbox("col" + column, column, null, true, false);
            table.td();
            writer.radioButtons(column, types, null, null);
        }
        table.close();
        form.close();
        writer.write('\'');
    } else if ("3".equals(step)) {
        StringBuilder sb = new StringBuilder();
        Enumeration<String> parameter_names = request.getParameterNames();
        while (parameter_names.hasMoreElements()) {
            String parameter_name = parameter_names.nextElement();
            if (parameter_name.startsWith("col")) {
                if (sb.length() > 0)
                    sb.append(',');
                String column = parameter_name.substring(3);
                sb.append(column);
                sb.append(' ');
                sb.append(request.getParameter(column));
            }
        }
        String table = request.getParameter("table");
        request.db.createTable(table, sb.toString());
        String filename = request.getParameter("filename");
        BufferedReader br = new BufferedReader(new FileReader(request.site.getBaseFilePath().append(filename).toString()));
        String l = br.readLine();
        String[] columns = l.split("\t");
        l = br.readLine();
        NameValuePairs name_value_pairs = new NameValuePairs();
        while (l != null) {
            String[] values = l.split("\t");
            for (String column : columns) if (request.getParameter(column) != null)
                name_value_pairs.set(column, values[Util.indexOf(columns, column)]);
            request.db.insert(table, name_value_pairs);
            l = br.readLine();
        }
        br.close();
    }
}
Also used : HTMLWriter(web.HTMLWriter) Table(web.Table) JDBCTable(db.JDBCTable) NameValuePairs(db.NameValuePairs) Form(db.Form) BufferedReader(java.io.BufferedReader) FileReader(java.io.FileReader)

Example 13 with Table

use of web.Table in project common by zenlunatics.

the class Admin method importCSVForm.

// --------------------------------------------------------------------------
public static void importCSVForm(Request request) throws IOException {
    HTMLWriter writer = request.writer;
    MethodForm method_form = new MethodForm(Admin.class);
    method_form.open("importCSV", request);
    Table table = new Table(writer);
    table.tr().td();
    writer.write("filename");
    table.td();
    writer.textInput("filename", null, null);
    table.tr().td().td();
    writer.checkbox("first_line", "first line is column names", null, false, false);
    table.close();
    method_form.close(writer);
}
Also used : HTMLWriter(web.HTMLWriter) Table(web.Table) JDBCTable(db.JDBCTable)

Example 14 with Table

use of web.Table in project common by zenlunatics.

the class Admin method writeResultSet.

// --------------------------------------------------------------------------
private void writeResultSet(ResultSet rs, Request request) throws SQLException, IOException {
    if (rs != null) {
        Table table = new Table(request.writer).addClass("table table-striped table-condensed table-bordered table-hover");
        ResultSetMetaData metadata = rs.getMetaData();
        int num_columns = metadata.getColumnCount();
        for (int i = 1; i <= num_columns; i++) table.th(metadata.getColumnLabel(i));
        while (rs.next()) {
            table.tr();
            for (int i = 1; i <= num_columns; i++) table.td(rs.getString(i));
        }
        table.close();
    }
}
Also used : ResultSetMetaData(java.sql.ResultSetMetaData) Table(web.Table) JDBCTable(db.JDBCTable)

Example 15 with Table

use of web.Table in project common by zenlunatics.

the class EventProvider method writeAutomaticReminders.

// --------------------------------------------------------------------------
public void writeAutomaticReminders(View view, Request request) throws IOException {
    if (m_support_reminders) {
        HTMLWriter writer = request.writer;
        ResultSet rs = request.db.select(new Select("*").from(m_events_table + "_reminders").where(m_events_table + "_id IS NULL"));
        try {
            if (rs.isBeforeFirst()) {
                writer.h4("Automatic Reminders");
                Table table = new Table(writer).addClass("table").addClass("table-bordered").addClass("table-condensed").open();
                table.tr().th("send to").th("when").th("note");
                while (rs.next()) {
                    table.tr().td(rs.getString("email"));
                    table.td();
                    int num = rs.getInt("num");
                    String repeat_days = null;
                    String unit = rs.getString("unit");
                    if (m_events_can_repeat)
                        repeat_days = rs.getString("repeat_days");
                    if (num == 0 && "day".equals(unit))
                        writer.write(repeat_days == null ? "on the day" : "on the day of");
                    else {
                        writer.write(num).space().write(unit);
                        if (num != 1)
                            writer.write('s');
                        writer.write(rs.getBoolean("before") ? " before" : " after");
                    }
                    if (m_events_can_repeat)
                        if (repeat_days != null && !"never".equals(repeat_days))
                            writer.space().write(repeat_days);
                    table.td(rs.getString("note"));
                }
                rs.getStatement().close();
                table.close();
            }
        } catch (SQLException e) {
        }
    }
}
Also used : HTMLWriter(web.HTMLWriter) Table(web.Table) JDBCTable(db.JDBCTable) SQLException(java.sql.SQLException) ResultSet(java.sql.ResultSet) Select(db.Select)

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