
function MyClass() {
     var msgArr = new Array();
     var curShow = 0;
     var obj_name = '';
     var div_id = '';
     var temp_obj = new Object;
     var time_delay = 0;
     var script_name = '';
     var display_type = 0;
     var temp_div_id = '';
     var animate_type = 0;

//    this.ShowText = DisplayText; 
    this.MmessageBox = messageBox; 
    this.MmoveNext   = moveNext; 
    this.MmovePrev   = movePrev; 
    this.Mbuild_navigation   = build_navigation; 
    this.MchangeMsg   = changeMsg; 

function randomString() {
	var chars = "ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
	var string_length = 8;
	var randomstring = '';
	for (var i=0; i < string_length; i++) {
		var rnum = Math.floor(Math.random() * chars.length);
		randomstring += chars.substring(rnum,rnum+1);
	}
	return randomstring;
}


function changeMsg() {

   ttemp = curShow+1;

    if(ttemp>msgArr.length-1){
      ttemp = 0;
    }
   
   if(ttemp>=msgArr.length) {
     $.post(this.script_name, function(xml) {

          new_arr = xml.split('|');
          var split_arr = new Array();
          j=0;
          for(i=0;i < new_arr.length;i++) {
               if(new_arr[i]!='') {
                    split_arr[j] = new_arr[i];
                    j++;
               }
          }
          msgArr = split_arr;          
     });
     ttemp = 0;
   }
   
   curShow =ttemp;
   
   $('#'+this.temp_div_id).html('');
   $('#'+this.temp_div_id).hide('');   
   $('#'+this.temp_div_id).html(msgArr[ttemp]);

   if(this.display_type==1)        
	   $('#'+this.temp_div_id).animate({width: "show"}, 'slow');
   else if (this.obj_name == "myClassObj3")
        $('#'+this.temp_div_id).fadeIn(2000);   
   
	if (this.obj_name == "myClassObj3")
   		setTimeout('javascript:'+this.obj_name+'.MchangeMsg()', this.time_delay);
   
}

function build_navigation() {
          
      var newdiv = document.createElement("div");
      msg_obj = document.getElementById(this.div_id);

      nextlink = document.createElement('a');
      nextlink.setAttribute('class', 'msg_navigation');
      nextlink.setAttribute('href', '#');
      nextlink.setAttribute('href', 'javascript:'+this.obj_name+'.MmoveNext()');
      nextlink.innerHTML ='Next';

      prevlink = document.createElement('a');
      prevlink.setAttribute('class', 'msg_navigation1');
      prevlink.setAttribute('href', 'javascript:'+this.obj_name+'.MmovePrev()');
      prevlink.innerHTML ='Prev';

      tempspan = document.createElement('span');
      tempspan.innerHTML ='&nbsp;|&nbsp;'; 

      newdiv.appendChild(prevlink);
      newdiv.appendChild(tempspan);
      newdiv.appendChild(nextlink);
     
      msg_obj.appendChild(newdiv);
}

function moveNext() {

	ttemp = curShow+1;
	
    if(ttemp>msgArr.length-1){
      ttemp = 0;
    }

	if(ttemp>=msgArr.length){    
          $.post(this.script_name, function(xml) {

               new_arr = xml.split('|');
               var split_arr = new Array();
               j=0;
               for(i=0;i < new_arr.length;i++)
               {
                    if(new_arr[i]!='')
                    {
                         split_arr[j] = new_arr[i];
                         j++;
                    }
               }
               msgArr = split_arr;          
          });
          ttemp = 0;
        }

        curShow =ttemp;

        $('#'+this.temp_div_id).html('');
		if (this.obj_name == "myClassObj3")
	        $('#'+this.temp_div_id).hide('');   
        $('#'+this.temp_div_id).html(msgArr[ttemp]);

	if (this.obj_name == "myClassObj3") {
        if(this.display_type==1)        
    	   $('#'+this.temp_div_id).animate({width: "show"}, 'slow');
        else if(this.display_type==2)
             $('#'+this.temp_div_id).fadeIn(2000);   
        else if(this.display_type==3)
             $('#'+this.temp_div_id).fadeIn(2000);
//		setTimeout('javascript:'+this.obj_name+'.MchangeMsg()', 0);
	}
}

function movePrev() {
        ttemp = curShow-1;
        if(ttemp<0){
          ttemp = msgArr.length-1;
        }
        curShow =ttemp;  

        $('#'+this.temp_div_id).html('');
		if (this.obj_name == "myClassObj3")
        	$('#'+this.temp_div_id).hide('');   
        $('#'+this.temp_div_id).html(msgArr[ttemp]);

	if (this.obj_name == "myClassObj3") {
        if(this.display_type==1)        
     	   $('#'+this.temp_div_id).animate({width: "show"}, 'slow');
        else 
             $('#'+this.temp_div_id).fadeIn(2000);   
//		setTimeout('javascript:'+this.obj_name+'.MchangeMsg()', 0);
	}
}


    /***     
         myul - ordered list name
         object_name - name object create for this class
         show_id     - name of the div in which the message should be rolled
         time_delay  - time delay for rolling in milliseconds
         script_name - server side script name where the reloaded message should be taken using AJAX
         display_type - Animation type(1- left movement,2- blur)
         setheight    - height of the message   
     ***/


function messageBox(myul,object_name,show_id,time_delay,script_name,display_type,setheight) {

          this.obj_name = object_name;
          this.div_id = show_id;
          this.time_delay = time_delay;
          this.script_name = script_name;
          this.display_type = display_type;
          this.animate_type = animate_type;

         myul.hide();
     
        myul.find("li").each(function(i) {
          temp = $(this).html();
          msgArr[i] = temp;
        });

        this.curShow = 0;

        this.temp_div_id = randomString();
          
          var tempdiv = document.createElement("div");
          tempdiv.style.height =setheight;

          var newdiv = document.createElement("div");          
          msg_obj = document.getElementById(this.div_id);         
          newdiv.setAttribute('id', this.temp_div_id);

          tempdiv.appendChild(newdiv)
          msg_obj.appendChild(tempdiv);

        $('#'+this.temp_div_id).html(msgArr[0]);

//        this.Mbuild_navigation();
		
		if (object_name == "myClassObj3")
			setTimeout('javascript:'+object_name+'.MchangeMsg()', this.time_delay);
}

}
