Ambrosia
view release on metacpan or search on metacpan
share/Templates/Common/Config.xsl view on Meta::CPAN
<xsl:if test="boolean(./atns:Entitys/atns:Entity[@Type='TREE'])">
'/tree' => {
manager => '<xsl:value-of select="@Name"/>::Managers::ListManager',
template => 'tree_json.xsl',
access => $OPEN_ACCESS
},
</xsl:if>
<xsl:text>
</xsl:text>
<xsl:for-each select="./atns:Entitys/atns:Entity">
<xsl:variable name="entityName" select="translate(@Name, $vUppercaseChars_CONST, $vLowercaseChars_CONST)"/>
<xsl:variable name="typeEntity" select="translate(@Type, $vLowercaseChars_CONST, $vUppercaseChars_CONST)"/>
<xsl:if test="$typeEntity='TABLE' or $typeEntity='TREE'">
'/get/<xsl:value-of select="$entityName"/>' => {
manager => '<xsl:value-of select="../../@Name"/>::Managers::<xsl:value-of select="@Name"/>EditManager',
template => '<xsl:value-of select="$entityName"/>_edit_json.xsl',
access => $EDIT_<xsl:value-of select="@Name"/>
},
'/save/<xsl:value-of select="$entityName"/>' => {
manager => '<xsl:value-of select="../../@Name"/>::Managers::<xsl:value-of select="@Name"/>SaveManager',
access => $EDIT_<xsl:value-of select="@Name"/>
},
</xsl:if>
<xsl:if test="$typeEntity!='ABSTRACT' and $typeEntity!='BIND' and $typeEntity!='TREE'">
'/list/<xsl:value-of select="$entityName"/>' => {
manager => '<xsl:value-of select="../../@Name"/>::Managers::<xsl:value-of select="@Name"/>ListManager',
access => $VIEW_<xsl:value-of select="@Name"/>
},
</xsl:if>
<xsl:if test="$typeEntity='TREE'">
'/list/<xsl:value-of select="$entityName"/>' => {
manager => '<xsl:value-of select="../../@Name"/>::Managers::<xsl:value-of select="@Name"/>TreeManager',
access => $VIEW_<xsl:value-of select="@Name"/>
},
</xsl:if>
<xsl:text>
</xsl:text>
</xsl:for-each>
},
CommonGatewayInterface => {
engine_name => '<xsl:value-of select="/atns:Application/atns:Config/atns:CommonGatewayInterface/@Engine" />',
engine_params => {
header_params => {
<xsl:for-each select="/atns:Application/atns:Config/atns:CommonGatewayInterface/atns:Params/@*">
<xsl:value-of select="name()" /> => '<xsl:value-of select="." />',
</xsl:for-each>},
},
proxy => $PROXY,
},
data_source => {
<xsl:for-each select="/atns:Application/atns:DataSource/atns:Type">
<xsl:value-of select="@Name" /> => [<xsl:for-each select="atns:Source">{
source_name => $DS_NAME_<xsl:value-of select="../@Name"/>_<xsl:value-of select="@Name"/>,
engine_name => $DS_ENGINE_<xsl:value-of select="../@Name"/>_<xsl:value-of select="@Name"/>,
<xsl:if test="boolean(@Catalog)">catalog => $DS_CATALOG_<xsl:value-of select="../@Name"/>_<xsl:value-of select="@Name"/>,</xsl:if>
schema => $DS_SCHEMA_<xsl:value-of select="../@Name"/>_<xsl:value-of select="@Name"/>,
user => $DS_USER_<xsl:value-of select="../@Name"/>_<xsl:value-of select="@Name"/>,
password => $DS_PASSWORD_<xsl:value-of select="../@Name"/>_<xsl:value-of select="@Name"/>,
engine_params => $DS_PARAMS_<xsl:value-of select="../@Name"/>_<xsl:value-of select="@Name"/>,
additional_params => { AutoCommit => 0, RaiseError => 1, LongTruncOk => 1 },
additional_action => sub { my $dbh = shift; $dbh->do("SET NAMES $DS_CHARSET_<xsl:value-of select="../@Name"/>_<xsl:value-of select="@Name"/>")},
},</xsl:for-each>],</xsl:for-each>
},
#delete this block if your application don't use remoute services or change it
service_conf => {
'SOAP::Lite' => [
{
name => '<xsl:value-of select="$RealAppName"/>',
__proxy => 'uri of calling service',
__outputxml => 'false',
__readable => 0,
__default_ns => 'urn:<xsl:value-of select="$RealAppName"/>/<xsl:value-of select="$RealAppName"/>Services',
#__ns => 'urn:<xsl:value-of select="$RealAppName"/>/<xsl:value-of select="$RealAppName"/>Services',
__soapversion => '1.2',
__timeout => undef,
#__on_error #you can use `on_error(sub{})` method of Ambrosia::RPC::Service::SOAP::Lite
},
],
},
NUMBER_PER_PAGE => 20,
<xsl:if test="/atns:Application/@Authorization!='NO'">
login => 'god',
password => 'fv,hjpbz',
ACCESS_LEVELS => {
<xsl:value-of select="$UcAppName"/> => {
LABEL => '<xsl:value-of select="@Label"/>',
LEVELS => {<xsl:for-each select="./atns:Entitys/atns:Entity"><xsl:variable name="type" select="translate(@Type, $vLowercaseChars_CONST, $vUppercaseChars_CONST)"/>
<xsl:if test="$type='TABLE'">
$EDIT_<xsl:value-of select="@Name"/> => 'Edit <xsl:value-of select="@Label" />',</xsl:if><xsl:if test="$type!='ABSTRACT' and $type!='BIND'">
$VIEW_<xsl:value-of select="@Name"/> => 'View <xsl:value-of select="@Label" />',
</xsl:if></xsl:for-each>
}
}
},
</xsl:if>
};
</xsl:template>
</xsl:stylesheet>
( run in 1.055 second using v1.01-cache-2.11-cpan-40ba7b3775d )