[pLog-svn] r6151 - in plog/trunk: class/action/admin class/view/admin templates/admin

mark at devel.lifetype.net mark at devel.lifetype.net
Tue Jan 8 07:17:06 EST 2008


Author: mark
Date: 2008-01-08 07:17:06 -0500 (Tue, 08 Jan 2008)
New Revision: 6151

Added:
   plog/trunk/templates/admin/editinboxprivatemessages_table.template
   plog/trunk/templates/admin/editoutboxprivatemessages_table.template
   plog/trunk/templates/admin/newprivatemessage_form.template
   plog/trunk/templates/admin/readinboxprivatemessage_form.template
   plog/trunk/templates/admin/readoutboxprivatemessage_form.template
   plog/trunk/templates/admin/replyprivatemessage_form.template
Modified:
   plog/trunk/class/action/admin/admindeleteinboxprivatemessageaction.class.php
   plog/trunk/class/action/admin/admindeleteoutboxprivatemessageaction.class.php
   plog/trunk/class/action/admin/admineditinboxprivatemessagesaction.class.php
   plog/trunk/class/action/admin/admineditoutboxprivatemessagesaction.class.php
   plog/trunk/class/action/admin/adminnewprivatemessageaction.class.php
   plog/trunk/class/action/admin/adminreadinboxprivatemessageaction.class.php
   plog/trunk/class/action/admin/adminreadoutboxprivatemessageaction.class.php
   plog/trunk/class/action/admin/adminreplyprivatemessageaction.class.php
   plog/trunk/class/action/admin/adminsendprivatemessageaction.class.php
   plog/trunk/class/action/admin/adminsendreplyprivatemessageaction.class.php
   plog/trunk/class/view/admin/admininboxprivatemessageslistview.class.php
   plog/trunk/class/view/admin/adminlinkcategorieslistview.class.php
   plog/trunk/class/view/admin/adminoutboxprivatemessageslistview.class.php
   plog/trunk/templates/admin/editinboxprivatemessages.template
   plog/trunk/templates/admin/editlinks.template
   plog/trunk/templates/admin/editoutboxprivatemessages.template
   plog/trunk/templates/admin/newprivatemessage.template
   plog/trunk/templates/admin/readinboxprivatemessage.template
   plog/trunk/templates/admin/readoutboxprivatemessage.template
   plog/trunk/templates/admin/replyprivatemessage.template
Log:
Finally, private message admin panel ajaxlized.

Modified: plog/trunk/class/action/admin/admindeleteinboxprivatemessageaction.class.php
===================================================================
--- plog/trunk/class/action/admin/admindeleteinboxprivatemessageaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/admindeleteinboxprivatemessageaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,8 +1,4 @@
 <?php
-	
-	
-	
-	
 
     /**
      * \ingroup Action
@@ -42,9 +38,14 @@
 		 */
 		function _deleteInboxPrivateMessages()
 		{
+			if( $this->_mode == "deleteInboxPrivateMessage" ) {
+				$this->_messageIds = Array();
+				$this->_messageIds[] = $this->_request->getValue( "messageId" );
+			}
+			else
+				$this->_messageIds = $this->_request->getValue( "messageIds" );
 			
 			$privateMessages = new PrivateMessages();
-
 			$errorMessage = "";
 			$successMessage = "";
 			$totalOk = 0;
@@ -72,36 +73,42 @@
 				}
         	}
 
-			// prepare the view and all the information it needs to know
-			$this->_view = new AdminInboxPrivateMessagesListView( $this->_blogInfo );
-			if( $errorMessage != "" )
-				$this->_view->setErrorMessage( $errorMessage );
-			if( $successMessage != "" ) {
-				// and clear the cache to avoid outdated information
+			if( $totalOk > 0 )
 				CacheControl::resetBlogCache( $this->_blogInfo->getId(), false );
-				$this->_view->setSuccessMessage( $successMessage );
-			}
 
-			$this->setCommonData();
-
-			return true;
+			return( Array( "errorMessage" => $errorMessage, "successMessage" => $successMessage ));
 		}
 
         /**
          * Carries out the specified action
          */
-        function perform()
-        {
-			// prepare the parameters.. If there's only one private message id, then add it to
-			// an array.
-			if( $this->_mode == "deleteInboxPrivateMessage" ) {
-				$this->_messageIds = Array();
-				$this->_messageIds[] = $this->_request->getValue( "messageId" );
-			}
-			else
-				$this->_messageIds = $this->_request->getValue( "messageIds" );
+		function perform()
+		{
+			$results = $this->_deleteInboxPrivateMessages();
 
-            return $this->_deleteInboxPrivateMessages();
-        }
+            $this->_view = new AdminInboxPrivateMessagesListView( $this->_blogInfo );
+            if( $results["errorMessage"] != "" ) $this->_view->setErrorMessage( $results["errorMessage"] );
+			if( $results["successMessage"] != "" ) $this->_view->setSuccessMessage( $results["successMessage"] );
+            $this->setCommonData();
+
+            // better to return true if everything fine
+            return true;
+		}
+
+		/**
+		 * Ajax-specific behaviour
+		 */
+		function performAjax()
+		{
+			$results = $this->_deleteInboxPrivateMessages();
+
+
+            $this->_view = new AdminAjaxView( $this->_blogInfo );
+			$this->_view->setMessage( $results );
+			$this->_view->setSuccess( true );
+
+            // better to return true if everything fine
+            return true;
+		}
     }
 ?>

Modified: plog/trunk/class/action/admin/admindeleteoutboxprivatemessageaction.class.php
===================================================================
--- plog/trunk/class/action/admin/admindeleteoutboxprivatemessageaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/admindeleteoutboxprivatemessageaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,8 +1,4 @@
 <?php
-	
-	
-	
-	
 
     /**
      * \ingroup Action
@@ -42,9 +38,14 @@
 		 */
 		function _deleteOutboxPrivateMessages()
 		{
+			if( $this->_mode == "deleteOutboxPrivateMessage" ) {
+				$this->_messageIds = Array();
+				$this->_messageIds[] = $this->_request->getValue( "messageId" );
+			}
+			else
+				$this->_messageIds = $this->_request->getValue( "messageIds" );
 			
 			$privateMessages = new PrivateMessages();
-
 			$errorMessage = "";
 			$successMessage = "";
 			$totalOk = 0;
@@ -72,36 +73,42 @@
 				}
         	}
 
-			// prepare the view and all the information it needs to know
-			$this->_view = new AdminOutboxPrivateMessagesListView( $this->_blogInfo );
-			if( $errorMessage != "" )
-				$this->_view->setErrorMessage( $errorMessage );
-			if( $successMessage != "" ) {
-				// and clear the cache to avoid outdated information
+			if( $totalOk > 0 )
 				CacheControl::resetBlogCache( $this->_blogInfo->getId(), false );
-				$this->_view->setSuccessMessage( $successMessage );
-			}
 
-			$this->setCommonData();
-
-			return true;
+			return( Array( "errorMessage" => $errorMessage, "successMessage" => $successMessage ));
 		}
 
         /**
          * Carries out the specified action
          */
-        function perform()
-        {
-			// prepare the parameters.. If there's only one private message id, then add it to
-			// an array.
-			if( $this->_mode == "deleteOutboxPrivateMessage" ) {
-				$this->_messageIds = Array();
-				$this->_messageIds[] = $this->_request->getValue( "messageId" );
-			}
-			else
-				$this->_messageIds = $this->_request->getValue( "messageIds" );
+		function perform()
+		{
+			$results = $this->_deleteOutboxPrivateMessages();
 
-            return $this->_deleteOutboxPrivateMessages();
-        }
+            $this->_view = new AdminOutboxPrivateMessagesListView( $this->_blogInfo );
+            if( $results["errorMessage"] != "" ) $this->_view->setErrorMessage( $results["errorMessage"] );
+			if( $results["successMessage"] != "" ) $this->_view->setSuccessMessage( $results["successMessage"] );
+            $this->setCommonData();
+
+            // better to return true if everything fine
+            return true;
+		}
+
+		/**
+		 * Ajax-specific behaviour
+		 */
+		function performAjax()
+		{
+			$results = $this->_deleteOutboxPrivateMessages();
+
+
+            $this->_view = new AdminAjaxView( $this->_blogInfo );
+			$this->_view->setMessage( $results );
+			$this->_view->setSuccess( true );
+
+            // better to return true if everything fine
+            return true;
+		}
     }
-?>
+?>
\ No newline at end of file

Modified: plog/trunk/class/action/admin/admineditinboxprivatemessagesaction.class.php
===================================================================
--- plog/trunk/class/action/admin/admineditinboxprivatemessagesaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/admineditinboxprivatemessagesaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,8 +1,5 @@
 <?php
 
-	
-    
-
     /**
      * \ingroup Action
      * @private
@@ -33,5 +30,36 @@
             // better to return true if everything fine
             return true;
         }
+
+		/**
+		 * Ajax-specific behaviour
+		 */
+		function performAjax()
+		{
+			if( $this->_request->getOutput() == Request::REQUEST_OUTPUT_JSON ) {
+				if( $this->_request->loadAllData()) {
+					// in this case, we load all data
+					
+					$privateMessageBoxes = new PrivateMessageBoxes();
+		            $privateMessageInbox = $privateMessageBoxes->getPrivateMessageInboxFromUserId( $this->_userInfo->getId() );
+		            $inboxPrivateMessages = $privateMessageInbox->getPrivateMessagesFromBox( $searchTerms );
+					
+					$this->_view = new AdminAjaxView( $this->_blogInfo );
+					$this->_view->setSuccess( true );
+					$this->_view->setResult( $inboxPrivateMessages );															
+				}
+				else {
+					$searchTerms = $this->_request->getValue( "searchTerms" );				
+					$this->_view = new AjaxViewRenderer( new AdminInboxPrivateMessagesListView( $this->_blogInfo, Array( "searchTerms" => $searchTerms )));
+					$this->_view->setSuccess( true );
+					$this->_view->setResultObject( "privatemessages" );
+				}
+			}
+			else {
+				return( $this->perform());
+			}
+			
+			return( true );
+		}
     }
 ?>
\ No newline at end of file

Modified: plog/trunk/class/action/admin/admineditoutboxprivatemessagesaction.class.php
===================================================================
--- plog/trunk/class/action/admin/admineditoutboxprivatemessagesaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/admineditoutboxprivatemessagesaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,8 +1,5 @@
 <?php
 
-	
-    
-
     /**
      * \ingroup Action
      * @private
@@ -33,5 +30,36 @@
             // better to return true if everything fine
             return true;
         }
+
+		/**
+		 * Ajax-specific behaviour
+		 */
+		function performAjax()
+		{
+			if( $this->_request->getOutput() == Request::REQUEST_OUTPUT_JSON ) {
+				if( $this->_request->loadAllData()) {
+					// in this case, we load all data
+					
+					$privateMessageBoxes = new PrivateMessageBoxes();
+		            $privateMessageOutbox = $privateMessageBoxes->getPrivateMessageOutboxFromUserId( $this->_userInfo->getId() );
+		            $outboxPrivateMessages = $privateMessageOutbox->getPrivateMessagesFromBox( $searchTerms );
+					
+					$this->_view = new AdminAjaxView( $this->_blogInfo );
+					$this->_view->setSuccess( true );
+					$this->_view->setResult( $outboxPrivateMessages );															
+				}
+				else {
+					$searchTerms = $this->_request->getValue( "searchTerms" );				
+					$this->_view = new AjaxViewRenderer( new AdminOutboxPrivateMessagesListView( $this->_blogInfo, Array( "searchTerms" => $searchTerms )));
+					$this->_view->setSuccess( true );
+					$this->_view->setResultObject( "privatemessages" );
+				}
+			}
+			else {
+				return( $this->perform());
+			}
+			
+			return( true );
+		}
     }
 ?>
\ No newline at end of file

Modified: plog/trunk/class/action/admin/adminnewprivatemessageaction.class.php
===================================================================
--- plog/trunk/class/action/admin/adminnewprivatemessageaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/adminnewprivatemessageaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -26,8 +26,17 @@
         function perform()
         {
         	// initialize the view
-          $this->_view = new AdminTemplatedView( $this->_blogInfo, "newprivatemessage" );
-          $this->setCommonData();
+			if( $this->_request->isXHR())
+        		$this->_view = new AdminTemplatedView( $this->_blogInfo, "newprivatemessage_form" );
+			else
+        		$this->_view = new AdminTemplatedView( $this->_blogInfo, "newprivatemessage" );
+
+            $this->setCommonData();
         }
+
+		function performAjax()
+		{
+			return( $this->perform());
+		}
     }
 ?>
\ No newline at end of file

Modified: plog/trunk/class/action/admin/adminreadinboxprivatemessageaction.class.php
===================================================================
--- plog/trunk/class/action/admin/adminreadinboxprivatemessageaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/adminreadinboxprivatemessageaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,9 +1,4 @@
 <?php
-	
-    
-    
-    
-	
 
     /**
      * \ingroup Action
@@ -31,18 +26,36 @@
 			$this->setValidationErrorView( $errorView );
         }
 
+		function getPrivateMessage()
+		{
+        	// fetch the message
+			$this->_messageId = $this->_request->getValue( "messageId" );
+            $privateMessages = new PrivateMessages();
+            $privateMessage   = $privateMessages->getPrivateMessageByReceiverId( $this->_messageId, $this->_userInfo->getId() );
+            // show an error if we couldn't fetch the message
+            if( !$privateMessage ) {
+                return false;
+            }
+			$this->notifyEvent( EVENT_PRIVATE_MESSAGE_LOADED, Array( "privatemessage" => &$privateMessage ));
+
+			return( $privateMessage );
+		}
+
         /**
          * Carries out the specified action
          */
         function perform()
         {
         	// fetch the private message
-			$this->_messageId = $this->_request->getValue( "messageId" );
-            $privateMessages = new PrivateMessages();
-            $privateMessage   = $privateMessages->getPrivateMessageByReceiverId( $this->_messageId, $this->_userInfo->getId() );
+            $privateMessage = $this->getPrivateMessage();
+
             // show an error if we couldn't fetch the private message
             if( !$privateMessage ) {
-            	$this->_view = new AdminInboxPrivateMessagesListView( $this->_blogInfo );
+				if( Request::isXHR() )
+					$this->_view = new AdminErrorDialogView( $this->_blogInfo );
+				else
+					$this->_view = new AdminInboxPrivateMessagesListView( $this->_blogInfo );
+
                 $this->_view->setErrorMessage( $this->_locale->tr("error_fetching_private_message") );
 				$this->_view->setError( true );
                 $this->setCommonData();
@@ -54,9 +67,12 @@
             	}
         	}
 
-			$this->notifyEvent( EVENT_PRIVATE_MESSAGE_LOADED, Array( "privatemessage" => &$privateMessage ));
             // otherwise show the form to edit its fields
-        	$this->_view = new AdminTemplatedView( $this->_blogInfo, "readinboxprivatemessage" );
+			if( Request::isXHR())
+        		$this->_view = new AdminTemplatedView( $this->_blogInfo, "readinboxprivatemessage_form" );
+			else
+				$this->_view = new AdminTemplatedView( $this->_blogInfo, "readinboxprivatemessage" );
+
 			$this->_view->setValue( "messageId", $privateMessage->getId());
             $this->_view->setValue( "privatemessage", $privateMessage );
             $this->setCommonData();
@@ -64,5 +80,28 @@
             // better to return true if everything fine
            return true;
         }
+
+		function performAjax()
+		{
+			if( $this->_request->getOutput() == Request::REQUEST_OUTPUT_JSON ) {
+				$privateMessage = $this->getPrivateMessage();
+				if( !$privateMessage ) {
+					$this->_view = $this->getAjaxErrorView();
+	                $this->_view->setErrorMessage( $this->_locale->tr("error_fetching_private_message"));
+					return( false );
+				}
+
+	            // otherwise show the form to edit its fields
+
+	        	$this->_view = new AdminAjaxView( $this->_blogInfo );
+				$this->_view->setResult( $privateMessage );
+
+	            // better to return true if everything fine
+	            return true;
+			}
+			else {
+				return( $this->perform());
+			}
+		}
     }
 ?>

Modified: plog/trunk/class/action/admin/adminreadoutboxprivatemessageaction.class.php
===================================================================
--- plog/trunk/class/action/admin/adminreadoutboxprivatemessageaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/adminreadoutboxprivatemessageaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,9 +1,4 @@
 <?php
-	
-    
-    
-    
-	
 
     /**
      * \ingroup Action
@@ -31,27 +26,48 @@
 			$this->setValidationErrorView( $errorView );
         }
 
+		function getPrivateMessage()
+		{
+        	// fetch the message
+			$this->_messageId = $this->_request->getValue( "messageId" );
+            $privateMessages = new PrivateMessages();
+            $privateMessage   = $privateMessages->getPrivateMessageBySenderId( $this->_messageId, $this->_userInfo->getId() );
+            // show an error if we couldn't fetch the message
+            if( !$privateMessage ) {
+                return false;
+            }
+			$this->notifyEvent( EVENT_PRIVATE_MESSAGE_LOADED, Array( "privatemessage" => &$privateMessage ));
+
+			return( $privateMessage );
+		}
+
         /**
          * Carries out the specified action
          */
         function perform()
         {
         	// fetch the private message
-			$this->_messageId = $this->_request->getValue( "messageId" );
-            $privateMessages = new PrivateMessages();
-            $privateMessage   = $privateMessages->getPrivateMessageBySenderId( $this->_messageId, $this->_userInfo->getId() );
+            $privateMessage = $this->getPrivateMessage();
+
             // show an error if we couldn't fetch the private message
             if( !$privateMessage ) {
-            	$this->_view = new AdminOutboxPrivateMessagesListView( $this->_blogInfo );
+				if( Request::isXHR() )
+					$this->_view = new AdminErrorDialogView( $this->_blogInfo );
+				else
+					$this->_view = new AdminOutboxPrivateMessagesListView( $this->_blogInfo );
+
                 $this->_view->setErrorMessage( $this->_locale->tr("error_fetching_private_message") );
 				$this->_view->setError( true );
                 $this->setCommonData();
                 return false;
             }
 
-			$this->notifyEvent( EVENT_PRIVATE_MESSAGE_LOADED, Array( "privatemessage" => &$privateMessage ));
             // otherwise show the form to edit its fields
-        	$this->_view = new AdminTemplatedView( $this->_blogInfo, "readoutboxprivatemessage" );
+			if( Request::isXHR())
+        		$this->_view = new AdminTemplatedView( $this->_blogInfo, "readoutboxprivatemessage_form" );
+			else
+				$this->_view = new AdminTemplatedView( $this->_blogInfo, "readoutboxprivatemessage" );
+
 			$this->_view->setValue( "messageId", $privateMessage->getId());
             $this->_view->setValue( "privatemessage", $privateMessage );
             $this->setCommonData();
@@ -59,5 +75,28 @@
             // better to return true if everything fine
            return true;
         }
+
+		function performAjax()
+		{
+			if( $this->_request->getOutput() == Request::REQUEST_OUTPUT_JSON ) {
+				$privateMessage = $this->getPrivateMessage();
+				if( !$privateMessage ) {
+					$this->_view = $this->getAjaxErrorView();
+	                $this->_view->setErrorMessage( $this->_locale->tr("error_fetching_private_message"));
+					return( false );
+				}
+
+	            // otherwise show the form to edit its fields
+
+	        	$this->_view = new AdminAjaxView( $this->_blogInfo );
+				$this->_view->setResult( $privateMessage );
+
+	            // better to return true if everything fine
+	            return true;
+			}
+			else {
+				return( $this->perform());
+			}
+		}
     }
 ?>
\ No newline at end of file

Modified: plog/trunk/class/action/admin/adminreplyprivatemessageaction.class.php
===================================================================
--- plog/trunk/class/action/admin/adminreplyprivatemessageaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/adminreplyprivatemessageaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,9 +1,4 @@
 <?php
-	
-    
-    
-    
-	
 
     /**
      * \ingroup Action
@@ -31,18 +26,36 @@
 			$this->setValidationErrorView( $errorView );
         }
 
+		function getPrivateMessage()
+		{
+        	// fetch the private message
+			$this->_messageId = $this->_request->getValue( "messageId" );
+            $privateMessages = new PrivateMessages();
+            $privateMessage   = $privateMessages->getPrivateMessageByReceiverId( $this->_messageId, $this->_userInfo->getId() );
+
+            // show an error if we couldn't fetch the message
+            if( !$privateMessage ) {
+                return false;
+            }
+			$this->notifyEvent( EVENT_PRIVATE_MESSAGE_LOADED, Array( "privatemessage" => &$privateMessage ));
+
+			return( $privateMessage );
+		}
+
         /**
          * Carries out the specified action
          */
         function perform()
         {
-        	// fetch the private message
-			$this->_messageId = $this->_request->getValue( "messageId" );
-            $privateMessages = new PrivateMessages();
-            $privateMessage   = $privateMessages->getPrivateMessageByReceiverId( $this->_messageId, $this->_userInfo->getId() );
+            $privateMessage = $this->getPrivateMessage();
+            
             // show an error if we couldn't fetch the private message
             if( !$privateMessage ) {
-            	$this->_view = new AdminInboxPrivateMessagesListView( $this->_blogInfo );
+				if( Request::isXHR() )
+					$this->_view = new AdminErrorDialogView( $this->_blogInfo );
+				else
+					$this->_view = new AdminInboxPrivateMessagesListView( $this->_blogInfo );
+
                 $this->_view->setErrorMessage( $this->_locale->tr("error_fetching_private_message") );
 				$this->_view->setError( true );
                 $this->setCommonData();
@@ -54,10 +67,13 @@
             	}
         	}
 
-			$this->notifyEvent( EVENT_PRIVATE_MESSAGE_LOADED, Array( "privatemessage" => &$privateMessage ));
             // otherwise show the form to edit its fields
             $senderInfo = $privateMessage->getSenderInfo();
-        	$this->_view = new AdminTemplatedView( $this->_blogInfo, "replyprivatemessage" );
+        	// initialize the view
+			if( $this->_request->isXHR())
+        		$this->_view = new AdminTemplatedView( $this->_blogInfo, "replyprivatemessage_form" );
+			else
+        		$this->_view = new AdminTemplatedView( $this->_blogInfo, "replyprivatemessage" );
             $this->_view->setValue( "receiverName", $senderInfo->getUsername() );
             $this->_view->setValue( "subject", $this->_locale->tr( 'reply_string' ) . $privateMessage->getSubject() );
             $this->setCommonData();
@@ -65,5 +81,28 @@
             // better to return true if everything fine
            return true;
         }
+
+		function performAjax()
+		{
+			if( $this->_request->getOutput() == Request::REQUEST_OUTPUT_JSON ) {
+				$privateMessage = $this->getPrivateMessage();
+				if( !$privateMessage ) {
+					$this->_view = $this->getAjaxErrorView();
+	                $this->_view->setErrorMessage( $this->_locale->tr("error_fetching_private_message"));
+					return( false );
+				}
+
+	            // otherwise show the form to edit its fields
+
+	        	$this->_view = new AdminAjaxView( $this->_blogInfo );
+				$this->_view->setResult( $privateMessage );
+
+	            // better to return true if everything fine
+	            return true;
+			}
+			else {
+				return( $this->perform());
+			}
+		}
     }
 ?>
\ No newline at end of file

Modified: plog/trunk/class/action/admin/adminsendprivatemessageaction.class.php
===================================================================
--- plog/trunk/class/action/admin/adminsendprivatemessageaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/adminsendprivatemessageaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,9 +1,4 @@
 <?php
-	
-    
-    
-    
-	
 
     /**
      * \ingroup Action
@@ -30,9 +25,9 @@
         	$this->AdminAction( $actionInfo, $request );
 
 			// register two validators
-			$this->registerFieldValidator( "receiverName", new StringValidator() );
-			$this->registerFieldValidator( "subject", new StringValidator() );
-			$this->registerFieldValidator( "messageText", new StringValidator() );
+			$this->registerFieldValidator( "receiverName", new StringValidator(), false, $this->_locale->tr("error_receiver_name"));
+			$this->registerFieldValidator( "subject", new StringValidator(), false, $this->_locale->tr("error_empty_subject"));
+			$this->registerFieldValidator( "messageText", new StringValidator(), false, $this->_locale->tr("error_empty_message_text"));
 			$this->registerField( "backupPrivateMessage" );
 			// and the view we should show in case there is a validation error
 			$errorView = new AdminTemplatedView( $this->_blogInfo, "newprivatemessage" );
@@ -40,10 +35,7 @@
 			$this->setValidationErrorView( $errorView );
         }
 
-        /**
-         * Carries out the specified action
-         */
-        function perform()
+        function sendPrivateMessage()
         {
 			// fetch the data, we already know it's valid and that we can trust it!
 			$this->_receiverName = Textfilter::filterAllHTML( $this->_request->getValue( "receiverName" ) );
@@ -58,11 +50,8 @@
 
         	// see if the user exists
             if( !$receiver || $receiver->getId() == $this->_userInfo->getId() ) {
-            	$this->_view = new AdminTemplatedView( $this->_blogInfo, "newprivatemessage" );
-                $this->_view->setErrorMessage( $this->_locale->pr("error_invalid_receiver", $this->_receiverName) );
+            	$this->_message = $this->_locale->pr("error_invalid_receiver", $this->_receiverName);
 				$this->_form->setFieldValidationStatus( "receiverName", false );
-                $this->setCommonData( true );
-
                 return false;
             }
 
@@ -78,47 +67,42 @@
 			// create the private message object...
     		
             $privateMessages = new PrivateMessages();
-			$receiverPrivateMessage = new PrivateMessage( $receiverInbox->getId(),
+			$this->_receiverPrivateMessage = new PrivateMessage( $receiverInbox->getId(),
                                                           $this->_receiverId,
                                                           $this->_senderId,
                                                           $this->_subject,
                                                           $this->_messageText );
 
 			// fire the pre event...
-			$this->notifyEvent( EVENT_PRE_SEND_PRIVATE_MESSAGE, Array( "privatemessage" => &$receiverPrivateMessage ));
+			$this->notifyEvent( EVENT_PRE_SEND_PRIVATE_MESSAGE, Array( "privatemessage" => &$this->_receiverPrivateMessage ));
 
             // once we have built the object, we can add it to the database!
-            if( $privateMessages->addPrivateMessage( $receiverPrivateMessage )) {
-                if( $this->_backupPrivateMessage ) {
-                    $senderOutbox = $privateMessageBoxes->getPrivateMessageOutboxFromUserId( $this->_senderId );
-                    $senderPrivateMessage = new PrivateMessage( $senderOutbox->getId(),
-                                                                $this->_receiverId,
-                                                                $this->_senderId,
-                                                                $this->_subject,
-                                                                $this->_messageText );
-                    $privateMessages->addPrivateMessage( $senderPrivateMessage );
-                }
-				$this->_view = new AdminOutboxPrivateMessagesListView( $this->_blogInfo );
-				$this->_view->setSuccess( true );
-				$this->_view->setSuccessMessage( $this->_locale->pr("private_message_sended_ok", $receiverPrivateMessage->getSubject()));
-				$this->notifyEvent( EVENT_POST_SEND_PRIVATE_MESSAGE, Array( "privatemessage" => &$receiverPrivateMessage ));
+            $result = $privateMessages->addPrivateMessage( $this->_receiverPrivateMessage );
+            
+            if( !$result ) {
+            	$this->_message = $this->_locale->tr("error_sending_private_message" );
+            	return false;
+            }
 
-				$this->sendPrivateMessageEmail( $receiver );
-
-				$this->setCommonData();
+            if( $this->_backupPrivateMessage ) {
+                $senderOutbox = $privateMessageBoxes->getPrivateMessageOutboxFromUserId( $this->_senderId );
+                $senderPrivateMessage = new PrivateMessage( $senderOutbox->getId(),
+                                                            $this->_receiverId,
+                                                            $this->_senderId,
+                                                            $this->_subject,
+                                                            $this->_messageText );
+                $privateMessages->addPrivateMessage( $senderPrivateMessage );
             }
-            else {
-				// if there was an error, we should say so... as well as not changing the view since
-				$this->_view = new AdminTemplatedView( $this->_blogInfo, "newprivatemessage" );
-				$this->_view->setError( true );
-				$this->_view->setErrorMessage( $this->_locale->tr("error_sending_private_message" ));
-				$this->setCommonData( true );
-            }
 
-            return true;
+			$this->_message = $this->_locale->pr("private_message_sended_ok", $this->_receiverPrivateMessage->getSubject());
+			$this->notifyEvent( EVENT_POST_SEND_PRIVATE_MESSAGE, Array( "privatemessage" => &$this->_receiverPrivateMessage ));
+
+			$this->sendEmail( $receiver );
+
+            return $result;
         }
 
-        function sendPrivateMessageEmail( $userInfo )
+        function sendEmail( $userInfo )
         {
             // if everything went fine, we can now send the private message to the receiver
             // only if the receiver specified a valid email address
@@ -137,6 +121,43 @@
             }
 
             return true;
+        }        
+
+        /**
+         * Carries out the specified action
+         */
+        function perform()
+        {
+			$this->_view = new AdminOutboxPrivateMessagesListView( $this->_blogInfo );
+				
+			$result = $this->sendPrivateMessage();
+													
+            if( !$result ) {
+				// set an error message
+                $this->_view->setErrorMessage( $this->_message);
+                $this->setCommonData(true);
+            }
+			else {
+				// or success
+				$this->_view->setSuccessMessage( $this->_message );
+				$this->setCommonData();	
+			}			
+
+            return true;
         }
+
+		function performAjax()
+		{
+			$result = $this->sendPrivateMessage();
+			
+			
+			$this->_view = new AdminAjaxView( $this->_blogInfo );
+			
+			$this->_view->setSuccess( $result );
+			$this->_view->setMessage( $this->_message );
+			$this->_view->setResult( $this->_receiverPrivateMessage );
+			
+			return( true );
+		}
     }
 ?>
\ No newline at end of file

Modified: plog/trunk/class/action/admin/adminsendreplyprivatemessageaction.class.php
===================================================================
--- plog/trunk/class/action/admin/adminsendreplyprivatemessageaction.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/action/admin/adminsendreplyprivatemessageaction.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,9 +1,4 @@
 <?php
-	
-    
-    
-    
-	
 
     /**
      * \ingroup Action
@@ -30,9 +25,9 @@
         	$this->AdminAction( $actionInfo, $request );
 
 			// register two validators
-			$this->registerFieldValidator( "receiverName", new StringValidator() );
-			$this->registerFieldValidator( "subject", new StringValidator() );
-			$this->registerFieldValidator( "replyText", new StringValidator() );
+			$this->registerFieldValidator( "receiverName", new StringValidator(), false, $this->_locale->tr("error_receiver_name"));
+			$this->registerFieldValidator( "subject", new StringValidator(), false, $this->_locale->tr("error_empty_subject"));
+			$this->registerFieldValidator( "replyText", new StringValidator(), false, $this->_locale->tr("error_empty_message_text"));
 			$this->registerField( "backupPrivateMessage" );
 			// and the view we should show in case there is a validation error
 			$errorView = new AdminTemplatedView( $this->_blogInfo, "replyprivatemessage" );
@@ -40,10 +35,7 @@
 			$this->setValidationErrorView( $errorView );
         }
 
-        /**
-         * Carries out the specified action
-         */
-        function perform()
+        function sendReplyPrivateMessage()
         {
 			// fetch the data, we already know it's valid and that we can trust it!
 			$this->_receiverName = Textfilter::filterAllHTML( $this->_request->getValue( "receiverName" ) );
@@ -58,11 +50,8 @@
 
         	// see if the user exists
             if( !$receiver || $receiver->getId() == $this->_userInfo->getId() ) {
-            	$this->_view = new AdminTemplatedView( $this->_blogInfo, "replyprivatemessage" );
-                $this->_view->setErrorMessage( $this->_locale->pr("error_invalid_receiver", $this->_receiverName) );
+            	$this->_message = $this->_locale->pr("error_invalid_receiver", $this->_receiverName);
 				$this->_form->setFieldValidationStatus( "receiverName", false );
-                $this->setCommonData( true );
-
                 return false;
             }
 
@@ -78,47 +67,42 @@
 			// create the private message object...
     		
             $privateMessages = new PrivateMessages();
-			$receiverPrivateMessage = new PrivateMessage( $receiverInbox->getId(),
+			$this->_receiverPrivateMessage = new PrivateMessage( $receiverInbox->getId(),
                                                           $this->_receiverId,
                                                           $this->_senderId,
                                                           $this->_subject,
                                                           $this->_replyText );
 
 			// fire the pre event...
-			$this->notifyEvent( EVENT_PRE_SEND_PRIVATE_MESSAGE, Array( "privatemessage" => &$receiverPrivateMessage ));
+			$this->notifyEvent( EVENT_PRE_SEND_PRIVATE_MESSAGE, Array( "privatemessage" => &$this->_receiverPrivateMessage ));
 
             // once we have built the object, we can add it to the database!
-            if( $privateMessages->addPrivateMessage( $receiverPrivateMessage )) {
-                if( $this->_backupPrivateMessage ) {
-                    $senderOutbox = $privateMessageBoxes->getPrivateMessageOutboxFromUserId( $this->_senderId );
-                    $senderPrivateMessage = new PrivateMessage( $senderOutbox->getId(),
-                                                                $this->_receiverId,
-                                                                $this->_senderId,
-                                                                $this->_subject,
-                                                                $this->_replyText );
-                    $privateMessages->addPrivateMessage( $senderPrivateMessage );
-                }
-				$this->_view = new AdminOutboxPrivateMessagesListView( $this->_blogInfo );
-				$this->_view->setSuccess( true );
-				$this->_view->setSuccessMessage( $this->_locale->pr("private_message_sended_ok", $receiverPrivateMessage->getSubject()));
-				$this->notifyEvent( EVENT_POST_SEND_PRIVATE_MESSAGE, Array( "privatemessage" => &$receiverPrivateMessage ));
+            $result = $privateMessages->addPrivateMessage( $this->_receiverPrivateMessage );
+            
+            if( !$result ) {
+            	$this->_message = $this->_locale->tr("error_sending_private_message" );
+            	return false;
+            }
 
-				$this->sendPrivateMessageEmail( $receiver );
-
-				$this->setCommonData();
+            if( $this->_backupPrivateMessage ) {
+                $senderOutbox = $privateMessageBoxes->getPrivateMessageOutboxFromUserId( $this->_senderId );
+                $senderPrivateMessage = new PrivateMessage( $senderOutbox->getId(),
+                                                            $this->_receiverId,
+                                                            $this->_senderId,
+                                                            $this->_subject,
+                                                            $this->_replyText );
+                $privateMessages->addPrivateMessage( $senderPrivateMessage );
             }
-            else {
-				// if there was an error, we should say so... as well as not changing the view since
-				$this->_view = new AdminTemplatedView( $this->_blogInfo, "replyprivatemessage" );
-				$this->_view->setError( true );
-				$this->_view->setErrorMessage( $this->_locale->tr("error_sending_private_message" ));
-				$this->setCommonData( true );
-            }
 
-            return true;
+			$this->_message = $this->_locale->pr("private_message_sended_ok", $this->_receiverPrivateMessage->getSubject());
+			$this->notifyEvent( EVENT_POST_SEND_PRIVATE_MESSAGE, Array( "privatemessage" => &$this->_receiverPrivateMessage ));
+
+			$this->sendEmail( $receiver );
+
+            return $result;
         }
 
-        function sendPrivateMessageEmail( $userInfo )
+        function sendEmail( $userInfo )
         {
             // if everything went fine, we can now send the private message to the receiver
             // only if the receiver specified a valid email address
@@ -127,7 +111,7 @@
 
             	// build an email message
                 $emailMessage = new EmailMessage();
-                $emailMessage->setBody( $this->_replyText );
+                $emailMessage->setBody( $this->_messageText );
                 $emailMessage->setSubject( "[Private Message]" . $this->_subject );
                 $emailMessage->addTo( $userInfo->getEmail());
                 $emailMessage->setFrom( $this->_userInfo->getEmail());
@@ -137,6 +121,43 @@
             }
 
             return true;
+        }        
+
+        /**
+         * Carries out the specified action
+         */
+        function perform()
+        {
+			$this->_view = new AdminOutboxPrivateMessagesListView( $this->_blogInfo );
+				
+			$result = $this->sendReplyPrivateMessage();
+													
+            if( !$result ) {
+				// set an error message
+                $this->_view->setErrorMessage( $this->_message);
+                $this->setCommonData(true);
+            }
+			else {
+				// or success
+				$this->_view->setSuccessMessage( $this->_message );
+				$this->setCommonData();	
+			}			
+
+            return true;
         }
+
+		function performAjax()
+		{
+			$result = $this->sendReplyPrivateMessage();
+			
+			
+			$this->_view = new AdminAjaxView( $this->_blogInfo );
+			
+			$this->_view->setSuccess( $result );
+			$this->_view->setMessage( $this->_message );
+			$this->_view->setResult( $this->_receiverPrivateMessage );
+			
+			return( true );
+		}
     }
 ?>
\ No newline at end of file

Modified: plog/trunk/class/view/admin/admininboxprivatemessageslistview.class.php
===================================================================
--- plog/trunk/class/view/admin/admininboxprivatemessageslistview.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/view/admin/admininboxprivatemessageslistview.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,8 +1,5 @@
 <?php
 
-	
-	
-
     /**
      * \ingroup View
      * @private
@@ -15,8 +12,13 @@
 
 		function AdminInboxPrivateMessagesListView( $blogInfo, $params = Array())
 		{
-			$this->AdminTemplatedView( $blogInfo, "editinboxprivatemessages" );
+			if( Request::isXHR())
+				$template = "editinboxprivatemessages_table";
+			else
+        		$template = "editinboxprivatemessages";
 
+			$this->AdminTemplatedView( $blogInfo, $template );
+
 			// save the parameters and put them in a nicer place after checking them
 			if( !isset( $params["searchTerms"] ) ) $params["searchTerms"] = "";
 			$this->setValue( "searchTerms", $params["searchTerms"] );

Modified: plog/trunk/class/view/admin/adminlinkcategorieslistview.class.php
===================================================================
--- plog/trunk/class/view/admin/adminlinkcategorieslistview.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/view/admin/adminlinkcategorieslistview.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,9 +1,5 @@
 <?php
 
-	
-	
-	
-
     /**
      * \ingroup View
      * @private

Modified: plog/trunk/class/view/admin/adminoutboxprivatemessageslistview.class.php
===================================================================
--- plog/trunk/class/view/admin/adminoutboxprivatemessageslistview.class.php	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/class/view/admin/adminoutboxprivatemessageslistview.class.php	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,8 +1,5 @@
 <?php
 
-	
-	
-
     /**
      * \ingroup View
      * @private
@@ -15,8 +12,13 @@
 
 		function AdminOutboxPrivateMessagesListView( $blogInfo, $params = Array())
 		{
-			$this->AdminTemplatedView( $blogInfo, "editoutboxprivatemessages" );
+			if( Request::isXHR())
+				$template = "editoutboxprivatemessages_table";
+			else
+        		$template = "editoutboxprivatemessages";
 
+			$this->AdminTemplatedView( $blogInfo, $template );
+
 			// save the parameters and put them in a nicer place after checking them
 			if( !isset( $params["searchTerms"] ) ) $params["searchTerms"] = "";
 			$this->setValue( "searchTerms", $params["searchTerms"] );

Modified: plog/trunk/templates/admin/editinboxprivatemessages.template
===================================================================
--- plog/trunk/templates/admin/editinboxprivatemessages.template	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/templates/admin/editinboxprivatemessages.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,18 +1,11 @@
 {include file="$admintemplatepath/header.template"}
 {include file="$admintemplatepath/navigation.template" showOpt=editInboxPrivateMessages title=$locale->tr("editInboxPrivateMessages")}
-<script type="text/javascript">
-{literal}
-YAHOO.util.Event.addListener( window, "load", function() {
-		var t = new Lifetype.Effects.Table( "list" );
-		t.stripe();
-		t.highlightRows();
-	});
-{/literal}
-</script>
-        <div id="list_nav_bar">
-            <div id="list_nav_select">
+{js src="js/ui/plogui.js"}
+{js src="js/ui/pages/privatemessages.js"}
 
-<form id="viewInboxPrivateMessages" action="admin.php" method="post">
+<div id="list_nav_bar">
+<div id="list_nav_select">
+<form id="viewPrivateMessages" action="admin.php" method="post">
  <fieldset>
   <legend>{$locale->tr("show_by")}</legend>
 
@@ -33,66 +26,13 @@
  <br style="clear:both" />
  </div>
 
- <form id="inboxPrivateMessages" action="admin.php" method="post">
+ <form id="editPrivateMessages" action="admin.php" method="post" onSubmit="Lifetype.Forms.performRequest(this);return(false);">
+ {include file="$admintemplatepath/viewvalidateajax.template"}
  <div id="list">
-  {include file="$admintemplatepath/successmessage.template"}
-  {include file="$admintemplatepath/errormessage.template"}
- <table id="list" class="info" summary="{$locale->tr("editInboxPrivateMessages")}">
-  <thead>
-   <tr>
-    <th><input class="checkbox" type="checkbox" name="all" id="all" value="1" onclick="toggleAllChecks('inboxPrivateMessages');" /></th>
-    <th style="width:15%">{$locale->tr("sender_name")}</th>
-    <th style="width:10%">{$locale->tr("receiver_read_status")}</th>
-    <th style="width:15%">{$locale->tr("date")}</th>
-    <th style="width:50%">{$locale->tr("subject")}</th>
-    <th style="width:10%">{$locale->tr("actions")}</th>
-   </tr>
-  </thead>
-  <tbody>
-  {foreach from=$privatemessages item=privatemessage}
-  <tr>
-   <td align="center"><input class="checkbox" type="checkbox" name="messageIds[{counter}]" value="{$privatemessage->getId()}"/></td>
-   <td class="col_highlighted">
-     {assign var=sender value=$privatemessage->getSenderInfo()}
-	 <a href="admin.php?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}">{$sender->getFullName()}</a>
-   </td>
-   <td>
-	 {if $privatemessage->getReceiverReadStatus() == 1}
-       <a href="admin.php?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("unread")}">
-         <img src="imgs/admin/icon_mailunread-16.png" alt="{$locale->tr("unread")}" />
-       </a>
-     {else}
-       <a href="admin.php?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("readed")}">
-         <img src="imgs/admin/icon_mailreaded-16.png" alt="{$locale->tr("readed")}" />
-       </a>
-     {/if}
-   </td>
-   <td>
-	 {assign var=date value=$privatemessage->getDateObject()}
-	 {$locale->formatDate($date)}
-   </td>
-   <td>
-	 <a href="admin.php?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}">{$privatemessage->getSubject()}</a>
-   </td>
-   <td>
-     <div class="list_action_button">
-       <a href="?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("read")}">
-         <img src="imgs/admin/icon_edit-16.png" alt="{$locale->tr("read")}" />
-       </a>
-       <a href="?op=deleteInboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("delete")}">
-          <img src="imgs/admin/icon_delete-16.png" alt="{$locale->tr("delete")}" />
-       </a>
-       <a href="?op=replyPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("reply")}">
-          <img src="imgs/admin/icon_mailreply-16.png" alt="{$locale->tr("reply")}" />
-       </a>
-   </td>
-  </tr>
-  {/foreach}
- </tbody>
- </table>
+ {include file="$admintemplatepath/editinboxprivatemessages_table.template"}
  </div>
+ 
  <div id="list_action_bar">
-  {adminpager style=list}
   <input type="hidden" name="op" value="deleteInboxPrivateMessages"/>
   <input type="submit" name="Delete selected" value="{$locale->tr("delete")}"/>
  </div>

Added: plog/trunk/templates/admin/editinboxprivatemessages_table.template
===================================================================
--- plog/trunk/templates/admin/editinboxprivatemessages_table.template	                        (rev 0)
+++ plog/trunk/templates/admin/editinboxprivatemessages_table.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -0,0 +1,54 @@
+ <table id="privatemessages" class="info" summary="{$locale->tr("editInboxPrivateMessages")}">
+  <thead>
+   <tr>
+    <th><input class="checkbox" type="checkbox" name="all" id="all" value="1" onclick="toggleAllChecks('inboxPrivateMessages');" /></th>
+    <th style="width:15%">{$locale->tr("sender_name")}</th>
+    <th style="width:10%">{$locale->tr("receiver_read_status")}</th>
+    <th style="width:15%">{$locale->tr("date")}</th>
+    <th style="width:50%">{$locale->tr("subject")}</th>
+    <th style="width:10%">{$locale->tr("actions")}</th>
+   </tr>
+  </thead>
+  <tbody>
+  {foreach from=$privatemessages item=privatemessage}
+  <tr>
+   <td align="center"><input class="checkbox" type="checkbox" name="messageIds[{counter}]" value="{$privatemessage->getId()}"/></td>
+   <td class="col_highlighted">
+     {assign var=sender value=$privatemessage->getSenderInfo()}
+	 <a href="admin.php?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}">{$sender->getFullName()}</a>
+   </td>
+   <td>
+	 {if $privatemessage->getReceiverReadStatus() == 1}
+       <a rel="overlay" href="admin.php?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("unread")}">
+         <img src="imgs/admin/icon_mailunread-16.png" alt="{$locale->tr("unread")}" />
+       </a>
+     {else}
+       <a rel="overlay" href="admin.php?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("readed")}">
+         <img src="imgs/admin/icon_mailreaded-16.png" alt="{$locale->tr("readed")}" />
+       </a>
+     {/if}
+   </td>
+   <td>
+	 {assign var=date value=$privatemessage->getDateObject()}
+	 {$locale->formatDate($date)}
+   </td>
+   <td>
+	 <a href="admin.php?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}">{$privatemessage->getSubject()}</a>
+   </td>
+   <td>
+     <div class="list_action_button">
+       <a rel="overlay" href="?op=readInboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("read")}">
+         <img src="imgs/admin/icon_edit-16.png" alt="{$locale->tr("read")}" />
+       </a>
+       <a href="?op=deleteInboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("delete")}" onClick="Lifetype.Forms.performRequest(this);return(false)">
+          <img src="imgs/admin/icon_delete-16.png" alt="{$locale->tr("delete")}" />
+       </a>
+       <a rel="overlay" href="?op=replyPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("reply")}">
+          <img src="imgs/admin/icon_mailreply-16.png" alt="{$locale->tr("reply")}" />
+       </a>
+   </td>
+  </tr>
+  {/foreach}
+ </tbody>
+ </table>
+ {adminpagerajax style=list}
\ No newline at end of file

Modified: plog/trunk/templates/admin/editlinks.template
===================================================================
--- plog/trunk/templates/admin/editlinks.template	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/templates/admin/editlinks.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,6 +1,6 @@
 {include file="$admintemplatepath/header.template"}
 {include file="$admintemplatepath/navigation.template" showOpt=editLinks title=$locale->tr("editLinks")}
- <script type="text/javascript" src="js/ui/plogui.js"></script>
+{js src="js/ui/plogui.js"}
 {js src="js/ui/pages/global.js"}
 {js src="js/ui/pages/links.js"}
 <div id="list_nav_bar">

Modified: plog/trunk/templates/admin/editoutboxprivatemessages.template
===================================================================
--- plog/trunk/templates/admin/editoutboxprivatemessages.template	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/templates/admin/editoutboxprivatemessages.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,16 +1,9 @@
 {include file="$admintemplatepath/header.template"}
 {include file="$admintemplatepath/navigation.template" showOpt=editOutboxPrivateMessages title=$locale->tr("editOutboxPrivateMessages")}
-<script type="text/javascript">
-{literal}
-YAHOO.util.Event.addListener( window, "load", function() {
-		var t = new Lifetype.Effects.Table( "list" );
-		t.stripe();
-		t.highlightRows();
-	});
-{/literal}
-</script>
-        <div id="list_nav_bar">
-            <div id="list_nav_select">
+{js src="js/ui/plogui.js"}
+{js src="js/ui/pages/privatemessages.js"}
+<div id="list_nav_bar">
+<div id="list_nav_select">
 
 <form id="viewPrivateMessages" action="admin.php" method="post">
  <fieldset>
@@ -32,51 +25,21 @@
  </div>
  <br style="clear:both" />
  </div>
+ 
+<div class="extraFunctions">
+<div class="left">	
+   <a id="newPrivateMessageButton" href="?op=newPrivateMessage" rel="overlay">{$locale->tr("newPrivateMessage")}</a>
+</div>
+ <br style="clear:both" />
+</div>
 
- <form id="outboxPrivateMessages" action="admin.php" method="post">
+ <form id="editPrivateMessages" action="admin.php" method="post" onSubmit="Lifetype.Forms.performRequest(this);return(false);">
+ {include file="$admintemplatepath/viewvalidateajax.template"}
  <div id="list">
-  {include file="$admintemplatepath/successmessage.template"}
-  {include file="$admintemplatepath/errormessage.template"}
- <table id="list" class="info" summary="{$locale->tr("editOutboxPrivateMessages")}">
-  <thead>
-   <tr>
-    <th><input class="checkbox" type="checkbox" name="all" id="all" value="1" onclick="toggleAllChecks('outboxPrivateMessages');" /></th>
-    <th style="width:15%">{$locale->tr("receiver_name")}</th>
-    <th style="width:15%">{$locale->tr("date")}</th>
-    <th style="width:60%">{$locale->tr("subject")}</th>
-    <th style="width:10%">{$locale->tr("actions")}</th>
-   </tr>
-  </thead>
-  <tbody>
-  {foreach from=$privatemessages item=privatemessage}
-  <tr>
-   <td align="center"><input class="checkbox" type="checkbox" name="messageIds[{counter}]" value="{$privatemessage->getId()}"/></td>
-   <td class="col_highlighted">
-     {assign var=receiver value=$privatemessage->getReceiverInfo()}
-	 <a href="admin.php?op=readOutboxPrivateMessage&amp;messageId={$privatemessage->getId()}">{$receiver->getFullName()}</a>
-   </td>
-   <td>
-     {assign var=date value=$privatemessage->getDateObject()}
-	 {$locale->formatDate($date)}
-   </td>
-   <td>
-	 <a href="admin.php?op=readOutboxPrivateMessage&amp;messageId={$privatemessage->getId()}">{$privatemessage->getSubject()}</a>
-   </td>
-   <td>
-       <a href="?op=readOutboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("read")}">
-         <img src="imgs/admin/icon_edit-16.png" alt="{$locale->tr("read")}" />
-       </a>
-       <a href="?op=deleteOutboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("delete")}">
-          <img src="imgs/admin/icon_delete-16.png" alt="{$locale->tr("delete")}" />
-       </a>
-   </td>
-  </tr>
-  {/foreach}
- </tbody>
- </table>
+ {include file="$admintemplatepath/editoutboxprivatemessages_table.template"}
  </div>
+
  <div id="list_action_bar">
-  {adminpager style=list}
   <input type="hidden" name="op" value="deleteOutboxPrivateMessages"/>
   <input type="submit" name="Delete selected" value="{$locale->tr("delete")}"/>
  </div>

Added: plog/trunk/templates/admin/editoutboxprivatemessages_table.template
===================================================================
--- plog/trunk/templates/admin/editoutboxprivatemessages_table.template	                        (rev 0)
+++ plog/trunk/templates/admin/editoutboxprivatemessages_table.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -0,0 +1,38 @@
+ <table id="privatemessages" class="info" summary="{$locale->tr("editOutboxPrivateMessages")}">
+  <thead>
+   <tr>
+    <th><input class="checkbox" type="checkbox" name="all" id="all" value="1" onclick="toggleAllChecks('outboxPrivateMessages');" /></th>
+    <th style="width:15%">{$locale->tr("receiver_name")}</th>
+    <th style="width:15%">{$locale->tr("date")}</th>
+    <th style="width:60%">{$locale->tr("subject")}</th>
+    <th style="width:10%">{$locale->tr("actions")}</th>
+   </tr>
+  </thead>
+  <tbody>
+  {foreach from=$privatemessages item=privatemessage}
+  <tr>
+   <td align="center"><input class="checkbox" type="checkbox" name="messageIds[{counter}]" value="{$privatemessage->getId()}"/></td>
+   <td class="col_highlighted">
+     {assign var=receiver value=$privatemessage->getReceiverInfo()}
+	 <a rel="overlay" href="admin.php?op=readOutboxPrivateMessage&amp;messageId={$privatemessage->getId()}">{$receiver->getFullName()}</a>
+   </td>
+   <td>
+     {assign var=date value=$privatemessage->getDateObject()}
+	 {$locale->formatDate($date)}
+   </td>
+   <td>
+	 <a rel="overlay" href="admin.php?op=readOutboxPrivateMessage&amp;messageId={$privatemessage->getId()}">{$privatemessage->getSubject()}</a>
+   </td>
+   <td>
+       <a rel="overlay" href="?op=readOutboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("read")}">
+         <img src="imgs/admin/icon_edit-16.png" alt="{$locale->tr("read")}" />
+       </a>
+       <a href="?op=deleteOutboxPrivateMessage&amp;messageId={$privatemessage->getId()}" title="{$locale->tr("delete")}" onClick="Lifetype.Forms.performRequest(this);return(false)">
+          <img src="imgs/admin/icon_delete-16.png" alt="{$locale->tr("delete")}" />
+       </a>
+   </td>
+  </tr>
+  {/foreach}
+ </tbody>
+ </table>
+ {adminpagerajax style=list}
\ No newline at end of file

Modified: plog/trunk/templates/admin/newprivatemessage.template
===================================================================
--- plog/trunk/templates/admin/newprivatemessage.template	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/templates/admin/newprivatemessage.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,49 +1,7 @@
 {include file="$admintemplatepath/header.template"}
-{include file="$admintemplatepath/navigation.template" showOpt=newPrivateMessage title=$locale->tr("newPrivateMessage")}
+{include file="$admintemplatepath/navigation.template" showOpt=editInboxPrivateMessages title=$locale->tr("newPrivateMessage")}
 
- <form name="addNewPrivateMessage" method="post" action="admin.php">
-  <fieldset class="inputField">
-   <legend>{$locale->tr("newPrivateMessage")}</legend>
-   {include file="$admintemplatepath/formvalidate.template"}
+{include file="$admintemplatepath/newprivatemessage_form.template"}
 
-   <div class="field">
-    <label for="receiverName">{$locale->tr("receiver_name")}</label>
-    <span class="required">*</span><br/>
-    <div class="formHelp">{$locale->tr("receiver_name_help")}</div>
-     <input type="text" value="{$receiverName}" id="receiverName" name="receiverName" />
-    {include file="$admintemplatepath/validate.template" field=receiverName message=$locale->tr("error_receiver_name")}
-   </div>
-
-   <div class="field">
-    <label for="subject">{$locale->tr("subject")}</label>
-    <span class="required">*</span><br/>
-    <div class="formHelp">{$locale->tr("subject_help")}</div>
-     <input type="text" value="{$subject}" id="subject" name="subject" />
-    {include file="$admintemplatepath/validate.template" field=subject message=$locale->tr("error_empty_subject")}
-   </div>
-
-   <div class="field">
-    <label for="messageText">{$locale->tr("message_text")}</label>
-    <span class="required">*</span>
-    <div class="formHelp">{$locale->tr("message_text_help")}</div>
-    <textarea name="messageText" cols="60" id="messageText" rows="5">{$messageText}</textarea>
-    {include file="$admintemplatepath/validate.template" field=messageText message=$locale->tr("error_empty_message_text")}
-   </div>
-
-   <div class="field">
-    <label for="backupPrivateMessage">{$locale->tr("backup_private_message")}</label>
-    <div class="formHelp">
-     <input class="checkbox" type="checkbox" id="backupPrivateMessage" name="backupPrivateMessage" value="1" {if $backupPrivateMessage}checked="checked"{/if} />
-     {$locale->tr("backup_private_message_help")}
-    </div>
-   </div>
-
-  </fieldset>
-  <div class="buttons">
-   <input type="hidden" name="op" value="sendPrivateMessage" />
-   <input type="reset" name="resetButton" value="{$locale->tr("reset")}" />
-   <input type="submit" name="Add" value="{$locale->tr("send")}" />
-  </div>
- </form>
 {include file="$admintemplatepath/footernavigation.template"}
 {include file="$admintemplatepath/footer.template"}
\ No newline at end of file

Added: plog/trunk/templates/admin/newprivatemessage_form.template
===================================================================
--- plog/trunk/templates/admin/newprivatemessage_form.template	                        (rev 0)
+++ plog/trunk/templates/admin/newprivatemessage_form.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -0,0 +1,44 @@
+ <form id="newPrivateMessage" method="post" action="admin.php" onSubmit="Lifetype.UI.Pages.PrivateMessages.addSubmitHook(this);return(false);">
+  <fieldset class="inputField">
+   <legend>{$locale->tr("newPrivateMessage")}</legend>
+   {include file="$admintemplatepath/formvalidateajax.template"}
+
+   <div class="field">
+    <label for="receiverName">{$locale->tr("receiver_name")}</label>
+    <span class="required">*</span><br/>
+    <div class="formHelp">{$locale->tr("receiver_name_help")}</div>
+     <input type="text" value="{$receiverName}" id="receiverName" name="receiverName" />
+     {include file="$admintemplatepath/validateajax.template" field=receiverName}
+   </div>
+
+   <div class="field">
+    <label for="subject">{$locale->tr("subject")}</label>
+    <span class="required">*</span><br/>
+    <div class="formHelp">{$locale->tr("subject_help")}</div>
+     <input type="text" value="{$subject}" id="subject" name="subject" />
+     {include file="$admintemplatepath/validateajax.template" field=subject}
+   </div>
+
+   <div class="field">
+    <label for="messageText">{$locale->tr("message_text")}</label>
+    <span class="required">*</span>
+    <div class="formHelp">{$locale->tr("message_text_help")}</div>
+    <textarea name="messageText" cols="60" id="messageText" rows="5">{$messageText}</textarea>
+    {include file="$admintemplatepath/validateajax.template" field=messageText}
+   </div>
+
+   <div class="field">
+    <label for="backupPrivateMessage">{$locale->tr("backup_private_message")}</label>
+    <div class="formHelp">
+     <input class="checkbox" type="checkbox" id="backupPrivateMessage" name="backupPrivateMessage" value="1" {if $backupPrivateMessage}checked="checked"{/if} />
+     {$locale->tr("backup_private_message_help")}
+    </div>
+   </div>
+
+  </fieldset>
+  <div class="buttons">
+   <input type="hidden" name="op" value="sendPrivateMessage" />
+   <input type="reset" name="resetButton" value="{$locale->tr("reset")}" />
+   <input type="submit" name="Add" value="{$locale->tr("send")}" />
+  </div>
+ </form>
\ No newline at end of file

Modified: plog/trunk/templates/admin/readinboxprivatemessage.template
===================================================================
--- plog/trunk/templates/admin/readinboxprivatemessage.template	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/templates/admin/readinboxprivatemessage.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,38 +1,7 @@
 {include file="$admintemplatepath/header.template"}
 {include file="$admintemplatepath/navigation.template" showOpt=editInboxPrivateMessages title=$locale->tr("readInboxPrivateMessage")}
 
- <form name="readInboxPrivateMessage" method="post" action="admin.php">
-  <fieldset class="inputField">
-   <legend>{$locale->tr("readInboxPrivateMessage")}</legend>
+{include file="$admintemplatepath/readinboxprivatemessage_form.template"}
 
-   <div class="field">
-    <label for="senderName">{$locale->tr("sender_name")}</label>
-    <span class="required"></span><br/>
-    <div class="formHelp">{$locale->tr("sender_name_help")}</div>
-     {assign var=senderInfo value=$privatemessage->getSenderInfo()}
-     <input type="text" value="{$senderInfo->getFullName()}" id="senderName" name="senderName" readonly=readonly />
-   </div>
-
-   <div class="field">
-    <label for="subject">{$locale->tr("subject")}</label>
-    <span class="required"></span><br/>
-    <div class="formHelp">{$locale->tr("subject_help")}</div>
-     <input type="text" value="{$privatemessage->getSubject()}" id="subject" name="subject" readonly=readonly />
-   </div>
-
-   <div class="field">
-    <label for="messageText">{$locale->tr("message_text")}</label>
-    <span class="required"></span>
-    <div class="formHelp">{$locale->tr("message_text_help")}</div>
-    <textarea name="messageText" cols="60" id="messageText" rows="5" readonly=readonly >{$privatemessage->getMessage()}</textarea>
-   </div>
-
-  </fieldset>
-  <div class="buttons">
-   <input type="hidden" name="op" value="replyPrivateMessage" />
-   <input type="button" name="Delete" value="{$locale->tr("delete")}" onClick="window.location='?op=deletePrivateMessage&messageId={$messageId}'" />
-   <input type="button" name="Reply" value="{$locale->tr("reply")}" onClick="window.location='?op=replyPrivateMessage&messageId={$messageId}'" />
-  </div>
- </form>
 {include file="$admintemplatepath/footernavigation.template"}
 {include file="$admintemplatepath/footer.template"}
\ No newline at end of file

Added: plog/trunk/templates/admin/readinboxprivatemessage_form.template
===================================================================
--- plog/trunk/templates/admin/readinboxprivatemessage_form.template	                        (rev 0)
+++ plog/trunk/templates/admin/readinboxprivatemessage_form.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -0,0 +1,33 @@
+ <form name="readInboxPrivateMessage" method="post" action="admin.php">
+  <fieldset class="inputField">
+   <legend>{$locale->tr("readInboxPrivateMessage")}</legend>
+
+   <div class="field">
+    <label for="senderName">{$locale->tr("sender_name")}</label>
+    <span class="required"></span><br/>
+    <div class="formHelp">{$locale->tr("sender_name_help")}</div>
+     {assign var=senderInfo value=$privatemessage->getSenderInfo()}
+     <input type="text" value="{$senderInfo->getFullName()}" id="senderName" name="senderName" readonly=readonly />
+   </div>
+
+   <div class="field">
+    <label for="subject">{$locale->tr("subject")}</label>
+    <span class="required"></span><br/>
+    <div class="formHelp">{$locale->tr("subject_help")}</div>
+     <input type="text" value="{$privatemessage->getSubject()}" id="subject" name="subject" readonly=readonly />
+   </div>
+
+   <div class="field">
+    <label for="messageText">{$locale->tr("message_text")}</label>
+    <span class="required"></span>
+    <div class="formHelp">{$locale->tr("message_text_help")}</div>
+    <textarea name="messageText" cols="60" id="messageText" rows="5" readonly=readonly >{$privatemessage->getMessage()}</textarea>
+   </div>
+
+  </fieldset>
+  <div class="buttons">
+   <input type="hidden" name="op" value="replyPrivateMessage" />
+   <input type="button" name="Delete" value="{$locale->tr("delete")}" onClick="Lifetype.Forms.performUrl('?op=deleteInboxPrivateMessage&messageId={$messageId}');Lifetype.UI.OverlayManager.getActive().hide();return(false)" />
+   <input type="button" name="Reply" value="{$locale->tr("reply")}" onClick="Lifetype.UI.OverlayManager.getActive().hide();Lifetype.UI.ContentOverlay.createAndShow('?op=replyPrivateMessage&messageId={$messageId}');return(false)" />
+  </div>
+ </form>
\ No newline at end of file

Modified: plog/trunk/templates/admin/readoutboxprivatemessage.template
===================================================================
--- plog/trunk/templates/admin/readoutboxprivatemessage.template	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/templates/admin/readoutboxprivatemessage.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,38 +1,7 @@
 {include file="$admintemplatepath/header.template"}
 {include file="$admintemplatepath/navigation.template" showOpt=editOutboxPrivateMessages title=$locale->tr("readOutboxPrivateMessage")}
 
- <form name="readOutboxPrivateMessage" method="post" action="admin.php">
-  <fieldset class="inputField">
-   <legend>{$locale->tr("readOutboxPrivateMessage")}</legend>
+{include file="$admintemplatepath/readoutboxprivatemessage_form.template"}
 
-   <div class="field">
-    <label for="receiverName">{$locale->tr("receiver_name")}</label>
-    <span class="required"></span><br/>
-    <div class="formHelp">{$locale->tr("receiver_name_help")}</div>
-     {assign var=receiverInfo value=$privatemessage->getReceiverInfo()}
-     <input type="text" value="{$receiverInfo->getFullName()}" id="receiverName" name="receiverName" readonly=readonly />
-   </div>
-
-   <div class="field">
-    <label for="subject">{$locale->tr("subject")}</label>
-    <span class="required"></span><br/>
-    <div class="formHelp">{$locale->tr("subject_help")}</div>
-     <input type="text" value="{$privatemessage->getSubject()}" id="subject" name="subject" readonly=readonly />
-   </div>
-
-   <div class="field">
-    <label for="messageText">{$locale->tr("message_text")}</label>
-    <span class="required"></span>
-    <div class="formHelp">{$locale->tr("message_text_help")}</div>
-    <textarea name="messageText" cols="60" id="messageText" rows="5" readonly=readonly >{$privatemessage->getMessage()}</textarea>
-   </div>
-
-  </fieldset>
-  <div class="buttons">
-   <input type="hidden" name="op" value="deletePrivateMessage" />
-   <input type="hidden" name="messageId" value="{$messageId}" />
-   <input type="submit" name="Delete" value="{$locale->tr("delete")}" />
-  </div>
- </form>
 {include file="$admintemplatepath/footernavigation.template"}
 {include file="$admintemplatepath/footer.template"}
\ No newline at end of file

Added: plog/trunk/templates/admin/readoutboxprivatemessage_form.template
===================================================================
--- plog/trunk/templates/admin/readoutboxprivatemessage_form.template	                        (rev 0)
+++ plog/trunk/templates/admin/readoutboxprivatemessage_form.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -0,0 +1,31 @@
+ <form name="readOutboxPrivateMessage" method="post" action="admin.php">
+  <fieldset class="inputField">
+   <legend>{$locale->tr("readOutboxPrivateMessage")}</legend>
+
+   <div class="field">
+    <label for="receiverName">{$locale->tr("receiver_name")}</label>
+    <span class="required"></span><br/>
+    <div class="formHelp">{$locale->tr("receiver_name_help")}</div>
+     {assign var=receiverInfo value=$privatemessage->getReceiverInfo()}
+     <input type="text" value="{$receiverInfo->getFullName()}" id="receiverName" name="receiverName" readonly=readonly />
+   </div>
+
+   <div class="field">
+    <label for="subject">{$locale->tr("subject")}</label>
+    <span class="required"></span><br/>
+    <div class="formHelp">{$locale->tr("subject_help")}</div>
+     <input type="text" value="{$privatemessage->getSubject()}" id="subject" name="subject" readonly=readonly />
+   </div>
+
+   <div class="field">
+    <label for="messageText">{$locale->tr("message_text")}</label>
+    <span class="required"></span>
+    <div class="formHelp">{$locale->tr("message_text_help")}</div>
+    <textarea name="messageText" cols="60" id="messageText" rows="5" readonly=readonly >{$privatemessage->getMessage()}</textarea>
+   </div>
+
+  </fieldset>
+  <div class="buttons">
+   <input type="button" name="Delete" value="{$locale->tr("delete")}" onClick="Lifetype.Forms.performUrl('?op=deleteOutboxPrivateMessage&messageId={$messageId}');Lifetype.UI.OverlayManager.getActive().hide();return(false)" />
+  </div>
+ </form>
\ No newline at end of file

Modified: plog/trunk/templates/admin/replyprivatemessage.template
===================================================================
--- plog/trunk/templates/admin/replyprivatemessage.template	2008-01-08 04:17:53 UTC (rev 6150)
+++ plog/trunk/templates/admin/replyprivatemessage.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -1,49 +1,7 @@
 {include file="$admintemplatepath/header.template"}
 {include file="$admintemplatepath/navigation.template" showOpt=editInboxPrivateMessages title=$locale->tr("replyPrivateMessage")}
 
- <form name="replyPrivateMessage" method="post" action="admin.php">
-  <fieldset class="inputField">
-   <legend>{$locale->tr("replyPrivateMessage")}</legend>
-   {include file="$admintemplatepath/formvalidate.template"}
+{include file="$admintemplatepath/replyprivatemessage_form.template"}
 
-   <div class="field">
-    <label for="receiverName">{$locale->tr("receiver_name")}</label>
-    <span class="required">*</span><br/>
-    <div class="formHelp">{$locale->tr("receiver_name_help")}</div>
-     <input type="text" value="{$receiverName}" id="receiverName" name="receiverName" readonly=readonly />
-    {include file="$admintemplatepath/validate.template" field=receiverName message=$locale->tr("error_receiver_name")}
-   </div>
-
-   <div class="field">
-    <label for="subject">{$locale->tr("subject")}</label>
-    <span class="required">*</span><br/>
-    <div class="formHelp">{$locale->tr("subject_help")}</div>
-     <input type="text" value="{$subject}" id="subject" name="subject" />
-    {include file="$admintemplatepath/validate.template" field=subject message=$locale->tr("error_empty_subject")}
-   </div>
-
-   <div class="field">
-    <label for="replyText">{$locale->tr("reply_text")}</label>
-    <span class="required">*</span>
-    <div class="formHelp">{$locale->tr("reply_text_help")}</div>
-    <textarea name="replyText" cols="60" id="replyText" rows="5">{$messageText}</textarea>
-    {include file="$admintemplatepath/validate.template" field=replyText message=$locale->tr("error_empty_reply_text")}
-   </div>
-
-   <div class="field">
-    <label for="backupPrivateMessage">{$locale->tr("backup_private_message")}</label>
-    <div class="formHelp">
-     <input class="checkbox" type="checkbox" id="backupPrivateMessage" name="backupPrivateMessage" value="1" {if $backupPrivateMessage}checked="checked"{/if} />
-     {$locale->tr("backup_private_message_help")}
-    </div>
-   </div>
-
-  </fieldset>
-  <div class="buttons">
-   <input type="hidden" name="op" value="sendReplyPrivateMessage" />
-   <input type="reset" name="resetButton" value="{$locale->tr("reset")}" />
-   <input type="submit" name="Add" value="{$locale->tr("send")}" />
-  </div>
- </form>
 {include file="$admintemplatepath/footernavigation.template"}
 {include file="$admintemplatepath/footer.template"}
\ No newline at end of file

Added: plog/trunk/templates/admin/replyprivatemessage_form.template
===================================================================
--- plog/trunk/templates/admin/replyprivatemessage_form.template	                        (rev 0)
+++ plog/trunk/templates/admin/replyprivatemessage_form.template	2008-01-08 12:17:06 UTC (rev 6151)
@@ -0,0 +1,44 @@
+ <form id="replyPrivateMessage" method="post" action="admin.php" onSubmit="Lifetype.UI.Pages.PrivateMessages.addSubmitHook(this);return(false);">
+  <fieldset class="inputField">
+   <legend>{$locale->tr("replyPrivateMessage")}</legend>
+   {include file="$admintemplatepath/formvalidateajax.template"}
+
+   <div class="field">
+    <label for="receiverName">{$locale->tr("receiver_name")}</label>
+    <span class="required">*</span><br/>
+    <div class="formHelp">{$locale->tr("receiver_name_help")}</div>
+     <input type="text" value="{$receiverName}" id="receiverName" name="receiverName" readonly=readonly />
+     {include file="$admintemplatepath/validateajax.template" field=receiverName}
+   </div>
+
+   <div class="field">
+    <label for="subject">{$locale->tr("subject")}</label>
+    <span class="required">*</span><br/>
+    <div class="formHelp">{$locale->tr("subject_help")}</div>
+     <input type="text" value="{$subject}" id="subject" name="subject" />
+     {include file="$admintemplatepath/validateajax.template" field=subject}
+   </div>
+
+   <div class="field">
+    <label for="replyText">{$locale->tr("reply_text")}</label>
+    <span class="required">*</span>
+    <div class="formHelp">{$locale->tr("reply_text_help")}</div>
+    <textarea name="replyText" cols="60" id="replyText" rows="5">{$replyText}</textarea>
+    {include file="$admintemplatepath/validateajax.template" field=replyText}
+   </div>
+
+   <div class="field">
+    <label for="backupPrivateMessage">{$locale->tr("backup_private_message")}</label>
+    <div class="formHelp">
+     <input class="checkbox" type="checkbox" id="backupPrivateMessage" name="backupPrivateMessage" value="1" {if $backupPrivateMessage}checked="checked"{/if} />
+     {$locale->tr("backup_private_message_help")}
+    </div>
+   </div>
+
+  </fieldset>
+  <div class="buttons">
+   <input type="hidden" name="op" value="sendReplyPrivateMessage" />
+   <input type="reset" name="resetButton" value="{$locale->tr("reset")}" />
+   <input type="submit" name="Add" value="{$locale->tr("send")}" />
+  </div>
+ </form>
\ No newline at end of file



More information about the pLog-svn mailing list