You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by mo...@apache.org on 2005/05/12 20:15:59 UTC
cvs commit: jakarta-jetspeed/webapp/WEB-INF/templates/vm/controllers/html multicolumn-customize.vm
morciuch 2005/05/12 11:15:59
Modified: src/java/org/apache/jetspeed/modules/actions/controllers
MultiColumnControllerAction.java
src/java/org/apache/jetspeed/modules/parameters
RegistryEntryListBox.java
webapp/WEB-INF/conf admin.xreg
webapp/WEB-INF/templates/vm/controllers/html
multicolumn-customize.vm
Log:
Added ability to change portlet security ref and skin in portlet set customizer (see issue http://issues.apache.org/jira/browse/JS1-546)
Revision Changes Path
1.35 +89 -24 jakarta-jetspeed/src/java/org/apache/jetspeed/modules/actions/controllers/MultiColumnControllerAction.java
Index: MultiColumnControllerAction.java
===================================================================
RCS file: /home/cvs/jakarta-jetspeed/src/java/org/apache/jetspeed/modules/actions/controllers/MultiColumnControllerAction.java,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- MultiColumnControllerAction.java 12 Apr 2005 22:55:27 -0000 1.34
+++ MultiColumnControllerAction.java 12 May 2005 18:15:59 -0000 1.35
@@ -17,47 +17,44 @@
package org.apache.jetspeed.modules.actions.controllers;
// Jetspeed stuff
-import org.apache.jetspeed.om.registry.PortletEntry;
-import org.apache.jetspeed.om.profile.IdentityElement;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.StringTokenizer;
+import java.util.Vector;
+
+import org.apache.jetspeed.om.BaseSecurityReference;
import org.apache.jetspeed.om.profile.Entry;
-import org.apache.jetspeed.om.profile.psml.PsmlControl;
-import org.apache.jetspeed.om.profile.MetaInfo;
+import org.apache.jetspeed.om.profile.IdentityElement;
import org.apache.jetspeed.om.profile.Layout;
+import org.apache.jetspeed.om.profile.MetaInfo;
import org.apache.jetspeed.om.profile.Parameter;
import org.apache.jetspeed.om.profile.Portlets;
import org.apache.jetspeed.om.profile.Reference;
-import org.apache.jetspeed.om.profile.psml.PsmlParameter;
+import org.apache.jetspeed.om.profile.psml.PsmlControl;
import org.apache.jetspeed.om.profile.psml.PsmlLayout;
+import org.apache.jetspeed.om.profile.psml.PsmlParameter;
+import org.apache.jetspeed.om.profile.psml.PsmlSkin;
+import org.apache.jetspeed.om.registry.PortletEntry;
import org.apache.jetspeed.portal.Portlet;
-import org.apache.jetspeed.portal.PortletSet;
import org.apache.jetspeed.portal.PortletController;
+import org.apache.jetspeed.portal.PortletSet;
+import org.apache.jetspeed.services.PsmlManager;
+import org.apache.jetspeed.services.Registry;
import org.apache.jetspeed.services.customlocalization.CustomLocalization;
import org.apache.jetspeed.services.logging.JetspeedLogFactoryService;
import org.apache.jetspeed.services.logging.JetspeedLogger;
import org.apache.jetspeed.services.resources.JetspeedResources;
import org.apache.jetspeed.services.rundata.JetspeedRunData;
-import org.apache.jetspeed.services.Registry;
import org.apache.jetspeed.services.statemanager.SessionState;
-import org.apache.jetspeed.services.PsmlManager;
-
-// Turbine stuff
import org.apache.turbine.modules.ActionLoader;
import org.apache.turbine.util.RunData;
-
-// Velocity Stuff
import org.apache.velocity.context.Context;
-// Java stuff
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Vector;
-import java.util.List;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.HashMap;
-import java.util.StringTokenizer;
-
/**
* This action builds a context suitable for controllers handling
* grid positioned layout using PortletSet.Constraints
@@ -592,6 +589,74 @@
}
}
+ public void doSkin(RunData data, Context context)
+ {
+ JetspeedRunData jdata = (JetspeedRunData) data;
+
+ String skinName = data.getParameters().getString("portletSkin");
+ String id = data.getParameters().getString("js_peid");
+
+ try
+ {
+ Entry entry = jdata.getCustomizedProfile().getDocument().getEntryById(id);
+
+ if (entry != null)
+ {
+ if (skinName != null && skinName.trim().length() > 0)
+ {
+ PsmlSkin skin = new PsmlSkin();
+ skin.setName(skinName);
+ if (skin != null)
+ {
+ entry.setSkin(skin);
+ }
+ }
+ else
+ {
+ entry.setSkin(null);
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ logger.error("Exception setting skin", e);
+ }
+ }
+
+ public void doSecurity(RunData data, Context context)
+ {
+ JetspeedRunData jdata = (JetspeedRunData) data;
+
+ String securityRefName = data.getParameters().getString("portletSecurityRef");
+ String id = data.getParameters().getString("js_peid");
+
+ try
+ {
+ Entry entry = jdata.getCustomizedProfile().getDocument().getEntryById(id);
+
+ if (entry != null)
+ {
+ if (securityRefName != null && securityRefName.trim().length() > 0)
+ {
+ BaseSecurityReference securityRef = new BaseSecurityReference();
+ securityRef.setParent(securityRefName);
+ if (securityRef != null)
+ {
+ entry.setSecurityRef(securityRef);
+ }
+ }
+ else
+ {
+ entry.setSecurityRef(null);
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ logger.error("Exception setting security", e);
+ }
+ }
+
protected static void setPosition(IdentityElement identityElement, int col, int row)
{
boolean colFound = false;
1.10 +5 -1 jakarta-jetspeed/src/java/org/apache/jetspeed/modules/parameters/RegistryEntryListBox.java
Index: RegistryEntryListBox.java
===================================================================
RCS file: /home/cvs/jakarta-jetspeed/src/java/org/apache/jetspeed/modules/parameters/RegistryEntryListBox.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- RegistryEntryListBox.java 29 Aug 2004 22:32:15 -0000 1.9
+++ RegistryEntryListBox.java 12 May 2005 18:15:59 -0000 1.10
@@ -167,6 +167,10 @@
{
label = "Client";
}
+ else if (regName.equals(Registry.SKIN))
+ {
+ label = CustomLocalization.getString("CUSTOMIZER_SKIN", data);;
+ }
else
{
label = "";
1.50 +18 -1 jakarta-jetspeed/webapp/WEB-INF/conf/admin.xreg
Index: admin.xreg
===================================================================
RCS file: /home/cvs/jakarta-jetspeed/webapp/WEB-INF/conf/admin.xreg,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -r1.49 -r1.50
--- admin.xreg 11 May 2005 01:33:13 -0000 1.49
+++ admin.xreg 12 May 2005 18:15:59 -0000 1.50
@@ -43,7 +43,7 @@
</parameter-style>
</parameter>
<parameter name="_control" value="" type="style" hidden="false">
- <security-ref parent="user-only"/>
+ <security-ref parent="user-only"/>
<parameter-style name="RegistryEntryListBox">
<style-option name="registry" value="PortletControl"/>
<style-option name="select-hidden" value="true"/>
@@ -66,6 +66,15 @@
<style-option name="javascript:onchange" value="document.securityRefs.submit()"/>
</parameter-style>
</parameter>
+ <parameter name="portletSecurityRef" value="" type="style" hidden="false">
+ <security-ref parent="user-only"/>
+ <parameter-style name="RegistryEntryListBox">
+ <style-option name="registry" value="Security"/>
+ <style-option name="disabled-if-wml" value="true"/>
+ <style-option name="javascript:onchange" value="this.form.submit()"/>
+ <style-option name="set-label" value="true"/>
+ </parameter-style>
+ </parameter>
<parameter name="skin" value="" type="style" hidden="false">
<parameter-style name="RegistryEntryListBox">
<style-option name="registry" value="Skin"/>
@@ -73,6 +82,14 @@
<style-option name="javascript:onchange" value="document.skins.submit()"/>
</parameter-style>
</parameter>
+ <parameter name="portletSkin" value="" type="style" hidden="false">
+ <parameter-style name="RegistryEntryListBox">
+ <style-option name="registry" value="Skin"/>
+ <style-option name="disabled-if-wml" value="true"/>
+ <style-option name="javascript:onchange" value="this.form.submit()"/>
+ <style-option name="set-label" value="true"/>
+ </parameter-style>
+ </parameter>
<parameter name="control" value="" type="style" hidden="false">
<parameter-style name="RegistryEntryListBox">
<style-option name="registry" value="PortletControl"/>
1.23 +36 -7 jakarta-jetspeed/webapp/WEB-INF/templates/vm/controllers/html/multicolumn-customize.vm
Index: multicolumn-customize.vm
===================================================================
RCS file: /home/cvs/jakarta-jetspeed/webapp/WEB-INF/templates/vm/controllers/html/multicolumn-customize.vm,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- multicolumn-customize.vm 17 Mar 2004 19:17:27 -0000 1.22
+++ multicolumn-customize.vm 12 May 2005 18:15:59 -0000 1.23
@@ -41,7 +41,7 @@
<tr>
<td width="100%">
<form action="#psmlLink($jslink.Template)" method="post">
-#if ($action) <input type="hidden" name="$jslink.ActionKey" value="$action" /> #end
+ #if ($action) <input type="hidden" name="$jslink.ActionKey" value="$action" /> #end
<input type="hidden" name="id" value="$portlet.id" />
<input type="hidden" name="col" value="$col" />
<input type="hidden" name="row" value="$row" />
@@ -78,6 +78,7 @@
<td class="PTitleRight" style="font-size:1pt;"> </td>
#end
</tr>
+ </form>
## Portlet "content" (properties)
<tr>
#if (${skin.PortletSkinClass})
@@ -102,24 +103,52 @@
#set ($portletSkin = "-- Default --")
#end
+#if ($portlet.Skin)
+ #set ($psListBox = $jetspeed.getPortletParameter($data, $data.User.getTemp("customizer"), "portletSkin", $portlet.Skin.Name))
+ #else
+ #set ($psListBox = $jetspeed.getPortletParameter($data, $data.User.getTemp("customizer"), "portletSkin"))
+#end
+
## Set $portletSecurityRef. If no Security Reference exists for the portlet, then set to "-- Default --"
#set($securityReference = $jetspeed.getSecurityReference($portlet))
#if ($securityReference)
#set ($portletSecurityRef = $securityReference.Parent)
+ ##set ($portletSecurityRef = "")
#if($jetspeed.getSecuritySource($portlet) == 1)
- #set ($portletSecurityRef = "$portletSecurityRef <span style='color:red'><br />$l10n.SECURITY_IS_REGISTRY_LEVEL.</span>")
+ #set ($portletSecurityRef = "<span style='color:red'><br />$l10n.SECURITY_IS_REGISTRY_LEVEL.</span>")
#elseif($jetspeed.getSecuritySource($portlet) == 2)
- #set ($portletSecurityRef = "$portletSecurityRef <span style='color:red'><br />$l10n.SECURITY_IS_SYSTEM_DEFAULT.</span>")
+ #set ($portletSecurityRef = "<span style='color:red'><br />$l10n.SECURITY_IS_SYSTEM_DEFAULT.</span>")
#end
#else
#set ($portletSecurityRef = "-- Default --")
#end
+
+#if ($securityReference)
+ #set ($srListBox = $jetspeed.getPortletParameter($data, $data.User.getTemp("customizer"), "portletSecurityRef", $securityReference.Parent))
+ #else
+ #set ($srListBox = $jetspeed.getPortletParameter($data, $data.User.getTemp("customizer"), "portletSecurityRef"))
+#end
+
<tr>
<td width="50%">
- $l10n.CUSTOMIZER_SKIN : $portletSkin
+ <form name="pskins$ndx" action="#psmlLink($jslink.Template)" method="post">
+ #if ($action)
+ <input name="$jslink.ActionKey" type="hidden" value="$action">
+ #end
+ <input name="js_peid" type="hidden" value="$portlet.id">
+ <input type="hidden" name="eventSubmit_doSkin" value="doSkin">
+ $psListBox
+ </form>
</td>
<td width="50%">
- $l10n.CUSTOMIZER_SECURITY_REF : $portletSecurityRef
+ <form name="pSecs$ndx" action="#psmlLink($jslink.Template)" method="post">
+ #if ($action)
+ <input name="$jslink.ActionKey" type="hidden" value="$action">
+ #end
+ <input name="js_peid" type="hidden" value="$portlet.id">
+ <input type="hidden" name="eventSubmit_doSecurity" value="doSecurity">
+ $srListBox $portletSecurityRef
+ </form>
</td>
</tr>
## Include path for references
@@ -130,7 +159,7 @@
</td>
</tr>
#end
-</form>
+##</form>
#if ($portlet.Control.Name)
#set ($controlListBox = $jetspeed.getPortletParameter($data, $data.User.getTemp("customizer"), "control", $portlet.Control.Name))
#else
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org