Version 3.2 patchlevel 02 release note

Changes

TinyMCE as HTML Rich editor

We switch to TinyMCE as editor for HTML field. It provides HTML5 support, better copy-paste features and generates compliant HTML code.

2 system parameters are available to customize the available plugins and toolbar of the editor.

Default values can be seen on the basic example page. You can also find a list of available plugins to use.

Note: this feature has been back ported to the 3.1 maintenance branch.

End-user feedback

For security reasons, the Feedback applet has been refactored in HTML (Java applet won't be supported by recent browsers in a short future). The swing applet has been refactored to HTML5 canvas with crop/highlight/mask features.

2 solutions are proposed to insert a screenshot in the feedback:

API JSON/REST and Treeview

Treeview definition is now used by API to manage one object hierarchy.

  1. GET API is the same as a get action with the new parameter treeview name.

Examples to retrieve a user, group and responsibilities:

Note:

  1. PUT API is the same as a update action with the new parameter treeview name.

Each node can specify or not one action:

Note:

Examples to create a user, group and responsibilities :

with JSON data:

{
    "object" : "User",
    "action" : "upsert",
    "item" : {
        "usr_login" : "logintest2",
        "usr_lang" : "FRA",
        "usr_image_id" : {
            "name" : "designer.png",
            "content" : // image base64 encoded...
        },
        "usr_active" : "1",
        "usr_email" : "test@simplicite.fr",
        "usr_home_id__viw_name" : "Home",
        "usr_work_num" : "0123456789",
        "row_module_id__mdl_name" : "ApplicationUsers"
        // etc
    },
    "links" : [
        {
            "object" : "UserSysParam",
            "list" : [ {
                "object" : "UserSysParam",
                "action" : "upsert",
                "item" : {
                    "usp_user_id__usr_login" : "logintest",
                    "usp_param_id__sys_code" : "MENU_STYLE",
                    "usp_value" : "_accordion",
                    "row_module_id__mdl_name" : "ApplicationUsers"
                }
            } ]
        },
        {
            "object" : "Responsability",
            "list" : [ {
                "object" : "Responsability",
                "action" : "upsert",
                "item" : {
                    "rsp_login_id__usr_login" : "logintest",
                    "rsp_group_id__grp_name" : "GROUP_TEST",
                    "rsp_start_dt" : "2011-01-01",
                    "rsp_end_dt" : "2099-01-01",
                    "rsp_activ" : true,
                    "row_module_id__mdl_name" : "ApplicationUsers"
                },
                "links" : [ {
                    "object" : "Group",
                    "list" : [ {
                        "object" : "Group",
                        "action" : "upsert",
                        "item" : {
                            "grp_name" : "GROUP_TEST",
                            "grp_comment" : "Test group",
                            "grp_type" : [ "G", "D", "W" ],
                            "grp_parent_id__grp_name" : "",
                            "grp_home_id__viw_name" : "Home",
                            "row_module_id__mdl_name" : "ApplicationUsers"
                        }
                    } ]
                } ]
            } ]
        } ]
};

Example to update a functional key with no row_id:

{
    "object" : "User",
    "action" : "update",
    "item" : {
        // Specify the new value of the object functional key:
        "usr_login" : "logintest2",
        // Update other fields:
        "usr_lang" : "ENU"
    },
    "olditem" : {
        // Specify the old value of the functional key:
        "usr_login" : "logintest"
    },
    // Update links...
};