Search

I know it has been discussed many times on the forum or somewhere else..

I have made an extension that does this, but mainly the codes are hacks to the symphony core.

i have got 2 ways of implementing the rules, 1. by operator syntax, a bit complex, like [groupid]>20 and [id==21] isallowed=false, it works on page based and frontend only. the codes here are almost all hacks. 2. by article based/entry based. when you are creating a section, you can pick a “acl” event. and when you create an entry for it, you pick the groups that allowed/not allowed to see the entry. it works on entry based. the codes here are extensions including the fields and the event.

what i have got so far is i have the acl element written in the debug mode.

<data><events><acl-info allowed="true"/>

so in the xslt i have

<xsl:template match="/data/">
<xsl:if test="/data/events/acl-info/@allowed = 'true'">
ALLOWED TO SEE THIS PAGE
</xsl:if>

this will print the value inside the element, but what i am trying to do is to redirect the user to somewhere else, such as 403 forbidden or a login page.

how do i do this? maybe xslt redirection?

edit: i have a line in the event __trigger that will throw a 403 error when the ACL returning false. but how i do this in xsl? or this is enough?

If your event is throwing an Exception, you shouldn’t need to do anything in the XSL.

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details