-<!--
First, the logic to do all the database operations. Note,
that we do no parameter validation here, just see if some
parameters are present. For a real application, you'd
want to check their values as well. Note too, that in a
more complex setup you'd want to use an action set for
this rather than spell it out everywhere.
Or even better, call these actions from the flow layer!
That way it is easier to react to error conditions.
-->
-<!--
______________________________ inserts ______________________________
-->
-<!--
add new groups to a user's groups
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="add-groups user_groups.uid user_groups.gid"/>
-<map:act type="mod-db-add">
<map:parameter name="table-set" value="user_groups"/>
</map:act>
</map:act>
-<!--
add one new group
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="add-group groups.gname"/>
-<map:act type="mod-db-add">
<map:parameter name="table-set" value="groups"/>
</map:act>
</map:act>
-<!--
add one new user
-->
-<!--
Actually, this one is not used anymore. The one below
works well when no groups are supplied.
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="add-user user.name user.firstname user.uname"/>
-<map:act type="mod-db-add">
<map:parameter name="table-set" value="user"/>
</map:act>
</map:act>
-<!--
add one new user plus groups
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="add-user-groups user.name user.firstname user.uname"/>
-<map:act type="mod-db-add">
<map:parameter name="table-set" value="user+groups"/>
</map:act>
</map:act>
-<!--
upload binary data
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="add-image"/>
-<!--
media.image media.id
-->
-<map:act type="mod-db-add">
<map:parameter name="table-set" value="media"/>
</map:act>
</map:act>
-<!--
______________________________ updates ______________________________
-->
-<!--
update one user
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="upd-user user.uid user.name user.firstname user.uname"/>
-<map:act type="mod-db-upd">
<map:parameter name="table-set" value="user"/>
</map:act>
</map:act>
-<!--
update one group
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="upd-group groups.gid groups.gname"/>
-<map:act type="mod-db-upd">
<map:parameter name="table-set" value="groups"/>
</map:act>
</map:act>
-<!--
______________________________ deletes ______________________________
-->
-<!--
delete one user
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="del-user user.uid"/>
-<map:act type="mod-db-del">
<map:parameter name="table-set" value="user"/>
</map:act>
</map:act>
-<!--
delete one group
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="del-group groups.gid"/>
-<map:act type="mod-db-del">
<map:parameter name="table-set" value="groups"/>
</map:act>
</map:act>
-<!--
delete groups from a user's groups
-->
-<map:act type="req-params">
<map:parameter name="parameters" value="remove-groups user_groups.uid user_groups.gid"/>
-<map:act type="mod-db-del">
<map:parameter name="table-set" value="user_groups"/>
</map:act>
</map:act>
-<!--
______________________________ content ______________________________
-->
<map:generate type="serverpages" src="{1}.xsp"/>
-<map:transform src="context://samples/stylesheets/dynamic-page2html.xsl">
<map:parameter name="servletPath" value="{request:servletPath}"/>
<map:parameter name="sitemapURI" value="{request:sitemapURI}"/>
<map:parameter name="contextPath" value="{request:contextPath}"/>
<map:parameter name="file" value=".xsp"/>
</map:transform>
<map:transform src="stupid.xsl"/>
<map:serialize/>
</map:match>