function showNewBlogForm () { var oDropdown = getObj ("blogtype"); var sType = oDropdown.options[oDropdown.selectedIndex].value; displayObj ("add_blog_start", false); displayObj ("get_blog_result_" + sType, false); displayObj ("add_blog_form_" + sType, true); } function startMode() { displayObj ("add_blog_form_blogger", false); displayObj ("get_blog_result_blogger", false); displayObj ("add_blog_form_wordpress", false); displayObj ("get_blog_result_wordpress", false); displayObj ("blog_pending", false); displayObj ("add_blog_start", true); } function getBlogByUser (sType) { displayObj ("blog_pending", true); var sUsername = encodeURIComponent (getObj ("username_" + sType).value); var sPassword = encodeURIComponent (getObj ("password_" + sType).value); var sHandler = handleGetBlogResult; var sURL = "blog.php"; var sQS = "action=get_blog&u=" + sUsername + "&p=" + sPassword + "&t=" + sType; if( sType == 'wordpress' ) { sQS += '&l=' + encodeURIComponent( getObj ("url_" + sType).value ); } request (sURL, sQS, sHandler); } function handleGetBlogResult () { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { var oXML = xmlhttp.responseXML; var oRedirect = oXML.getElementsByTagName ("redirect").item(0); if (oRedirect) { self.location = oRedirect.getAttribute ("url"); } else { var oError = oXML.getElementsByTagName ("e").item(0); if (oError) { alert (oError.getAttribute ("m")); } else { displayObj ("blog_pending", false); switch (xmlhttp.responseText) { case "0": // No blog found. displayObj ("add_blog_form_blogger", false); displayObj ("add_blog_start", true); getObj ("get_blog_result_blogger").innerHTML = "Sorry, no blogs were found for the details you provided." displayObj ("get_blog_result_blogger", true); break; case "1": // 1 blog found and added. startMode(); refreshList(); break; default: // More than 1 blog found. User must choose one. displayObj ("add_blog_form_blogger", false); getObj ("blog_dropdown_blogger").innerHTML = xmlhttp.responseText; displayObj ("get_blog_result_blogger", true); } } } } } } function saveBlog (sType) { displayObj ("blog_pending", true); displayObj ("add_blog_form_blogger", false); displayObj ("get_blog_result_blogger", false); var sBlogId = getObj ("chooseBlog").options[getObj ("chooseBlog").selectedIndex].value; var sHandler = handleSaveResult; var sURL = "blog.php"; var sQS = "t=" + sType + "&action=save" + "&u=" + encodeURIComponent (getObj ("username_" + sType).value) + "&p=" + encodeURIComponent (getObj ("password_" + sType).value) + "&b=" + sBlogId ; request (sURL, sQS, sHandler); } function handleSaveResult () { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { displayObj ("blog_pending", false); var oXML = xmlhttp.responseXML; var oRedirect = oXML.getElementsByTagName ("redirect").item(0); if (oRedirect) { self.location = oRedirect.getAttribute ("url"); } else { var oError = oXML.getElementsByTagName ("e").item(0); if (oError) { alert (oError.getAttribute ("m")); } else { startMode(); refreshList(); } } } } } function refreshList () { var sHandler = handleRefreshResult; var sURL = "blog.php"; var sQS = "&action=list"; request (sURL, sQS, sHandler); } function handleRefreshResult () { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { var oXML = xmlhttp.responseXML; var oRedirect = oXML.getElementsByTagName ("redirect").item(0); if (oRedirect) { self.location = oRedirect.getAttribute ("url"); } else { var oError = oXML.getElementsByTagName ("e").item(0); if (oError) { alert (oError.getAttribute ("m")); } else { getObj ("blog_list").innerHTML = xmlhttp.responseText; } } } } } function showPostForm (iProductId, oEvent) { displayObj ("blogpost", false); displayObj ("pending", false); // Fill fields var oTitle = getObj ("blogtitle"); if (oTitle != null) { oTitle.value = getObj ("prodname_" + iProductId).innerHTML; getObj ("blogbody").value = getObj ("prodsynop_" + iProductId).innerHTML; getObj ("blogproductid").value = iProductId; } // Show form displayObj ("postresult", false); displayObj ("postblogform", true); moveObj ("blogpost", oEvent, -100); displayObj ("blogpost", true); } function closeUpdateForm () { displayObj ("blogupdate_window", false); displayObj ("blogupdate_pending", false); displayObj ("blogupdate_failure", false); displayObj ("blogupdate_success", false); // Types: displayObj ("blogupdate_form_blogger", false); // repeat for every type } function showUpdateForm (sType, iBlogId, oEvent) { oBlogId = getObj ("update_blogid_" + sType); oBlogId.value = iBlogId; displayObj ("blogupdate_form_" + sType, true); moveObj ("blogupdate_window", oEvent, -100); displayObj ("blogupdate_window", true); } function updateBlogSettings (sType) { displayObj ("blogupdate_form_" + sType, false); displayObj ("blogupdate_pending", true); var sUsername = getObj ("update_username_" + sType).value; var sPassword = getObj ("update_password_" + sType).value; var sBlogId = getObj ("update_blogid_" + sType).value; var sHandler = handleUpdateResult; var sURL = "blog.php"; var sQS = "action=update&u=" + sUsername + "&p=" + sPassword + "&b=" + sBlogId; if( sType == 'wordpress' ) { sQS += '&l=' + encodeURIComponent( getObj ("update_url_" + sType).value ); } request (sURL, sQS, sHandler); } function handleUpdateResult () { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { var oXML = xmlhttp.responseXML; var oRedirect = oXML.getElementsByTagName ("redirect").item(0); if (oRedirect) { self.location = oRedirect.getAttribute ("url"); } else { var oError = oXML.getElementsByTagName ("e").item(0); if (oError) { alert (oError.getAttribute ("m")); } else { displayObj ("blogupdate_pending", false); switch (xmlhttp.responseText) { case "0": // No blog found. displayObj ("blogupdate_failure", true); break; case "1": // 1 blog found and added. displayObj ("blogupdate_success", true); refreshList(); break; } } } } } } function postBlogEntry () { var oTitle = getObj ("blogtitle"); var oBody = getObj ("blogbody"); var oProductId = getObj ("blogproductid"); var oBlogIds = getObj ("blog_ids"); var sHandler = handlePostBlogResult; var sURL = "blog.php"; var sQS = "action=post&t=" + encodeURIComponent (oTitle.value) + "&b=" + encodeURIComponent (oBody.value) + "&p=" + oProductId.value; displayObj ("postblogform", false); displayObj ("pending", true); // Get the checked blog_ids var frm = getObj ("postblogform"); var bBlogChecked = false; for (var i = 0; i < frm.elements.length; i++) { if ( frm.elements[i].id.indexOf("blog_id_") > -1 ) { if (frm.elements[i].checked) { sQS += "&blog_ids[]=" + frm.elements[i].id.substring (8); bBlogChecked = true; } } } if (bBlogChecked) { request (sURL, sQS, sHandler); } else { alert ("Please use the checkbox(es) to indicate which blog(s) you would like to update."); } } function handlePostBlogResult () { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { var oXML = xmlhttp.responseXML; var oRedirect = oXML.getElementsByTagName ("redirect").item(0); if (oRedirect) { self.location = oRedirect.getAttribute ("url"); } else { var oError = oXML.getElementsByTagName ("e").item(0); if (oError) { alert (oError.getAttribute ("m")); } else { displayObj ("pending", false); displayObj ("postblogform", false); getObj ("postresult").innerHTML = xmlhttp.responseText; displayObj ("postresult", true); } } } } }