roller-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ganes...@apache.org
Subject svn commit: r766565 - in /roller/branches/roller_mediablogging/apps/weblogger/web: WEB-INF/ WEB-INF/classes/ WEB-INF/jsps/editor/ WEB-INF/jsps/tiles/ roller-ui/styles/
Date Mon, 20 Apr 2009 03:10:01 GMT
Author: ganeshmb
Date: Mon Apr 20 03:10:00 2009
New Revision: 766565

URL: http://svn.apache.org/viewvc?rev=766565&view=rev
Log:
UI changes made by Tanuja for new popup pages and for enhancing media file view/search pages
added.

Added:
    roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileAddExternalInclude.jsp
    roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/tiles/tiles-popuppage.jsp
Modified:
    roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/classes/struts.xml
    roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileSearch.jsp
    roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileView.jsp
    roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/tiles.xml
    roller/branches/roller_mediablogging/apps/weblogger/web/roller-ui/styles/roller.css

Modified: roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/classes/struts.xml
URL: http://svn.apache.org/viewvc/roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/classes/struts.xml?rev=766565&r1=766564&r2=766565&view=diff
==============================================================================
--- roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/classes/struts.xml (original)
+++ roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/classes/struts.xml Mon
Apr 20 03:10:00 2009
@@ -218,19 +218,33 @@
             <result name="success" type="chain">entryEdit</result>
         </action>
 
-	<action name="mediaFileAdd!*" method="{1}"
+        <action name="mediaFileAdd!*" method="{1}"
                 class="org.apache.roller.weblogger.ui.struts2.editor.MediaFileAdd">
             <result name="input" type="tiles">.MediaFileAdd</result>
             <result name="success" type="tiles">.MediaFileAddSuccess</result>
             <result name="error" type="tiles">.MediaFileAdd</result>
         </action>
 
-	<action name="mediaFileEdit!*" method="{1}"
+        <action name="mediaFileAddInclude!*" method="{1}"
+                class="org.apache.roller.weblogger.ui.struts2.editor.MediaFileAdd">
+            <result name="input" type="tiles">.MediaFileAddInclude</result>
+            <result name="success" type="tiles">.MediaFileAddSuccessInclude</result>
+			 <result name="error" type="tiles">.MediaFileAddInclude</result>
+        </action>
+
+        <action name="mediaFileEdit!*" method="{1}"
                 class="org.apache.roller.weblogger.ui.struts2.editor.MediaFileEdit">
             <result name="input" type="tiles">.MediaFileEdit</result>
             <result name="success" type="tiles">.MediaFileEdit</result>
         </action>
 
+        <action name="mediaFileAddExternalInclude!*" method="{1}"
+                class="org.apache.roller.weblogger.ui.struts2.editor.MediaFileEdit">
+            <result name="input" type="tiles">.MediaFileAddExternalInclude</result>
+            <result name="success" type="tiles">.MediaFileAddExternalInclude</result>
+            <result name="error" type="tiles">.MediaFileAddExternalInclude</result>
+        </action>
+
 	<action name="mediaFileView!*" method="{1}"
                 class="org.apache.roller.weblogger.ui.struts2.editor.MediaFileView">
             <result name="success" type="tiles">.MediaFileView</result>
@@ -248,6 +262,13 @@
             <result name="error" type="tiles">.MediaFileSearch</result>
             <result name="success" type="tiles">.MediaFileSearch</result>
         </action>
+		
+	<action name="mediaFileSearchInclude!*" method="{1}"
+                class="org.apache.roller.weblogger.ui.struts2.editor.MediaFileSearch">
+            <result name="input" type="tiles">.MediaFileSearchInclude</result>
+            <result name="error" type="tiles">.MediaFileSearchInclude</result>
+            <result name="success" type="tiles">.MediaFileSearchInclude</result>
+        </action>
 
 	<action name="tabular!*" method="{1}"
                 class="org.apache.roller.weblogger.ui.struts2.editor.Resources">

Added: roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileAddExternalInclude.jsp
URL: http://svn.apache.org/viewvc/roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileAddExternalInclude.jsp?rev=766565&view=auto
==============================================================================
--- roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileAddExternalInclude.jsp
(added)
+++ roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileAddExternalInclude.jsp
Mon Apr 20 03:10:00 2009
@@ -0,0 +1,56 @@
+<%--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  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.  For additional information regarding
+  copyright in this work, please see the NOTICE file in the top level
+  directory of this distribution.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<p class="subtitle">
+    <s:text name="mediaFile.add.title"  />
+</p>
+
+<s:form id="entry" action=" " onsubmit="editorCleanup()" method="POST">
+    
+
+    <table class="entryEditTable" cellpadding="0" cellspacing="0" width="100%">
+
+        <tr>
+            <td class="entryEditFormLabel">
+                <label for="status">URL:</label>
+            </td>
+            <td>
+                <s:textfield name=" " size="50" maxlength="255" tabindex="1" />
+            </td>
+       </tr>
+
+	    <tr>
+            <td class="entryEditFormLabel">
+                <label for="status">Title</label>
+            </td>
+            <td>
+                <s:textfield name=" " size="50" maxlength="255" />
+            </td>
+       </tr>
+
+
+    </table>
+
+
+    <br>
+    <div class="control">
+       <input type="submit" value="Insert" name="submit" />
+    </div>
+
+</s:form>

Modified: roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileSearch.jsp
URL: http://svn.apache.org/viewvc/roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileSearch.jsp?rev=766565&r1=766564&r2=766565&view=diff
==============================================================================
--- roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileSearch.jsp
(original)
+++ roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileSearch.jsp
Mon Apr 20 03:10:00 2009
@@ -16,6 +16,199 @@
   directory of this distribution.
 --%>
 <%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/combo?2.6.0/build/reset-fonts-grids/reset-fonts-grids.css&2.6.0/build/menu/assets/skins/sam/menu.css">

+<!-- Combo-handled YUI JS files: --> 
+<script type="text/javascript" src="http://yui.yahooapis.com/combo?2.6.0/build/yahoo-dom-event/yahoo-dom-event.js&2.6.0/build/animation/animation-min.js&2.6.0/build/container/container_core-min.js&2.6.0/build/menu/menu-min.js"></script>
+<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/2.6.0/build/fonts/fonts-min.css"
/>
+<link rel="stylesheet" type="text/css"
+href="http://yui.yahooapis.com/2.6.0/build/container/assets/skins/sam/container.css" />
+
+<script type="text/javascript" src="http://yui.yahooapis.com/2.6.0/build/yahoo-dom-event/yahoo-dom-event.js"></script>
+<script type="text/javascript" 
+src="http://yui.yahooapis.com/2.6.0/build/container/container-min.js"></script>
+<style type="text/css">
+body {
+		margin:0;
+		padding:0;
+		text-align:left;
+	}
+	h1 {
+		font-size:20px;
+		font-weight:bold;
+	}
+.yui-overlay { 
+		position:fixed;
+	  	background: #ffffff;
+	  	z-index: 112;
+	  	color:#000000;
+	  	border: 4px solid #525252;
+	  	text-align:left;
+	  	top: 50%;
+	  	left: 50%;
+	}
+</style>
+<script type="text/javascript">
+YAHOO.util.Event.onContentReady("myMenu", function () {
+
+
+                var oClones = this;
+              
+    
+                function deleteMedia(p_oLI) {
+				
+				 var oUL =	YAHOO.util.Dom.getAncestorByTagName(p_oLI, "LI");
+				
+				
+				 var myparent = oUL.parentNode;
+				 
+				
+		var hidden_mediaFileId = document.getElementById("mediafileidentity");
+		var hidden_mediaFileId_value = hidden_mediaFileId.value;
+        myparent.removeChild(oUL);
+		document.mediaFileSearchForm.mediaFileId.value=hidden_mediaFileId_value;
+		document.mediaFileSearchForm.action='<s:url action="mediaFileSearch!delete" />';
+		document.mediaFileSearchForm.submit();
+    
+                                  
+  }
+                           
+    
+                function createPost() {
+                 
+                
+                }
+                
+    
+                function includeMedia() {
+		 var hidden_mediaFileId = document.getElementById("mediafileidentity");
+		 var hidden_mediaFileId_value = hidden_mediaFileId.value;
+		 document.mediaFileSearchForm.mediaFileId.value=hidden_mediaFileId_value;
+         document.mediaFileSearchForm.action='<s:url action="mediaFileSearch!includeInGallery"
/>';
+         document.mediaFileSearchForm.submit();
+                
+                }
+                   
+              
+                
+                function onEweContextMenuClick(p_sType, p_aArgs) {
+    
+                    /*
+                         The second item in the arguments array (p_aArgs) 
+                         passed back to the "click" event handler is the 
+                         MenuItem instance that was the target of the 
+                         "click" event.
+                    */
+
+                    var oItem = p_aArgs[1], // The MenuItem that was clicked
+                    	oTarget = this.contextEventTarget,
+                        oLI;
+
+
+                    if (oItem) {
+
+					oLI = oTarget.className == "contextMenu" ? 
+								oTarget : YAHOO.util.Dom.getAncestorByClassName(oTarget, "contextMenu");
+
+						
+                        switch (oItem.index) {
+                        
+                            case 0:     // delete
+        
+                                deleteMedia(oLI);
+                            
+                            break;
+        
+        
+                            case 1:     // create post
+        
+                                createPost();
+        
+                            break;
+                            
+        
+                            case 2:     // include in gallery
+        
+                                includeMedia();
+        
+                            break;                    
+                        
+                        }
+                    
+                    }
+                
+                }
+
+
+                /*
+                     Array of text labels for the MenuItem instances to be
+                     added to the ContextMenu instanc.
+                */
+
+                var aMenuItems = ["Delete", "Create Post", "Include in Gallery" ]; 
+
+
+                /*
+					Instantiate a ContextMenu:  The first argument passed to the constructor
+					is the id for the Menu element to be created, the second is an 
+					object literal of configuration properties.
+                */
+
+                var oEweContextMenu = new YAHOO.widget.ContextMenu(
+                                            "ewecontextmenu", 
+                                            {
+                                                trigger: oClones.getElementsByClassName("contextMenu"),
+                                                itemdata: aMenuItems,
+                                                lazyload: true                          
         
+                                            } 
+                                        );
+
+
+                // "render" event handler for the ewe context menu
+
+                function onContextMenuRender(p_sType, p_aArgs) {
+    
+                 //  Add a "click" event handler to the ewe context menu
+    
+                    this.subscribe("click", onEweContextMenuClick);
+                
+                }
+
+
+                // Add a "render" event handler to the ewe context menu
+
+                oEweContextMenu.subscribe("render", onContextMenuRender);
+
+
+            });
+YAHOO.example = function() {
+			var $D = YAHOO.util.Dom;
+			var $E = YAHOO.util.Event;
+			return {
+				init : function() {
+					var overlay_img = new YAHOO.widget.Overlay("overlay_img", { fixedcenter:true, 
+																			visible:false,
+																			width:"577px",height:"487px"
+																		   });
+					overlay_img.render();
+					var overlay = document.createElement('div');
+					overlay.id = 'overlay';
+		
+					// Assign 100% height and width
+					overlay.style.width = '100%';
+					overlay.style.height = '100%';
+					
+                    document.getElementsByTagName('body')[0].appendChild(overlay);	
+					overlay.style.display = 'none';
+			}
+			};
+		
+		}();
+
+		YAHOO.util.Event.addListener(window, "load", YAHOO.example.init);
+
+</script>
+
+
 <%-- JavaScript for media file search page--%>
 <script type="text/javascript">
 <!--
@@ -65,6 +258,37 @@
     document.mediaFileSearchForm["bean.pageNum"].value = parseInt(document.mediaFileSearchForm["bean.pageNum"].value)
-  1;
     document.mediaFileSearchForm.submit();
 }
+function onClose()
+{
+	document.getElementById('overlay').style.display = 'none';
+	document.getElementById('overlay_img').style.visibility = 'hidden';	
+}
+function onClickEdit(mediaFileId)
+{
+	
+	document.getElementById("overlay_img").style.visibility = "visible"; 
+	document.getElementById('overlay').style.display = 'block';
+	
+		var frame = document.createElement('iframe');
+				    frame.setAttribute("id","myframe");
+				    frame.setAttribute("frameborder","no");
+				    frame.setAttribute("scrolling","auto");
+
+				    frame.setAttribute('src','<s:url action="mediaFileEdit"><s:param name="weblog"
value="%{actionWeblog.handle}" /></s:url>&mediaFileId='+mediaFileId );
+				    frame.style.width="100%";
+			    	frame.style.height="100%";
+					//var mystring="<s:url action='mediaFileEdit'><s:param name='weblog' value='%{actionWeblog.handle}'
/></s:url>&mediaFileId="+mediaFileId;
+					
+					//var innerstring = "<iframe id='myframe' frameborder='no' scrolling='auto' src="+mystring+"
width='100%' height='100%'></iframe>";
+					
+
+	document.getElementById("overlay_img").innerHTML = '<div ><a href="#" class="container-close"
onclick="onClose()"></a></div>';
+	
+    document.getElementById("overlay_img").appendChild(frame);
+
+
+}
+
 -->
 </script>
 
@@ -75,7 +299,7 @@
 	<s:form id="mediaFileSearchForm" name="mediaFileSearchForm" action="mediaFileSearch!search"
onsubmit="editorCleanup()">
     <s:hidden name="weblog" />
     <input type="hidden" name="mediaFileId" value="" />
-    <table class="mediaFileSearchTable" cellpadding="0" cellspacing="0" width="100%">
+    <table class="mediaFileSearchTable" cellpadding="0" cellspacing="3" width="100%">
         <tr>
             <td>
                 <label for="name">Name</label>
@@ -94,12 +318,12 @@
             <td>
                 <label for="size">Size</label>
             </td>
-            <td>
+            <td width="80%">
                 <s:select name="bean.sizeFilterType" list="sizeFilterTypes" listKey="key"
listValue="value" />
-                <s:textfield name="bean.size" size="10" maxlength="15" />
+                <s:textfield name="bean.size" size="3" maxlength="10" />
                 <s:select name="bean.sizeUnit" list="sizeUnits" listKey="key" listValue="value"
/>
             </td>
-            <td>
+            <td width="10%">
                 <label for="tags">Tags</label>
             </td>
             <td>
@@ -115,6 +339,9 @@
             <td>&nbsp;</td>
         </tr>
      </table>
+	 <div id="overlay_img" style="visibility:hidden">
+	
+</div>
 
  <div class="control">
     <span style="padding-left:20px">Sort by:</span>
@@ -132,18 +359,26 @@
     <%-- ================================================================== --%>
     <%-- Title, category, dates and other metadata --%>
 
-    <ul style="margin-top:10px">
+    <ul id = "myMenu" style="margin-top:10px">
 
     <s:iterator id="mediaFile" value="pager.items">
-    <li class="mediaFileSearchResult">
-	<img border="0" src='<s:url value="/roller-ui/rendering/media-resources/%{#mediaFile.id}"
/>' width="120px" alt="mediaFolder.png"/><br/>
-	<input type="checkbox" name="selectedMediaFiles" value="<s:property value="#mediaFile.id"/>"
style="float:left;clear:left"/>
-    <label><s:property value="#mediaFile.name" /></label>
-    <label><s:property value="#mediaFile.path" /></label>
-	<a href='<s:url action="mediaFileEdit"><s:param name="mediaFileId" value="%{#mediaFile.id}"
/><s:param name="weblog" value="%{actionWeblog.handle}" /></s:url>'>Edit</a>
-	<a href="#" onclick="onDelete('<s:property value="#mediaFile.id" />')">Delete</a>
-	<a href="#" onclick="onIncludeInGallery('<s:property value="#mediaFile.id" />')">Include
in gallery</a>
-    </li>
+    <li class="align-images">
+	<img style="border:1px solid #000000;margin:5px;" border="0" src='<s:url value="/roller-ui/rendering/media-resources/%{#mediaFile.id}"
/>' width="120px" height="100px" alt="mediaFolder.png"/><br/>
+	 <div style="clear:left;width:130px;margin-left:5px;"><label><s:property

+value="#mediaFile.name" /></label>
+<div style="padding-top:5px;">   <!--  one -->
+    <input style="float:left;" type="checkbox" name="selectedMediaFiles" value="<s:property

+value="#mediaFile.id"/>"/>
+	<INPUT TYPE="hidden" id="mediafileidentity" value="<s:property value='#mediaFile.id'/>">
+	
+<div style="float:right;">
+   <a  href="#" id="<s:property value='#mediaFile.id'/>" onclick="onClickEdit(this.id)">Edit</a>
+ 
+<a  class="contextMenu" href="#">More...</a>
+</div>
+</div>  <!-- one -->
+	</div>
+	</li>
     </s:iterator>
     </ul>
 
@@ -161,6 +396,7 @@
 
 
 
+
     <%-- ================================================================== --%>
     <%-- Weblog edit or preview --%>
 

Modified: roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileView.jsp
URL: http://svn.apache.org/viewvc/roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileView.jsp?rev=766565&r1=766564&r2=766565&view=diff
==============================================================================
--- roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileView.jsp
(original)
+++ roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/editor/MediaFileView.jsp
Mon Apr 20 03:10:00 2009
@@ -16,22 +16,209 @@
   directory of this distribution.
 --%>
 <%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/combo?2.6.0/build/reset-fonts-grids/reset-fonts-grids.css&2.6.0/build/menu/assets/skins/sam/menu.css">

+<!-- Combo-handled YUI JS files: --> 
+<script type="text/javascript" src="http://yui.yahooapis.com/combo?2.6.0/build/yahoo-dom-event/yahoo-dom-event.js&2.6.0/build/animation/animation-min.js&2.6.0/build/container/container_core-min.js&2.6.0/build/menu/menu-min.js"></script>
+<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/2.6.0/build/fonts/fonts-min.css"
/>
+<link rel="stylesheet" type="text/css"
+href="http://yui.yahooapis.com/2.6.0/build/container/assets/skins/sam/container.css" />
+
+<script type="text/javascript" src="http://yui.yahooapis.com/2.6.0/build/yahoo-dom-event/yahoo-dom-event.js"></script>
+<script type="text/javascript" 
+src="http://yui.yahooapis.com/2.6.0/build/container/container-min.js"></script>
+
+<style>
+/*margin and padding on body element
+  can introduce errors in determining
+  element position and are not recommended;
+  we turn them off as a foundation for YUI
+  CSS treatments. */
+	body {
+		margin:0;
+		padding:0;
+		text-align:left;
+	}
+	h1 {
+		font-size:20px;
+		font-weight:bold;
+	}
+	
+	.yui-overlay { 
+		position:fixed;
+	  	background: #ffffff;
+	  	z-index: 112;
+	  	color:#000000;
+	  	border: 4px solid #525252;
+	  	text-align:left;
+	  	top: 50%;
+	  	left: 50%;
+	}
+	
+	
+</style>
+<script type="text/javascript">
+YAHOO.util.Event.onContentReady("myMenu", function () {
+
+
+                var oClones = this;
+              
+    
+                function deleteMedia(p_oLI) {
+				
+				 var oUL =	YAHOO.util.Dom.getAncestorByTagName(p_oLI, "LI");
+				
+				
+				 var myparent = oUL.parentNode;
+				 
+				
+		var hidden_mediaFileId = document.getElementById("mediafileidentity");
+		var hidden_mediaFileId_value = hidden_mediaFileId.value;
+        myparent.removeChild(oUL);
+		document.mediaFileViewForm.mediaFileId.value=hidden_mediaFileId_value;
+		document.mediaFileViewForm.action='<s:url action="mediaFileView!delete" />';
+		document.mediaFileViewForm.submit();
+    
+                                  
+  }
+                           
+    
+                function createPost() {
+                 
+                
+                }
+                
+    
+                function includeMedia() {
+		 var hidden_mediaFileId = document.getElementById("mediafileidentity");
+		 var hidden_mediaFileId_value = hidden_mediaFileId.value;
+		 document.mediaFileViewForm.mediaFileId.value=hidden_mediaFileId_value;
+         document.mediaFileViewForm.action='<s:url action="mediaFileView!includeInGallery"
/>';
+         document.mediaFileViewForm.submit();
+                
+                }
+                   
+              
+                
+                function onEweContextMenuClick(p_sType, p_aArgs) {
+    
+                    /*
+                         The second item in the arguments array (p_aArgs) 
+                         passed back to the "click" event handler is the 
+                         MenuItem instance that was the target of the 
+                         "click" event.
+                    */
+
+                    var oItem = p_aArgs[1], // The MenuItem that was clicked
+                    	oTarget = this.contextEventTarget,
+                        oLI;
+
+
+                    if (oItem) {
+
+					oLI = oTarget.className == "contextMenu" ? 
+								oTarget : YAHOO.util.Dom.getAncestorByClassName(oTarget, "contextMenu");
+
+						
+                        switch (oItem.index) {
+                        
+                            case 0:     // delete
+        
+                                deleteMedia(oLI);
+                            
+                            break;
+        
+        
+                            case 1:     // create post
+        
+                                createPost();
+        
+                            break;
+                            
+        
+                            case 2:     // include in gallery
+        
+                                includeMedia();
+        
+                            break;                    
+                        
+                        }
+                    
+                    }
+                
+                }
+
+
+                /*
+                     Array of text labels for the MenuItem instances to be
+                     added to the ContextMenu instanc.
+                */
+
+                var aMenuItems = ["Delete", "Create Post", "Include in Gallery" ]; 
+
+
+                /*
+					Instantiate a ContextMenu:  The first argument passed to the constructor
+					is the id for the Menu element to be created, the second is an 
+					object literal of configuration properties.
+                */
+
+                var oEweContextMenu = new YAHOO.widget.ContextMenu(
+                                            "ewecontextmenu", 
+                                            {
+                                                trigger: oClones.getElementsByClassName("contextMenu"),
+                                                itemdata: aMenuItems,
+                                                lazyload: true                          
         
+                                            } 
+                                        );
+
+
+                // "render" event handler for the ewe context menu
+
+                function onContextMenuRender(p_sType, p_aArgs) {
+    
+                 //  Add a "click" event handler to the ewe context menu
+    
+                    this.subscribe("click", onEweContextMenuClick);
+                
+                }
+
+
+                // Add a "render" event handler to the ewe context menu
+
+                oEweContextMenu.subscribe("render", onContextMenuRender);
+
+
+            });
+
+			YAHOO.example = function() {
+			var $D = YAHOO.util.Dom;
+			var $E = YAHOO.util.Event;
+			return {
+				init : function() {
+					var overlay_img = new YAHOO.widget.Overlay("overlay_img", { fixedcenter:true, 
+																			visible:false,
+																			width:"569px",height:"465px"
+																		   });
+					overlay_img.render();
+					var overlay = document.createElement('div');
+					overlay.id = 'overlay';
+		
+					// Assign 100% height and width
+					overlay.style.width = '100%';
+					overlay.style.height = '100%';
+					
+                    document.getElementsByTagName('body')[0].appendChild(overlay);	
+					overlay.style.display = 'none';
+			}
+			};
+		
+		}();
 
+		YAHOO.util.Event.addListener(window, "load", YAHOO.example.init);
+
+</script>
 <script type="text/javascript">
 <!--
-function onDelete(id)
-{
-    document.mediaFileViewForm.mediaFileId.value=id;
-    document.mediaFileViewForm.action='<s:url action="mediaFileView!delete" />';
-    document.mediaFileViewForm.submit();
-}
-
-function onIncludeInGallery(id)
-{
-    document.mediaFileViewForm.mediaFileId.value=id;
-    document.mediaFileViewForm.action='<s:url action="mediaFileView!includeInGallery"
/>';
-    document.mediaFileViewForm.submit();
-}
 
 function onSelectDirectory(id) {
     document.mediaFileViewForm.directoryId.value = id;
@@ -40,14 +227,16 @@
 
 function onCreateDirectory()
 {
-    document.mediaFileViewForm.action='<s:url action="mediaFileView!createNewDirectory"
/>';
+    document.mediaFileViewForm.action='<s:url 
+action="mediaFileView!createNewDirectory" />';
     document.mediaFileViewForm.submit();
 }
 
 function onDeleteSelected()
 {
     if ( confirm("<s:text name='mediaFile.delete.confirm' />") ) {
-        document.mediaFileViewForm.action='<s:url action="mediaFileView!deleteSelected"
/>';
+        document.mediaFileViewForm.action='<s:url 
+action="mediaFileView!deleteSelected" />';
         document.mediaFileViewForm.submit();
     }
 }
@@ -55,10 +244,41 @@
 function onMoveSelected()
 {
     if ( confirm("<s:text name='mediaFile.move.confirm' />") ) {
-        document.mediaFileViewForm.action='<s:url action="mediaFileView!moveSelected"
/>';
+        document.mediaFileViewForm.action='<s:url 
+action="mediaFileView!moveSelected" />';
         document.mediaFileViewForm.submit();
     }
 }
+function onClose()
+{
+	document.getElementById('overlay').style.display = 'none';
+	document.getElementById('overlay_img').style.visibility = 'hidden';	
+}
+function onClickEdit(mediaFileId)
+{
+	
+	document.getElementById("overlay_img").style.visibility = "visible"; 
+	document.getElementById('overlay').style.display = 'block';
+	
+		var frame = document.createElement('iframe');
+				    frame.setAttribute("id","myframe");
+				    frame.setAttribute("frameborder","no");
+				    frame.setAttribute("scrolling","auto");
+
+				    frame.setAttribute('src','<s:url action="mediaFileEdit"><s:param name="weblog"
value="%{actionWeblog.handle}" /></s:url>&mediaFileId='+mediaFileId );
+				    frame.style.width="100%";
+			    	frame.style.height="100%";
+					var mystring="<s:url action='mediaFileEdit'><s:param name='weblog' value='%{actionWeblog.handle}'
/></s:url>&mediaFileId="+mediaFileId;
+					
+					var innerstring = "<iframe id='myframe' frameborder='no' scrolling='auto' src="+mystring+"
width='100%' height='100%'></iframe>";
+					
+
+	document.getElementById("overlay_img").innerHTML = '<div ><a href="#" class="container-close"
onclick="onClose()"></a></div>';
+	
+    document.getElementById("overlay_img").appendChild(frame);
+
+
+}
 -->
 </script>
 
@@ -72,18 +292,22 @@
         <s:param name="directoryPath" value="#directory.key" />
         <s:param name="weblog" value="%{actionWeblog.handle}" />
     </s:url>
-    <s:a href="%{getDirectoryByPathUrl}"><s:property value="#directory.value" /></s:a>
/
+    <s:a href="%{getDirectoryByPathUrl}"><s:property value="#directory.value" 
+/></s:a> /
 </s:iterator>
 </p>
 
-<s:form id="mediaFileViewForm" name="mediaFileViewForm" action="mediaFileView" onsubmit="editorCleanup()">
+<s:form id="mediaFileViewForm" name="mediaFileViewForm" action="mediaFileView" 
+onsubmit="editorCleanup()">
 <s:url id="mediaFileHierarchicalViewURL" action="mediaFileHierarchicalView">
     <s:param name="weblog" value="%{actionWeblog.handle}" />
 </s:url>
-<p><span style="font-weight:bold">Tabular</span> | <s:a href="%{mediaFileHierarchicalViewURL}">Hierarchical</s:a></p>
+<p><span style="font-weight:bold">Tabular</span> | <s:a 
+href="%{mediaFileHierarchicalViewURL}">Hierarchical</s:a></p>
  <div class="control">
     <span style="padding-left:20px">Sort by:</span>
-    <s:select name="sortBy" list="sortOptions" listKey="key" listValue="value" onchange="document.mediaFileViewForm.submit();"
/>
+    <s:select name="sortBy" list="sortOptions" listKey="key" listValue="value" 
+onchange="document.mediaFileViewForm.submit();" />
 	</span>
  </div>
 
@@ -94,41 +318,69 @@
     <%-- ================================================================== --%>
     <%-- Title, category, dates and other metadata --%>
 
-    <div style="margin-top:10px">
-	<ul>
+    <div  width="720px" height="500px">
+	<ul id = "myMenu">
 
     <s:iterator id="directory" value="childDirectories">
-	<li>
-	<img border="0" src='<s:url value="/images/folder.png"/>' style="cursor:pointer;width:120px;height:100px"
alt="mediaFolder.png" onclick="onSelectDirectory('<s:property value="#directory.id"/>')"/>
-    <label><s:property value="#directory.name" /></label>
+	<li class="align-images" >
+	<img  border="0" src='<s:url value="/images/folder.png"/>' 
+class="dir-image" alt="mediaFolder.png" 
+onclick="onSelectDirectory('<s:property value="#directory.id"/>')"/>
+    <div style="clear:left;width:130px;margin-left:10px;"><label><s:property

+value="#directory.name" /></label>
+	<input type="checkbox" name="selectedMediaFiles" value="<s:property 
+value="#directory.id"/>"/>
+	</div>
 	</li>
     </s:iterator>
 
+
     <s:iterator id="mediaFile" value="childFiles">
-	<li>
+	<li class="align-images" >
 	<s:if test="#mediaFile.imageFile">
-    <s:url id="mediaFileURL" value="/roller-ui/rendering/media-resources/%{#mediaFile.id}"></s:url>
+    <s:url id="mediaFileURL" 
+value="/roller-ui/rendering/media-resources/%{#mediaFile.id}"></s:url>
 	</s:if>
 	<s:else>
     <s:url id="mediaFileURL" value="/images/page.png"></s:url>
 	</s:else>
-	<img border="0" src='<s:property value="%{mediaFileURL}" />' width="120px" />
-    <label><s:property value="#mediaFile.name" /></label>
-    <input type="checkbox" name="selectedMediaFiles" value="<s:property value="#mediaFile.id"/>"
style="float:left;clear:left"/>
-    <a href='<s:url action="mediaFileEdit"><s:param name="mediaFileId" value="%{#mediaFile.id}"
/><s:param name="weblog" value="%{actionWeblog.handle}" /></s:url>'>Edit</a>
-	<a href="#" onclick="onDelete('<s:property value="#mediaFile.id" />')">Delete</a>
-	<a href="#" onclick="onIncludeInGallery('<s:property value="#mediaFile.id" />')">Include
in gallery</a>
+	<img style="border:1px solid #000000;margin:5px;" border="0" 
+src='<s:property value="%{mediaFileURL}" />' width="120px" height="100px"/>
+    <div style="clear:left;width:130px;margin-left:5px;"><label><s:property

+value="#mediaFile.name" /></label>
+<div style="padding-top:5px;">   <!--  one -->
+    <input style="float:left;" type="checkbox" name="selectedMediaFiles" value="<s:property

+value="#mediaFile.id"/>"/>
+	<INPUT TYPE="hidden" id="mediafileidentity" value="<s:property value='#mediaFile.id'/>">
+	<%-- <a href='<s:url action="mediaFileEdit"><s:param name="mediaFileId" 
+value="%{#mediaFile.id}" /><s:param name="weblog" value="%{actionWeblog.handle}" 
+/></s:url>'>Edit</a>--%>
+	<%--<a href="#" id="show">Edit</a>--%>
+<%-- <INPUT TYPE="hidden" NAME="mediafileidentity" value="%{#mediaFile.id}">--%>
+
+<%--  <INPUT TYPE="hidden" NAME="mediahandle" value="%{actionWeblog.handle}">--%>
+<div style="float:right;">
+   <a  href="#" id="<s:property value='#mediaFile.id'/>" onclick="onClickEdit(this.id)">Edit</a>
+ <!--  <div id="<s:property value='#mediaFile.id'/>abc" ><a href="#" id="<s:property
value='#mediaFile.id'/>abcabc" onclick="onRightClickEdit(this.id)">More...</a></div>-->
+<a  class="contextMenu" href="#">More...</a>
+</div>
+</div>  <!-- one -->
+	</div>
 	</li>
     </s:iterator>
 
 </ul>
 </div>
 
-<div style="margin-left:320px">
-New Directory:
-<input type="text" name="newDirectoryName" size="30" />
+<div style="margin-left:320px;clear:left;">
+New Directory Name:
+<input style="margin-top:5px;margin-bottom:5px;" type="text" 
+name="newDirectoryName" size="30" />
 <input type="button" value="Create" onclick="onCreateDirectory()" />
 </div>
+<div id="overlay_img" style="visibility:hidden">
+	
+</div>
 
 
 
@@ -156,10 +408,13 @@
 
 	<br/>
 	<div class="control">
-     <input type="button" style="padding-left:20px" value="Delete Selected" onclick="onDeleteSelected()"
/>
-     <input type="button" style="padding-left:20px" value="Move Selected" onclick="onMoveSelected()"
/>
+     <input type="button" style="padding-left:20px" value="Delete Selected" 
+onclick="onDeleteSelected()" />
+     <input type="button" style="padding-left:20px" value="Move Selected" 
+onclick="onMoveSelected()" />
 	 <span style="padding-left:20px">
-         <s:select name="selectedDirectory" list="allDirectories" listKey="id" listValue="path"
/>
+         <s:select name="selectedDirectory" list="allDirectories" listKey="id" 
+listValue="path" />
 	 </span>
     </div>
 

Added: roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/tiles/tiles-popuppage.jsp
URL: http://svn.apache.org/viewvc/roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/tiles/tiles-popuppage.jsp?rev=766565&view=auto
==============================================================================
--- roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/tiles/tiles-popuppage.jsp
(added)
+++ roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/jsps/tiles/tiles-popuppage.jsp
Mon Apr 20 03:10:00 2009
@@ -0,0 +1,56 @@
+<%--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  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.  For additional information regarding
+  copyright in this work, please see the NOTICE file in the top level
+  directory of this distribution.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+        <tiles:insertAttribute name="head" />    
+        <style type="text/css">
+            <tiles:insertAttribute name="styles" />
+        </style>
+    </head>
+    
+    <body>
+        
+        
+        
+        <div id="wrapper"> 
+            <div id="leftcontent_wrap">
+                <div id="leftcontent"> 
+                </div>
+            </div>
+            
+            <div id="centercontent_wrap">
+                <div id="centercontent">
+                    <tiles:insertAttribute name="messages" />
+                    <tiles:insertAttribute name="content" />    
+                </div>
+            </div>
+            
+            <div id="rightcontent_wrap">
+                <div id="rightcontent"> 
+                </div>
+            </div>
+        </div>
+        
+       
+        
+       
+    </body>
+</html>

Modified: roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/tiles.xml
URL: http://svn.apache.org/viewvc/roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/tiles.xml?rev=766565&r1=766564&r2=766565&view=diff
==============================================================================
--- roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/tiles.xml (original)
+++ roller/branches/roller_mediablogging/apps/weblogger/web/WEB-INF/tiles.xml Mon Apr 20 03:10:00
2009
@@ -68,6 +68,17 @@
         <put-attribute name="footer"       value="/WEB-INF/jsps/tiles/footer.jsp" />
     </definition>
     
+	<definition name=".tiles-popuppage" template="/WEB-INF/jsps/tiles/tiles-popuppage.jsp">
+       
+        <put-attribute name="messages"     value="/WEB-INF/jsps/tiles/messages.jsp" />
+        <put-attribute name="content"      value="${content}" />
+       
+    </definition>
+	<definition name=".tiles-popuppage-only-content" template="/WEB-INF/jsps/tiles/tiles-popuppage.jsp">
+       
+        <put-attribute name="content"      value="${content}" />
+       
+    </definition>
     
     <!-- error pages -->
     <definition name=".denied" extends=".tiles-errorpage" >
@@ -209,13 +220,32 @@
         <put-attribute name="styles" value="/WEB-INF/jsps/tiles/css-sidebar.jsp" />
     </definition>
 
-    <definition name=".MediaFileEdit" extends=".tiles-tabbedpage" >
+    <definition name=".MediaFileEdit" extends=".tiles-popuppage" >
         <put-attribute name="head" value="/WEB-INF/jsps/tiles/head-ajax.jsp" />
         <put-attribute name="content" value="/WEB-INF/jsps/editor/MediaFileEdit.jsp" />
-        <put-attribute name="sidebar" value="/WEB-INF/jsps/editor/MediaFileSidebar.jsp"
/>
-        <put-attribute name="styles" value="/WEB-INF/jsps/tiles/css-sidebar.jsp" />
     </definition>
 
+	<definition name=".MediaFileAddExternalInclude" extends=".tiles-popuppage-only-content"
>
+        <put-attribute name="head" value="/WEB-INF/jsps/tiles/head-ajax.jsp" />
+        <put-attribute name="content" value="/WEB-INF/jsps/editor/MediaFileAddExternalInclude.jsp"
/>
+    </definition>
+
+	<definition name=".MediaFileSearchInclude" extends=".tiles-popuppage" >
+        <put-attribute name="head" value="/WEB-INF/jsps/tiles/head-ajax.jsp" />
+        <put-attribute name="content" value="/WEB-INF/jsps/editor/MediaFileSearch.jsp"
/>
+    </definition>
+
+    <definition name=".MediaFileAddInclude" extends=".tiles-popuppage" >
+        <put-attribute name="head" value="/WEB-INF/jsps/tiles/head-ajax.jsp" />
+        <put-attribute name="content" value="/WEB-INF/jsps/editor/MediaFileAdd.jsp" />
+    </definition>
+
+	<definition name=".MediaFileAddSuccessInclude" extends=".tiles-popuppage" >
+        <put-attribute name="head" value="/WEB-INF/jsps/tiles/head-ajax.jsp" />
+        <put-attribute name="content" value="/WEB-INF/jsps/editor/MediaFileAddSuccess.jsp"
/>
+    </definition>
+
+
     <definition name=".MediaFileView" extends=".tiles-tabbedpage" >
         <put-attribute name="head" value="/WEB-INF/jsps/tiles/head-ajax.jsp" />
         <put-attribute name="content" value="/WEB-INF/jsps/editor/MediaFileView.jsp" />

Modified: roller/branches/roller_mediablogging/apps/weblogger/web/roller-ui/styles/roller.css
URL: http://svn.apache.org/viewvc/roller/branches/roller_mediablogging/apps/weblogger/web/roller-ui/styles/roller.css?rev=766565&r1=766564&r2=766565&view=diff
==============================================================================
--- roller/branches/roller_mediablogging/apps/weblogger/web/roller-ui/styles/roller.css (original)
+++ roller/branches/roller_mediablogging/apps/weblogger/web/roller-ui/styles/roller.css Mon
Apr 20 03:10:00 2009
@@ -755,3 +755,73 @@
   margin-left: auto;
   margin-right: auto;
 }
+
+/* ----------------------------------------------------------------------
+Media File styles 
+---------------------------------------------------------------------- */
+/*** for overlay ***/
+.yui-overlay span, #close {
+		float: left;
+	}
+	
+	#close { float: right; }
+	
+	#overlay {
+		position: fixed;
+		z-index:100;
+		top: 0px;
+		left: 0px;
+		height:100%;
+		width:100%;
+		display: none;
+		background-color:#000;
+		filter:alpha(opacity=25);
+		-moz-opacity: 0.25;
+		opacity: 0.25;	
+	}
+	
+	.container-close {
+		position:absolute;
+		top:2px;
+		right:4px;
+		z-index:6;
+		height:12px;
+		width:12px;
+		margin:0px;
+		padding:0px;
+		background:url(http://yui.yahooapis.com/2.6.0/build/container/assets/close12_1.gif) no-repeat;
+		cursor:pointer;	
+	}
+
+	.align-images {
+		display:inline;
+		float:left;
+		margin:5px;
+		list-style-type:none;
+	}
+
+	.dir-image {
+    	cursor:pointer;
+		width:120px;
+		height:100px;
+	}
+
+	/*** For context menu ***/
+
+	#menu h1 {
+		line-height:120%;
+		margin:15px 0px;
+	}
+	#ewecontextmenu {
+		background-color:#CECECE;
+		border:1px solid #808080;
+		line-height:1.5;
+	}
+
+	#ewecontextmenu li a {
+		text-decoration:none;
+		color: #000000;
+	}
+
+	#ewecontextmenu .yuimenuitem-selected{background-color:#36404C;}
+	#ewecontextmenu .yuimenuitem-selected a {color:#ffffff;}



Mime
View raw message