﻿var popup_window=null;
function open_popup_window(url,bid,Tag,IDTag)
{
    var url_and_vars = url + '?id=' + bid;
    var setWindow="dialogWidth=600px; dialogHeight=320px;";
    popup_window = window.showModalDialog(url,"",setWindow);
	if(popup_window != undefined){
        AttachmentList(popup_window, Tag, IDTag);
	}
}

function opennewsletter(url,bid,Tag,IDTag){
	emailwindow=dhtmlmodal.open('EmailBox', 'iframe', url,'', 'width=616px,height=340px,center=1,resize=0,scrolling=1')
	emailwindow.onclose=function(){
	    AttachmentList(window.dialogArguments,Tag,IDTag);
	    return true;
	}
}

function AttachmentList(v, tag, idtag)
{               
    var fileArr=new Array();
    var list="<table>$attach</table>";
    var f="";
    var l=new Array();
    var iA="";
    fileArr=v.split("$");
    for(var i = 0; i < fileArr.length; i++)
    {
        if(fileArr[i].length > 0){
            
            l=fileArr[i].toString().split("#");
            iA += l[1] + ",";
            f += "<tr><td><a href='bug_report/" + l[0] + "' target=\"_blank\">" + l[0] + "</a></td></tr>";
        }
    }
    list = list.replace("$attach", f);

    if($get(idtag).value != undefined){
        $get(idtag).value += iA;
    }
    else{
        $get(idtag).value = iA;
    }
    $get(tag).innerHTML += list;
}
function LoginOrOut(){

    if ($get('ctl00_LogoutId')!=null){
        logout();
    } else if ($get('ctl00_SigninId')!=null){
        login();
    }
}
function login()
{
   try{
       var username =  $get('ctl00_login1_UserName');
       var password = $get('ctl00_login1_Password');   
       LoginWebService.login(username.value,password.value,onLogined,onTimeOut,onError);
   }catch (e)
   {
       alert("login.js::login() error!\n"+e.message);
   }
   
}

function onLogined(result,userContext, methodName){
    if (result!=null){
    try{
        $get('ctl00_forumID').href = $get('ctl00_forumID').href+result;
        var username = result.substr(result.indexOf("username="));
        username = username.substring(9,result.indexOf("&")-1);
        var role = result.substr(result.indexOf("usergroup=")+10);
        if (role == "administrator" | role == "architect")
            {
                $get('ManagementPannel').innerHTML = "<a id='ManagementID' class='headermenu' href='/M_Default.aspx' target='_blank'>Management |</a>";
            }
            else
            {
            }
        $get('ctl00_SigninId').innerHTML="";
        $get('logoutPannel').innerHTML = "<a id='ctl00_LogoutId' class='headermenu' href='javascript:logout();' title='You current logged in as ["+username+"]'>Logout</a>";
        $get('ctl00_welcomeInfo').innerHTML="Welcome: "+username;
        } catch (e){
        alert(e.message);
        }
    }else{
        alert("Can't log in, please check if you input correct username and password.");
    }
}


function isLogined()
{
   try{
       LoginWebService.isLogined(onIsLogined,onTimeOut,onError);
   }catch (e)
   {
       alert("login.js::isLogined() error!\n"+e.message);
   }
   
}

function onIsLogined(result,userContext, methodName){
    if (result!=null){
        //alert(result);
        return true;
    }
    return false;
}


function logout()
{
   try{
       LoginWebService.logout(onLogouted,onTimeOut,onError);
   }catch (e)
   {
       alert("login.js::logout() error!\n"+e.message);
   }
   
}

function onLogouted(result,userContext, methodName){
    if (result!=null){
    $get('ctl00_forumID').href = "/forum/redirect.aspx";
    $get('ctl00_SigninId').innerHTML="Log in";
    $get('logoutPannel').innerHTML="";
    $get('ManagementPannel').innerHTML="";
    $get('ctl00_welcomeInfo').innerHTML="Welcome: Guest";

    }
}


function onTimeOut(results, userContext, methodName){
    alert("Sorry, Time out, please try again!");
}

function onError(errors, userContext, methodName){
    alert("Sorry, Error happens, please try again!\n"+"Error Message:"+errors.get_Message());
}
