From 0ff4b2ee427dfb468664ca416e04a52a0ff07088 Mon Sep 17 00:00:00 2001 From: slerena Date: Thu, 3 May 2007 02:08:00 +0000 Subject: [PATCH] 2007-05-03 Sancho Lerena * include/FreeSans.ttf: Added to repos, should be here to use in graphs. * include/functions_db.php: Deleted noaccess include from comprueba_login(). This should return value, not render pages or exit. * include/config.inc.php: Modified some typos. * include/calendar.js: Added generic calendar javascript, to be used on exportdata and incident management code. * include/languages/language_en.php: More strings. * install.php: In my render, box height is too low. PLEASE recheck before changing this kind of properties because in other browsers could have a bad render (Sophus!). * index.php: Added script call (need to be done on header). * operation/agentes/export_csv.php: Added new file to create a standalone CSV on download icon / link. * operation/agentes/exportdata.php: New export data code, used some code from Leando Doctors, and mixed with old code. Now have three options to render export data. * operation/agentes/datos_agente_calendar.php: Deleted old code from Leandro. * operation/active_console/lib/extra_functions.php: Solved a lot of warnings, but there are TONS of more warnings that need to be corrected. * operation/active_console/lib/db_functions.php:Solved a lot of warnings, but there are TONS of more warnings that need to be corrected. * operation/active_console/index.php: Solved a lot of warnings, but there are TONS of more warnings that need to be corrected. This code DONT work if you are showing warning/notice erros. This code is not ready for production usage, too buggy yet :( * pandora_graphical_console_data.sql: Cleanup. * godmode/agentes/module_manager.php: Added wizard button. * pandora_graphical_console.sql: Cleanup. git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@448 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f --- pandora_console/ChangeLog | 64 +- .../godmode/agentes/module_manager.php | 4 +- pandora_console/include/FreeSans.ttf | Bin 0 -> 477820 bytes pandora_console/include/calendar.js | 1800 +++++++++++++++++ pandora_console/include/config.inc.php | 4 +- pandora_console/include/functions_db.php | 15 +- .../include/languages/language_en.php | 15 +- .../include/languages/language_es_es.php | 13 +- pandora_console/index.php | 7 +- pandora_console/install.php | 2 +- .../operation/active_console/index.php | 54 +- .../active_console/lib/db_functions.php | 524 +---- .../active_console/lib/extra_functions.php | 155 +- .../agentes/datos_agente_calendar.php | 270 --- .../operation/agentes/export_csv.php | 84 + .../operation/agentes/exportdata.php | 389 ++-- pandora_console/pandora_graphical_console.sql | 65 +- .../pandora_graphical_console_data.sql | 92 - 18 files changed, 2373 insertions(+), 1184 deletions(-) create mode 100644 pandora_console/include/FreeSans.ttf create mode 100644 pandora_console/include/calendar.js delete mode 100644 pandora_console/operation/agentes/datos_agente_calendar.php create mode 100644 pandora_console/operation/agentes/export_csv.php diff --git a/pandora_console/ChangeLog b/pandora_console/ChangeLog index 0fb4299fe2..afb49424e2 100644 --- a/pandora_console/ChangeLog +++ b/pandora_console/ChangeLog @@ -1,18 +1,60 @@ -2007-04-22 slerena +2007-05-03 Sancho Lerena - * pandoradb.sql: Fixed small problem with tgrupos + * include/FreeSans.ttf: Added to repos, should be here to use in graphs. + * include/functions_db.php: Deleted noaccess include from + comprueba_login(). This should return value, not render pages or + exit. + + * include/config.inc.php: Modified some typos. + + * include/calendar.js: Added generic calendar javascript, to be + used on exportdata and incident management code. + + * include/languages/language_en.php: More strings. + + * install.php: In my render, box height is too low. PLEASE recheck + before changing this kind of properties because in other browsers + could have a bad render (Sophus!). + + * index.php: Added script call (need to be done on header). + + * operation/agentes/export_csv.php: Added new file to create a + standalone CSV on download icon / link. + + * operation/agentes/exportdata.php: New export data code, used + some code from Leando Doctors, and mixed with old code. Now have + three options to render export data. + + * operation/agentes/datos_agente_calendar.php: Deleted old code from Leandro. + + * operation/active_console/lib/extra_functions.php: Solved a lot + of warnings, but there are TONS of more warnings that need to be + corrected. + + * operation/active_console/lib/db_functions.php:Solved a lot of + warnings, but there are TONS of more warnings that need to be + corrected. + + * operation/active_console/index.php: Solved a lot of warnings, + but there are TONS of more warnings that need to be + corrected. This code DONT work if you are showing warning/notice + erros. This code is not ready for production usage, too buggy yet + :( + + * pandora_graphical_console_data.sql: Cleanup. + + * godmode/agentes/module_manager.php: Added wizard button. + + * pandora_graphical_console.sql: Cleanup. + + +2007-04-22 Sancho Lerena + + * pandoradb.sql: Fixed small problem with tgrupos 2007-05-01 Raul Mateos - * functions_db.php, language_en.php, estado_grupo.php - estado_agente.php configurar_grupo.php lista_grupos.php - modificar_server.php: New feature implemented: groups could be - configured to do not launch alerts (Disabled field). Any agent - inside this group does not fire alerts while disabled will be - activated. Useful for programmed non-service periods or programmed - shutdowns. - * images/bricks.png: Changed red colour to orange one. * include/pandora.css: Changed background colour for View Mode tab. @@ -44,7 +86,6 @@ * operation/modificar_agente.php: Deleted table and moved button to tr. ->>>>>>> .r446 2007-04-22 Sancho Lerena * functions_db.php, language_en.php, estado_grupo.php @@ -92,7 +133,6 @@ * godmode/menu.php: Fixed some navigation marks. ->>>>>>> .r441 2007-04-19 Sancho Lerena * pandora.css: added some classes for graphical input buttons. diff --git a/pandora_console/godmode/agentes/module_manager.php b/pandora_console/godmode/agentes/module_manager.php index 8fd29a278b..968b135a70 100644 --- a/pandora_console/godmode/agentes/module_manager.php +++ b/pandora_console/godmode/agentes/module_manager.php @@ -398,9 +398,9 @@ if (isset($_POST["oid"])){ "; if ($update_module == "1"){ - echo ''; + echo ''; } else { - echo ''; + echo ''; } echo ""; diff --git a/pandora_console/include/FreeSans.ttf b/pandora_console/include/FreeSans.ttf new file mode 100644 index 0000000000000000000000000000000000000000..5909637eefd809d7eb7b0b66c18e3c116501b178 GIT binary patch literal 477820 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
@~JRDyE>e{j(#NcY6@4&D|xz_J&XeGhFv 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�hgDXtY#1vGRp{WrHYEiwB5zg)G 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 +// Simple Calendar Widget by Anthony Garrett +// +// +// Features: Easily customised +// (output date format, colours, language, year range and +// week start day) +// Accepts a date as input +// (see comments below for formats). +// Cross-browser code tested against; +// Internet Explorer 6.0.28 Mozilla 1.7.1 +// Opera 7.52+ Firefox 0.9.1+ +// Konqueror 3.4.0 Flock 0.4.9 +// +// How to add the Calendar to your page: +// This script needs to be defined for your page so, immediately +// after the BODY tag add the following line; +// +// +// +// Your root directory of the web site should also contain an empty +// file called "scwblank.html". See +// http://www.tarrget.info/calendar/IEnightmare.html +// for a full explanation. +// +// How to use the Calendar once it is defined for your page: +// +// Simply choose an event to trigger the calendar (like an onClick +// or an onMouseOver) and an element to work on (for the calendar +// to take its initial date from and write its output date to) then +// write it like this; +// +// <>="scwShow(<>,this);" +// +// e.g. onClick="scwShow(scwID('myElement'),this);" +// or onMouseOver="scwShow(this,this);" +// +// NOTE: The "this" keyword causes the script to fail when the +// triggered calendar is using an anchor tag. The following +// syntax works; +// +// +// <> +// +// +// If you are using a text node then specify the text's parent node +// in the function call. The date should be the only text under that +// node; +// +// e.g.

<>

+// +// You can also disable days of the week by adding arguments to the +// call to scwShow. The values should be Sunday = 0 through to +// Saturday = 6. A call to scwShow with Friday and Monday disabled +// would look something like this; +// +// scwShow(<>,this,5,1); +// +// Finally you can use the following technique to run a function +// when the calendar closes: +// +// scwNextAction=<>.runsAfterSCW(this,<>); +// scwShow(<>,this <<,optional arguments above>>); +// +// Where <> is a function defined on the calling page +// and <> is the list of arguments being passed to that +// function. +// +// ------------------------------------------------------------------ +// Here's an extremely trivial but fully functioning example page +// showing two of the ways to trigger the calendar; +// +// +// Basic Example +// +// +//

06-Dec-2006

+// +//

+// +// 08-Dec-2006 +// +// +// +// +// ***************************************************************************** +// +// See http://www.tarrget.info/calendar/scw.htm for a complete version history +// +// Version Date By Description +// ======= ==== =============== =========== +// 3.58 2007-04-04 Anthony Garrett Resolved an error caused when the date +// range does not include the current year. +// Thanks to Steve Davis for letting me know. +// +// Fixed "Today" selector display which +// was incorrectly visible when year range +// ended last year. (Also the result of +// investigations based on Steve Davis' +// feedback). +// ***************************************************************************** + +// ************************************ +// Start of Simple Calendar Widget Code +// ************************************ + +// This date is used throughout to determine today's date. + + var scwDateNow = new Date(Date.parse(new Date().toDateString())); + +//****************************************************************************** +//------------------------------------------------------------------------------ +// Customisation section +//------------------------------------------------------------------------------ +//****************************************************************************** + + // Set the bounds for the calendar here... + // If you want the year to roll forward you can use something like this... + // var scwBaseYear = scwDateNow.getFullYear()-5; + // alternatively, hard code a date like this... + // var scwBaseYear = 1990; + + var scwBaseYear = scwDateNow.getFullYear()-5; + + // How many years do want to be valid and to show in the drop-down list? + + var scwDropDownYears = 10; + + // All language-dependent changes can be made here... + + // If you wish to work in a single language (other than English) then + // just replace the English (in the function scwSetLanguage below) with + // your own text. + + // Using multiple languages: + // In order to keep this script to a resonable size I have not included + // languages here. You can set language fields in a function that you + // should call scwSetLanguage the script will use your languages. + // I have included all the translations that have been sent to me in + // such a function on the demonstration page. + + var scwLanguage; + + function scwSetDefaultLanguage() + {try + {scwSetLanguage();} + catch (exception) + {// English + scwToday = 'Today:'; + scwDrag = 'click here to drag'; + scwArrMonthNames = ['Jan','Feb','Mar','Apr','May','Jun', + 'Jul','Aug','Sep','Oct','Nov','Dec']; + scwArrWeekInits = ['S','M','T','W','T','F','S']; + scwInvalidDateMsg = 'The entered date is invalid.\n'; + scwOutOfRangeMsg = 'The entered date is out of range.'; + scwDoesNotExistMsg = 'The entered date does not exist.'; + scwInvalidAlert = ['Invalid date (',') ignored.']; + scwDateDisablingError = ['Error ',' is not a Date object.']; + scwRangeDisablingError = ['Error ', + ' should consist of two elements.']; + } + } + + // Note: Always start the scwArrWeekInits array with your string for + // Sunday whatever scwWeekStart (below) is set to. + + // scwWeekStart determines the start of the week in the display + // Set it to: 0 (Zero) for Sunday, 1 (One) for Monday etc.. + + var scwWeekStart = 1; + + // The week start day for the display is taken as the week start + // for week numbering. This ensures that only one week number + // applies to one line of the calendar table. + // [ISO 8601 begins the week with Day 1 = Monday.] + + // If you want to see week numbering on the calendar, set + // this to true. If not, false. + + var scwWeekNumberDisplay = false; + + // Week numbering rules are generally based on a day in the week + // that determines the first week of the year. ISO 8601 uses + // Thursday (day four when Sunday is day zero). You can alter + // the base day here. + + // See http://www.cl.cam.ac.uk/~mgk25/iso-time.html for more information + + var scwWeekNumberBaseDay = 4; + + // Each of the calendar's alert message types can be disabled + // independently here. + + var scwShowInvalidDateMsg = true, + scwShowOutOfRangeMsg = true, + scwShowDoesNotExistMsg = true, + scwShowInvalidAlert = true, + scwShowDateDisablingError = true, + scwShowRangeDisablingError = true; + + // Set the allowed input date delimiters here... + // E.g. To set the rising slash, hyphen, full-stop (aka stop or point), + // comma and space as delimiters use + // var scwArrDelimiters = ['/','-','.',',',' ']; + + var scwArrDelimiters = ['/','-','.',',',' ']; + + // Set the format for the displayed 'Today' date and for the output + // date here. + // + // The format is described using delimiters of your choice (as set + // in scwArrDelimiters above) and case insensitive letters D, M and Y. + // + // Definition Returns + // ---------- ------- + // D date in the month without zero filling + // DD date in the month left zero filled + // M month number without zero filling + // MM month number left zero filled + // MMM month string from scwArrMonthNames + // YY year number in two digits + // YYYY year number in four digits + + // Displayed "Today" date format + + //var scwDateDisplayFormat = 'dd-mm-yy'; // e.g. 'MMM-DD-YYYY' for the US + var scwDateDisplayFormat = 'yyyy-mm-dd'; // e.g. 'MMM-DD-YYYY' for the US + + // Output date format + + //var scwDateOutputFormat = 'DD MMM, YYYY'; // e.g. 'MMM-DD-YYYY' for the US + var scwDateOutputFormat = 'YYYY-MM-DD'; // e.g. 'MMM-DD-YYYY' for the US + + // The input date is fully parsed so a format is not required, + // but there is no way to differentiate the sequence reliably. + // + // e.g. Is 05/08/03 5th August 2003, + // 8th May 2003 or even + // 3rd August 2005? + // + // So, you have to state how the code should interpret input dates. + // + // The sequence should always contain one D, one M and one Y only, + // in any order. + + //var scwDateInputSequence = 'DMY'; // e.g. 'MDY' for the US + var scwDateInputSequence = 'YMD'; // e.g. 'MDY' for the US + + // Note: Because the user may select a date then trigger the + // calendar again to select another, it is necessary to + // have the input date sequence in the same order as the + // output display format. To allow the flexibility of having + // a full input date and a partial (e.g. only Month and Year) + // output, the input sequence is set separately. + // + // The same reason determines that the delimiters used should + // be in scwArrDelimiters. + + // scwZindex controls how the pop-up calendar interacts with the rest + // of the page. It is usually adequate to leave it as 1 (One) but I + // have made it available here to help anyone who needs to alter the + // level in order to ensure that the calendar displays correctly in + // relation to all other elements on the page. + + var scwZindex = 1; + + // Personally I like the fact that entering 31-Sep-2005 displays + // 1-Oct-2005, however you may want that to be an error. If so, + // set scwBlnStrict = true. That will cause an error message to + // display and the selected month is displayed without a selected + // day. Thanks to Brad Allan for his feedback prompting this feature. + + var scwBlnStrict = false; + + // If you wish to disable any displayed day, e.g. Every Monday, + // you can do it by setting the following array. The array elements + // match the displayed cells. + // + // You could put something like the following in your calling page + // to disable all weekend days; + // + // for (var i=0;i' + + '.scw {padding:1px;vertical-align:middle;}' + + 'iframe.scw {position:absolute;z-index:' + scwZindex + + ';top:0px;left:0px;visibility:hidden;' + + 'width:1px;height:1px;}' + + 'table.scw {padding:0px;visibility:hidden;' + + 'position:absolute;cursor:default;' + + 'width:200px;top:0px;left:0px;' + + 'z-index:' + (scwZindex+1) + + ';text-align:center;}' + + '' ); + + // This style sheet can be extracted from the script and edited into regular + // CSS (by removing all occurrences of + and '). That can be used as the + // basis for themes. Classes are described in comments within the style + // sheet. + + document.writeln( + '' + ); + +//****************************************************************************** +//------------------------------------------------------------------------------ +// End of customisation section +//------------------------------------------------------------------------------ +//****************************************************************************** + +// Variables required by both scwShow and scwShowMonth + + var scwTargetEle, + scwTriggerEle, + scwMonthSum = 0, + scwBlnFullInputDate = false, + scwPassEnabledDay = new Array(), + scwSeedDate = new Date(), + scwParmActiveToday = true, + scwWeekStart = scwWeekStart%7, + scwToday, + scwDrag, + scwArrMonthNames, + scwArrWeekInits, + scwInvalidDateMsg, + scwOutOfRangeMsg, + scwDoesNotExistMsg, + scwInvalidAlert, + scwDateDisablingError, + scwRangeDisablingError; + + // Add a method to format a date into the required pattern + + Date.prototype.scwFormat = + function(scwFormat) + {var charCount = 0, + codeChar = '', + result = ''; + + for (var i=0;i<=scwFormat.length;i++) + {if (i 0) {result += codeChar;} + } + + if (i 0) + {scwTriggerEle.scwTextNode = scwChildNodes[i]; + scwTriggerEle.scwLength = scwChildNodes[i].nodeValue.length; + break; + } + } + } + else + {var scwDateValue = scwEle.value.replace(/^\s+/,'').replace(/\s+$/,'');} + + // Set the language-dependent elements + + scwSetDefaultLanguage(); + + scwID('scwDragText').innerHTML = scwDrag; + + scwID('scwMonths').options.length = 0; + for (var i=0;iscwSeedDate + ) + {scwSeedDate = new Date(scwBaseYear + + Math.floor(scwDropDownYears / 2), 5, 1); + } + } + else + {function scwInputFormat() + {var scwArrSeed = new Array(), + scwArrInput = scwDateValue. + split(new RegExp('[\\'+scwArrDelimiters. + join('\\')+']+','g')); + + // "Escape" all the user defined date delimiters above - + // several delimiters will need it and it does no harm for + // the others. + + // Strip any empty array elements (caused by delimiters) + // from the beginning or end of the array. They will + // still appear in the output string if in the output + // format. + + if (scwArrInput[0]!=null) + {if (scwArrInput[0].length==0) scwArrInput.splice(0,1); + + if (scwArrInput[scwArrInput.length-1].length==0) + scwArrInput.splice(scwArrInput.length-1,1); + } + + scwBlnFullInputDate = false; + + switch (scwArrInput.length) + {case 1: + {// Year only entry + scwArrSeed[0] = parseInt(scwArrInput[0],10); // Year + scwArrSeed[1] = '6'; // Month + scwArrSeed[2] = 1; // Day + break; + } + case 2: + {// Year and Month entry + scwArrSeed[0] = + parseInt(scwArrInput[scwDateInputSequence. + replace(/D/i,''). + search(/Y/i)],10); // Year + scwArrSeed[1] = scwArrInput[scwDateInputSequence. + replace(/D/i,''). + search(/M/i)]; // Month + scwArrSeed[2] = 1; // Day + break; + } + case 3: + {// Day Month and Year entry + + scwArrSeed[0] = + parseInt(scwArrInput[scwDateInputSequence. + search(/Y/i)],10); // Year + scwArrSeed[1] = scwArrInput[scwDateInputSequence. + search(/M/i)]; // Month + scwArrSeed[2] = + parseInt(scwArrInput[scwDateInputSequence. + search(/D/i)],10); // Day + + scwBlnFullInputDate = true; + break; + } + default: + {// A stuff-up has led to more than three elements in + // the date. + scwArrSeed[0] = 0; // Year + scwArrSeed[1] = 0; // Month + scwArrSeed[2] = 0; // Day + } + } + + // These regular expressions validate the input date format + // to the following rules; + // Day 1-31 (optional zero on single digits) + // Month 1-12 (optional zero on single digits) + // or case insensitive name + // Year One, Two or four digits + + // Months names are as set in the language-dependent + // definitions and delimiters are set just below there + + var scwExpValDay = new RegExp('^(0?[1-9]|[1-2][0-9]|3[0-1])$'), + scwExpValMonth = new RegExp('^(0?[1-9]|1[0-2]|' + + scwArrMonthNames.join('|') + + ')$','i'), + scwExpValYear = new RegExp('^([0-9]{1,2}|[0-9]{4})$'); + + // Apply validation and report failures + + if (scwExpValYear.exec(scwArrSeed[0]) == null || + scwExpValMonth.exec(scwArrSeed[1]) == null || + scwExpValDay.exec(scwArrSeed[2]) == null + ) + {if (scwShowInvalidDateMsg) + alert(scwInvalidDateMsg + + scwInvalidAlert[0] + scwDateValue + + scwInvalidAlert[1]); + scwBlnFullInputDate = false; + scwArrSeed[0] = scwBaseYear + + Math.floor(scwDropDownYears/2); // Year + scwArrSeed[1] = '6'; // Month + scwArrSeed[2] = 1; // Day + } + + // Return the Year in scwArrSeed[0] + // Month in scwArrSeed[1] + // Day in scwArrSeed[2] + + return scwArrSeed; + } + + // Parse the string into an array using the allowed delimiters + + scwArrSeedDate = scwInputFormat(); + + // So now we have the Year, Month and Day in an array. + + // If the year is one or two digits then the routine assumes a + // year belongs in the 21st Century unless it is less than 50 + // in which case it assumes the 20th Century is intended. + + if (scwArrSeedDate[0]<100) + scwArrSeedDate[0] += (scwArrSeedDate[0]>50)?1900:2000; + + // Check whether the month is in digits or an abbreviation + + if (scwArrSeedDate[1].search(/\d+/)!=0) + {month = scwArrMonthNames.join('|').toUpperCase(). + search(scwArrSeedDate[1].substr(0,3). + toUpperCase()); + scwArrSeedDate[1] = Math.floor(month/4)+1; + } + + scwSeedDate = new Date(scwArrSeedDate[0], + scwArrSeedDate[1]-1, + scwArrSeedDate[2]); + } + + // Test that we have arrived at a valid date + + if (isNaN(scwSeedDate)) + {if (scwShowInvalidDateMsg) + alert( scwInvalidDateMsg + + scwInvalidAlert[0] + scwDateValue + + scwInvalidAlert[1]); + scwSeedDate = new Date(scwBaseYear + + Math.floor(scwDropDownYears/2),5,1); + scwBlnFullInputDate=false; + } + else + {// Test that the date is within range, + // if not then set date to a sensible date in range. + + if ((new Date(scwBaseYear,0,1)) > scwSeedDate) + {if (scwBlnStrict && scwShowOutOfRangeMsg) + alert(scwOutOfRangeMsg); + scwSeedDate = new Date(scwBaseYear,0,1); + scwBlnFullInputDate=false; + } + else + {if ((new Date(scwBaseYear+scwDropDownYears,0,0))< + scwSeedDate) + {if (scwBlnStrict && scwShowOutOfRangeMsg) + alert(scwOutOfRangeMsg); + scwSeedDate = new Date(scwBaseYear + + Math.floor(scwDropDownYears)-1, + 11,1); + scwBlnFullInputDate=false; + } + else + {if (scwBlnStrict && scwBlnFullInputDate && + (scwSeedDate.getDate() != scwArrSeedDate[2] || + (scwSeedDate.getMonth()+1) != scwArrSeedDate[1] || + scwSeedDate.getFullYear() != scwArrSeedDate[0] + ) + ) + {if (scwShowDoesNotExistMsg) alert(scwDoesNotExistMsg); + scwSeedDate = new Date(scwSeedDate.getFullYear(), + scwSeedDate.getMonth()-1,1); + scwBlnFullInputDate=false; + } + } + } + } + + // Test the disabled dates for validity + // Give error message if not valid. + + for (var i=0;i scwDisabledDates[i][1]) + ) + {scwDisabledDates[i].reverse();} + } + else + {if (scwShowRangeDisablingError) + alert( scwDateDisablingError[0] + + scwDisabledDates[i] + + scwDateDisablingError[1]); + } + } + } + + // Calculate the number of months that the entered (or + // defaulted) month is after the start of the allowed + // date range. + + scwMonthSum = 12*(scwSeedDate.getFullYear()-scwBaseYear)+ + scwSeedDate.getMonth(); + + // Set the drop down boxes. + + scwID('scwYears' ).options.selectedIndex = Math.floor(scwMonthSum/12); + scwID('scwMonths').options.selectedIndex = (scwMonthSum%12); + + // Opera has a bug with this method of setting the selected index. + // It requires the following work-around to force SELECTs to display + // correctly. + + if (window.opera) + {scwID('scwMonths').style.display = 'none'; + scwID('scwMonths').style.display = 'block'; + scwID('scwYears' ).style.display = 'none'; + scwID('scwYears' ).style.display = 'block'; + } + + // The bug is apparently known and "fixed for future versions" + // but they say they aren't going to put the fix into the 9.x + // series. + + // Check whether or not dragging is allowed and display drag handle + // if necessary + + scwID('scwDrag').style.display= + (scwAllowDrag) + ?((scwID('scwIFrame'))?'block':'table-row') + :'none'; + + // Display the month + + scwShowMonth(0); + + // Position the calendar box + + // The object sniffing for Opera allows for the fact that Opera + // is the only major browser that correctly reports the position + // of an element in a scrollable DIV. This is because IE and + // Firefox omit the DIV from the offsetParent tree. + + scwTargetEle=scwEle; + + var offsetTop =parseInt(scwEle.offsetTop ,10) + + parseInt(scwEle.offsetHeight,10), + offsetLeft=parseInt(scwEle.offsetLeft,10); + + if (!window.opera) + {while (scwEle.tagName!='BODY' && scwEle.tagName!='HTML') + {offsetTop -=parseInt(scwEle.scrollTop, 10); + offsetLeft-=parseInt(scwEle.scrollLeft,10); + scwEle=scwEle.parentNode; + } + scwEle=scwTargetEle; + } + + do {scwEle=scwEle.offsetParent; + offsetTop +=parseInt(scwEle.offsetTop, 10); + offsetLeft+=parseInt(scwEle.offsetLeft,10); + } + while (scwEle.tagName!='BODY' && scwEle.tagName!='HTML'); + + scwID('scw').style.top =offsetTop +'px'; + scwID('scw').style.left=offsetLeft+'px'; + + if (scwID('scwIframe')) + {scwID('scwIframe').style.top=offsetTop +'px'; + scwID('scwIframe').style.left=offsetLeft+'px'; + scwID('scwIframe').style.width=(scwID('scw').offsetWidth-2)+'px'; + scwID('scwIframe').style.height=(scwID('scw').offsetHeight-2)+'px'; + scwID('scwIframe').style.visibility='visible'; + } + + // Show it on the page + + scwID('scw').style.visibility='visible'; + + // Ensure that Opera actually displays the value that is selected! + + scwID('scwYears' ).options.selectedIndex = scwID('scwYears' ).options.selectedIndex; + scwID('scwMonths').options.selectedIndex = scwID('scwMonths').options.selectedIndex; + + var el = (scwSourceEle.parentNode) + ?scwSourceEle.parentNode + :scwSourceEle; + + if (typeof event=='undefined') + {el.addEventListener('click', + scwStopPropagation, + false); + } + else {if (el.attachEvent) + {el.attachEvent('onclick',scwStopPropagation);} + else {event.cancelBubble = true;} + } + } + + function scwHide() + {scwID('scw').style.visibility='hidden'; + if (scwID('scwIframe')) + {scwID('scwIframe').style.visibility='hidden';} + + if (typeof scwNextAction!='undefined' && scwNextAction!=null) + {scwNextActionReturn = scwNextAction(); + // Explicit null set to prevent closure causing memory leak + scwNextAction = null; + } + } + + function scwCancel(scwEvt) + {if (scwClickToHide) scwHide(); + scwStopPropagation(scwEvt); + } + + function scwStopPropagation(scwEvt) + {if (scwEvt.stopPropagation) + scwEvt.stopPropagation(); // Capture phase + else scwEvt.cancelBubble = true; // Bubbling phase + } + + function scwBeginDrag(event) + {var elementToDrag = scwID('scw'); + + var deltaX = event.clientX, + deltaY = event.clientY, + offsetEle = elementToDrag; + + do {deltaX -= parseInt(offsetEle.offsetLeft,10); + deltaY -= parseInt(offsetEle.offsetTop ,10); + offsetEle = offsetEle.offsetParent; + } + while (offsetEle.tagName!='BODY' && + offsetEle.tagName!='HTML'); + + if (document.addEventListener) + {document.addEventListener('mousemove', + moveHandler, + true); // Capture phase + document.addEventListener('mouseup', + upHandler, + true); // Capture phase + } + else {elementToDrag.attachEvent('onmousemove', + moveHandler); // Bubbling phase + elementToDrag.attachEvent('onmouseup', + upHandler); // Bubbling phase + elementToDrag.setCapture(); + } + + scwStopPropagation(event); + + function moveHandler(scwEvt) + {if (!scwEvt) scwEvt = window.event; + + elementToDrag.style.left = (scwEvt.clientX - deltaX) + 'px'; + elementToDrag.style.top = (scwEvt.clientY - deltaY) + 'px'; + + if (scwID('scwIframe')) + {scwID('scwIframe').style.left = + (scwEvt.clientX - deltaX) + 'px'; + scwID('scwIframe').style.top = + (scwEvt.clientY - deltaY) + 'px'; + } + + scwStopPropagation(scwEvt); + } + + function upHandler(scwEvt) + {if (!scwEvt) scwEvt = window.event; + + if (document.removeEventListener) + {document.removeEventListener('mousemove', + moveHandler, + true); // Capture phase + document.removeEventListener('mouseup', + upHandler, + true); // Capture phase + } + else {elementToDrag.detachEvent('onmouseup', + upHandler); // Bubbling phase + elementToDrag.detachEvent('onmousemove', + moveHandler); // Bubbling phase + elementToDrag.releaseCapture(); + } + + scwStopPropagation(scwEvt); + } + } + + function scwShowMonth(scwBias) + {// Set the selectable Month and Year + // May be called: from the left and right arrows + // (shift month -1 and +1 respectively) + // from the month selection list + // from the year selection list + // from the showCal routine + // (which initiates the display). + + var scwShowDate = new Date(Date.parse(new Date().toDateString())), + scwStartDate = new Date(); + + // Set the time to the middle of the day so that the handful of + // regions that have daylight saving shifts that change the day + // of the month (i.e. turn the clock back at midnight or forward + // at 23:00) do not mess up the date display in the calendar. + + scwShowDate.setHours(12); + + scwSelYears = scwID('scwYears'); + scwSelMonths = scwID('scwMonths'); + + if (scwSelYears.options.selectedIndex>-1) + {scwMonthSum=12*(scwSelYears.options.selectedIndex)+scwBias; + if (scwSelMonths.options.selectedIndex>-1) + {scwMonthSum+=scwSelMonths.options.selectedIndex;} + } + else + {if (scwSelMonths.options.selectedIndex>-1) + {scwMonthSum+=scwSelMonths.options.selectedIndex;} + } + + scwShowDate.setFullYear(scwBaseYear + Math.floor(scwMonthSum/12), + (scwMonthSum%12), + 1); + + // If the Week numbers are displayed, shift the week day names + // to the right. + scwID('scwWeek_').style.display= + (scwWeekNumberDisplay) + ?((scwID('scwIFrame'))?'block':'table-cell') + :'none'; + + if ((12*parseInt((scwShowDate.getFullYear()-scwBaseYear),10)) + + parseInt(scwShowDate.getMonth(),10) < (12*scwDropDownYears) && + (12*parseInt((scwShowDate.getFullYear()-scwBaseYear),10)) + + parseInt(scwShowDate.getMonth(),10) > -1) + {scwSelYears.options.selectedIndex=Math.floor(scwMonthSum/12); + scwSelMonths.options.selectedIndex=(scwMonthSum%12); + + scwCurMonth = scwShowDate.getMonth(); + + scwShowDate.setDate((((scwShowDate. + getDay()-scwWeekStart)<0)?-6:1)+ + scwWeekStart-scwShowDate.getDay()); + + // This statement moved by Michael Cerveny to make version 3.55 + var scwCompareDateValue = new Date(scwShowDate.getFullYear(), + scwShowDate.getMonth(), + scwShowDate.getDate()).valueOf(); + + scwStartDate = new Date(scwShowDate); + + if (scwID('scwFoot')) + {var scwFoot = scwID('scwFoot'); + + function scwFootOutput() {scwSetOutput(scwDateNow);} + + if (scwDisabledDates.length==0) + {if (scwActiveToday && scwParmActiveToday) + {scwFoot.onclick = scwFootOutput; + scwFoot.className = 'scwFoot'; + + if (scwID('scwIFrame')) + {scwFoot.onmouseover = scwChangeClass; + scwFoot.onmouseout = scwChangeClass; + } + + } + else + {scwFoot.onclick = null; + scwFoot.className = 'scwFootDisabled'; + + if (scwID('scwIFrame')) + {scwFoot.onmouseover = null; + scwFoot.onmouseout = null; + } + + if (document.addEventListener) + {scwFoot.addEventListener('click', + scwStopPropagation, + false); + } + else {scwFoot.attachEvent('onclick', + scwStopPropagation);} + } + } + else + {for (var k=0;k= scwDisabledDates[k][0]. + valueOf() && + scwDateNow.valueOf() <= scwDisabledDates[k][1]. + valueOf() + ) + ) + ) + ) + {scwFoot.onclick = null; + scwFoot.className = 'scwFootDisabled'; + + if (scwID('scwIFrame')) + {scwFoot.onmouseover = null; + scwFoot.onmouseout = null; + } + + if (document.addEventListener) + {scwFoot.addEventListener('click', + scwStopPropagation, + false); + } + else {scwFoot.attachEvent('onclick', + scwStopPropagation); + } + break; + } + else + {scwFoot.onclick=scwFootOutput; + scwFoot.className='scwFoot'; + + if (scwID('scwIFrame')) + {scwFoot.onmouseover = scwChangeClass; + scwFoot.onmouseout = scwChangeClass; + } + } + } + } + } + + function scwSetOutput(scwOutputDate) + {if (typeof scwTargetEle.value == 'undefined') + {scwTriggerEle.scwTextNode. + replaceData(0,scwTriggerEle.scwLength, + scwOutputDate.scwFormat(scwDateOutputFormat)); + } + else + {scwTargetEle.value = + scwOutputDate.scwFormat(scwDateOutputFormat); + } + scwHide(); + } + + function scwCellOutput(scwEvt) + {var scwEle = scwEventTrigger(scwEvt), + scwOutputDate = new Date(scwStartDate); + + if (scwEle.nodeType==3) scwEle=scwEle.parentNode; + + scwOutputDate.setDate(scwStartDate.getDate() + + parseInt(scwEle.id.substr(8),10)); + + scwSetOutput(scwOutputDate); + } + + function scwChangeClass(scwEvt) + {var scwEle = scwEventTrigger(scwEvt); + + if (scwEle.nodeType==3) scwEle=scwEle.parentNode; + + switch (scwEle.className) + {case 'scwCells': + scwEle.className = 'scwCellsHover'; + break; + case 'scwCellsHover': + scwEle.className = 'scwCells'; + break; + case 'scwCellsExMonth': + scwEle.className = 'scwCellsExMonthHover'; + break; + case 'scwCellsExMonthHover': + scwEle.className = 'scwCellsExMonth'; + break; + case 'scwCellsWeekend': + scwEle.className = 'scwCellsWeekendHover'; + break; + case 'scwCellsWeekendHover': + scwEle.className = 'scwCellsWeekend'; + break; + case 'scwFoot': + scwEle.className = 'scwFootHover'; + break; + case 'scwFootHover': + scwEle.className = 'scwFoot'; + break; + case 'scwInputDate': + scwEle.className = 'scwInputDateHover'; + break; + case 'scwInputDateHover': + scwEle.className = 'scwInputDate'; + } + + return true; + } + + function scwEventTrigger(scwEvt) + {if (!scwEvt) scwEvt = event; + return scwEvt.target||scwEvt.srcElement; + } + + function scwWeekNumber(scwInDate) + {// The base day in the week of the input date + var scwInDateWeekBase = new Date(scwInDate); + + scwInDateWeekBase.setDate(scwInDateWeekBase.getDate() + - scwInDateWeekBase.getDay() + + scwWeekNumberBaseDay + + ((scwInDate.getDay()> + scwWeekNumberBaseDay)?7:0)); + + // The first Base Day in the year + var scwFirstBaseDay = + new Date(scwInDateWeekBase.getFullYear(),0,1) + + scwFirstBaseDay.setDate(scwFirstBaseDay.getDate() + - scwFirstBaseDay.getDay() + + scwWeekNumberBaseDay + ); + + if (scwFirstBaseDay < + new Date(scwInDateWeekBase.getFullYear(),0,1)) + {scwFirstBaseDay.setDate(scwFirstBaseDay.getDate()+7);} + + // Start of Week 01 + var scwStartWeekOne = new Date(scwFirstBaseDay + - scwWeekNumberBaseDay + + scwInDate.getDay()); + + if (scwStartWeekOne > scwFirstBaseDay) + {scwStartWeekOne.setDate(scwStartWeekOne.getDate()-7);} + + // Subtract the date of the current week from the date of the + // first week of the year to get the number of weeks in + // milliseconds. Divide by the number of milliseconds + // in a week then round to no decimals in order to remove + // the effect of daylight saving. Add one to make the first + // week, week 1. Place a string zero on the front so that + // week numbers are zero filled. + + var scwWeekNo = + '0' + (Math.round((scwInDateWeekBase - + scwFirstBaseDay)/604800000,0) + 1); + + // Return the last two characters in the week number string + + return scwWeekNo.substring(scwWeekNo.length-2, + scwWeekNo.length); + } + + // Treewalk to display the dates. + // I tried to use getElementsByName but IE refused to cooperate + // so I resorted to this method which works for all tested + // browsers. + + var scwCells = scwID('scwCells'); + + for (i=0;i + (new Date(scwBaseYear+ + scwDropDownYears,0,0, + scwShowDate.getHours())) + ) + ) || + (scwOutOfMonthDisable && + (scwShowDate < + (new Date(scwShowDate.getFullYear(), + scwCurMonth,1, + scwShowDate.getHours())) + || + scwShowDate > + (new Date(scwShowDate.getFullYear(), + scwCurMonth+1,0, + scwShowDate.getHours())) + ) + ) + )?true:false; + + scwCell.style.visibility = + (scwOutOfMonthHide && + (scwShowDate < + (new Date(scwShowDate.getFullYear(), + scwCurMonth,1, + scwShowDate.getHours())) + || + scwShowDate > + (new Date(scwShowDate.getFullYear(), + scwCurMonth+1,0, + scwShowDate.getHours())) + ) + )?'hidden':''; + + for (var k=0;k= + scwDisabledDates[k][0].valueOf() + && + scwCompareDateValue <= + scwDisabledDates[k][1].valueOf() + ) + {scwDisabled = true;} + } + } + + if (scwDisabled || + !scwEnabledDay[j-1+(7*((i*scwCells. + childNodes. + length)/6))] || + !scwPassEnabledDay[(j-1+(7*(i*scwCells. + childNodes. + length/6)))%7] + ) + {scwRows.childNodes[j].onclick = null; + + if (scwID('scwIFrame')) + {scwRows.childNodes[j].onmouseover = null; + scwRows.childNodes[j].onmouseout = null; + } + + scwCell.className= + (scwShowDate.getMonth()!=scwCurMonth) + ?'scwCellsExMonthDisabled' + :(scwBlnFullInputDate && + scwShowDate.toDateString()== + scwSeedDate.toDateString()) + ?'scwInputDateDisabled' + :(scwShowDate.getDay()%6==0) + ?'scwCellsWeekendDisabled' + :'scwCellsDisabled'; + + scwCell.style.borderColor = + (scwFormatTodayCell && scwShowDate.toDateString()==scwDateNow.toDateString()) + ?scwTodayCellBorderColour + :(scwCell.currentStyle) + ?scwCell.currentStyle['backgroundColor'] + :(window.getComputedStyle) + ?document.defaultView.getComputedStyle(scwCell,null).getPropertyValue('background-color') + :''; + } + else + {scwRows.childNodes[j].onclick=scwCellOutput; + + if (scwID('scwIFrame')) + {scwRows.childNodes[j].onmouseover = + scwChangeClass; + scwRows.childNodes[j].onmouseout = + scwChangeClass; + } + + scwCell.className= + (scwShowDate.getMonth()!=scwCurMonth) + ?'scwCellsExMonth' + :(scwBlnFullInputDate && + scwShowDate.toDateString()== + scwSeedDate.toDateString()) + ?'scwInputDate' + :(scwShowDate.getDay()%6==0) + ?'scwCellsWeekend' + :'scwCells'; + + scwCell.style.borderColor = + (scwFormatTodayCell && scwShowDate.toDateString() == scwDateNow.toDateString()) + ?scwTodayCellBorderColour + :(scwCell.currentStyle) + ?scwCell.currentStyle['backgroundColor'] + :(window.getComputedStyle) + ?document.defaultView.getComputedStyle(scwCell,null).getPropertyValue('background-color') + :''; + } + + scwShowDate.setDate(scwShowDate.getDate()+1); + scwCompareDateValue = new Date(scwShowDate.getFullYear(), + scwShowDate.getMonth(), + scwShowDate.getDate()).valueOf(); + } + } + } + } + } + // Force a re-draw to prevent Opera's poor dynamic rendering + // from leaving garbage in the calendar when the displayed + // month is changed. + scwID('scw').style.visibility='hidden'; + scwID('scw').style.visibility='visible'; + } + +// ************************* +// End of Function Library +// ************************* +// *************************** +// Start of Calendar structure +// *************************** + + document.write( + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "
" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "
" + + "" + + "" + + "" + + "" + + "" + + "
" + + "
" + + "" + + "" + + ""); + + for (i=0;i<7;i++) + document.write( ""); + + document.write("" + + "" + + ""); + + for (i=0;i<6;i++) + {document.write( + "" + + ""); + for (j=0;j<7;j++) + {document.write( + ""); + } + + document.write( + ""); + } + + document.write( + ""); + + if ((new Date(scwBaseYear + scwDropDownYears, 0, 0)) > scwDateNow && + (new Date(scwBaseYear, 0, 0)) < scwDateNow) + {document.write( + "" + + "" + + "" + + "" + + ""); + } + + document.write( + "
" + + "
" + + "
"); + + if (document.addEventListener) + {scwID('scw' ).addEventListener('click',scwCancel,false); + scwID('scwHeadLeft' ).addEventListener('click',scwStopPropagation,false); + scwID('scwMonths' ).addEventListener('click',scwStopPropagation,false); + scwID('scwMonths' ).addEventListener('change',scwStopPropagation,false); + scwID('scwYears' ).addEventListener('click',scwStopPropagation,false); + scwID('scwYears' ).addEventListener('change',scwStopPropagation,false); + scwID('scwHeadRight').addEventListener('click',scwStopPropagation,false); + } + else {scwID('scw' ).attachEvent('onclick',scwCancel); + scwID('scwHeadLeft' ).attachEvent('onclick',scwStopPropagation); + scwID('scwMonths' ).attachEvent('onclick',scwStopPropagation); + scwID('scwMonths' ).attachEvent('onchange',scwStopPropagation); + scwID('scwYears' ).attachEvent('onclick',scwStopPropagation); + scwID('scwYears' ).attachEvent('onchange',scwStopPropagation); + scwID('scwHeadRight').attachEvent('onclick',scwStopPropagation); + } + +// *************************** +// End of Calendar structure +// *************************** +// **************************************** +// Start of document level event definition +// **************************************** + + if (document.addEventListener) + {document.addEventListener('click',scwHide, false);} + else {document.attachEvent('onclick',scwHide);} + +// **************************************** +// End of document level event definition +// **************************************** +// ************************************ +// End of Simple Calendar Widget Code +// ************************************ \ No newline at end of file diff --git a/pandora_console/include/config.inc.php b/pandora_console/include/config.inc.php index f5c7adf35f..8ecac9e55b 100644 --- a/pandora_console/include/config.inc.php +++ b/pandora_console/include/config.inc.php @@ -30,10 +30,10 @@ $pandora_version="v1.3 devel"; //$dbhost="localhost"; // MySQL Host // This is used for reporting, please add "/" character at the end -//$config_homedir = "/var/www/babel_console/"; +//$config_homedir = "/var/www/pandora_console/"; // Do not display any ERROR -//error_reporting(0); +//error_reporting(0); // Need to use active console at this moment // Display ALL errors error_reporting(E_ALL); diff --git a/pandora_console/include/functions_db.php b/pandora_console/include/functions_db.php index 2187135b7d..f66f6f5fd4 100644 --- a/pandora_console/include/functions_db.php +++ b/pandora_console/include/functions_db.php @@ -638,7 +638,6 @@ function comprueba_login() { return 0 ; } } - require("general/noaccess.php"); return 1; } @@ -1069,5 +1068,19 @@ function give_agent_id_from_module_id ($id_module){ return $pro; } +// --------------------------------------------------------------- +// Generic access to a field ($field) given a table +// --------------------------------------------------------------- + +function give_db_value ($field, $table, $field_search, $condition_value){ + global $config; + $query = "SELECT $field FROM $table WHERE $field_search = '$condition_value' "; + $resq1 = mysql_query($query); + if ($rowdup = mysql_fetch_array($resq1)) + $pro = $rowdup[0]; + else + $pro = ""; + return $pro; +} ?> diff --git a/pandora_console/include/languages/language_en.php b/pandora_console/include/languages/language_en.php index 0c429641b2..244038f9b5 100644 --- a/pandora_console/include/languages/language_en.php +++ b/pandora_console/include/languages/language_en.php @@ -768,8 +768,21 @@ $lang_label["text"]="Text"; $lang_label["delete_data_above"]="Delete data above"; $lang_label["enabled"]="Enabled"; +// 3 may 2007 +$lang_label["csv"] = "Standalone CSV ascii file"; +$lang_label["average_per_hourday"] = "Average per hour/day"; +$lang_label["datatable"] = "Data table"; +$lang_label["export_type"] = "Export type"; - +$lang_label["sunday"]="Sunday"; +$lang_label["monday"]="Monday"; +$lang_label["tuesday"]="Tuesday"; +$lang_label["wednesday"]="Wednesday"; +$lang_label["thurdsday"]="Thurdsday"; +$lang_label["friday"]="Friday"; +$lang_label["saturday"]="Saturday"; +$lang_label["hr"]="Hr"; +$lang_label["get_file"]="Download file"; global $lang_label; global $help_label; ?> diff --git a/pandora_console/include/languages/language_es_es.php b/pandora_console/include/languages/language_es_es.php index 3bc1c7bfb6..f801472d6b 100644 --- a/pandora_console/include/languages/language_es_es.php +++ b/pandora_console/include/languages/language_es_es.php @@ -296,8 +296,8 @@ $lang_label["add"]="Añadir"; $lang_label["db_purge_event"]="Limpieza de la Base de Datos de eventos"; $lang_label["db_event"]="BBDD de eventos"; $lang_label["max_min"]="Máx/Mín"; -$lang_label["max"]="Máximo"; -$lang_label["min"]="Mínimo"; +$lang_label["max"]="M�ximo"; +$lang_label["min"]="M�nimo"; $lang_label["med"]="Media"; $lang_label["month_graph"]="Gráfico mensual"; $lang_label["week_graph"]="Gráfico semanal"; @@ -356,8 +356,8 @@ $lang_label["manage_config"]="Gestionar conf."; $lang_label["config_manage"]="Gestión de Configuraciones"; $lang_label["get_info"]="Obtener info."; -$lang_label["are_you_sure"]="¿Está usted seguro?"; -$lang_label["users_msg"]="Los perfiles de usuario en Pandora definen qué usuarios pueden acceder a Pandora y que puede hacer cada uno. Los grupos definen elementos en común, cada usuario puede pertenecer a uno o más grupos, y tiene asignado un perfil a cada grupo que pertenezca. Un perfil es una lista de lo que puede y no puede hacer cada grupo, como por ejemplo «ver incidentes» o «gestionar bases de datos». Abajo se muestra una lista de los perfiles disponibles (definidos por los administradores locales de Pandora)"; +$lang_label["are_you_sure"]="�Está usted seguro?"; +$lang_label["users_msg"]="Los perfiles de usuario en Pandora definen qué usuarios pueden acceder a Pandora y que puede hacer cada uno. Los grupos definen elementos en común, cada usuario puede pertenecer a uno o más grupos, y tiene asignado un perfil a cada grupo que pertenezca. Un perfil es una lista de lo que puede y no puede hacer cada grupo, como por ejemplo �ver incidentes� o �gestionar bases de datos�. Abajo se muestra una lista de los perfiles disponibles (definidos por los administradores locales de Pandora)"; $help_label["users_msg1"]="Este usuario es especial y tiene permiso para todo, pasando por encima de los privilegios asignados mediante grupos/perfiles"; $help_label["users_msg2"]="Este usuario tiene permisos segregados para ver datos en los agente de su grupo, crear incidentes dentro de aquellos grupos sobre los que tenga acceso y añadir notas en incidentes propios o de terceros"; @@ -454,7 +454,7 @@ $lang_label["inagent"]=" en el agente "; $lang_label["you_must_select_modules"]="Se deben seleccionar módulos y/o alertas como objeto de la copia"; $lang_label["packets_by_date"]="Paquetes por rangos de fecha"; $lang_label["packets_by_agent"]="Paquetes por agente"; -$lang_label["modules_per_agent"]="Módulos por agente"; // Graphic title, dont use tildes +$lang_label["modules_per_agent"]="M�dulos por agente"; // Graphic title, dont use tildes $lang_label["event_total"]="Eventos totales"; $lang_label["events_per_user"]="Eventos por usuario"; $lang_label["events_per_group"]="Eventos por grupo"; @@ -537,7 +537,7 @@ $lang_label["validate"]="Validar"; $lang_label["incident_user"]="Autores de los incidentes"; $lang_label["incident_source"]="Origenes de los incidentes"; $lang_label["incident_group"]="Grupos de los incidentes"; -$lang_label["users_statistics"]="Estadísticas de actividad de los usuarios"; +$lang_label["users_statistics"]="Estad�sticas de actividad de los usuarios"; $lang_label["update_user_ok"]="Usuario actualizado correctamente"; $lang_label["agent_detail"]="Detalle agente"; @@ -665,6 +665,7 @@ $lang_label["no_rtask"]="No hay ninguna tarea de reconocimiento configurada"; //3 Apr 2007 $lang_label["no_netprofiles"]="No hay ningún perfil de red definido"; + global $lang_label; global $help_label; ?> diff --git a/pandora_console/index.php b/pandora_console/index.php index eaf6bdc1a5..83378b32f8 100644 --- a/pandora_console/index.php +++ b/pandora_console/index.php @@ -5,11 +5,11 @@ // Copyright (c) 2004-2007 Sancho Lerena, slerena@gmail.com // Main PHP/SQL code development and project architecture and management // Copyright (c) 2004-2007 Raul Mateos Martin, raulofpandora@gmail.com -// CSS and some PHP additions +// CSS and some PHP code additions // Copyright (c) 2006-2007 Jonathan Barajas, jonathan.barajas[AT]gmail[DOT]com // Javascript Active Console code. // Copyright (c) 2006 Jose Navarro -// Additions to Pandora FMS 1.2 graph code and new XML reporting template management +// Additions to code for Pandora FMS 1.2 graph code and new XML reporting template managemement // Copyright (c) 2005-2007 Artica Soluciones Tecnologicas, info@artica.es // // This program is free software; you can redistribute it and/or @@ -25,9 +25,7 @@ // Pandora FMS 1.x uses icons from famfamfam, licensed under CC Atr. 2.5 // Silk icon set 1.3 (cc) Mark James, http://www.famfamfam.com/lab/icons/silk/ - // Pandora FMS 1.x uses Pear Image::Graph code - // Pandora FMS shares much of it's code with project Babel Enterprise, also a // FreeSoftware Project coded by some of the people who makes Pandora FMS @@ -94,6 +92,7 @@ if (isset ($_GET["refr"])){ +

Pandora FMS console installation wizard. Step #3 of 4

-
+

Environment and database setup

diff --git a/pandora_console/operation/active_console/index.php b/pandora_console/operation/active_console/index.php index 45df2e3188..4f2ecb78fc 100644 --- a/pandora_console/operation/active_console/index.php +++ b/pandora_console/operation/active_console/index.php @@ -20,6 +20,10 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. require("../../include/config.php"); +// If you activate error reporting, Active Console don't work +// because it has MANY warnings and other kind of errors + +error_reporting(0); global $dbname; global $dbuser; global $dbpassword; @@ -44,7 +48,8 @@ session_start(); "); } ?> @@ -256,7 +261,7 @@ while ($vista=mysql_fetch_array($vistas)){ //recorremos las vistas y creamos un // Creamos las instancias de los objetos (que se corresponderan con los ids de los divs html) $i=1; -//global $aObjetos; + $aObjetos = array(); //mysql_data_seek($objetos,0); $objetos = dameObjetosVista($vista["idVista"]); @@ -301,53 +306,22 @@ while ($vista=mysql_fetch_array($vistas)){ //recorremos las vistas y creamos un $i=$i+1; } - -// echo "var jg_doc = new jsGraphics(); -// -// jg_doc.setColor('#ff0000'); // red -// jg_doc.drawLine(10, 113, 220, 55); // co-ordinates related to 'myCanvas' -// jg_doc.setColor('#0000ff'); // blue -// jg_doc.fillRect(110, 120, 30, 60); -// jg_doc.paint(); -// "; - - } -//$objetos = dameObjetos(); -// echo "var aObjeto_count = 0;"; -// echo "aObjeto_count=1;"; -//echo "aObjeto = new Array(), aObjeto_count =".mysql_num_rows($objetos).";"; - - - - - - echo " - - -var tpg2; - - tpg2 = new xTabPanelGroup('tpg2', 1000, 1000, 25, 'tabPanel', 'tabGroup', 'tabDefault', 'tabSelected'); - - -tpg2.select(parseInt(vistaActiva)+1); - - FormSetup(); - + var tpg2; + tpg2 = new xTabPanelGroup('tpg2', 1000, 1000, 25, 'tabPanel', 'tabGroup', 'tabDefault', 'tabSelected'); + tpg2.select(parseInt(vistaActiva)+1); + FormSetup(); } "; - - $vista_activa=obtenerVistaActiva(); // Obtenemos la acción a realizar mediante los parametros GET y el nombre "action" - // Una vez aparecido el formulario añadimos a la base de datos, los valores recogidos -if ($_GET["action"]=="addagent") -{ +if ($_GET["action"]=="addagent"){ + $aSub[0]=$_POST["vista_MG"]; // Crear el objeto en forma de vista y que se cree una vista con los grupos de modulos que lo forman $aSub[1]=$_POST["vista_M"]; // Crear el objeto en forma de vista y que se cree una vista con los modulos que lo forman @@ -1250,7 +1224,7 @@ $perfil = obtenerPerfilActivo(); // Obtenemos las vistas asignadas al perfil especial activo con id igual a 2 y creamos un array JavaScript que contendrá las Vistas $vistas = dameVistasPerfilActivas($perfil); // mysql_data_seek($vistas,0); -while ($vista=mysql_fetch_array($vistas)){ +if ($vista=mysql_fetch_array($vistas)){ $datos_vista=dameVista($vista["idVista"]); $estado_vista=dameEstadoVista($vista["idVista"]); $css_estado_vista=""; diff --git a/pandora_console/operation/active_console/lib/db_functions.php b/pandora_console/operation/active_console/lib/db_functions.php index da52748e27..e243724f21 100644 --- a/pandora_console/operation/active_console/lib/db_functions.php +++ b/pandora_console/operation/active_console/lib/db_functions.php @@ -1,271 +1,138 @@ +// Additions to code for Pandora FMS 1.2 graph code and new XML reporting template managemement +// Copyright (c) 2005-2007 Artica Soluciones Tecnologicas, info@artica.es +// -// This program is free software; you can redistribute it and/or -// modify it under the terms of the GNU General Public License -// as published by the Free Software Foundation; either version 2 -// of the License, or (at your option) any later version. -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -include "../../include/config.php"; - -//abrir y seleccionar la base de datos de pandora - -function opendb() -{ - global $dbname, $dbuser, $dbpassword, $dbhost; - - $link = mysql_pconnect($dbhost,$dbuser,$dbpassword); - if (!$link) { - die('Could not connect: ' . mysql_error()); - } - if (!mysql_select_db($dbname, $link)) { - echo 'Could not select database'; - exit; - } -} - -//cerrar la base de datos -function closedb() -{ -// mysql_close(); - -} +require "/var/www/pandora_console/include/config.php"; // retorna el array con los agentes existente en la base de datos function dameAgentes(){ - - - opendb(); - $query1="SELECT * FROM tagente;"; $resq1=mysql_query($query1); - - closedb(); - return $resq1; - } // retorna el array con los modulos asignados a un agente que es identificado por su id_agente como parametro function dameModulos($id_agente){ - - - opendb(); - $query1="SELECT * FROM tagente_modulo where id_agente=".$id_agente.";"; $resq1=mysql_query($query1); - - closedb(); - return $resq1; - } // retorna el array con los grupos de agentes existente en la base de datos function dameGruposAgentes(){ - - - opendb(); - $query1="SELECT * FROM tgrupo;"; $resq1=mysql_query($query1); - - closedb(); - return $resq1; - } -// retorna el array con los grupos de agentes que contengan algún agente, devuelve -1 si no hay grupo de agentes con agentes -function dameGruposAgentesConAgentes() -{ - - opendb(); - +// retorna el array con los grupos de agentes que contengan algún agente, +// devuelve -1 si no hay grupo de agentes con agentes +function dameGruposAgentesConAgentes(){ $query1="SELECT * FROM tgrupo where id_grupo in (select id_grupo from tagente group by id_grupo);"; $resq1=mysql_query($query1); - -// echo "-------------------".$resq1; if ($resq1) - { return $resq1; - }else - { + else return -1; - } -closedb(); } // retorna el array con los agentes pertenecientes al grupo de agentes identificado por su id -function dameAgentesDelGrupAogentes($id_grupo) -{ - - opendb(); - +function dameAgentesDelGrupAogentes($id_grupo){ $query1="SELECT * FROM tagente where id_grupo='".$id_grupo."'"; $resq1=mysql_query($query1); - - closedb(); - return $resq1; - } // retorna el array con los grupos existentes en la bd con nombre que se le pasa como parametro function dameGrupoAgente($id_grupo){ - - - opendb(); - $query1="SELECT * FROM tgrupo where id_grupo=".$id_grupo.";"; $resq1=mysql_query($query1); $row_grupo=mysql_fetch_array($resq1); - - closedb(); - return $row_grupo; - } // retorna el id_agent pasandole como argumento el nombre del agente -function dameIdAgente($nombre) -{ - opendb(); - +function dameIdAgente($nombre){ $query_agent="SELECT id_agente FROM tagente where nombre='".$nombre."';"; $resq1_agent=mysql_query($query_agent); $row_agent=mysql_fetch_array($resq1_agent); - - closedb(); - return $row_agent["id_agente"]; } // retorna el id_agent_modulo pasandole como argumento el id del agente y el nombre del modulo -function dameIdModulo($id_agente,$nombre) -{ - opendb(); - +function dameIdModulo($id_agente,$nombre){ $query_agent="SELECT id_agente_modulo FROM tagente_modulo where nombre='".$nombre."' and id_agente='".$id_agente."';"; $resq1_agent=mysql_query($query_agent); - $row_agent=mysql_fetch_array($resq1_agent); - - closedb(); - + $row_agent=mysql_fetch_array($resq1_agent); return $row_agent["id_agente_modulo"]; } // retorna el id_grupo pasandole como argumento el nombre del grupo -function dameIdGrupoAgente($nombre) -{ - opendb(); - +function dameIdGrupoAgente($nombre){ $query_agent="SELECT id_grupo FROM tgrupo where nombre='".$nombre."';"; $resq1_agent=mysql_query($query_agent); $row_agent=mysql_fetch_array($resq1_agent); - - closedb(); - return $row_agent["id_grupo"]; } // retorna el id_grupo_modulo pasandole como argumento el nombre del grupo_modulo -function dameIdGrupoModulo($nombre) -{ - opendb(); - +function dameIdGrupoModulo($nombre){ $query_agent="SELECT id_mg FROM tmodule_group where name='".$nombre."';"; $resq1_agent=mysql_query($query_agent); $row_agent=mysql_fetch_array($resq1_agent); - - closedb(); - return $row_agent["id_mg"]; } // devuelve los grupos de modulos existentes para el agente identificado con su id y que se pasa como parametro -function dameGruposModuloDelAgente($id_agente) -{ - opendb(); - +function dameGruposModuloDelAgente($id_agente){ $query1="SELECT TMG.name, TMG.id_mg FROM tmodule_group TMG, tagente_modulo TAM WHERE TMG.id_mg = TAM.id_module_group AND TAM.id_module_group >0 AND TAM.id_agente=".$id_agente." group by TMG.id_mg"; - $resq1=mysql_query($query1); - - closedb(); - return $resq1; } // devuelve los modulos del agente identificado por su que no pertenecen a ningun grupo de modulos -function dameModulosSinGrupo($id_agente) -{ - opendb(); - +function dameModulosSinGrupo($id_agente){ $query1="SELECT * from tagente_modulo where id_agente='".$id_agente."' and id_module_group=0"; - $resq1=mysql_query($query1); - - closedb(); - return $resq1; } // Funcion que devuelve los modulos de un determinado grupo de modulos y de un agente -function dameModulosDelGrupoModulosAgente($id_agente,$id_mg) -{ - opendb(); - +function dameModulosDelGrupoModulosAgente($id_agente,$id_mg){ $query1="Select * from tagente_modulo where id_agente=".$id_agente." and id_module_group=".$id_mg.";"; - $resq1=mysql_query($query1); - - closedb(); - return $resq1; - - } // devuleve los modulos de un agente determinado y de un grupo de modulos determinado (recive el id_agente y el id del grupo de modulos) -function dameModulosGrupo($id_mg,$id_agente) -{ - opendb(); - +function dameModulosGrupo($id_mg,$id_agente){ $query1="Select * from tagente_modulo where id_agente=".$id_agente." and id_module_group=".$id_mg.""; $resq1=mysql_query($query1); - - closedb(); - return $resq1; - } // inserta un objeto pasandole: nombre de la imagen, tipo del objeto, posicion left, posicion top, id tipo del objeto -function addObject($nom_img, $tipo, $left, $top, $id_tipo) -{ - +function addObject($nom_img, $tipo, $left, $top, $id_tipo){ if ($tipo=="GA") //como el grupo ya tiene una imagen asignada, la aprovechamos { $grupoAgente=dameGrupoAgente($id_tipo); $nom_img=$grupoAgente["icon"]; } - - opendb(); $query1="INSERT INTO objeto_consola (`nom_img`,`tipo`,`left`,`top`,`id_tipo`) VALUES ('".$nom_img."', '".$tipo."', $left, $top, $id_tipo);"; $resq1=mysql_query($query1) or die('Error, insert query failed'.$query1. mysql_error()); @@ -273,31 +140,19 @@ function addObject($nom_img, $tipo, $left, $top, $id_tipo) $resq2=mysql_query($query2) or die('Error, insert query failed'.$query2. mysql_error()); $rowidObjeto=mysql_fetch_array($resq2); - closedb(); return $rowidObjeto; } // retorna el array con los objetos existentes en la base de datos function dameObjetos(){ - - - opendb(); - $query1="SELECT * FROM objeto_consola;"; $resq1=mysql_query($query1); - - closedb(); - return $resq1; - } // guardamos una vista nueva pasandole su nombre y una descripcion. Devuelve el id adjudicado a la nueva vista. -function guardarNuevaVista($nombre, $descripcion,$idPerfil) -{ - +function guardarNuevaVista($nombre, $descripcion,$idPerfil){ - opendb(); $query1="INSERT INTO vistas_consola (`nombre`,`descripcion`) VALUES ('".$nombre."', '".$descripcion."');"; $resq1=mysql_query($query1) or die('Error, insert query failed'.$query1. mysql_error()); @@ -306,9 +161,6 @@ function guardarNuevaVista($nombre, $descripcion,$idPerfil) // Insertamos la nueva vista al perfil activo (id=2) $query2="INSERT INTO perfil_vista (`idPerfil`,`idVista`) VALUES ('".$idPerfil."', '".$idVista."');"; $resq2=mysql_query($query2) or die('Error, insert query failed'.$query2. mysql_error()); - - closedb(); - return $idVista; } @@ -320,144 +172,86 @@ function guardarNuevaVista($nombre, $descripcion,$idPerfil) // $idVista: id de la vista a la que pertenece // Devuelve -1 si la vista que será representada por el objeto no tiene ya un objeto vista de la vista donde insertaremos el objeto. -function nuevoObjEnVista($nom_img,$tipo,$left,$top,$id_tipo,$idVista) -{ - opendb(); - +function nuevoObjEnVista($nom_img,$tipo,$left,$top,$id_tipo,$idVista){ $objVista=true; - if ($tipo == "V") // Comprobamos que la vista que será representada por el objeto no tiene ya un objeto vista de la vista donde insertaremos el objeto. :-s - { + if ($tipo == "V"){ // Comprobamos que la vista que será representada por el objeto no tiene ya un objeto vista de la vista donde insertaremos el objeto. :-s $objs = dameObjetosVista($id_tipo); while ($objeto=mysql_fetch_array($objs)){ - if ($objeto["id_tipo"]==$idVista) - { + if ($objeto["id_tipo"]==$idVista){ $objVista=false; } - } - } - if ($objVista) - { + if ($objVista){ $query1="INSERT INTO objeto_consola (`nom_img`,`tipo`,`left`,`top`,`id_tipo`,`idVista`) VALUES ('".$nom_img."', '".$tipo."', '".$left."', '".$top."', '".$id_tipo."', '".$idVista."');"; $resq1=mysql_query($query1) or die('Error, insert query failed'.$query1. mysql_error()); - }else - { - return -1; - } - - closedb(); - + } else + return -1; + } // Crea un nuevo objeto a partir de uno ya existente (util para copiar objeto de una vista a otra) function copiaObjEnNuevaVista($idVista,$idObjeto) { - opendb(); - $queryObj="SELECT * FROM objeto_consola where id_objeto=".$idObjeto.";"; $resqObj=mysql_query($queryObj); $obj=mysql_fetch_array($resqObj); $query1="INSERT INTO objeto_consola (`nom_img`,`tipo`,`left`,`top`,`id_tipo`,`idVista`) VALUES ('".$obj["nom_img"]."', '".$obj["tipo"]."', '".$obj["left"]."', '".$obj["top"]."', '".$obj["id_tipo"]."', '".$idVista."');"; $resq1=mysql_query($query1) or die('Error, insert query failed'.$query1. mysql_error()); - - closedb(); - } // retorna el array con las vistas existentes en la base de datos function dameVistas(){ - - - opendb(); - $queryVista="SELECT * FROM vistas_consola;"; $resqVista=mysql_query($queryVista); - - closedb(); - return $resqVista; - } // retorna el array con los ids de los objetos que pertenecen a la vista pasada como parametro function dameObjetosVista($id_vista){ - - - opendb(); - $queryObj="SELECT * FROM objeto_consola where idVista=".$id_vista." order by idVista, id_objeto;"; $resqObj=mysql_query($queryObj); - - closedb(); - return $resqObj; - } // se devuelve la vista que es referencia por su id que se pasa como parametro function dameVista($idVista) { - opendb(); - $query_vista="SELECT * FROM vistas_consola where idVista='".$idVista."';"; $resq1_vista=mysql_query($query_vista); $vista=mysql_fetch_array($resq1_vista); - - closedb(); - return $vista; } // se retorna el objeto que es referenciado por su idObjeto function dameObjeto($idObjeto) { - opendb(); - $query_objeto="SELECT * FROM objeto_consola where id_objeto='".$idObjeto."';"; $resq1_objeto=mysql_query($query_objeto); $objeto=mysql_fetch_array($resq1_objeto); - - closedb(); - return $objeto; } // Funcion que edita un objeto (de momento solo la imagen) function editarObjeto($idObjeto,$nom_img) { - opendb(); - $query_objeto="UPDATE objeto_consola set nom_img='".$nom_img."' where id_objeto='".$idObjeto."';"; mysql_query($query_objeto) or die("Failed Query of " . $query_objeto);; - - - closedb(); - } // Funcion que elimina un objeto function eliminarObjeto($idObjeto) { - opendb(); - $query_objeto="DELETE from objeto_consola where id_objeto='".$idObjeto."';"; mysql_query($query_objeto) or die("Failed Query of " . $query_objeto); - - - closedb(); - } // retorna el nombre del objeto referenciado por su tipo y por su y por su id de tipo function dameNombreObjeto($idTipo,$tipo) { - $nombre=""; - opendb(); - switch ($tipo) { case "A": //agente $query_objeto="SELECT * FROM tagente where id_agente='".$idTipo."';"; @@ -490,201 +284,74 @@ function dameNombreObjeto($idTipo,$tipo) $nombre=$objeto["nombre"]; break; } - - - - closedb(); - return $nombre; } //Inserta un nuevo perfil en la base de datos y retorna su id function guardarNuevoPefil ($nombre,$descripcion) { - opendb(); + $query1="INSERT INTO perfil (`nombre`,`descripcion`) VALUES ('".$nombre."', '".$descripcion."');"; $resq1=mysql_query($query1) or die('Error, insert query failed'.$query1. mysql_error()); - $idPerfil=mysql_insert_id(); - // Creamos una vista para el perfil $query3="INSERT INTO vistas_consola (`nombre`,`descripcion`) VALUES ('default', 'default');"; $resq3=mysql_query($query3) or die('Error, insert query failed'.$query3. mysql_error()); - $idVista=mysql_insert_id(); - - $query2="INSERT INTO perfil_vista (`idPerfil`,`idVista`) VALUES ('".$idPerfil."', '".$idVista."');"; $resq2=mysql_query($query2) or die('Error, insert query failed'.$query1. mysql_error()); - closedb(); - return $idPerfil; } // retorna el array con las vistas existentes para el perfil especificado mediante parametro function dameVistasPerfil($idPerfil){ - - - opendb(); - $queryVista="SELECT * FROM perfil_vista where idPerfil=".$idPerfil.";"; $resqVista=mysql_query($queryVista); - - closedb(); - return $resqVista; - } // retorna el array con las vistas existentes para el perfil especificado mediante parametro y tienen su campo activa = 1 function dameVistasPerfilActivas($idPerfil){ - - - opendb(); - $queryVista="SELECT * FROM perfil_vista where idPerfil=".$idPerfil." and activa=1;"; $resqVista=mysql_query($queryVista); - - closedb(); - return $resqVista; - } -// // Esta funcion intenta obtener el id del perfil que esta cargado actualmente -// function obtenerPerfilActivo() -// { -// opendb(); -// -// $queryVista="SELECT * FROM perfil_vista where idPerfil=2;"; -// $resqVista=mysql_query($queryVista); -// $perfil_vista=mysql_fetch_array($resqVista); -// -// $queryVista2="SELECT * FROM perfil_vista where idPerfil<>'2' and idVista='".$perfil_vista['idVista']."';"; -// $resqVista2=mysql_query($queryVista2); -// $perfil=mysql_fetch_array($resqVista2); -// -// closedb(); -// -// return $perfil['idPerfil']; -// -// } - // Retorna un array con todos los Perfiles excepto los especiales Default(id=1) y PerfilActivo(id=2) - function damePerfiles(){ - opendb(); - $query1="SELECT * FROM perfil;"; $resq1=mysql_query($query1); - - closedb(); - return $resq1; - } // se devuelve el perfil referenciado por su id que se pasa como parametro -function damePerfil($idPerfil) -{ - opendb(); - +function damePerfil($idPerfil){ $query_perfil="SELECT * FROM perfil where idPerfil=".$idPerfil.";"; $resq1_perfil=mysql_query($query_perfil); $perfil=mysql_fetch_array($resq1_perfil); - - closedb(); - return $perfil; } // Devuelve un perfil cualquiera (Utilizado a la hora de borrar el perfil que esta en curso, con esto se carga otro perfil existente) function damePerfilCualquiera(){ - opendb(); - $query1="SELECT * FROM perfil;"; $resq1=mysql_query($query1); $perfil=mysql_fetch_array($resq1); - - closedb(); - return $perfil; - } // Devuelve una vista cualquiera de las que estan visibles (Utilizado a la hora de cerrar una Vista que esta en curso, con esto se carga otra Vista existente) function dameVistaCualquiera($idPerfil){ - opendb(); - $query1="SELECT * FROM perfil_vista where idPerfil=".$idPerfil." and activa='1';"; $resq1=mysql_query($query1); $vista=mysql_fetch_array($resq1); - - closedb(); - return $vista; - } -// // Existe un perfil especial (id = 2) que es el perfil activo. Así cuando se abre un perfil, se carga en el perfil activo y se representa. Esta funcion borra lo que haya en el perfil activo, y carga el nuevo perfil a representar. -// function cargarPerfil($idPerfil) -// { -// -// opendb(); -// -// // Borramos todo lo que haya cargado en el perfil activo -// $deleteQuery="Delete from perfil_vista where idPerfil=2"; -// $resqDelete=mysql_query($deleteQuery); -// -// // Recogemos las vistas del nuevo Perfil -// $queryPerfil="SELECT * FROM perfil_vista where idPerfil=".$idPerfil.";"; -// $resqPerfil=mysql_query($queryPerfil); -// -// // Cargamos en el perfil activo las vistas del nuevo Perfil -// while ($perfil_vista=mysql_fetch_array($resqPerfil)){ -// -// $query1="INSERT INTO perfil_vista (`idPerfil`,`idVista`) VALUES ('2', '".$perfil_vista["idVista"]."');"; -// $resq1=mysql_query($query1) or die('Error, insert query failed'.$query1. mysql_error()); -// -// } -// -// -// closedb(); -// -// } - -// // Recupera todas las vistas del perfil activo (id=2) y las añade al perfil que se le pasa como parametro -// function guardarPerfil($idPerfil) -// { -// opendb(); -// -// // Recogemos las vistas del Perfil Activo -// $queryPerfil="SELECT * FROM perfil_vista where idPerfil=2;"; -// $resqPerfil=mysql_query($queryPerfil); -// -// // Borramos todo lo que habia en el antiguo perfil -// $deleteQuery="Delete from perfil_vista where idPerfil=".$idPerfil; -// $resqDelete=mysql_query($deleteQuery); -// -// // Cargamos en el Perfil que queremos guardar, todas las vistas que existian en el activo -// while ($perfil_vista=mysql_fetch_array($resqPerfil)){ -// -// $query1="INSERT INTO perfil_vista (`idPerfil`,`idVista`) VALUES ('".$idPerfil."', '".$perfil_vista["idVista"]."');"; -// $resq1=mysql_query($query1) or die('Error, insert query failed'.$query1. mysql_error()); -// -// } -// -// closedb(); -// -// } - // Funcion que elimina una vista y todos sus objetos. Devuelve el codigo de error 1 si es la ultima vista, no borrandola. -function eliminarVista($idVista) -{ - opendb(); - +function eliminarVista($idVista){ // comprobamos que no es la ultima vista existente en el perfil // $queryCheck="SELECT * FROM perfil_vista where idPerfil=(Select idPerfil from perfil_vista where idVista=".$idVista.") ;"; $queryCheck="SELECT pv.* FROM perfil_vista pv , perfil_vista pv2 where pv.idPerfil=pv2.idPerfil and pv2.idVista='".$idVista."'"; @@ -713,51 +380,35 @@ function eliminarVista($idVista) mysql_query($query_vista) or die("Failed Query of " . $query_vista); - }else return 1; // ERROR: solo queda una vista y no se puede borrar - - - - closedb(); - + } else + return 1; // ERROR: solo queda una vista y no se puede borrar } // Retorna los valores de la consola para el usuario pasado como parametro -function dameEstadoConsola($usuario) -{ - opendb(); +function dameEstadoConsola($usuario){ $query1="SELECT * FROM estado_consola where id_usuario='".$usuario."';"; $resq1=mysql_query($query1); - - closedb(); - return mysql_fetch_array($resq1); - } // Funcion que edita una Vista (id de la vista , nombre , descripcion) -function editarVista($idVista,$nombre,$descripcion) -{ - opendb(); +function editarVista($idVista,$nombre,$descripcion){ $query_vista="UPDATE vistas_consola set nombre='".$nombre."' , descripcion='".$descripcion."' where idVista='".$idVista."';"; mysql_query($query_vista) or die("Failed Query of " . $query_vista);; - - - closedb(); - } // Funcion que edita un Perfil (id del Perfil , nombre , descripcion) function editarPerfil($idPerfil,$nombre,$descripcion) { - opendb(); + $query_perfil="UPDATE perfil set Nombre='".$nombre."' , Descripcion='".$descripcion."' where idPerfil='".$idPerfil."';"; mysql_query($query_perfil) or die("Failed Query of " . $query_perfil);; - closedb(); + } @@ -766,7 +417,7 @@ function editarPerfil($idPerfil,$nombre,$descripcion) function eliminarPerfil($idPerfil) { - opendb(); + $queryCheck="SELECT * FROM perfil ;"; $numPerfilesexe=mysql_query($queryCheck); @@ -811,7 +462,7 @@ function eliminarPerfil($idPerfil) return $idPerfil; }else return -1; - closedb(); + } @@ -819,13 +470,13 @@ function eliminarPerfil($idPerfil) function activarVista($idVista) { - opendb(); + $query_vista="UPDATE perfil_vista set activa=1 where idVista=".$idVista.";"; mysql_query($query_vista) or die("Failed Query of " . $query_vista);; - closedb(); + } @@ -833,20 +484,20 @@ function activarVista($idVista) function desactivarVista($idVista) { - opendb(); + $query_vista="UPDATE perfil_vista set activa = 0 where idVista='".$idVista."';"; mysql_query($query_vista) or die("Failed Query of " . $query_vista);; - closedb(); + } // Funcion que devuelve 1 si es la ultima vista activa del perfil, o devuelve 0 si no lo es function es_ultimaVistaActiva($idPerfil) { - opendb(); + $queryCheck="SELECT * FROM perfil_vista where idPerfil=".$idPerfil." and activa=1 ;"; $numVistasexe=mysql_query($queryCheck); @@ -861,7 +512,7 @@ function es_ultimaVistaActiva($idPerfil) function esVistaActiva($idVista,$idPerfil) { - opendb(); + $queryCheck="SELECT * FROM perfil_vista where idVista='".$idVista."' and idPerfil=".$idPerfil.";"; $vista_exe=mysql_query($queryCheck); @@ -875,24 +526,24 @@ function esVistaActiva($idVista,$idPerfil) function crearRelacionObjetos($idObjeto1, $idObjeto2) { - opendb(); + $query1="INSERT INTO relacion_objetos (`idObjeto1`,`idObjeto2`) VALUES ('".$idObjeto1."', '".$idObjeto2."');"; $resq1=mysql_query($query1) or die('Error, insert query failed'.$query1. mysql_error()); - closedb(); + } //Devuelve todas las relaciones del objeto pasado como parametro y que sea el Objeto 1 de la relacion, si no tiene ninguna relación, devuelve -1 function dameRelacionesObjeto($idObjeto) { - opendb(); + $query1="SELECT * FROM relacion_objetos where idObjeto1='".$idObjeto."' or idObjeto2='".$idObjeto."';"; $resq1=mysql_query($query1); - closedb(); + $numRelaciones = mysql_num_rows($resq1); if ($numRelaciones > 0) @@ -905,11 +556,11 @@ function dameRelacionesObjeto($idObjeto) //Funcion que devuelve 1 si el objeto pertence a la vista y 0 si no function esObjetoDeVista($idObjeto,$idVista) { - opendb(); + $query1="SELECT * FROM objeto_consola where id_objeto='".$idObjeto."' and idVista='".$idVista."';"; $resq1=mysql_query($query1); - closedb(); + $objVista = mysql_num_rows($resq1); if ($objVista > 0) @@ -921,12 +572,12 @@ function esObjetoDeVista($idObjeto,$idVista) // Funcion que devuelve las relaciones entre objetos de la vista que se le pasa como parametro. function dameRelacionesVista($idVista) { - opendb(); + $query1="Select idObjeto1, idObjeto2 from relacion_objetos, objeto_consola where idVista='".$idVista."' and idObjeto1 = id_objeto ;"; $resq1=mysql_query($query1); - closedb(); + return $resq1; @@ -935,11 +586,11 @@ function dameRelacionesVista($idVista) // Funcion que elimina una relacion entre dos objetos function eliminarRelacion($obj1, $obj2) { - opendb(); + $query_relacion="DELETE from relacion_objetos where idObjeto1='".$obj1."' and idObjeto2='".$obj2."';"; mysql_query($query_relacion) or die("Failed Query of " . $query_relacion); - closedb(); + } @@ -949,7 +600,7 @@ function dameEstadoObjeto($idObjeto) $estado=-1000; - opendb(); + $query="Select * from objeto_consola where id_objeto='".$idObjeto."';"; $objetoexe=mysql_query($query) or die("Failed Query of " . $query); @@ -1024,7 +675,7 @@ function dameEstadoObjeto($idObjeto) } - closedb(); + // mensaje($estado); @@ -1142,7 +793,7 @@ function dameEstadoGrupoAgentes($idGrupoAgente) //Funcion que devuelve el estado de una vista 0=MAL, 1=BIEN, 2=CAMBIANDO, -1=DESCONECTADO function dameEstadoVista($idVista) { - opendb(); + $estado=1; $query="Select * from objeto_consola where idVista='".$idVista."';"; $resq1=mysql_query($query); @@ -1183,7 +834,7 @@ function dameEstadoVista($idVista) return $estado; - closedb(); + } @@ -1192,7 +843,7 @@ function comprobarAlertaObjeto($idObjeto) $alerta=0; - opendb(); + $query="Select * from objeto_consola where id_objeto='".$idObjeto."';"; $objetoexe=mysql_query($query) or die("Failed Query of " . $query); @@ -1218,7 +869,7 @@ function comprobarAlertaObjeto($idObjeto) } - closedb(); + return $alerta; @@ -1329,13 +980,13 @@ function comprobarAlertaVista($idVista) function guardarPosicion($idObjeto,$left,$top) { - opendb(); + $query_objeto="UPDATE `objeto_consola` SET `left` = '".$left."', `top` = '".$top."' WHERE `id_objeto` = ".$idObjeto." LIMIT 1;"; mysql_query($query_objeto) or die("Failed Query of " . $query_objeto);; - closedb(); + } @@ -1345,7 +996,7 @@ function guardarPosicion($idObjeto,$left,$top) function crearRelacionEstado($idObjeto, $expresion) { - opendb(); + $query1="INSERT INTO relacion_estado (`id_objeto`,`relacion`) VALUES ('".$idObjeto."', '".$expresion."');"; $resq1=mysql_query($query1); @@ -1354,7 +1005,7 @@ function crearRelacionEstado($idObjeto, $expresion) return -1; } - closedb(); + } @@ -1406,12 +1057,12 @@ function dameEstadoEditadoObjeto ($idObjeto, $expresion) // Funcion que devuelve las relaciones de estado existentes en una vista function dameRelacionesEstadoVista($idVista) { - opendb(); + $query1="Select rs.id_objeto from relacion_estado rs, objeto_consola oc where idVista='".$idVista."' and rs.id_objeto = oc.id_objeto ;"; $resq1=mysql_query($query1); - closedb(); + return $resq1; @@ -1534,9 +1185,7 @@ function comprobarConexionAgente($idTipo) return $conectado; } -function comprobarConexionGrupoAgentes($id_grupo) -{ - +function comprobarConexionGrupoAgentes($id_grupo){ $query2="SELECT * FROM tagente_modulo WHERE id_agente in (select id_agente from tagente where id_grupo='".$id_grupo."') "; $modulos=mysql_query($query2); while ($modulo=mysql_fetch_array($modulos)) @@ -1550,13 +1199,10 @@ function comprobarConexionGrupoAgentes($id_grupo) } return 0; - } - -function comprobarConexionVista($idVista) -{ +function comprobarConexionVista($idVista){ $query="Select * from objeto_consola where idVista='".$idVista."';"; $resq1=mysql_query($query); while ($objeto_vista=mysql_fetch_array($resq1)) @@ -1583,31 +1229,19 @@ function comprobarConexionVista($idVista) } // Funcion que devuelve el ultimo valor recogido por el modulo -function ultimoValorModulo($idModulo) -{ - +function ultimoValorModulo($idModulo){ $query="Select * from tagente_datos where id_agente_modulo='".$idModulo."' order by timestamp desc limit 1;"; $resq1=mysql_query($query); $modulo=mysql_fetch_array($resq1); return $modulo["datos"]; - } // Funcion que sustituye el actual icono de un objeto Modulo por su grafica -function setImagenGrafica($idModulo) -{ - - opendb(); - +function setImagenGrafica($idModulo){ $query_objeto="UPDATE objeto_consola SET nom_img='grafica' WHERE id_objeto='".$idModulo."';"; mysql_query($query_objeto) or die("Failed Query of " . $query_objeto);; - - - closedb(); - - } ?> \ No newline at end of file diff --git a/pandora_console/operation/active_console/lib/extra_functions.php b/pandora_console/operation/active_console/lib/extra_functions.php index a33138a07a..ea2e885edf 100644 --- a/pandora_console/operation/active_console/lib/extra_functions.php +++ b/pandora_console/operation/active_console/lib/extra_functions.php @@ -1,29 +1,26 @@ +// Additions to code for Pandora FMS 1.2 graph code and new XML reporting template managemement +// Copyright (c) 2005-2007 Artica Soluciones Tecnologicas, info@artica.es +// $graphURL="http://".$_SERVER['SERVER_NAME']."/reporting/fgraph.php"; function obtenerVistaActiva() -{ - +{ // Obtenemos la cookie estado y consultamos cual es la vista activa - $cookieVista = $_COOKIE["estado"]; + if (isset($_COOKIE["estado"])) + $cookieVista = $_COOKIE["estado"]; + else + $cookieVista = null; if ($cookieVista != null) { @@ -75,41 +72,29 @@ function obtenerVistaActiva() } -function obtenerPerfilActivo() -{ - - +function obtenerPerfilActivo(){ // Obtenemos la cookie estado y consultamos cual es la vista activa - $cookiePerfil = $_COOKIE["estado"]; + if (isset($_COOKIE["estado"])) + $cookiePerfil = $_COOKIE["estado"]; + else + $cookiePerfil = null; - if ($cookiePerfil != null) - { + if ($cookiePerfil != null){ $params = explode("&" ,$cookiePerfil); - for ($i=0; $i\" - + \"
\" - - - - "; + + \"
\" "; } } - return $resultado; - } // Devuelve codigo html que crea una caja de texto con un checkbox. Este checkbox será utilizado cuando se desean añadir un elemento y que automaticamente cree una vista con los subelementos de los que esta compuesto -function dameCheckboxAutoVistas($tipo) -{ -$result=""; - - switch ($tipo) { - case "A": //agente - $result=" + \"
\""; - $result.=" + \"

\""; - break; - case "GA": //Grupo Agentes - $result=" + \"

\""; - $result.=" + \"
\""; - $result.=" + \"

\""; - break; - case "M": //Modulo -// - break; - case "GM": //Grupo Modulos - $result=" + \"

\""; - break; - case "V": //Vista -// - break; - } - - -return $result; - +function dameCheckboxAutoVistas($tipo){ + $result=""; + switch ($tipo) { + case "A": //agente + $result=" + \"
\""; + $result.=" + \"

\""; + break; + case "GA": //Grupo Agentes + $result=" + \"

\""; + $result.=" + \"
\""; + $result.=" + \"

\""; + break; + case "M": //Modulo + break; + case "GM": //Grupo Modulos + $result=" + \"

\""; + break; + case "V": //Vista + break; + } + return $result; } -// function representaEnCaja($datos) -// { -// $resultado=""; -// -// $resultado = "+ \"\" -// + \"
\""; -// -// return $resultado; -// } -// -function mensaje($msj) -{ -echo "alert('".$msj."');"; +function mensaje($msj){ + echo "alert('".$msj."');"; } // Funcion que devuelve la imagen de la gráfica que lo representa -function dameGrafica($idModulo) -{ +function dameGrafica($idModulo){ global $graphURL; $origin = time() -3600; return "$graphURL?tipo=sparse&id=$idModulo&color=40d840&periodo=60&intervalo=12&label=Hourly%20graph&tipo=sparse&id=$idModulo&refresh=30&zoom=100&draw_events=1&origin=$origin"; diff --git a/pandora_console/operation/agentes/datos_agente_calendar.php b/pandora_console/operation/agentes/datos_agente_calendar.php deleted file mode 100644 index 97ac07b75f..0000000000 --- a/pandora_console/operation/agentes/datos_agente_calendar.php +++ /dev/null @@ -1,270 +0,0 @@ -=".$fecha_inicio." - AND 'timestamp' <=".$fecha_fin; - $resq1=mysql_query($query1); - return($resq1); - } - -function generar_tabla_de_promedios_de_datos_no_string ($id_de_mi_agente, $id_de_mi_mod,$fecha_inicio,$fecha_fin) -// Genera una tabla con los promedios de los datos de un módulo no-string -{ - $dias_de_la_semana=array ("Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado"); - $nombre_modulo=dame_nombre_modulo_agentemodulo($id_de_mi_mod); - echo "
Módulo: ".$nombre_modulo."
"; - - // Encabezado de la tabla - echo " - - - - - - "; - for ($dia=0;$dia<7;++$dia) - echo " - "; - echo - ""; - - for ($hora=0;$hora<24;++$hora) - { - echo" - - "; - for ($dia=1;$dia<8;++$dia) - echo ""; - echo - ""; - } - echo "
HoraDía
".$dias_de_la_semana[$dia]."
".$hora." h.".dame_promedio_de_un_modulo_no_string_de_un_agente_para_una_hora_det_de_un_dia_de_la_semana_en_un_rango_de_fechas_det($id_de_mi_agente, $id_de_mi_mod, $hora, $dia, $fecha_inicio, $fecha_fin)."
"; -} - - -/************** Main program *******************************/ - - -// Load global vars -require("include/config.php"); - -if (comprueba_login() != 0) { - echo "NO PERM"; - exit; -} - -$id_user = $_SESSION["id_usuario"]; -if ( (give_acl($id_user, 0, "AR")==0) AND (give_acl($id_user, 0, "AW")==0) ){ - echo "NO PERM"; - exit; -} - -if ((isset($_GET["operacion"])) AND (! isset($_POST["update_agent"]))){ - if (isset ($_POST["copiar"])){ - // Option A: Print exported data - // Export main button - echo "

".$lang_label["ag_title"]."

"; - - // echo "

".$lang_label["export_title"]." ".$lang_label["help"]."

"; - - if (isset ($_POST["origen_modulo"])){ - $origen = $_POST["origen"]; - - /* Comentado sólo para propósitos de prueba (Si no, no anda) - if (give_acl($id_user,dame_id_grupo($origen),"AR")!=1) - { - audit_db($id_user,$REMOTE_ADDR, "ACL Violation","Trying to access Agent Export Data"); - require ("general/noaccess.php"); - } - */ - - $origen_modulo = $_POST["origen_modulo"]; - $from_date =$_POST["from_date"]; - $to_date=$_POST["to_date"]; - - // Imprime encabezado - echo $lang_label["db_agent_bra"]."".dame_nombre_agente($origen)."".$lang_label["from2"]."".$from_date."".$lang_label["to2"]."".$to_date."
"; - - // Esto podría reutilizarse - echo "
"; - - - // For each module - for ($a=0;$a ". generar_tabla_de_promedios_de_datos_no_string ($origen,$id_modulo,$from_date,$to_date); - } - } - } // End Option A -} else { -// Option B: Print Form -// Form view - ?> -

-

 

-
-
".$lang_label["module"]."".$lang_label["data"]."Timestamp
- - -


- -   

"; - - echo "".$lang_label["modules"]."

"; - echo "


- - -
".$lang_label["from"]."  

"; - - //print calendar and links for next and previous months - echo " - - - -
«".generate_calendar($year, $month, $days_f, 3, NULL, $locale)."»
- -

".$lang_label["to"]."    

"; - - //print calendar and links for next and previous months - echo " - - - -
«".generate_calendar($year, $month, $days_t, 3, NULL, $locale)."»
- -
- -
"; -} - - -?> - - diff --git a/pandora_console/operation/agentes/export_csv.php b/pandora_console/operation/agentes/export_csv.php new file mode 100644 index 0000000000..a63e294265 --- /dev/null +++ b/pandora_console/operation/agentes/export_csv.php @@ -0,0 +1,84 @@ + +// Additions to code for Pandora FMS 1.2 graph code and new XML reporting template managemement +// Copyright (c) 2005-2007 Artica Soluciones Tecnologicas, info@artica.es +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; version 2 +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +include ("../../include/config.php"); +include ("../../include/functions.php"); +include ("../../include/functions_db.php"); + +session_start(); + +$id_user = $_SESSION["id_usuario"]; +if ( (give_acl($id_user, 0, "AR")==0) AND (give_acl($id_user, 0, "AW")==0) ){ + require ("../../general/noaccess.php"); + exit; +} + +if ( isset ($_GET["agentmodule"]) && isset ($_GET["agent"]) ){ + $id_agentmodule = $_GET["agentmodule"]; + $id_agent = $_GET["agent"]; + $agentmodule_name = dame_nombre_modulo_agentemodulo($id_agentmodule); + if (give_acl($id_user,dame_id_grupo($id_agent),"AR")!=1) { + audit_db($id_user,$REMOTE_ADDR, "ACL Violation","Trying to access Agent Export Data"); + require ("../../general/noaccess.php"); + exit; + } + + $now = date("Y/m/d H:i:s"); + + // Show contentype header + Header("Content-type: text/txt"); + header('Content-Disposition: attachment; filename="pandora_export_'.$agentmodule_name.'.txt"'); + + if (isset($_GET["from_date"])) + $from_date = $_GET["from_date"]; + else + $from_date = $now; + + if (isset($_GET["to_date"])) + $to_date = $_GET["to_date"]; + else + $to_date = $now; + + // Make the query + $sql1="SELECT * FROM tdatos WHERE id_agente = $id_agent AND id_agente_modulo = $id_agentmodule"; + $tipo = dame_nombre_tipo_modulo(dame_id_tipo_modulo_agentemodulo($id_agentmodule)); + if ($tipo == "generic_data_string") + $sql1='SELECT * FROM tagente_datos_string WHERE timestamp > "'.$from_date.'" AND timestamp < "'.$to_date.'" AND id_agente_modulo ='.$id_agentmodule.' ORDER BY timestamp DESC'; + else + $sql1='SELECT * FROM tagente_datos WHERE timestamp > "'.$from_date.'" AND timestamp < "'.$to_date.'" AND id_agente_modulo ='.$id_agentmodule.' ORDER BY timestamp DESC'; + $result1=mysql_query($sql1); + + // Render data + while ($row=mysql_fetch_array($result1)){ + echo $agentmodule_name; + echo ","; + echo $row["datos"]; + echo ","; + echo $row["timestamp"]; + echo chr(13); + } +} +?> + diff --git a/pandora_console/operation/agentes/exportdata.php b/pandora_console/operation/agentes/exportdata.php index e092ca508a..5c899e5c28 100644 --- a/pandora_console/operation/agentes/exportdata.php +++ b/pandora_console/operation/agentes/exportdata.php @@ -1,10 +1,17 @@ +// Additions to code for Pandora FMS 1.2 graph code and new XML reporting template managemement // Copyright (c) 2005-2007 Artica Soluciones Tecnologicas, info@artica.es // // This program is free software; you can redistribute it and/or @@ -18,90 +25,234 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +function give_average_from_module ($id_agente, $id_agente_modulo, $hour, $day, $start_date, $end_date){ +// Return average value from an agentmodule, for a specific hour of specific day of week, +// Only valid for non-string kind of data. + require ("include/config.php"); + $query1 = "SELECT AVG(datos) + FROM tagente_datos + WHERE id_agente_modulo = ". $id_agente_modulo." + AND HOUR(timestamp) = ".$hour." + AND WEEKDAY(timestamp) = ".$day." + AND timestamp >= '$start_date' + AND timestamp <= '$end_date'"; + + if (($resq1 = mysql_query($query1)) AND ($row=mysql_fetch_array($resq1))) + return $row[0]; + else + return 0; +} + +function generate_average_table ($id_de_mi_agente, $id_agente_modulo, $fecha_inicio, $fecha_fin){ +// Genera una tabla con los promedios de los datos de un módulo no-string + require ("include/config.php"); + require ("include/languages/language_".$language_code.".php"); + $dias_de_la_semana = array ($lang_label["sunday"],$lang_label["monday"],$lang_label["tuesday"],$lang_label["wednesday"],$lang_label["thurdsday"],$lang_label["friday"],$lang_label["saturday"]); + $nombre_modulo = dame_nombre_modulo_agentemodulo($id_agente_modulo); + + // Table header + echo ""; + echo ""; + echo ""; + echo ""; + for ($dia=0;$dia<7;++$dia) + echo ""; + echo ""; + $color = 0; + for ($hora=0;$hora<24;++$hora){ + if ($color == 1){ + $tdcolor = "datos"; + $color = 0; + } else { + $tdcolor = "datos2"; + $color = 1; + } + echo ""; + for ($dia=0; $dia<7; ++$dia){ + echo ""; + } + echo ""; + } + echo "
".$lang_label["hour"]."".$lang_label["day"]."
".$dias_de_la_semana[$dia]."
$hora ".$lang_label["hr"].""; + echo format_numeric (give_average_from_module ($id_de_mi_agente, $id_agente_modulo, $hora, $dia, $fecha_inicio, $fecha_fin)); + echo "
"; +} + +// ---------------------------------- +// Main code +// ---------------------------------- + // Load global vars require("include/config.php"); -$id_user = ""; -if (comprueba_login() == 0) - $id_user = $_SESSION["id_usuario"]; -if (give_acl($id_user, 0, "AR")!=1) { - audit_db ($id_user, $REMOTE_ADDR, "ACL Violation", - "Trying to access Agent Data Export view (Grouped)"); +// Security checks +if (comprueba_login() != 0) { require ("general/noaccess.php"); exit; } + +$id_user = $_SESSION["id_usuario"]; +if ( (give_acl($id_user, 0, "AR")==0) AND (give_acl($id_user, 0, "AW")==0) ){ + require ("general/noaccess.php"); + exit; +} + +if ((isset($_POST["export"])) AND (! isset($_POST["update_agent"]))){ + + if (isset($_POST["export_type"])) + $export_type = $_POST["export_type"]; + else + $export_type = 3; // Standard table; + + if ($export_type == 1) { // CSV + echo "

".$lang_label["export_title"]." ".$lang_label["help"]."

"; + + if (isset ($_POST["origen_modulo"])){ + $origen = $_POST["origen"]; + if (give_acl($id_user, dame_id_grupo($origen), "AR")!=1) { + audit_db($id_user,$REMOTE_ADDR, "ACL Violation","Trying to access Agent Export Data"); + require ("general/noaccess.php"); + } + $origen_modulo = $_POST["origen_modulo"]; + $id_agentemodulo = $origen_modulo[0]; + $start_date =$_POST["start_date"]; + $end_date=$_POST["end_date"]; + $start_time =$_POST["start_time"]; + $end_time=$_POST["end_time"]; + $from_date = $start_date." ".$start_time; + $to_date = $end_date." ".$end_time; + + $agentmodule_name = dame_nombre_modulo_agentemodulo($origen_modulo[0]); + echo $lang_label["db_agent_bra"]. "" . dame_nombre_agente($origen). "- $agentmodule_name". $lang_label["from2"]. "". $from_date. "". $lang_label["to2"]. "". $to_date. "
"; + + echo " ".$lang_label["get_file"]." pandora_export_$agentmodule_name.txt"; + } else + echo "".$lang_label["no_sel_mod"].""; + } + + if ($export_type == 2){ // Avarage day/hour matrix + if (isset ($_POST["origen_modulo"])){ + $origen = $_POST["origen"]; + $origen_modulo = $_POST["origen_modulo"]; + $start_date =$_POST["start_date"]; + $end_date=$_POST["end_date"]; + $start_time =$_POST["start_time"]; + $end_time=$_POST["end_time"]; + $agentmodule_name = dame_nombre_modulo_agentemodulo($origen_modulo[0]); + $from_date = $start_date." ".$start_time; + $to_date = $end_date." ".$end_time; + + // Header + echo "

".$lang_label["export_title"]." ".$lang_label["help"]."

"; + echo $lang_label["db_agent_bra"]. "" . dame_nombre_agente($origen). "- $agentmodule_name". $lang_label["from2"]. "". $from_date. "". $lang_label["to2"]. "". $to_date. "
"; + echo "
"; + + // For each module + for ($a=0;$a ". generate_average_table ($origen,$id_modulo,$from_date,$to_date); + } + } + } -if ((isset($_GET["operacion"])) AND (! isset($_POST["update_agent"]))){ - if (isset ($_POST["copiar"])){ // Export main button - echo "

".$lang_label["ag_title"]."

"; + if ($export_type == 3) { // Standard table echo "

".$lang_label["export_title"]." ".$lang_label["help"]."

"; if (isset ($_POST["origen_modulo"])){ - if (isset ($_POST["csv"])) // CSV version - $csv = 1; - else - $csv = 0; $origen = $_POST["origen"]; if (give_acl($id_user,dame_id_grupo($origen),"AR")!=1) { audit_db($id_user,$REMOTE_ADDR, "ACL Violation","Trying to access Agent Export Data"); require ("general/noaccess.php"); } $origen_modulo = $_POST["origen_modulo"]; - $from_date =$_POST["from_date"]; - $to_date=$_POST["to_date"]; - echo $lang_label["db_agent_bra"]."".dame_nombre_agente($origen)."".$lang_label["from2"]."".$from_date."".$lang_label["to2"]."".$to_date."
"; - if ($csv == 0){ - echo "
"; - $separador_1 = " -
".$lang_label["module"]."".$lang_label["data"]."Timestamp
"; - $separador_2 = ""; - $separador_3= ""; - } else { - $separador_1 = "
'"; - $separador_2 = "','"; - $separador_3 = "'"; - } + $agentmodule_name = dame_nombre_modulo_agentemodulo($origen_modulo[0]); + $start_date =$_POST["start_date"]; + $end_date=$_POST["end_date"]; + $start_time =$_POST["start_time"]; + $end_time=$_POST["end_time"]; + + $from_date = $start_date." ".$start_time; + $to_date = $end_date." ".$end_time; - for ($a=0;$a " . dame_nombre_agente($origen). "- $agentmodule_name". $lang_label["from2"]. "". $from_date. "". $lang_label["to2"]. "". $to_date. "
"; + + echo "
"; + echo ""; + + // Begin the render ! + for ($a=0; $a "; } } - if ($csv == 0) { - echo ""; - } echo "
".$lang_label["module"]."".$lang_label["data"]."Timestamp"; + echo $agentmodule_name; + echo ""; echo $row["datos"]; - echo $separador_2; + echo ""; echo $row["timestamp"]; - echo $separador_3; + echo "
"; } else echo "".$lang_label["no_sel_mod"].""; - } -} else { // Form view - ?> -

-

 

- - - - - - -


- '; + echo ''; + echo "'; + echo " - - -
".$lang_label["source_agent"]."

"; + echo "
"; + + + // Show combo with agents + echo '  

"; + echo "   "; + echo "

"; + + echo '
"; echo "".$lang_label["modules"]."

"; - echo "
"; + + // Combo with modules + echo "

- -
"; + echo "".$lang_label["begin_date"].""; + echo ""; + echo " "; + echo ""; + - require ("include/calendar.php"); //Including calendar - $result=mysql_query("SELECT token, value FROM tconfig"); - $row=mysql_fetch_array($result); - if ($row["token"]=="language_code") $locale=$row["value"]; //language of calendar. + echo "
"; + echo "".$lang_label["end_date"].""; + + echo ""; + echo " "; + echo ""; - $time = time(); + echo "
"; + echo "".$lang_label["export_type"].""; + echo ""; + // Combo for data export type + echo ""; + echo "
"; + // Submit button - if (isset($_GET["month"])) $month = $_GET["month"]; - else $month = date('n', $time); - if (isset($_GET["year"])) $year = $_GET["year"]; - else $year = date('Y', $time); + echo '      '; + echo ""; + echo "
"; + echo ""; + echo "
"; + echo ""; - //preparate months (the next month to december is january and back) - $first_of_month = gmmktime(0,0,0,$month,1,$year); - list($month, $year) = explode(',',gmstrftime('%m,%Y',$first_of_month)); - $month_a = ($month-1); - $month_d = ($month+1); - if ($month_d==13) {$year_d = $year; $year_a = $year;} - else { - if ($month==12) $year_d = $year+1; - else $year_d = $year; - if ($month==0) $year_a = $year-1; - else $year_a = $year; - } - - if (isset($_GET["date_from"])) $date_from=$_GET["date_from"]; - else - {if (isset($_POST["from_date"])) $date_from=$_POST["from_date"]; - else $date_from=$m; - } - - if (isset($_GET["date_to"])) $date_to=$_GET["date_to"]; - else - {if (isset($_POST["to_date"])) $date_to=$_POST["to_date"]; - else $date_to=$ahora; - } - - $days_f = array(); - $days_t = array(); - $days_in_month=gmdate('t',$first_of_month); - //create links for days in every calendar: - for ($day_f=1; $day_f<=$days_in_month; $day_f++){ - $days_f[$day_f]=array('index.php?sec=estado&sec2=operation/agentes/exportdata&date_from='.$year.'-'.$month.'-'.date('d',mktime(0, 0, 0, $month, $day_f, $year)).' 00:00:00&date_to='.$date_to.'&year='.$year.'&month='.$month); - } - for ($day_t=1; $day_t<=$days_in_month; $day_t++){ - $days_t[$day_t]=array('index.php?sec=estado&sec2=operation/agentes/exportdata&date_from='.$date_from.'&date_to='.$year.'-'.$month.'-'.date('d',mktime(0, 0, 0, $month, $day_t, $year)).' 00:00:00'.'&year='.$year.'&month='.$month); - } - if (isset($date_from) && isset($date_to)) - {$date="&date_from=".$date_from."&date_to=".$date_to;} - ?> - -
-   

-
«".generate_calendar($year, $month, $days_f, 3, NULL, $locale)."»
- "; ?> -

    

-
«".generate_calendar($year, $month, $days_t, 3, NULL, $locale)."»
- "; ?> -

- -
- "> -
- - \ No newline at end of file +?> diff --git a/pandora_console/pandora_graphical_console.sql b/pandora_console/pandora_graphical_console.sql index 70e77fcd47..b3507ed3ea 100644 --- a/pandora_console/pandora_graphical_console.sql +++ b/pandora_console/pandora_graphical_console.sql @@ -1,25 +1,4 @@ --- MySQL dump 10.10 --- --- Host: localhost Database: pandora --- ------------------------------------------------------ --- Server version 5.0.24a-Debian_9-log -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `estado_consola` --- - -DROP TABLE IF EXISTS `estado_consola`; CREATE TABLE `estado_consola` ( `id_usuario` varchar(50) NOT NULL, `idPerfilActivo` int(5) NOT NULL, @@ -29,11 +8,7 @@ CREATE TABLE `estado_consola` ( PRIMARY KEY (`id_usuario`) ) ENGINE=MyISAM ; --- --- Table structure for table `objeto_consola` --- -DROP TABLE IF EXISTS `objeto_consola`; CREATE TABLE `objeto_consola` ( `id_objeto` int(5) NOT NULL auto_increment, `nom_img` varchar(50) NOT NULL, @@ -43,25 +18,16 @@ CREATE TABLE `objeto_consola` ( `id_tipo` varchar(20) NOT NULL, `idVista` int(5) NOT NULL, PRIMARY KEY (`id_objeto`) -) ENGINE=MyISAM AUTO_INCREMENT=2 ; +) ENGINE=MyISAM; --- --- Table structure for table `perfil` --- -DROP TABLE IF EXISTS `perfil`; CREATE TABLE `perfil` ( `idPerfil` int(5) NOT NULL auto_increment, `Nombre` varchar(50) NOT NULL, `Descripcion` varchar(250) NOT NULL, PRIMARY KEY (`idPerfil`) -) ENGINE=MyISAM AUTO_INCREMENT=2 ; +) ENGINE=MyISAM; --- --- Table structure for table `perfil_vista` --- - -DROP TABLE IF EXISTS `perfil_vista`; CREATE TABLE `perfil_vista` ( `idPerfil` int(5) NOT NULL, `idVista` int(5) NOT NULL, @@ -69,46 +35,21 @@ CREATE TABLE `perfil_vista` ( PRIMARY KEY (`idPerfil`,`idVista`) ) ENGINE=MyISAM ; --- --- Table structure for table `relacion_estado` --- - -DROP TABLE IF EXISTS `relacion_estado`; CREATE TABLE `relacion_estado` ( `id_objeto` int(5) NOT NULL, `relacion` varchar(50) NOT NULL, PRIMARY KEY (`id_objeto`) ) ENGINE=MyISAM ; --- --- Table structure for table `relacion_objetos` --- - -DROP TABLE IF EXISTS `relacion_objetos`; CREATE TABLE `relacion_objetos` ( `idObjeto1` int(5) NOT NULL, `idObjeto2` int(5) NOT NULL, PRIMARY KEY (`idObjeto1`,`idObjeto2`) ) ENGINE=MyISAM ; --- --- Table structure for table `vistas_consola` --- - -DROP TABLE IF EXISTS `vistas_consola`; CREATE TABLE `vistas_consola` ( `idVista` int(5) NOT NULL auto_increment, `nombre` varchar(50) NOT NULL, `descripcion` varchar(250) NOT NULL, PRIMARY KEY (`idVista`) -) ENGINE=MyISAM AUTO_INCREMENT=1 ; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - +) ENGINE=MyISAM; diff --git a/pandora_console/pandora_graphical_console_data.sql b/pandora_console/pandora_graphical_console_data.sql index aae77e21d8..bf2a5c8d63 100644 --- a/pandora_console/pandora_graphical_console_data.sql +++ b/pandora_console/pandora_graphical_console_data.sql @@ -1,100 +1,8 @@ --- MySQL dump 10.10 --- --- Host: localhost Database: pandora --- ------------------------------------------------------ --- Server version 5.0.24a-Debian_9-log -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Dumping data for table `estado_consola` --- - - -/*!40000 ALTER TABLE `estado_consola` DISABLE KEYS */; -LOCK TABLES `estado_consola` WRITE; INSERT INTO `estado_consola` VALUES ('admin',1,1,100,100); -UNLOCK TABLES; -/*!40000 ALTER TABLE `estado_consola` ENABLE KEYS */; --- --- Dumping data for table `objeto_consola` --- - - -/*!40000 ALTER TABLE `objeto_consola` DISABLE KEYS */; -LOCK TABLES `objeto_consola` WRITE; -UNLOCK TABLES; -/*!40000 ALTER TABLE `objeto_consola` ENABLE KEYS */; - --- --- Dumping data for table `perfil` --- - - -/*!40000 ALTER TABLE `perfil` DISABLE KEYS */; -LOCK TABLES `perfil` WRITE; INSERT INTO `perfil` VALUES (1,'perfil por defecto','perfil por defecto'); -UNLOCK TABLES; -/*!40000 ALTER TABLE `perfil` ENABLE KEYS */; --- --- Dumping data for table `perfil_vista` --- - - -/*!40000 ALTER TABLE `perfil_vista` DISABLE KEYS */; -LOCK TABLES `perfil_vista` WRITE; INSERT INTO `perfil_vista` VALUES (1,1,1); -UNLOCK TABLES; -/*!40000 ALTER TABLE `perfil_vista` ENABLE KEYS */; --- --- Dumping data for table `relacion_estado` --- - - -/*!40000 ALTER TABLE `relacion_estado` DISABLE KEYS */; -LOCK TABLES `relacion_estado` WRITE; -UNLOCK TABLES; -/*!40000 ALTER TABLE `relacion_estado` ENABLE KEYS */; - --- --- Dumping data for table `relacion_objetos` --- - - -/*!40000 ALTER TABLE `relacion_objetos` DISABLE KEYS */; -LOCK TABLES `relacion_objetos` WRITE; -UNLOCK TABLES; -/*!40000 ALTER TABLE `relacion_objetos` ENABLE KEYS */; - --- --- Dumping data for table `vistas_consola` --- - - -/*!40000 ALTER TABLE `vistas_consola` DISABLE KEYS */; -LOCK TABLES `vistas_consola` WRITE; INSERT INTO `vistas_consola` VALUES (1,'Main Board',''); -UNLOCK TABLES; -/*!40000 ALTER TABLE `vistas_consola` ENABLE KEYS */; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; -