﻿<!--
var _currency = "USD";
//
function CurrencyClick()
{
    //revise price
    var arg="";
    if (document.forms[0].r_currency[0].checked) arg="USD";
    else arg="TWD";
    for(i=1; i<=6; i++) arg = arg + "#" + parseInt(document.getElementById("subtotal"+i).innerHTML, 10);
    arg = arg + "#" + parseInt(document.getElementById("lab_ticketno").innerHTML, 10);
    arg = arg + "#" + document.forms[0].memcode.value;
    ToComputePrice(arg, "");
}
function ReceivePrice(arg, context)
{
    //receive result
    var i = arg.indexOf("#");
    document.getElementById("lab_unitprice").innerHTML = arg.substring(0,i);
    document.getElementById("lab_price").innerHTML = arg.substring(i+1, arg.length);
}
function AttendeeChange()
{
    //revise ticket_no and price
    var attendee_no = document.forms[0].sel_attendee.selectedIndex + 1;
    if (attendee_no >= 1)
    {
        var i, j, o;
        var count = new Array(7);
        for(i=0; i<count.length; i++) count[i] = 0;
        for(i=1; i<=attendee_no; i++)
        {
            document.getElementById("att"+i).style.display = "inline";
            //M001
            ++count[1];
            //for (j=1; j<=6; j++)
            for (j=2; j<=6; j++)
            {
                o = document.getElementById("att"+i+"_session"+j);
                if (o.checked)
                {
                    ++count[j];
                    ++count[0];
                }
            }
        }
        for(i=(attendee_no+1); i<=10; i++)
        {
            document.getElementById("att"+i).style.display = "none";
        }
        //
        for(i=1; i<=6; i++)
        {
            o = document.getElementById("subtotal"+i);
            o.innerHTML = count[i];
        }
        document.getElementById("lab_ticketno").innerHTML = count[0];
        var unit = getUnitPrice();
        document.getElementById("lab_price").innerHTML = _currency + " " + unit*count[0];
    }
}
function AttendeeClick()
{
    var o = document.forms[0];
    if (o.r_currency[0].disabled || o.r_currency[1].disabled) { o.sel_attendee.selectedIndex = parseInt(o.SelectedIndex.value, 10); }
    else { AttendeeChange(); }
}
function TicketClick(cbx, idx)
{
    if (document.forms[0].ReadOnly.value == "true")
    {
        cbx.checked = !cbx.checked;
        return;
    }
    //revise ticket_no, price, subtotal
    var o = document.getElementById("subtotal"+idx);
    var count = parseInt(o.innerHTML, 10);
    if (cbx.checked) count++;
    else count--;
    o.innerHTML = count;
    if (idx > 1)
    {
        //not Keynote session
        var i;
        for (i=2; i<=6; i++)
        {
            if (i != idx)
            {
                o = document.getElementById("subtotal"+i);
                count = count + parseInt(o.innerHTML,10);
            }
        }
        o = document.getElementById("lab_ticketno");
        o.innerHTML = count;
        //
        var unit = getUnitPrice();
        i = unit * count;
        o = document.getElementById("lab_price");
        o.innerHTML = _currency + " " + i; 
    }
}
function getUnitPrice()
{
    o = document.getElementById("lab_unitprice");
    var s = o.innerHTML;
    var i = s.indexOf(' ');
    _currency = s.substring(0,i);
    s = s.substring(i+1, s.length);
    return parseInt(s,10);
}
//
function DisableTicket(arr_session)
{
    var i, j, o;
    var arr = CheckArray(arr_session);
    for (i=0; i<arr.length; i++)
    {
        for (j=1;j<=10; j++)
        {
            o = document.getElementById("att"+j+"_session"+arr[i]);
            o.checked = false;
            o.disabled = true;
        }
    }
}
//
function RestorePrice(unit_price, total_price)
{
    document.getElementById("lab_unitprice").innerHTML = unit_price;
    document.getElementById("lab_price").innerHTML = total_price;
}

function RestoreAttendeeNo(attendee_no)
{
    var i;
    document.forms[0].sel_attendee.selectedIndex = (attendee_no-1);
    for(i=1; i<=attendee_no; i++)
    {
        document.getElementById("att"+i).style.display = "inline";
    }
    for(i=(attendee_no+1); i<=10; i++)
    {
        document.getElementById("att"+i).style.display = "none";
    }
}

function RestoreTicket(arr)
{
    document.getElementById("lab_ticketno").innerHTML = arr[0];
    for (var i=1; i<=6; i++)
    {
        document.getElementById("subtotal"+i).innerHTML = arr[i];
    }
}
function CheckArray(_array)
{
    //new Array(3) => system take it as a undeinfed 3-dim array
    var arr;
    if (_array.length>0)
    {
        if (_array[0]=="undefine" || _array[0]==null)
        {
            arr = new Array(1);
            arr[0] = _array.length;
        }
        else arr = _array;
        return arr;
    }
    else return _array;
}
function RestoreReadonlyText(obj, text, readonly)
{
    obj.value = text;
    obj.readOnly = readonly;
    if (readonly) obj.className = 'readonlyctrl';
    else obj.className = '';
}
function RestoreFirstAttendee(arr_session, readonly)
{
    var arr = CheckArray(arr_session);
    if (readonly)
    {
        for (var i=0; i<arr.length; i++)
        {
            var o;
            o = document.getElementById("att1_session"+arr[i]);
            o.checked = true;
            o.className = 'readonlyctrl';
            //o.disabled = true;
            //o.onbeforeupdate = "javascript:alert('Before Update!');";    //JScript only
            //o.onclick = "javascript:alert('Click!')";    //JScript only
            //o.onpropertychange = "javascript:alert('Change!')";
        }
    }
    else
    {
        for (var i=0; i<arr.length; i++)
        {
            document.getElementById("att1_session"+arr[i]).checked = true;
        }
    }
}
function RestoreOtherAttendee(idx, name, title, email, arr_session, readonly)
{
    var arr = CheckArray(arr_session);
    if (readonly)
    {
        var o;
        RestoreReadonlyText(document.getElementById("att"+idx+"_name"), name, true);
        RestoreReadonlyText(document.getElementById("att"+idx+"_title"), title, true);
        RestoreReadonlyText(document.getElementById("att"+idx+"_email"), email, true);
        for (var i=0; i<arr.length; i++)
        {
            o = document.getElementById("att"+idx+"_session"+arr[i]);
            o.checked = true;
            o.className = 'readonlyctrl';
        }
    }
    else
    {
        document.getElementById("att"+idx+"_name").value = name;
        document.getElementById("att"+idx+"_title").value = title;
        document.getElementById("att"+idx+"_email").value = email;
        for (var i=0; i<arr.length; i++)
        {
            document.getElementById("att"+idx+"_session"+arr[i]).checked = true;
        }
    }
}
/*
function setRegisterInfo(currency, unit_price, ticket, select_idx, arrSess)
{
    var price = unit_price * ticket;
    document.getElementById("lab_unitprice").innerHTML = currency + " " + unit_price;
    document.getElementById("lab_price").innerHTML = currency + " " + price;
    document.getElementById("lab_ticketno").innerHTML = ticket;
    document.sel_attendee.selectedIndex = select_idx;
    for(var i=1; i<=6; i++)
    {
        document.getElementById("subtotal"+i).innerHTML = arrSess[i];
    }
}
*/
function RestoreMe(name, title, email)
{
    MeToRestore(document.forms[0].att1_name, name);
    MeToRestore(document.forms[0].att1_title, title);
    MeToRestore(document.forms[0].att1_email, email);
}
function MeToRestore(obj, text)
{
    obj.readOnly = false;
    obj.value = text;
    obj.readOnly = true;
}
function MeChanged(idMe, idTarget)
{
    var obj = document.getElementById(idMe);
    obj.readOnly = false;
    obj.value = document.getElementById(idTarget).value;
    obj.readOnly = true;
}
//-->

