| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| import org.apache.ofbiz.base.util.* |
| import org.apache.ofbiz.minilang.SimpleMapProcessor |
| import org.apache.ofbiz.content.ContentManagementWorker |
| import org.apache.ofbiz.content.content.ContentWorker |
| import org.apache.ofbiz.content.data.DataResourceWorker |
| import org.apache.ofbiz.webapp.ftl.FreeMarkerViewHandler |
| |
| userLogin = session.getAttribute("userLogin") |
| contentAssocDataResourceViewFrom = delegator.makeValue("ContentAssocDataResourceViewFrom") |
| |
| contentId = context.contentId |
| |
| contentAssocPK = delegator.makeValue("ContentAssoc") |
| contentAssocPK.setAllFields(context, false, "ca", new Boolean(true)) |
| Debug.logInfo("in cmseditaddprep, contentAssocPK:" + contentAssocPK,"") |
| |
| contentAssoc = null |
| if (contentAssocPK.isPrimaryKey()) { |
| contentAssoc = from("ContentAssoc").where(contentAssocPK).queryOne() |
| } |
| |
| if (contentAssoc) { |
| SimpleMapProcessor.runSimpleMapProcessor("component://content/minilang/ContentManagementMapProcessors.xml", "contentAssocOut", contentAssoc, contentAssocDataResourceViewFrom, new ArrayList(), Locale.getDefault()) |
| } else { |
| contentAssocPK.setAllFields(context, false, "ca", null) //set all field, pk and non |
| SimpleMapProcessor.runSimpleMapProcessor("component://content/minilang/ContentManagementMapProcessors.xml", "contentAssocOut", contentAssocPK, contentAssocDataResourceViewFrom, new ArrayList(), Locale.getDefault()) |
| } |
| Debug.logInfo("in cmseditaddprep, contentAssocDataResourceViewFrom:" + contentAssocDataResourceViewFrom,"") |
| |
| dataResourceId = "" |
| textData = "" |
| content = null |
| if (contentId) { |
| content = from("Content").where("contentId", contentId).cache(true).queryOne() |
| if (content) { |
| contentAssocDataResourceViewFrom.setAllFields(content, false, null, null) |
| } |
| } else { |
| contentAssocDataResourceViewFrom.set("contentTypeId", "DOCUMENT") |
| } |
| |
| if (content) { |
| dataResourceId = content.dataResourceId |
| } |
| if (!dataResourceId) { |
| dataResourceId = context.drDataResourceId |
| if (!dataResourceId) { |
| dataResourceId = context.dataResourceId |
| } |
| } |
| if (dataResourceId) { |
| dataResource = from("DataResource").where("dataResourceId", dataResourceId).cache(true).queryOne() |
| SimpleMapProcessor.runSimpleMapProcessor("component://content/minilang/ContentManagementMapProcessors.xml", "dataResourceOut", dataResource, contentAssocDataResourceViewFrom, new ArrayList(), Locale.getDefault()) |
| templateRoot = [:] |
| FreeMarkerViewHandler.prepOfbizRoot(templateRoot, request, response) |
| txt = DataResourceWorker.getDataResourceText(dataResource, "text/html", Locale.getDefault(), templateRoot, delegator, true) |
| |
| if (txt) { |
| textData = UtilFormatOut.encodeXmlValue(txt) |
| } |
| } |
| Debug.logInfo("in cmseditaddprep, textData:" + textData,"") |
| |
| currentValue = new HashMap(contentAssocDataResourceViewFrom) |
| currentValue.textData = textData |
| currentValue.nowTimestamp = UtilDateTime.nowTimestamp() |
| context.currentValue = currentValue |
| |
| request.setAttribute("previousParams", currentValue) |
| |
| persistAction = context.persistAction |
| if (!persistAction) { |
| persistAction = "persistContent" |
| } |
| context.persistAction = persistAction; |