function CompManager()
{         
    function GetConnectors(ModelID, Callback)
    {
        jQuery.get('/findConnectors.php?id=' + ModelID, function(data)
        {            
           Callback(data);
        });
    }
        
    function GetProductModel(seriesID, connectorIDs, radioModelIDs, Callback)
    {
        jQuery.getJSON("/findCompatibleProductConnectors.php?sid=" + seriesID + "&cid=" + connectorIDs + "&rid=" + radioModelIDs, function(data)
        {
            Callback(data);
        });
    }

    function CreateItemBox(ID, Image, Adapter)
    {
       if(Adapter != '' && Adapter != null)
       {
           return "<div class='compatibleConnectorBox'><div class='left'></div><div class='center'><div>" + ID + "*</div><img src='" + Image + "'/><div class='adapter'>*with " + Adapter + " Adapter</div></div><div class='right'></div></div>";
       }else
       {
           return "<div class='compatibleConnectorBox'><div class='left'></div><div class='center'><div>" + ID + "</div><img src='" + Image + "'/></div><div class='right'></div></div>";
       }
    }
            
    return {"GetConnectors":GetConnectors, "GetProductModel":GetProductModel, "CreateItemBox":CreateItemBox};
}


function ShowConnector(event, item, formatted)
{        
    jQuery('#Connector').html("Checking Radio Compatibility...");
    var con = new CompManager();
    con.GetConnectors(item[1], function(data){    	
       if(data == null || data == -1)
       {
           jQuery('#Connector').html("Radio information not available");
           jQuery('#radioModel').attr("value", "");
       }else
       {
           con.GetProductModel(jQuery('#productName').attr("productID"), data, item[1], function(data)
           {
           	if(data == -1 || data == null)
           		jQuery('#Connector').html("Unfortunately, this product is not compatible with " + jQuery("#radioManufacturer :selected").text() + " " + jQuery("#radioModel").attr("value"));
           	else
           	{
               var container = jQuery("#CompatibilityProductList");            
               container.empty();            
               jQuery("#Connector").html("The following product is compatible with " + jQuery("#radioManufacturer :selected").text() + " " + jQuery("#radioModel").attr("value"));  
               jQuery.each(data, function(index, item)
               {                                            
                   container.append(con.CreateItemBox(item.ID, item.Image, item.Adapter));
               });
             }
           });
       }
    });   
}

