In the Mura admin create a webservice and set it to OAuth2 Password and then use it's client_id and client_secret with this
You can choose to keep the client_secret an actual secret or not. It just depends on if you care if it's wide open or not.
| <cfscript> | |
| /* | |
| Required Jars need to be downloaded from https://www.bouncycastle.org/ | |
| bcpkix-jdk18on-173.jar | |
| bcprov-ext-jdk18on-173.jar | |
| bcutil-jdk18on-173.jar | |
| */ | |
| KeyFactory = createObject("java", "java.security.KeyFactory"); | |
| PKCS8EncodedKeySpec = createObject("java", "java.security.spec.PKCS8EncodedKeySpec"); |
| version: '3.8' | |
| services: | |
| #Mura Server | |
| mura: | |
| image: murasoftware/mura-dxp:latest | |
| environment: | |
| LUCEE_JAVA_OPTS: "-Xms1024m -Xmx2048m" | |
| MURA_ADMIN_USERNAME: admin | |
| MURA_ADMIN_PASSWORD: admin |
| FROM murasoftware/mura:latest | |
| MAINTAINER Matt Levine, [email protected] | |
| ARG admin_hspw= | |
| ARG web_hspw= | |
| RUN sed -i "s/hspw=\"\"/hspw=\"$admin_hspw\"/" /opt/lucee/server/lucee-server/context/lucee-server.xml \ | |
| && sed -i "s/hspw=\"\"/hspw=\"$web_hspw\"/" /opt/lucee/web/lucee-web.xml.cfm | |
| # Logs |
| <!-- | |
| This would run on a page that has an inited Mura.js instance. You would need to do this in a normal layout manager. | |
| //Init Mura so you can make an initial api call to get the current page | |
| Mura.init({ | |
| siteid:'default', | |
| rootpath: 'http://localhost:8888', | |
| processMarkup:false | |
| }}; |
In the Mura admin create a webservice and set it to OAuth2 Password and then use it's client_id and client_secret with this
You can choose to keep the client_secret an actual secret or not. It just depends on if you care if it's wide open or not.
#Password In the Mura admin create a webservice and set it to OAuth2 Password and then use it's client_id and client_secret with this
#Client Credentials
| <cfscript> | |
| // this is to avoid loading the config if it is already up to date in the DB | |
| loadXML = checkLoad(siteBean, rsSites); | |
| function checkLoad(siteBean, rsSites) { | |
| var loadXML = false; | |
| var siteid = siteBean.getSiteID(); | |
| // read the JSON file, which contains the modification date of the last loaded config for each site | |
| var themeDir = expandPath(siteBean.getThemeAssetPath()); |
| <script> | |
| app=()=>{ | |
| var app = new Vue({ | |
| template: '#app-template', | |
| el: '#app', | |
| data: function(){ | |
| return{ | |
| entityName:'widget', | |
| collection:false, | |
| entity:false, |
| <script> | |
| window.queuedMuraCmds=[],window.queuedMuraPreInitCmds=[],window.mura=window.m=window.Mura=function(u){window.queuedMuraCmds.push(u)},window.Mura.preInit=function(u){window.queuedMuraPreInitCmds.push(u)}; | |
| </script> |
| <cfparam name="objectparams" default="#structNew()#"> | |
| <cfparam name="objectparams.displayRSS" default="false"> | |
| <cfparam name="useRss" default="#objectparams.displayRSS#"> | |
| <cfif not isValid('uuid',arguments.objectid)> | |
| <cfset crumbIterator=$.content().getCrumbIterator()> | |
| <cfloop condition="crumbIterator.hasNext()"> | |
| <cfset crumb=crumbIterator.next()> | |
| <cfif listFindNoCase('Folder',crumb.getType())> | |
| <cfset arguments.objectid=crumb.getContentID()> |