Joomla Modules with Permissions and Front-End Editing

Post on 15-Jan-2015

3419 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Imaging a Joomla website where staff can edit modules on the front-end. Randy Carey of the iCue Project presents his work on making this a reality and on the issues he discovered during implementation of the solution. This presentation was given at JAB 2013 near Amsterdam.

Transcript

Modules with Permissions & Front-End Editing

Improving Website Management

Randy Carey

iCueProject.com

SlideShare viewers: My slide presentations are highly visual and illustrative, and since you can’t hear me narrate, I provide my narration in the notes section. Each slide includes some narration. To get the most out of this presentation, please open the notes section (below) and read the narration as you walk through the presentation.

Restaurant:Needs to announce holiday hours

Restaurant:Needs to announce holiday hours

Restaurant:Needs to announce holiday hours

Restaurant:Needs to adjust events listing

Modules with Permissions & Front-End Editing

Improving Website Management

Randy Carey

iCueProject.com

iCueProject.com

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

iCueProject.com

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

Modules with Permissions and Front-End Editing

Modules with Permissions and Front-End Editing

Joomla core does not anticipate this

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

?

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

If we have FEE, we need permissions on modules

ACL and permissions

Modules with Permissions:

at three levels

• Module Manager

• Type of the Module

• Instance of the Module

Modules with Permissions:

three levels

• Module Manager

Modules with Permissions:

three levels

• Module Manager eXtended

Modules with Permissions:

three levels

• Module Manager eXtended

Modules with Permissions:

three levels

• Module Type vs Instance

Modules with Permissions:

three levels

• Module Instance & FEE

Modules with Permissions:

at three levels

• Module Manager permissions: who can edit which modules

• Module Typepermissions: actions module settings

• Module Instancepermissions: set permissions per instance

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

DB

DBContent

Displayof content

DB

Menu item

component

module

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

Modules with Permissions:

Types of Modules

modulestypes

modulestypes

modulestypes

modulestypes

list of items

single item

functional

content-based

Modules with Permissions:

Types of Modules

List of items

• category or categories

• RSS feeds

• Events

• latest users

• weblinks

• showcase/slideshow

Modules with Permissions:

Types of Modules

single item

• banner

• Breadcrumbs

• menu

• logo holder

• header – image

• footer

• random image

• statistics

Modules with Permissions:

Types of Modules

functional

• search

• login

• syndication

• language switcher

Modules with Permissions:

Types of Modules

content

• Custom HTML

Modules with Permissions:

Types of Module Fields

Modules with Permissions:

Types of Module Fields

Module’s existence

Modules with Permissions:

Types of Module Fields

Filtering

Modules with Permissions:

Types of Module Fields

Display – selecting what per item

Modules with Permissions:

Types of Module Fields

Display - formatting

Modules with Permissions:

Types of Module Fields

Functionallogin

Modules with Permissions:

Types of Module Fields

Content

Modules with Permissions:

Types of Module Fields

ContentSearch box login

Modules with Permissions:

Types of Module Fields

Advanced

Parameter fields for Articles Category

Filtering• Featured articles• Count• Category Filtering Type• Category• Child Category Articles• Category Depth• Author Filter Type• Authors• Author Alias Filter Type• Author Aliases• Article IDs to Exclude• Date filtering• Date Range Field• Start Date Range• To Date Range• Relative Date

Ordering• By article fld• Ordering direction

Grouping• Article grouping• Direction• Month/year format

Display• Heading level• Linked titles• Date• Date field• Date format• Category• Hits• Author• Introtext• Introtext limit• Show “ReadMore”• Title+ReadMore• “ReadMore” limit

Advanced• Alternative Layout• Mod Suffix Class• Module Tag• Bootstrap Size• Header Tag• Header Class• Module Style

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

iCueProject.com

Status at JAB 2013

At the time this presentation was given at JAB 2013, I had working code for front-end editing. The code involve a new component, a new library file, and two plugins.

Integration involved [1] touching the module’s XML file (to declare the module’s actions and to tag which fields belong to which action) and [2] overriding the module’s layout template (to inject a couple of simple calls to a couple of library functions).

This has worked for every module type that I tried (including the desirable CustomHTML as well as functional modules like Login or Search). Considering how much work is handled by the library and plugins, the integration was relatively simple. But…

Summer 2013

But I have learned that a solution is valued much more if it can be deployed without requiring the site developer to touch code. So…

My current work on this project is to refactor it into a self-contained solution that allows one to configure permissions and inject front-end editing through a component and with no requirement to touch code.

Summer 2013

I welcome your interest and will make the code available through the iCueProject website.

iCueProject.com

Please visit iCueProject.com and sign up to receive notices of this and future projects of iCue.

Extensions will be distributed through this site.

Agenda : Modules with Permissions and Front-End Editing

Beta testers ???

iCueProject.com

Of course, I’ll be welcoming offers for beta testing.

Agenda : Modules with Permissions and Front-End Editing

• Imagine…

• Front-End Editing

• ACL and Permissions

• How Modules are Different

• Actions & Module Settings

• How to Implement

• Demo

Modules with Permissions & Front-End Editing

Improving Website Management

Randy Carey

iCueProject.com

top related