function post(post,callback) { $.post("/forum.html?action=ajax", post,function(data){ if(data["mustlogin"]== 1) { mustLogin(); return false; } if(callback) callback(data); },"json" ); } function mustLogin() { alert("You must login to continue"); window.location.href="/forum/login.html"; } function register(callback) { var user = $("#txtForumUsername").val(); var email = $("#txtForumEmail").val(); var captcha = $("#txtForumCaptcha").val(); post({action:"register",user:user,email:email,captcha:captcha},callback); } function login(callback) { var user = $("#txtForumUsername").val(); var pass = $("#txtForumPassword").val(); post({action:"login",user:user,pass:pass},callback); } function postthread(callback) { var boardID = $("#txtBoardID").val(); var title = $("#txtThreadName").val(); var txt = $("#txtMessage").val(); post({action:"threadNew",title: title, boardID: boardID, comment: txt },callback); } function refreshPage() { window.location.reload(true); } function postCommentOnClick() { $("#postCommentLoading").show(); var threadID = $("#txtThreadID").val(); var txt = $("#txtMessage").val(); var messageID = $("#txtMessageID").val(); post({action:"messageNew",messageID:messageID,threadID: threadID, comment: txt},function(){refreshPage(); $("#postCommentLoading").hide();}); } function messageEditOnClick(sender) { var id = ($(sender).data('id')); var message = $(sender).closest(".comment").find(".message").text(); $("#txtMessage").val(message); $("#txtMessageID").val(id); } function postThreadOnClick() { $("#postCommentLoading").show(); postthread(function(data){ refreshPage(); $("#postCommentLoading").hide(); }); } function changePasswordOnClick() { var pass1 = $("#txtForumPassword").val(); var pass2 = $("#txtForumPassword2").val(); if(pass1 != pass2) { alert("Password must match"); } post({action:"changePassword",password:pass1},function(){ alert("Password Changed"); }); } function loginOnClick() { $("#loginLoading").show(); login(function(data){ if(data["result"] == 1) { $(".login-form").html("Login ok"); $("#loginError").hide(); window.location.href="/forum.html"; } else { $("#loginError").show(); } $("#loginLoading").hide(); }); } function registerOnClick() { register(function(data){ if(data["result"] == 1) { $("#forumRegister").html("Registration successfull, please follow instructions in email to continue"); $("#registerError").hide(); //window.location.href="/forum.html"; } else { $("#registerError").html(data["message"]).show(); } }); } $(document).ready(function(){ $("#btnPostMessage").click(function(event){ event.preventDefault(); postCommentOnClick(); return false; }); $("#btnPostThread").click(function(event){ event.preventDefault(); postThreadOnClick(); return false; }); $("#btnForumLogin").click(function(event){ event.preventDefault(); loginOnClick(); return false; }); $("#btnForumRegister").click(function(event){ event.preventDefault(); registerOnClick(); return false; }); $("#btnForumChangePassword").click(function(event){ event.preventDefault(); changePasswordOnClick(); return false; }); $(".jsMessageEdit").click(function(event){ event.preventDefault(); messageEditOnClick($(this)); return false; }); });