var max_events; var bg; $(document).ready(function(){ max_events=localStorage["events"]; if(localStorage["events"]==undefined){ localStorage["events"]="20"; } bg=chrome.extension.getBackgroundPage(); // Display the information if (bg.fetchEvents().length == 0) { showError("Error in fetching data!! Check your internet connection"); } else { showEvents(); } // Adding buttons listeners document.getElementById("m_refresh").addEventListener("click", mrefresh); // Added listener to background messages chrome.runtime.onMessage.addListener(function(message,sender,sendResponse){ switch (message.text) { case "FETCH_EVENTS": setSpinner(); //$('div.b').hide(); break; case "FETCH_EVENTS_SUCCESS": unsetSpinner(); showEvents(); break; case "FETCH_EVENTS_DATA_ERROR": unsetSpinner(); showError("Error in fetching data!! Check your internet connection"); break; case "FETCH_EVENTS_URL_ERROR": unsetSpinner(); showError("Configure ip address,API password, user name and password with correct values"); break; default: console.log("Unrecognized message: ", message.text); break; } }); }); function setSpinner () { $('#refr_img_id').attr("src", "images/spinny.gif"); } function unsetSpinner() { $('#refr_img_id').attr("src", "images/refresh.png"); } function clearError() { $('.error').hide(); $('.error a').text(""); $('.result').css('height', null); } function showError(text){ $('.error a').text(text); $('.error').show(); $('.result').height(420); } function showEvents(){ clearError(); $('#events').empty(); var e_refr = document.getElementById('event_temp'); if(e_refr){ wrapper.removeChild(e_refr); } var allEvents = bg.fetchEvents(); var notVisitedEvents = bg.fetchNotVisited(); var eve=document.createElement('div'); eve.id="event_temp"; eve.setAttribute("class","b"); var i=0; if(allEvents.length>0){ while(i<max_events && i<allEvents.length){ var eve_title=document.createElement('div'); eve_title.id = 'e_' + i + '_' + allEvents[i]['id']; var img = document.createElement('img'); img.src = 'images/plus.png'; img.className ='pm'; img.id='i_' + i + '_' + allEvents[i]['id']; eve_title.appendChild(img); var div_empty = document.createElement('img'); var a = document.createElement('a'); var temp_style; var agent_url = (allEvents[i]["agent"] == 0) ? localStorage["ip_address"] + "/index.php?sec=eventos&sec2=operation/events/events" : localStorage["ip_address"] + "/index.php?sec=estado&sec2=operation/agentes/ver_agente&id_agente=" + allEvents[i]['agent']; a.setAttribute("href",agent_url); a.target = "_blank"; a.className = 'a_2_mo'; a.innerText = allEvents[i]['title']; eve_title.setAttribute("class","event sev-" + allEvents[i]['severity']); if (notVisitedEvents[allEvents[i]['id']] === true) { eve_title.style.fontWeight = 600; } eve_title.appendChild(a); eve.appendChild(eve_title); var time=allEvents[i]['date'].split(" "); var time_text = time[0]+" "+time[1]; var p = document.createElement('p'); var id = (allEvents[i]['module']==0) ? "." : " in the module with Id "+ allEvents[i]['module'] + "."; p.innerText = allEvents[i]['type']+" : "+allEvents[i]['source']+". Event occured at "+ time_text+id; p.id = 'p_' + i; eve_title.appendChild(p); i++; } $('#events').append(eve); $('img.pm').click(showHide); $('div.b').show(); } else { showError("Error in fetching data!! Check your internet connection"); } localStorage["new_events"]=0; bg.updateBadge(); } function showHide() { var id = $(this).attr('id'); // Image id has the form i_<position>_<eventId> var nums = id.split('_'); var pid = "p_" + nums[1]; // Mark as visited if visited if($(this).parent().css('font-weight') == '600') { bg.removeNotVisited(nums[2]); $(this).parent().css('font-weight', ''); } // Toggle information if($('#' + pid).css('display') == 'none') { $('#' + pid).slideDown(); $(this).attr({src: 'images/minus.png'}); } else { $('#' + pid).slideUp(); $(this).attr({src: 'images/plus.png'}); } } function mrefresh(){ localStorage["new_events"]=0; bg.updateBadge(); clearError(); bg.resetInterval(); bg.main(); }