Ignore:
Timestamp:
06/27/10 04:34:47 (23 months ago)
Author:
mattlevine
Message:
  1. Adding the ability to have theme local contentRenderer.cfc files. Changed it so that each request gets it's own instance of a theme contentRenderer.cfc and the Mura scope lookup first looks into the theme renderer and then the site render. This reverses the previous statement about the hierarchy.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/5.2/www/requirements/mura/MuraScope.cfc

    r2435 r2436  
    3333                <cfif isObject(getEvent()) and structKeyExists(variables.instance.event,MissingMethodName)> 
    3434                        <cfset object=variables.instance.event> 
     35                <cfelseif isObject(getThemeRenderer()) and structKeyExists(getThemeRenderer(),MissingMethodName)> 
     36                        <cfset object=getThemeRenderer()> 
    3537                <cfelseif isObject(getContentRenderer()) and structKeyExists(getContentRenderer(),MissingMethodName)> 
    3638                        <cfset object=getContentRenderer()> 
    37                 <cfelseif isObject(getThemeRenderer()) and structKeyExists(getThemeRenderer(),MissingMethodName)> 
    38                         <cfset object=getThemeRenderer()> 
    3939                <cfelseif isObject(getContentBean()) and structKeyExists(getContentBean(),MissingMethodName)> 
    4040                        <cfset object=getContentBean()> 
     
    6868                        <cfset event("contentRenderer",request.contentRenderer)> 
    6969                <cfelseif len(event('siteid'))> 
    70                         <cfset event("contentRenderer",createObject("component","#siteConfig().getAssetMap()#.contentRenderer").init(event))> 
     70                        <cfset event("contentRenderer",createObject("component","#siteConfig().getAssetMap()#.contentRenderer").init(event=event,$=event("muraScope"),mura=event("muraScope") ) )> 
    7171                <cfelseif structKeyExists(application,"contentRenderer")> 
    7272                        <cfset event("contentRenderer",application.contentRenderer)> 
     
    8585 
    8686<cffunction name="getThemeRenderer" output="false" returntype="any"> 
    87         <cfreturn event("themeRenderer")> 
     87        <cfif isObject(event("themeRenderer"))> 
     88                <cfreturn event("themeRenderer")> 
     89        <cfelseif len(event('siteid')) and fileExists(expandPath(siteConfig().getThemeIncludePath()) & "/contentRenderer.cfc" )> 
     90                <cfset event("themeRenderer",createObject("component","#siteConfig().getThemeAssetMap()#.contentRenderer").init(event=event,$=event("muraScope"),mura=event("muraScope") ) )> 
     91        <cfelse> 
     92                <cfreturn event("themeRenderer")> 
     93        </cfif> 
     94</cffunction> 
     95 
     96<cffunction name="setThemeRenderer" output="false" returntype="any"> 
     97        <cfargument name="themeRenderer"> 
     98        <cfif isObject(arguments.themeRenderer)> 
     99                <cfset event("themeRenderer",arguments.themeRenderer)> 
     100        </cfif> 
     101        <cfreturn this> 
    88102</cffunction> 
    89103 
Note: See TracChangeset for help on using the changeset viewer.