﻿// This method will take an xml tree and append the designated values from
// the tree to an existing ordered or un-ordered html list
// -Laith
function PopulateItemList(ListID, ItemsXml, XmlNodeName, ItemOnClick, ItemOnMouseDown, ResetList, ItemCss)
{
    var ItemText;
    var ListItems = ItemsXml.getElementsByTagName(XmlNodeName);
    
    // if we want to reset the list, we delete all its items
    if (ResetList)
    {
        PurgeItemList(ListID);        
    }
    
    for(var i=0; i<ListItems.length; i++) 
     {     
        ItemText = ListItems[i].childNodes[0].nodeValue;
        AppendListItem(ListID, ItemText, "", ItemOnClick, ItemOnMouseDown, ItemCss);
        
     }
     
     //j$Obj("tempinp").innerText = j$Obj(ListID).innerHTML;
     
}

// This method will append a singe list item to an existing html
// ordered or un-ordered html list
// -Laith
function AppendListItem(ListID, ListItemText, ListItemID, ListItemOnClick, ItemOnMouseDown, ListItemCssClass)
{
    //ul element that contains the bullet items
    var ul = j$Obj(ListID);        
    var el = null; 

    el = document.createElement("li");
    
    // if theres an onclick or on mousedown event, we need to use a link
    if(ListItemOnClick != "" || ItemOnMouseDown != "")
    {

        
        el.innerHTML = "<div style='width: 100%;' onclick='"+ListItemOnClick+"' onmousedown='"+ItemOnMouseDown+"'>"+ListItemText+"</div>";
        //el.innerHTML = ListItemText;
        //el.onclick = "javascript:alert('sdssdsd');";
    }
    else 
    {
        el.innerHTML = ListItemText;
    }
    
    if(ListItemCssClass != "")
    {
        el.className = ListItemCssClass;
    }    
    
    
    //el.appendChild(al);
    //el.attributes.add = "function{alert('sdssdsd');}";
    ul.appendChild(el);
    

}

function PurgeItemList(ListID)
{
    var oul = j$Obj(ListID);
    var ouli = oul.getElementsByTagName("li");
    
    for(var i=0; i<ouli.length; i++) 
    {
       oul.removeChild(ouli[0]);
    }
}