[pLog-svn] r5735 - in plog/trunk: js/ui js/ui/pages templates/admin

oscar at devel.lifetype.net oscar at devel.lifetype.net
Thu Jul 26 17:50:46 EDT 2007


Author: oscar
Date: 2007-07-26 17:50:46 -0400 (Thu, 26 Jul 2007)
New Revision: 5735

Removed:
   plog/trunk/js/ui/pages/newpost.js
Modified:
   plog/trunk/js/ui/autosave.js
   plog/trunk/js/ui/pages/posts.js
   plog/trunk/templates/admin/editpost.template
   plog/trunk/templates/admin/editposts.template
   plog/trunk/templates/admin/globalsettings_templates.template
   plog/trunk/templates/admin/jsconfig.template
   plog/trunk/templates/admin/jslocale.template
   plog/trunk/templates/admin/newpost.template
Log:
Some more cleanup work in the "Write" and "Edit Post" pages.


Modified: plog/trunk/js/ui/autosave.js
===================================================================
--- plog/trunk/js/ui/autosave.js	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/js/ui/autosave.js	2007-07-26 21:50:46 UTC (rev 5735)
@@ -78,7 +78,7 @@
 {
 	postTopic = Lifetype.Dom.$('postTopic').value;
 	
-	if( htmlAreaEnabled )
+	if( Lifetype.Config.getValue( 'htmlarea_enabled' ))
 	{
 		postText = tinyMCE.getInstanceById('postText').getBody().innerHTML;
 	}
@@ -105,7 +105,7 @@
 	postNotSaved = getCookie( postNotSavedCookieName );
 	if ( postNotSaved == 1 )
 	{
-		Lifetype.Dom.$('autoSaveMessage').innerHTML = msgAutoSaveMessage;
+		Lifetype.Dom.$('autoSaveMessage').innerHTML = tr('warning_autosave_message');
 		Lifetype.Dom.$('autoSaveMessage').style.display = 'block';
 	}
 	else
@@ -128,7 +128,7 @@
 {
 	Lifetype.Dom.$('postTopic').value = loadBackupPostFromCookie( postTopicCookieName );
 	
-	if( htmlAreaEnabled )
+	if( Lifetype.Config.getValue( 'htmlarea_enabled' ))
 	{
 		tinyMCE.getInstanceById('postText').getBody().innerHTML  = loadBackupPostFromCookie( postTextCookieName );
 	}

Deleted: plog/trunk/js/ui/pages/newpost.js
===================================================================
--- plog/trunk/js/ui/pages/newpost.js	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/js/ui/pages/newpost.js	2007-07-26 21:50:46 UTC (rev 5735)
@@ -1,161 +0,0 @@
-/*****
- * Code to add categories via Ajax
- *****/
-Lifetype.UI.Pages.NewPost = function() {}
-
-/**
- * The following functions are called when clicking the "add category" button
- */
-Lifetype.UI.Pages.NewPost.addArticleCategoryAjax = function() 
-{
-	var categoryName = Lifetype.Dom.$F('newArticleCategory');
-	if (categoryName != '') {
-		var params = 'op=addArticleCategory' + '&categoryName=' + encodeURIComponent(categoryName) + "&output=json";
-		
-		// build the full URL
-		var url = Lifetype.Config.getValue( 'admin_base_url' ) + "?" + params;
-		
-		var transaction = YAHOO.util.Connect.asyncRequest( 'GET', url, { success:Lifetype.UI.Pages.NewPost.addArticleCategoryOption, failure:Lifetype.UI.Pages.NewPost.addArticleCategoryOption } ); 
-		
-		// show the "loading" message
-		Lifetype.Dom.$( 'newArticleCategory' ).value = msgSaving;
-		Lifetype.Dom.$( 'addArticleCategory' ).disabled = 1;
-	}
-}
-
-/**
- * when adding a new form, checks that there is at least one category selected
- */
-Lifetype.UI.Pages.NewPost.submitNewPost = function(form)
-{
-	if( form.postCategories.selectedIndex == -1 ) {
-		// we have no category selected!
-		window.alert(msgErrorNoCategorySelected);
-		return false;
-    }  
-    
-	return true;
-}
-
-/**
- * Callback for the 'add category' feature
- */
-Lifetype.UI.Pages.NewPost.addArticleCategoryOption = function( o )
-{
-	//put returned XML in the textarea
-	var msg = Lifetype.JSon.decode( o.responseText );
-	var success = msg.success;
-	var message = msg.message;
-	if (!success) {
-		window.alert(message);
-	}
-	else {
-		var catId = msg.category.id;
-		var catName = msg.category.name;
-	    for(i=Lifetype.Dom.$( 'postCategories' ).length; i>0; i--)
-	    {
-			tmpText = Lifetype.Dom.$( 'postCategories' ).options[i-1].text;
-			tmpValue = Lifetype.Dom.$( 'postCategories' ).options[i-1].value;
-			tmpSelected = Lifetype.Dom.$( 'postCategories' ).options[i-1].selected;
-			Lifetype.Dom.$( 'postCategories' ).options[i] = new Option( tmpText, tmpValue );
-			Lifetype.Dom.$( 'postCategories' ).options[i].selected = tmpSelected;
-	    }
-	    Lifetype.Dom.$( 'postCategories' ).options[0] = new Option( catName, catId );
-	    Lifetype.Dom.$( 'postCategories' ).options[0].selected = true;
-	    Lifetype.Dom.$( 'newArticleCategory' ).value = '';
-	    Lifetype.Dom.$( 'addArticleCategory' ).disabled = 0;
-	}
-}
-
-/**
- * Save the article via Ajax in the background
- */
-/**
- * The following functions are called when clicking the "save draft and continue" button
- */
-Lifetype.UI.Pages.NewPost.saveDraftArticleAjax = function()
-{
-	// if there is no category selected, then we won't save a draft!
-	form = document.getElementById( "newPost" );
-
-	if( form.postTopic.value == '' ) {
-		window.alert( msgErrorPostTopic );
-		return false;
-	}
-
-    // Can't use form.postText.value, becasue the form.postText.value still "null"
-    if( htmlAreaEnabled ) {
-		postText = tinyMCE.getContent('postText');
-	} else {
-		postText = form.postText.value;
-    }
-
-    if (postText == '') {
-		window.alert( msgErrorPostText );
-		return false;
-	}
-
-	if( !Lifetype.UI.Pages.NewPost.submitNewPost( form ))
-		return false;	
-
-    var formData = Lifetype.UI.Pages.NewPost.getPostEditFormElements( "newPost" );
-
-	var params = 'op=saveDraftArticleAjax&'+formData;
-	var url = Lifetype.Config.getValue( 'admin_base_url' ) + "?" + params;
-	
-	var transaction = YAHOO.util.Connect.asyncRequest( 'GET', url, { success:Lifetype.UI.Pages.NewPost.saveDraftArticleResponse }); 
-}
-
-/**
- * Callback for the "save draft" functionality
- */
-Lifetype.UI.Pages.NewPost.saveDraftArticleResponse = function(originalRequest)
-{
-	// fetcth the json response
-	var msg = Lifetype.JSon.decode( originalRequest.responseText );
-	
-	var id = msg.result._id;
-	var message = msg.message;
-	$( 'postId' ).value = id;
-	window.alert(message);
-}
-
-/**
- * Gets all the fields from the "new post" form
- */
-Lifetype.UI.Pages.NewPost.getPostEditFormElements = function( formId )
-{
-	var formData = '';
-	
-	form = document.getElementById( formId );
-	
-	for(i = 0; i < form.elements.length; i++ ) {
-		itemName = form.elements[i].name;
-		itemValue = form.elements[i].value;
-		
-		if( itemName != "op" ) {
-			// we don't want to send more than one "op" parameter... do we?
-			if( itemName == "postCategories[]" ) {
-				// we need to have a special case for this one because it's a list that
-				// allows multiple selection... only using the "value" attribute will
-				// return one of the items and we would like to have them all
-				for (var j = 0; j < form.elements[i].options.length; j++) {
-					if (form.elements[i].options[j].selected) 
-						formData = formData + itemName + "=" + form.elements[i].options[j].value + "&";
-				}
-			}
-			else if( itemName == "postText" && htmlAreaEnabled ) {
-			    formData = formData + itemName + "=" + encodeURIComponent(tinyMCE.getContent('postText')) + "&";
-			}
-			else if( itemName == "postExtendedText" && htmlAreaEnabled ) {
-			    formData = formData + itemName + "=" + encodeURIComponent(tinyMCE.getContent('postExtendedText')) + "&";
-			}
-			else {
-				// for all other elements, normal handling
-			    formData = formData + itemName + "=" + encodeURIComponent(itemValue) + "&";
-			}
-		}
-    }	
-    
-    return formData;
-}
\ No newline at end of file

Modified: plog/trunk/js/ui/pages/posts.js
===================================================================
--- plog/trunk/js/ui/pages/posts.js	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/js/ui/pages/posts.js	2007-07-26 21:50:46 UTC (rev 5735)
@@ -52,12 +52,179 @@
 	return( false );
 }
 
-YAHOO.util.Event.addListener( window, "load", function() {
-	var t = new Lifetype.UI.TableEffects( "posts" );
-	t.stripe();
-	t.highlightRows();
+Lifetype.UI.Pages.Posts.selectOperation = function( form, mode )
+{
+	if( Lifetype.UI.Pages.Posts.preview ) {	
+		document.postEdit.op.value = "previewPost";
+		document.postEdit.target = "admin";
+		window.open("", form.target, "scrollbars=yes,resizable=yes,toolbar=no" );
+		
+		return true;
+	}
+	else {
+		document.postEdit.op.value = mode;
+		document.postEdit.target   = "";
+		document.postEdit.action   = "admin.php";
+
+		Lifetype.Forms.AjaxFormProcessor(form.id,'?output=json');
+
+		return false;
+	}
+}
+
+/**
+ * The following functions are called when clicking the "add category" button
+ */
+Lifetype.UI.Pages.Posts.addArticleCategoryAjax = function() 
+{
+	var categoryName = Lifetype.Dom.$F('newArticleCategory');
+	if (categoryName != '') {
+		var params = 'op=addArticleCategory' + '&categoryName=' + encodeURIComponent(categoryName) + "&output=json";
+		
+		// build the full URL
+		var url = Lifetype.Config.getValue( 'admin_base_url' ) + "?" + params;
+		
+		var transaction = YAHOO.util.Connect.asyncRequest( 'GET', url, { success:Lifetype.UI.Pages.Posts.addArticleCategoryOption, failure:Lifetype.UI.Pages.Posts.addArticleCategoryOption } ); 
+		
+		// show the "loading" message
+		Lifetype.Dom.$( 'newArticleCategory' ).value = tr('saving_message');
+		Lifetype.Dom.$( 'addArticleCategory' ).disabled = 1;
+	}
+}
+
+/**
+ * when adding a new form, checks that there is at least one category selected
+ */
+Lifetype.UI.Pages.Posts.submitNewPost = function(form)
+{
+	if( form.postCategories.selectedIndex == -1 ) {
+		// we have no category selected!
+		window.alert(tr( 'msgErrorNoCategorySelected' ));
+		return false;
+    }  
+    
+	return true;
+}
+
+/**
+ * Callback for the 'add category' feature
+ */
+Lifetype.UI.Pages.Posts.addArticleCategoryOption = function( o )
+{
+	//put returned XML in the textarea
+	var msg = Lifetype.JSon.decode( o.responseText );
+	var success = msg.success;
+	var message = msg.message;
+	if (!success) {
+		window.alert(message);
+	}
+	else {
+		var catId = msg.result.id;
+		var catName = msg.result.name;
+	    for(i=Lifetype.Dom.$( 'postCategories' ).length; i>0; i--)
+	    {
+			tmpText = Lifetype.Dom.$( 'postCategories' ).options[i-1].text;
+			tmpValue = Lifetype.Dom.$( 'postCategories' ).options[i-1].value;
+			tmpSelected = Lifetype.Dom.$( 'postCategories' ).options[i-1].selected;
+			Lifetype.Dom.$( 'postCategories' ).options[i] = new Option( tmpText, tmpValue );
+			Lifetype.Dom.$( 'postCategories' ).options[i].selected = tmpSelected;
+	    }
+	    Lifetype.Dom.$( 'postCategories' ).options[0] = new Option( catName, catId );
+	    Lifetype.Dom.$( 'postCategories' ).options[0].selected = true;
+	    Lifetype.Dom.$( 'newArticleCategory' ).value = '';
+	    Lifetype.Dom.$( 'addArticleCategory' ).disabled = 0;
+	}
+}
+
+/**
+ * Save the article via Ajax in the background
+ */
+/**
+ * The following functions are called when clicking the "save draft and continue" button
+ */
+Lifetype.UI.Pages.Posts.saveDraftArticleAjax = function()
+{
+	// if there is no category selected, then we won't save a draft!
+	form = document.getElementById( "newPost" );
+
+	if( form.postTopic.value == '' ) {
+		window.alert( tr('error_missing_post_topic'));
+		return false;
+	}
+
+    // Can't use form.postText.value, becasue the form.postText.value still "null"
+    if( Lifetype.Config.getValue( 'htmlarea_enabled' )) {
+		postText = tinyMCE.getContent('postText');
+	} else {
+		postText = form.postText.value;
+    }
+
+    if (postText == '') {
+		window.alert( tr('error_missing_post_text'));
+		return false;
+	}
+
+	if( !Lifetype.UI.Pages.Posts.submitNewPost( form ))
+		return false;	
+
+    var formData = Lifetype.UI.Pages.Posts.getPostEditFormElements( "newPost" );
+
+	var params = 'op=saveDraftArticleAjax&'+formData;
+	var url = Lifetype.Config.getValue( 'admin_base_url' ) + "?" + params;
 	
-	// reload the list when successfully deleting an item and processing one of the forms
-	Lifetype.Forms.Events.performRequestSuccessEvent.subscribe( Lifetype.UI.AjaxPager.reload );	
-	Lifetype.Forms.Events.formProcessorSuccessEvent.subscribe( Lifetype.UI.AjaxPager.reload );	
-});
+	var transaction = YAHOO.util.Connect.asyncRequest( 'GET', url, { success:Lifetype.UI.Pages.Posts.saveDraftArticleResponse }); 
+}
+
+/**
+ * Callback for the "save draft" functionality
+ */
+Lifetype.UI.Pages.Posts.saveDraftArticleResponse = function(originalRequest)
+{
+	// fetcth the json response
+	var msg = Lifetype.JSon.decode( originalRequest.responseText );
+	
+	var id = msg.result._id;
+	var message = msg.message;
+	Lifetype.Dom.$( 'postId' ).value = id;
+	window.alert(message);
+}
+
+/**
+ * Gets all the fields from the "new post" form
+ */
+Lifetype.UI.Pages.Posts.getPostEditFormElements = function( formId )
+{
+	var formData = '';
+	
+	form = document.getElementById( formId );
+	
+	for(i = 0; i < form.elements.length; i++ ) {
+		itemName = form.elements[i].name;
+		itemValue = form.elements[i].value;
+		
+		if( itemName != "op" ) {
+			// we don't want to send more than one "op" parameter... do we?
+			if( itemName == "postCategories[]" ) {
+				// we need to have a special case for this one because it's a list that
+				// allows multiple selection... only using the "value" attribute will
+				// return one of the items and we would like to have them all
+				for (var j = 0; j < form.elements[i].options.length; j++) {
+					if (form.elements[i].options[j].selected) 
+						formData = formData + itemName + "=" + form.elements[i].options[j].value + "&";
+				}
+			}
+			else if( itemName == "postText" && Lifetype.Config.getValue( 'htmlarea_enabled' )) {
+			    formData = formData + itemName + "=" + encodeURIComponent(tinyMCE.getContent('postText')) + "&";
+			}
+			else if( itemName == "postExtendedText" && Lifetype.Config.getValue( 'htmlarea_enabled' )) {
+			    formData = formData + itemName + "=" + encodeURIComponent(tinyMCE.getContent('postExtendedText')) + "&";
+			}
+			else {
+				// for all other elements, normal handling
+			    formData = formData + itemName + "=" + encodeURIComponent(itemValue) + "&";
+			}
+		}
+    }	
+    
+    return formData;
+}
\ No newline at end of file

Modified: plog/trunk/templates/admin/editpost.template
===================================================================
--- plog/trunk/templates/admin/editpost.template	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/templates/admin/editpost.template	2007-07-26 21:50:46 UTC (rev 5735)
@@ -4,7 +4,7 @@
 <script type="text/javascript" src="js/jscalendar/calendar_stripped.js"></script>
 <script type="text/javascript" src="js/jscalendar/lang/calendar-en.js"></script>
 <script type="text/javascript" src="js/jscalendar/calendar-setup_stripped.js"></script>
-<script type="text/javascript" src="js/ui/plogui.js"></script>
+{js src="js/ui/pages/posts.js"}
 {assign var=htmlarea value=$blogsettings->getValue("htmlarea_enabled")}
  {if $htmlarea}
   <script type="text/javascript" src="js/tinymce/tiny_mce_gzip.php"></script>
@@ -12,32 +12,11 @@
  {else}
   <script type="text/javascript" src="js/editor/lifetypeeditor.js"></script>
  {/if} 
-
- <script type="text/javascript">
-  
+ <script type="text/javascript">  
   // some messages that we are going to need in the functions above 
-  var htmlAreaEnabled = {if $htmlarea==0 || !$htmlarea}false{else}true{/if};
-  var msgSaving = "{$locale->tr("saving_message")}";  
-  var preview = false;
-
-{literal} 
-function selectOperation( t )
-{
-	if( preview ) {	
-		document.newPost.op.value="previewPost";
-		window.open("", t, "scrollbars=yes,resizable=yes,toolbar=no" );
-		return true;
-	}
-	else {
-		document.newPost.op.value="updatePost";
-		document.newPost.target="";
-		document.newPost.action="admin.php";
-		return true;
-	}
-}
-{/literal}
+  Lifetype.UI.Pages.Posts.preview = false;
  </script>
-  <form name="newPost" id="newPost" action="admin.php" method="post" onSubmit="return selectOperation(this.target);" target="admin">   
+  <form name="postEdit" id="postEdit" action="admin.php" method="post" onSubmit="return Lifetype.UI.Pages.Posts.selectOperation(this,'updatePost');" target="admin">   
    <fieldset class="inputField">
    <legend>{$locale->tr("editPost")}</legend>
    <div id="mainPanel" style="float:left; width: 73%; border-right: 1px solid #DEDEDE;">  
@@ -151,7 +130,7 @@
            {/foreach}
          </select>
          <input type="text" name="newArticleCategory" id="newArticleCategory" style="width:100px; margin-top:3px;" size="16" value="" />
-         <input type="button" name="addArticleCategory" id="addArticleCategory" style="width:35px; margin-top:3px;" value="{$locale->tr("add")}" onclick="Lifetype.UI.Pages.NewPost.addArticleCategoryAjax()" />
+         <input type="button" name="addArticleCategory" id="addArticleCategory" style="width:35px; margin-top:3px;" value="{$locale->tr("add")}" onclick="Lifetype.UI.Pages.Posts.addArticleCategoryAjax()" />
         {include file="$admintemplatepath/validate.template" field=postCategories message=$locale->tr("error_no_categories")}	   
 	   </div>
 	   
@@ -199,8 +178,8 @@
 	</div>
 	</fieldset>
 	<div class="buttons">  
-      <input type="submit" name="previewPost" value="{$locale->tr("preview")}" onClick="preview=true" />	
-      <input type="submit" name="updatePost" value="{$locale->tr("update")}" onClick="preview=false"/>
+      <input type="submit" name="previewPost" value="{$locale->tr("preview")}" onClick="Lifetype.UI.Pages.Posts.preview=true" />	
+      <input type="submit" name="updatePost" value="{$locale->tr("update")}" onClick="Lifetype.UI.Pages.Posts.preview=false"/>
       <input type="hidden" name="op" value="updatePost"/>
       <input type="hidden" name="postId" id="postId" value="{$postId}"/>
 	</div>  	

Modified: plog/trunk/templates/admin/editposts.template
===================================================================
--- plog/trunk/templates/admin/editposts.template	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/templates/admin/editposts.template	2007-07-26 21:50:46 UTC (rev 5735)
@@ -1,5 +1,18 @@
 {include file="$admintemplatepath/header.template"}
 {include file="$admintemplatepath/navigation.template" showOpt=editPosts title=$locale->tr("editPosts")}
+{literal}
+<script type="text/javascript">
+YAHOO.util.Event.addListener( window, "load", function() {
+	var t = new Lifetype.UI.TableEffects( "posts" );
+	t.stripe();
+	t.highlightRows();
+
+	// reload the list when successfully deleting an item and processing one of the forms
+	Lifetype.Forms.Events.performRequestSuccessEvent.subscribe( Lifetype.UI.AjaxPager.reload );	
+	Lifetype.Forms.Events.formProcessorSuccessEvent.subscribe( Lifetype.UI.AjaxPager.reload );	
+});
+</script>
+{/literal}
 {js src="js/ui/pages/global.js"}
 {js src="js/ui/pages/posts.js"}
 

Modified: plog/trunk/templates/admin/globalsettings_templates.template
===================================================================
--- plog/trunk/templates/admin/globalsettings_templates.template	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/templates/admin/globalsettings_templates.template	2007-07-26 21:50:46 UTC (rev 5735)
@@ -77,4 +77,11 @@
        <option value="2" {if $template_load_order == 2} selected="selected" {/if} />{$locale->tr("template_load_order_default_first")}</option>
      </select>
    </div>
- </div>
+   <!-- trim_whitespace_output -->
+   <div class="field">
+    <label for="config[trim_whitespace_output]">trim_whitespace_output</label>
+	<div class="formHelp">{$locale->tr("help_trim_whitespace_output")}</div>
+    <input class="radio" type="radio" id="config[trim_whitespace_output]" name="config[trim_whitespace_output]" value="1" {if $trim_whitespace_output == 1 } checked="checked" {/if} />{$locale->tr("yes")}
+    <input class="radio" type="radio" id="config[trim_whitespace_output]" name="config[trim_whitespace_output]" value="0" {if $trim_whitespace_output == 0 } checked="checked" {/if} />{$locale->tr("no")}
+   </div>
+ </div>
\ No newline at end of file

Modified: plog/trunk/templates/admin/jsconfig.template
===================================================================
--- plog/trunk/templates/admin/jsconfig.template	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/templates/admin/jsconfig.template	2007-07-26 21:50:46 UTC (rev 5735)
@@ -9,4 +9,5 @@
 	Lifetype.Config.setValue( 'script_name', "{$config->getValue("script_name")}" );	
 	Lifetype.Config.setValue( 'admin_base_url', "{$url->getBaseUrl(false)}/admin.php" );	
 	Lifetype.Config.setValue( 'blog_id', "{$blog->getId()}" );
+  	Lifetype.Config.setValue( 'htmlarea_enabled', {if $htmlarea==0 || !$htmlarea}false{else}true{/if} );	
 </script>
\ No newline at end of file

Modified: plog/trunk/templates/admin/jslocale.template
===================================================================
--- plog/trunk/templates/admin/jslocale.template	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/templates/admin/jslocale.template	2007-07-26 21:50:46 UTC (rev 5735)
@@ -18,4 +18,11 @@
 // siteblogs.template
 Lifetype.Locale.add( 'error_select_status', '{$locale->tr("error_select_status")}' );
 
+// newpost.template and editpost.template
+Lifetype.Locale.add( 'error_no_category_selected', "{$locale->tr("error_no_category_selected")}" );
+Lifetype.Locale.add( 'error_missing_post_topic', "{$locale->tr("error_missing_post_topic")}" );
+Lifetype.Locale.add( 'error_missing_post_text', "{$locale->tr("error_missing_post_text")}" );
+Lifetype.Locale.add( 'saving_message', "{$locale->tr("saving_message")}");
+Lifetype.Locale.add( 'warning_autosave_message', '{$locale->tr("warning_autosave_message")|escape:javascript}' );
+
 </script>
\ No newline at end of file

Modified: plog/trunk/templates/admin/newpost.template
===================================================================
--- plog/trunk/templates/admin/newpost.template	2007-07-26 20:51:27 UTC (rev 5734)
+++ plog/trunk/templates/admin/newpost.template	2007-07-26 21:50:46 UTC (rev 5735)
@@ -1,8 +1,7 @@
 {include file="$admintemplatepath/header.template"}
-{js src="js/ui/pages/newpost.js"}
+{js src="js/ui/pages/posts.js"}
 {include file="$admintemplatepath/navigation.template" showOpt=newPost title=$locale->tr("newPost")}
 {assign var=htmlarea value=$blogsettings->getValue("htmlarea_enabled")}
- <script type="text/javascript" src="js/ui/plogui.js"></script>
  <link rel="stylesheet" type="text/css" media="all" href="js/jscalendar/calendar-win2k-cold-1.css" title="win2k-cold-1" />
  <script type="text/javascript" src="js/jscalendar/calendar_stripped.js"></script>
  <script type="text/javascript" src="js/jscalendar/lang/calendar-en.js"></script>
@@ -14,48 +13,12 @@
  {else}
   <script type="text/javascript" src="js/editor/lifetypeeditor.js"></script>
  {/if}
- <script type="text/javascript">
-  
-  // some messages that we are going to need in the functions above
-  var msgErrorMakingRequest = "{$locale->tr("error_sending_request")}";
-  var msgErrorNoCategorySelected = "{$locale->tr("error_no_category_selected")}";
-  var xmlHttpRequestSupportEnabled = '{$xmlHttpRequestSupportEnabled}';
-  var htmlAreaEnabled = {if $htmlarea==0 || !$htmlarea}false{else}true{/if};
-  var msgErrorPostTopic = "{$locale->tr("error_missing_post_topic")}";
-  var msgErrorPostText = "{$locale->tr("error_missing_post_text")}";
-  var msgSaving = "{$locale->tr("saving_message")}";
-  var msgAutoSaveMessage = '{$locale->tr("warning_autosave_message")|escape:javascript}';
-  
-  var todayDay = '{$today->getDay()}';
-  var todayMonth = '{$today->getMonth()}';
-  var todayYear = '{$today->getYear()}'; 
-  
+ <script type="text/javascript">  
   // this needs to be pre-initialized
-  var preview = false; 
-
-{literal} 
-function selectOperation( t )
-{
-	if( preview ) {	
-		document.newPost.op.value="previewPost";
-		document.newPost.target="admin";
-		window.open("", t, "scrollbars=yes,resizable=yes,toolbar=no" );
-		return true;
-	}
-	else {
-		document.newPost.op.value="addPost";
-		document.newPost.target="";
-		document.newPost.action="admin.php";
-
-		Lifetype.Forms.AjaxFormProcessor(document.getElementById('newPost').id,'?output=json');
-
-		return false;
-	}
-}
-{/literal}
+  Lifetype.UI.Pages.Posts.preview = false; 
 </script>
  
-  <form name="newPost" id="newPost" action="admin.php" method="post" onSubmit="return selectOperation(this.target);" target="admin">   
+  <form name="postEdit" id="postEdit" action="admin.php" method="post" onSubmit="return Lifetype.UI.Pages.Posts.selectOperation(this, 'addPost');" target="admin">   
    <fieldset class="inputField">
    <legend>{$locale->tr("newPost")}</legend>
    <div id="mainPanel" style="float:left; width: 73%; border-right: 1px solid #DEDEDE;">
@@ -177,7 +140,7 @@
            {/foreach}
          </select>
          <input type="text" name="newArticleCategory" id="newArticleCategory" style="width:100px; margin-top:3px;" size="16" value="" />
-         <input type="button" name="addArticleCategory" id="addArticleCategory" style="width:35px; margin-top:3px;" value="{$locale->tr("add")}" onclick="Lifetype.UI.Pages.NewPost.addArticleCategoryAjax()" />
+         <input type="button" name="addArticleCategory" id="addArticleCategory" style="width:35px; margin-top:3px;" value="{$locale->tr("add")}" onclick="Lifetype.UI.Pages.Posts.addArticleCategoryAjax()" />
         {include file="$admintemplatepath/validateajax.template" field=postCategories}	   
 	   </div>
 	   
@@ -237,9 +200,9 @@
 	</div>
 	</fieldset>
     <div class="buttons">
-		<input type="button" name="saveDraftAndContinue" value="{$locale->tr("save_draft_and_continue")}" onclick="Lifetype.UI.Pages.NewPost.saveDraftArticleAjax()" />
-		<input type="submit" name="previewPost" value="{$locale->tr("preview")}" onClick="preview=true"/>
-		<input type="submit" name="addPost" value="{$locale->tr("add_post")}" onClick="preview=false" />
+		<input type="button" name="saveDraftAndContinue" value="{$locale->tr("save_draft_and_continue")}" onclick="Lifetype.UI.Pages.Posts.saveDraftArticleAjax()" />
+		<input type="submit" name="previewPost" value="{$locale->tr("preview")}" onClick="Lifetype.UI.Pages.Posts.preview=true"/>
+		<input type="submit" name="addPost" value="{$locale->tr("add_post")}" onClick="Lifetype.UI.Pages.Posts.preview=false" />
 		<input type="hidden" name="isDraft" value="" />
 		<input type="hidden" name="op" value="addPost" />
 		<input type="hidden" name="postId" id="postId" value="{$postId}" />



More information about the pLog-svn mailing list