var sg_first_number = 1;

        function attachEventListener(target, eventType, functionRef, capture){if(typeof target.addEventListener != "undefined"){target.addEventListener(eventType,functionRef,capture);} else if(typeof target.attachEvent != "undefined"){target.attachEvent("on" + eventType,functionRef);};}
function getEventTarget(event){var targetElement = null;if(typeof event.target != "undefined"){targetElement = event.target;} else {targetElement = event.srcElement};while(targetElement.nodeType == 3 && targetElement.parentNode != null){targetElement = targetElement.parentNode;};return targetElement;}
function sgjsAddError(elementid,id,message)
            {
                sgjsRemoveError(elementid,id);
                eval("if( typeof errors_" + elementid + " == 'undefined')errors_" + elementid + " = Array();");
                var error = Array();
                error[0] = id;
                error[1] = message;
                eval("errors_" + elementid + ".push(error);");
                if( typeof total_errors == 'undefined')total_errors = 0;
                total_errors++;      
            }
            
            function sgjsRemoveError(elementid,id)
            {
                eval("if( typeof errors_" + elementid + " == 'undefined')errors_" + elementid + " = Array();");
                eval("var array = errors_" + elementid + ";"); 
                if(array == "undefined") return;
                var newarray = Array();
                
                for(var i = 0; i < array.length;i++)
                {
                    if(array[i][0] != id)newarray.push(array[i]);
                    else {total_errors--;}
                } 
                eval("errors_" + elementid + " = newarray;");                 
            }
            
            function sgjsErrorCount(elementid)
            {
              eval("var array = errors_" + elementid + ";"); 
              if(array == "undefined") return 0;
              return array.length;
            }
            
            function sgjsUpdateElementErrors(element,msg)
            {
              var num = sgjsErrorCount(element.id);
              var msgs = "";
              
              if(num > 0)
              {
                    eval("var arr = errors_" + element.id + ";"); 
                    
                    for(var i = 0; i < arr.length;i++)
                    {
                        if(arr[i][1] != "")
                        {
                            msgs = msgs + "<div>" + arr[i][1] + "</div>"
                        }
                    } 
                    
                    //alert(msgs);
                    
                    if(msg != "" && typeof msg != "undefined")
                    {
                        msg.style.display = 'block';
                        msg.innerHTML = msgs;
                    }              
              }
              else
              {
              
                    if(msg != "" && typeof msg != "undefined")
                    {
                        msg.style.display = 'none';
                        msg.innerHTML = "&nbsp;";
                    }
              }
            }
