Search in sources :

Example 1 with NameValuePairs

use of db.NameValuePairs in project common by zenlunatics.

the class Files method upload.

// --------------------------------------------------------------------------
private void upload(Request request) throws IOException {
    NameValuePairs name_value_pairs = new NameValuePairs();
    String filename = request.getParameter("filename");
    int parent = request.getInt("parent", 0);
    if (parent != 0)
        name_value_pairs.set("parent", parent);
    name_value_pairs.set("filename", filename);
    name_value_pairs.set("folder", false);
    name_value_pairs.set("title", request);
    int document_id = request.site.getViewDef(m_table, request.db).insert(name_value_pairs, request);
    if (document_id != -1) {
        FilePathStringBuilder dir = request.site.getBaseFilePath();
        if (m_root_dir.length() > 0)
            dir.append(m_root_dir);
        if (parent != 0)
            dir.append(parent);
        try {
            String d = dir.toString();
            new File(d).mkdirs();
            dir.append(filename);
            String file_path = dir.toString();
            request.getFileItem("filename").write(new File(file_path));
            if (filename.endsWith(".jpg") || filename.endsWith(".JPG"))
                Images.makeThumb(Images.load(file_path), d, filename, 100, true);
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    request.writer.write("$('c_" + getName() + "').replace()");
}
Also used : NameValuePairs(db.NameValuePairs) FilePathStringBuilder(web.FilePathStringBuilder) File(java.io.File) IOException(java.io.IOException)

Example 2 with NameValuePairs

use of db.NameValuePairs in project common by zenlunatics.

the class EMailForm method doPost.

// --------------------------------------------------------------------
@Override
public boolean doPost(Request request) throws IOException {
    if (super.doPost(request))
        return true;
    String[] recipients = request.request.getParameterValues("email");
    String cmd = request.getParameter("cmd");
    if ("save".equals(cmd)) {
        String list = request.getParameter("list");
        NameValuePairs nvp = new NameValuePairs();
        nvp.set("name", list);
        nvp.set("people_id", request.getUser().getId());
        StringBuilder people_ids = new StringBuilder();
        for (String recipient : recipients) {
            if (people_ids.length() > 0)
                people_ids.append(',');
            people_ids.append(request.db.lookupString("id", "people", "email='" + recipient + "'"));
        }
        nvp.set("people_ids", people_ids.toString());
        request.db.updateOrInsert("people_mail_lists", nvp, "people_id=" + request.getUser().getId() + " AND name='" + DBConnection.escape(list) + "'");
    } else if (recipients != null) {
        Mail mail = new Mail(request.site);
        String message = request.getParameter("message");
        String reply_to = request.getParameter("reply_to");
        if (reply_to != null) {
            message = "<div style=\"background-color:#eee;border:solid 1px #ccc;margin-bottom:10px;padding:5px;width:100%;\">Sent by " + request.getUser().getName() + " from the " + request.site.getDisplayName() + " website.</div>" + message;
            mail.setFrom("webmail@" + request.site.getDomain());
            mail.setReplyTo(reply_to);
            mail.setSubject("[" + request.db.lookupString("first,last", "people", "email='" + reply_to + "'") + "]" + request.getParameter("subject"));
        } else {
            mail.setFrom(request.getParameter("from"));
            mail.setSubject(request.getParameter("subject"));
        }
        mail.setContent(message, true);
        boolean individually = "1".equals(request.getParameter("individually"));
        if (individually)
            for (String recipient : recipients) mail.send(recipient);
        else
            mail.send(recipients);
        if (request.db.getTable(m_table).getColumn("sent") != null)
            for (String recipient : recipients) request.db.update(m_table, "sent=TRUE", "email='" + recipient + "'");
        request.writer.write("dialog_alert('','mail sent')");
    } else
        request.writer.write("dialog_alert('','please select recipients for your email')");
    return false;
}
Also used : NameValuePairs(db.NameValuePairs)

Example 3 with NameValuePairs

use of db.NameValuePairs in project common by zenlunatics.

the class Meetings method beforeUpdate.

// --------------------------------------------------------------------------
@Override
public boolean beforeUpdate(int id, NameValuePairs name_value_pairs, Map<String, Object> previous_values, Request request) {
    String many_days = name_value_pairs.getString("many_days");
    if (many_days.length() > 0) {
        NameValuePairs nvp = new NameValuePairs();
        nvp.set("days", many_days);
        nvp.set("meetings_id", id);
        nvp.set("people_id", request.getUser().getId());
        request.db.updateOrInsert("meeting_people", nvp, "meetings_id=" + id + " AND people_id=" + request.getUser().getId());
    }
    name_value_pairs.remove("many_days");
    return true;
}
Also used : NameValuePairs(db.NameValuePairs)

Example 4 with NameValuePairs

use of db.NameValuePairs in project common by zenlunatics.

the class Pictures method _newViewDef.

// --------------------------------------------------------------------------
@Override
public ViewDef _newViewDef(String name, Site site) {
    if (name.equals(m_table)) {
        ViewDef view_def = new ViewDef(name) {

            @Override
            public View newView(Request p) {
                return new PicturesView(this, m_where, p);
            }

            @Override
            public void afterInsert(NameValuePairs name_value_pairs, int row_id, Request request) {
                ViewState.setFilter(m_name, null, request);
                super.afterInsert(name_value_pairs, row_id, request);
            }
        };
        view_def.setAccessPolicy(new RecordOwnerAccessPolicy().add().delete().edit());
        view_def.setCenter(false);
        view_def.setDefaultOrderBy("_timestamp_ DESC");
        view_def.setDialogModes(View.Mode.ADD_FORM, View.Mode.EDIT_FORM);
        view_def.setOnDelete("document.location=document.location");
        view_def.setOnSuccessAfter("XHR_post(context+'/db','db_cmd=clear_filter&db_view_def=pictures',function(){var p=$('c_pictures');if(p)p.replace();}.bind(this))");
        view_def.setRecordName("Picture");
        view_def.setRowWindowSize(25);
        view_def.setTimestampRecords(true);
        ArrayList<String> columns = new ArrayList<String>();
        columns.add("file");
        columns.add("caption");
        columns.add("tags");
        for (JDBCColumn column : m_additional_columns) columns.add(column.name);
        view_def.setColumnNamesForm(columns.toArray(new String[columns.size()]));
        view_def.setColumnNamesFormTable(new String[] { "caption" });
        PictureColumn picture_column = new PictureColumn("file", view_def, m_table, m_thumb_size, 1024).setSizeIsMaxSide(false);
        if (m_base_file_path != null)
            picture_column.setBaseFilePath(m_base_file_path);
        view_def.setColumn(picture_column.setGenerateFileNames(true).setIsRequired(true));
        view_def.setColumn(new TagsColumn("tags", "pictures", view_def));
        view_def.setColumn(new LookupColumn("_owner_", "people", "first,last").setOnClick("XHR_post(context+'/ViewStates/pictures','filter=_owner_=", "',function(){$('c_pictures').replace(context + '/Views/pictures?db_mode=" + View.Mode.LIST + "');Gallery.close();})"));
        view_def.addRelationshipDef(new ManyToMany(m_table + "_tags", m_table + "_" + m_table + "_tags", "tag").setManyTableColumn("tag").setShowOnForm(false));
        view_def.getViewTheme().setDeleteImg("delete.png").setEditImg("pencil.png");
        return addHooks(view_def);
    }
    if (name.equals(m_table + " add"))
        return _newViewDef(m_table, site).setFrom(m_table).setName(m_table + " add").setOnSuccessAfter(null);
    if (name.equals(m_table + " owners"))
        return new ViewDef(name).setAccessPolicy(new AccessPolicy()).setFrom(m_table + " JOIN people ON people.id=" + m_table + "._owner_").setDefaultOrderBy("first,last").setShowColumnHeads(false).setShowHead(false).setCenter(false).setColumnNamesTable(new String[] { "_owner_" }).setColumn(new Column("_owner_").setValueRenderer(new LinkValueRenderer().setHrefColumn("_owner_").setOnClick("XHR_post(context+'/ViewStates/pictures','filter=_owner_=", "',function(){$('c_pictures').replace(context + '/Views/pictures?db_mode=" + View.Mode.LIST + "');})").setValueRenderer(new MultiColumnRenderer(new String[] { "first", "last" }, true, false)), false));
    if (// for nav list
    name.equals(m_table + " tags"))
        return new ViewDef(name) {

            @Override
            public View newView(Request request) {
                return super.newView(request).setSelectDistinct(true, "tag");
            }
        }.setAccessPolicy(new AccessPolicy()).setDefaultOrderBy("lower(tag)").setFrom(m_table + "_tags").setRecordName("Tag").setShowColumnHeads(false).setShowHead(false).setCenter(false).setColumnNamesTable(new String[] { "tag" }).setColumn(new Column("tag").setValueRenderer(new LinkValueRenderer().setHrefColumn("id").setOnClick("XHR_post(context+'/ViewStates/pictures','filter=pictures_tags_id=", "',function(){$('c_pictures').replace(context + '/Views/pictures?db_mode=" + View.Mode.LIST + "');})").setTextColumn("tag"), false));
    if (name.equals(m_table + "_tags"))
        return new ViewDef(name).setDefaultOrderBy("lower(tag)").setRecordName("Tag").setColumn(new Column("tag").setValueRenderer(new LinkValueRenderer().setHrefColumn("id").setOnClick("XHR_post(context+'/ViewStates/pictures','filter=pictures_tags_id=", "',function(){$('c_pictures').replace(context + '/Views/pictures?db_mode=" + View.Mode.LIST + "');Gallery.close();})").setTextColumn("tag"), false));
    return null;
}
Also used : LinkValueRenderer(db.LinkValueRenderer) NameValuePairs(db.NameValuePairs) Request(app.Request) ArrayList(java.util.ArrayList) ManyToMany(db.ManyToMany) JDBCColumn(db.JDBCColumn) ViewDef(db.ViewDef) AccessPolicy(db.access.AccessPolicy) RecordOwnerAccessPolicy(db.access.RecordOwnerAccessPolicy) RecordOwnerAccessPolicy(db.access.RecordOwnerAccessPolicy) LookupColumn(db.column.LookupColumn) JDBCColumn(db.JDBCColumn) LookupColumn(db.column.LookupColumn) PictureColumn(db.column.PictureColumn) Column(db.column.Column) PictureColumn(db.column.PictureColumn) MultiColumnRenderer(db.column.MultiColumnRenderer)

Example 5 with NameValuePairs

use of db.NameValuePairs in project common by zenlunatics.

the class News method rebuild.

// --------------------------------------------------------------------------
@AdminTask
public void rebuild(String provider_name, Request request) throws IOException {
    NewsProvider provider = getProvider(provider_name);
    if (provider == null) {
        request.writer.write("provider " + provider_name + " not found");
        return;
    }
    request.db.delete("news", "provider='" + provider_name + "'");
    try {
        ResultSet rs = request.db.select(new Select("*").from(provider.getTable()));
        NameValuePairs name_value_pairs = new NameValuePairs();
        while (rs.next()) {
            name_value_pairs.clear();
            name_value_pairs.set("provider", provider_name);
            name_value_pairs.set("item_id", rs.getInt("id"));
            name_value_pairs.set("_owner_", rs.getInt("_owner_"));
            String timestamp = rs.getString("_timestamp_");
            name_value_pairs.set("_timestamp_", timestamp);
            name_value_pairs.set("last_update", timestamp);
            for (JDBCColumn column : provider.m_duplicate_columns) name_value_pairs.set(column.name, rs.getString(column.name));
            request.db.insert("news", name_value_pairs);
        }
        rs.getStatement().close();
    } catch (SQLException e) {
        request.abort(e);
    }
}
Also used : NameValuePairs(db.NameValuePairs) SQLException(java.sql.SQLException) ResultSet(java.sql.ResultSet) Select(db.Select) JDBCColumn(db.JDBCColumn) AdminTask(web.AdminTask)

Aggregations

NameValuePairs (db.NameValuePairs)23 Select (db.Select)5 Request (app.Request)4 JDBCColumn (db.JDBCColumn)4 ViewDef (db.ViewDef)4 Column (db.column.Column)3 LookupColumn (db.column.LookupColumn)3 IOException (java.io.IOException)3 ResultSet (java.sql.ResultSet)3 SQLException (java.sql.SQLException)3 Form (db.Form)2 LinkValueRenderer (db.LinkValueRenderer)2 ManyToMany (db.ManyToMany)2 OneToMany (db.OneToMany)2 View (db.View)2 AccessPolicy (db.access.AccessPolicy)2 RecordOwnerAccessPolicy (db.access.RecordOwnerAccessPolicy)2 SimpleDateFormat (java.text.SimpleDateFormat)2 ArrayList (java.util.ArrayList)2 Map (java.util.Map)2