﻿function getNewMemberForm(){
    Centercom.Forum.ForumService.GetNewMemberForm("leftcontent",getNewMemberFormComplete,ajaxError);
}

function getNewMemberFormComplete(){
    var args = arguments;
    document.getElementById(args[0].DivId).innerHTML = args[0].HTML;   
}

function createUser(){
    var username = document.getElementById("username").value;
    var email = document.getElementById("email").value
    var email2 = document.getElementById("email2").value
    var password = document.getElementById("password").value
    var password2 = document.getElementById("password2").value
    var year = document.getElementById("year").value
    var month = document.getElementById("month").value
    var day = document.getElementById("day").value
    var culture = "SV-se";
    
    var ok = true;
    var strAlert = "Följande är fel ifyllt:"
    if(email != email2 || email.length == 0){
        ok = false;
        strAlert += "\nEmailfälten matchar inte varandra."
    }
    if(password != password2 || password.length == 0){
        ok = false;
        strAlert += "\nLösenordsfälten matchar inte varandra."
    }
    
    if(username.length == 0){
        ok = false;
        strAlert += "\nInget användarnamn är valt"
    }

    if(ok){
        Centercom.Forum.ForumService.CreateUser(email, password, username, year, month, day, culture, createUserComplete, ajaxError);
    }else{
        alert(strAlert);
    }
}

function createUserComplete(){
    var args = arguments;
    alert(args[0].Misc);    
    alert(args[0].Message);
    if(args[0].URL != null)
        document.location.href = args[0].URL;
    //else
        //alert(args[0].Misc);
}


function getForums(userId){
    Centercom.Forum.ForumService.GetForums("leftcontent",getForumsComplete,ajaxError);
}

function getForumsComplete(){
    var args = arguments;
    document.getElementById(args[0].DivId).innerHTML = args[0].HTML;
}

function getThreads(forumId, divId){
    var div = document.getElementById(divId);
    if(div.style.display == "block"){
        div.innerHTML = "";
        div.style.display = "none";  
    }else{
        Centercom.Forum.ForumService.GetThreads(forumId,divId,getThreadsComplete,ajaxError);    
    }
}

function getThreadsComplete(){
    var args = arguments;
    var div = document.getElementById(args[0].DivId);    
    //alert(args[0].HTML);
    div.innerHTML = args[0].HTML;
    div.style.display = "block";
}

function getPosts(threadId, divId, reload){
    var div = document.getElementById(divId);
    if(div.style.display == "block" && !reload){
        div.innerHTML = "";
        div.style.display = "none";   
    }else{
        Centercom.Forum.ForumService.GetPosts(threadId,divId,getPostsComplete,ajaxError);
    }
}

function getPostsComplete(){
    var args = arguments;
    var div = document.getElementById(args[0].DivId);    
    div.innerHTML = args[0].HTML;
    div.style.display = "block";
}

function ajaxError(result){
    alert(result.get_message());
}

function getReplyForm(forumId, threadId, title, divId, postsDivId){
    var div = document.getElementById(divId);
    if(div.style.display == "block"){
        div.innerHTML = "";
        div.style.display = "none";   
    }else{
        Centercom.Forum.ForumService.GetReplyForm(forumId,threadId, title, divId, postsDivId, getReplyFormComplete,ajaxError);    
    }
}

function getReplyFormComplete(){
    var args = arguments;
    var div = document.getElementById(args[0].DivId);    
    div.innerHTML = args[0].HTML;
    div.style.display = "block";
}

function sendPost(forumId, threadId, msgId, titleid, divId, postsDivId){
    var msg = document.getElementById(msgId).value;
    var title = document.getElementById(titleid).value;
    Centercom.Forum.ForumService.SendPost(forumId, threadId, title, msg, divId, postsDivId, sendPostComplete, ajaxError);
}

function sendPostComplete(){
    var args = arguments;
    var div = document.getElementById(args[0].DivId);
    div.style.display = "none";
    alert(args[0].Message);
    getPosts(args[0].ThreadId, args[0].Misc, true)
}

function getCreateThreadForm(forumId, divId){
    Centercom.Forum.ForumService.GetCreateThreadForm(forumId, divId, getCreateThreadFormComplete, ajaxError);
}

function getCreateThreadFormComplete(){
    var args = arguments;
    var div = document.getElementById(args[0].DivId);    
    div.innerHTML = args[0].HTML;
    div.style.display = "block";
}

function createNewThread(forumId, msgId, titleId, descId, DivId){
    var title = document.getElementById(titleId).value;
    var desc = document.getElementById(descId).value;
    var msg = document.getElementById(msgId).value;
    if(title.length > 0 && desc.length > 0 && msg.length > 0){
        Centercom.Forum.ForumService.CreateNewThread(forumId, title, desc, msg, DivId, createNewThreadComplete, ajaxError);    
    }else{
        alert("Samtliga fält är obligatoriska!");
    }
}

function createNewThreadComplete(){
    var args = arguments;
    var div = document.getElementById(args[0].DivId);
    alert(args[0].Message);
    getThreads(args[0].ForumId, args[0].DivId);
}

function login(divId){
    var em = document.getElementById("em").value;
    var pw = document.getElementById("pw").value;
    Centercom.Forum.ForumService.Login(em, pw, divId, loginComplete, ajaxError);
}

function loginComplete(){
    var args = arguments;
    var div = document.getElementById(args[0].DivId);
    if(args[0].Status){
        div.style.display = "none";
        document.getElementById("loggedOnInfo").innerHTML = args[0].HTML;
    }
    alert(args[0].Message);
}

function logout(){
    Centercom.Forum.ForumService.Logout(logoutComplete, ajaxError);
}

function logoutComplete(){
    var args = arguments;
    document.getElementById("loggedOnInfo").innerHTML = args[0].HTML;
    alert(args[0].Message);
    document.location.reload();
}
