﻿// JScript File

var lstCareerId = '';
var lstSelectedCareersId = '';
var hdnSelectCareerId  = '';
var tempOptions;
var MAX_OPTIONS = 25;
$(document).ready(function()
    {
      lstCareerId =$("select[id$=lstCareer]")[0].id;
      lstSelectedCareersId = $("select[id$=lstSelectedCareers]")[0].id;
      hdnSelectCareerId  = $("input[id$=hdnSelectCareer]")[0].id;
      
      /*To Draw Careers at the Load*/
      RedrawMajors_Career();
      RemoveFromList_Career();
    }
 );

//var lstCareerId = '<%=lstCareer.ClientID %>';
//var lstSelectedCareersId = '<%=lstSelectedCareers.ClientID %>';
//var hdnSelectCareerId = '<%=hdnSelectCareer.ClientID %>';



function AddOption_Career(select, text, value)
{
//    if (!OptionExists(select, value))
//    {
        if (select.options.length < MAX_OPTIONS)
        {
            var op = document.createElement("option");
            op.text = text;
            op.value = value;
            select.options[select.options.length] = op;
        }
//    } 
}

function AddCareer(all)
{
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    
    if (lstSelectedCareers.options.length >= MAX_OPTIONS)
    {
        alert('You may only have up to ' + MAX_OPTIONS + ' careers');
        return;
    }
    
    var opAdded = false;
    for(var i=0;i<lstCareer.options.length;i++)
    {
        if ((lstCareer.options[i].selected) || all)
        {
            var text = lstCareer.options[i].text;
            var value = lstCareer.options[i].value;
            AddOption_Career(lstSelectedCareers, text, value);
            opAdded = true;
        }
    }
    RemoveOption_Career(lstSelectedCareers, all);
    if (opAdded)
        SortSelect(lstSelectedCareers)
}
function RemoveOption_Career(lstSelectedCareers, all)
{
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    
    for(var j = 0;j<lstSelectedCareers.options.length;j++)
    {
        for(var i = 0;i<lstCareer.options.length;i++)
        {
            if (lstCareer.options[i].value == lstSelectedCareers.options[j].value)
            {
                lstCareer.remove(i)
                break;
            }
        }
    }
}

function RemoveFromList_Career()
{
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    
     for(var j = 0;j<lstSelectedCareers.options.length;j++)
    {
        for(var i = 0;i<lstCareer.options.length;i++)
        {
            if (lstCareer.options[i].value == lstSelectedCareers.options[j].value)
            {
                lstCareer.remove(i)
                break;
            }
        }
    }
}

function RedrawMajors_Career()
{
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    hdnSelectCareer = $get(hdnSelectCareerId);
    var lst = $get('Career_list');
    lst.innerHTML = "";
    hdnSelectCareer.Text = "";
    $("input[id$=hdnSelectCareer]")[0].value = '';
    //$get('<%=hdnSelectCareer.ClientID %>').value='';
    for(var i=0;i<lstSelectedCareers.options.length && i < MAX_OPTIONS;i++)
    {
        var op = lstSelectedCareers.options[i];
        var li = document.createElement("li");
        var lbl = document.createElement("label");
       
        lbl.className = "item";
        lbl.innerHTML = op.text;
        var link = document.createElement("a");
        link.className = "btn-X";
        link.title = "Remove Item";
        link.dataId = op.value;
        link.li = li;
        if(i==lstSelectedCareers.options.length-1)
        $("input[id$=hdnSelectCareer]")[0].value = $("input[id$=hdnSelectCareer]")[0].value + op.value;
        //$get('<%=hdnSelectCareer.ClientID %>').value = $get('<%=hdnSelectCareer.ClientID %>').value + op.value
        else
        $("input[id$=hdnSelectCareer]")[0].value = $("input[id$=hdnSelectCareer]")[0].value + op.value + ';';
        //$get('<%=hdnSelectCareer.ClientID %>').value = $get('<%=hdnSelectCareer.ClientID %>').value + op.value + ';';
        $addHandler(link, "click", function() { RemoveCareer(this); });
        li.appendChild(lbl);
        li.appendChild(link);
        lst.appendChild(li);
    }
}

function ResetMajors_Career()
{
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    while(lstSelectedCareers.options.length>0)
        lstSelectedCareers.remove(0);
    for(var i=0;i<tempOptions.length && i < MAX_OPTIONS;i++)
    {
        AddOption_Career(lstSelectedCareers, tempOptions[i].text, tempOptions[i].value);
    }
      for(var j = 0;j<tempOptions.length;j++)
        {
            for(var k = 0;k<lstCareer.options.length;k++)
            {
                if (lstCareer.options[k].value == tempOptions[j].value)
                {
                    lstCareer.remove(k)
                    break;
                }
            }
        }
   
}

function RemoveCareer(a, id)
{
    var confirm = $find("ConfirmDelete");
    if (confirm)
    {
        confirm.MajorsData = { "Element": a, "ID": id };
        confirm.set_OnOkScript("DoRemove_Career()");
        confirm.show();
    }
}

function DoRemove_Career()
{
    var strdel;
    var confirm = $find("ConfirmDelete");
    var a = confirm.MajorsData.Element;
    var id = confirm.MajorsData.ID;
    
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    var lst = $get('Career_list');
    if (!id)
        id = a.dataId;
    for(var j = 0;j<lstSelectedCareers.options.length;j++)
    {
        if (lstSelectedCareers.options[j].value == id)
        {
            lstSelectedCareers.remove(j)
            RedrawMajors_Career();
            break;
        }
    }
   // lst.removeChild(a.parentNode);
}

function SetupTempOptions_Career()
{
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    tempOptions = new Array(); 
    for(var i=0;i<lstSelectedCareers.options.length && i < MAX_OPTIONS;i++)
    {
        var text = lstSelectedCareers.options[i].text;
        var value = lstSelectedCareers.options[i].value;
        tempOptions.push( {"text": text, "value": value} );
    }
}
/////////////////// REMOVE ///////////////////////////////

function RemoveMajor_Career(all)
{
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    var opAdded = false;
    for(var i=0;i<lstSelectedCareers.options.length;i++)
    {
        if ((lstSelectedCareers.options[i].selected) || all)
        {
            var text = lstSelectedCareers.options[i].text;
            var value = lstSelectedCareers.options[i].value;
            AddOption_CareerToMain(lstCareer, text, value);
            opAdded = true;
        }
    }
    RemoveOption_CareerFromTarget(lstCareer, all);
    if (opAdded)
        SortSelect(lstCareer);
}
function AddOption_CareerToMain(select, text, value)
{
        var op = document.createElement("option");
        op.text = text;
        op.value = value;
        select.options[select.options.length] = op;
}

function RemoveOption_CareerFromTarget(lstCareer, all)
{
    lstCareer = $get(lstCareerId);
    lstSelectedCareers = $get(lstSelectedCareersId);
    
    for(var j = 0;j<lstCareer.options.length;j++)
    {
        for(var i = 0;i<lstSelectedCareers.options.length;i++)
        {
            if (lstSelectedCareers.options[i].selected || all)
            {
                if (lstSelectedCareers.options[i].value == lstCareer.options[j].value)
                {
                    lstSelectedCareers.remove(i)
                    break;
                }
            }
        }
    }
}

if (typeof (Sys) !== "undefined") Sys.Application.notifyScriptLoaded();