$j.fn.monitor_AJAX_interface = function(options)
{ var settings = $j.extend(
           {  'debug' : 0,
              'group' : 0,
              'from_id' : 0,
              'update_monitor_back' : 3,   // подгрузка данных каждые 3 сек
              'update_monitor_full' : 60*5 // полное обновление страницы каждые 5 мин
           }, options);

    var last_send_mess_id=settings.from_id ;
    // полная перезагрузка страницы
    $j('body').everyTime(settings.update_monitor_full*1000,'update_monitor_full',function(){location.reload() ;}) ;
    // подгрузка обновленных данных
    $j('body').everyTime(settings.update_monitor_back*1000,'update_monitor_back',function()
    {   $j.ajax({url:'/ajax.php',type:'POST',dataType:'xml',success:exec_ajax_cmd_success_JQ,data:{cmd:'aspmo_monitor/get_monitor_event',group_id:settings.group,last_mess_id:last_send_mess_id}});
    }) ;


    function exec_ajax_cmd_success_JQ(data,status,link)
      { if (status=='success')
         {  var responseXML = link.responseXML;
            if (responseXML==null) return(false) ;
            if (responseXML==undefined) return ;
            var obj=convert_XML_to_obj(responseXML) ;

            notifyUser(obj) ;
          }
     }


    function notifyUser(obj)
    {  if (obj.notife_text)
       { if (obj.notife=='error')      new jBox('Notice', {content: obj.notife_text,color:'red'});
         else if (obj.notife=='alert') new jBox('Notice', {content: obj.notife_text,color:'yellow'});
         else if (obj.notife=='info')  new jBox('Notice', {content: obj.notife_text,color:'green'});
         else                          new jBox('Notice', {content: obj.notife_text});
       }

       if (obj.update_page)  location.reload() ;
       if (obj.last_send_mess_id) last_send_mess_id=obj.last_send_mess_id ;

       //if (obj.ajax_cmd) send_ajax_request({cmd:obj.ajax_cmd,member_id:obj.member_id,terminal_id:obj.terminal_id})  ;
       if (obj.mo_tr_id!=undefined && obj.mo_tr_id>0 )
       {   if ($j('div#panel_last_mo tr#mo_tr_'+obj.mo_tr_id).length) $j('div#panel_last_mo tr#mo_tr_'+obj.mo_tr_id).replaceWith(obj.mo_tr) ;
           else                                                       $j('div#panel_last_mo tr.head').after(obj.mo_tr) ;
           //$j('div#debug_mo').html('last mo id: '+obj.mo_tr_id) ;
           $j('div.list_mo_sessions td.photo div.img img').hover(panel_image_preview_on,panel_image_preview_off) ;
           $j('td.preview_graf').hover(preview_graf_on,preview_graf_off) ;
           //$j('td.preview_graf').click(preview_graf_on) ;
           $j('.v1').prepare_form({}) ;
           $j('.v2').prepare_ajax({}) ;

       }


       // обновляем статусы у иконок терминалов
       if($j.isArray(obj.terminal_status) || typeof(obj.terminal_status) == 'object') for(var i in obj.terminal_status)
       {
          $j('#panel_terminal_status div#t_'+i).attr('status',obj.terminal_status[i]) ;
       }

       if (settings.debug)
       {   obj.mo_tr='...' ;
           show_debug_info('notifyUser',obj) ;
       }

       return true;
    }



} ;

function htmlspecialchars(string){ return $j('<span>').text(string).html() ;}


