<?php // Pandora FMS - https://pandorafms.com // ================================================== // Copyright (c) 2005-2023 Pandora FMS // Please see https://pandorafms.com/community/ for full contribution list // This program is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser 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. /** * @package Include * @subpackage Clippy */ function clippy_start_page_homepage() { global $config; $clippy_is_annoying = (int) get_cookie('clippy_is_annoying', 0); $nagios = (int) get_cookie('nagios', -1); $easter_egg_toy = ($nagios % 6); if (($easter_egg_toy == 5) || ($easter_egg_toy == -1) ) { $image = 'images/clippy/clippy.png'; } else { $image = 'images/clippy/easter_egg_0'.$easter_egg_toy.'.png'; } if ($image != 'easter_egg_04.png') { $style = 'display: block; position: absolute; left: -112px; top: -80px;'; } else { $style = 'display: block; position: absolute; left: -200px; top: -80px;'; } clippy_clean_help(); $pandorin_img = html_print_image( $image, true, [ 'id' => 'clippy_toy', 'onclick' => 'easter_egg_clippy(1);', ] ); $pandorin_chkb = html_print_checkbox_extended( 'clippy_is_annoying', 1, $clippy_is_annoying, false, 'set_clippy_annoying()', '', true ); $return_tours = []; $return_tours['first_step_by_default'] = true; $return_tours['tours'] = []; // ================================================================== // Help tour with the some task for to help the user. // ------------------------------------------------------------------ $return_tours['tours']['homepage'] = []; $return_tours['tours']['homepage']['steps'] = []; $return_tours['tours']['homepage']['steps'][] = [ 'element' => '#clippy', 'intro' => '<div class="clippy_body left pdd_l_20px pdd_r_20px">'.__('Hi, can I help you?').'<br/><br/>'.__('Let me introduce my self: I am Pandorin, the annoying assistant of %s. You can follow my steps to do basic tasks in %s or you can close me and never see me again.', get_product_name(), get_product_name()).'<br /> <br /> <div class="clippy_body font_7pt">'.$pandorin_chkb.__('Close this wizard and don\'t open it again.').'</div></div><div class="relative"><div id="pandorin" style="'.$style.'">'.$pandorin_img.'</div></div>', ]; $return_tours['tours']['homepage']['steps'][] = [ 'element' => '#clippy', 'intro' => __('Which task would you like to do first?').'<br/><br/><ul class="left mrgn_lft_10px list-type-disc"><li>'."<a href='javascript: clippy_go_link_show_help(\"index.php?sec=gagente&sec2=godmode/agentes/modificar_agente\", \"monitoring_server_step_1\");'>".__('Ping a Linux or Windows server using a %s agent.', get_product_name()).'</a></li><li>'."<a href='javascript: clippy_go_link_show_help(\"index.php\", \"email_alert_module_step_1\");'>".__('Create a alert by email in a critical module.').'</a></li></ul>', ]; $return_tours['tours']['homepage']['conf'] = []; $return_tours['tours']['homepage']['conf']['show_bullets'] = 0; $return_tours['tours']['homepage']['conf']['show_step_numbers'] = 0; $return_tours['tours']['homepage']['conf']['name_obj_js_tour'] = 'intro_homepage'; $return_tours['tours']['homepage']['conf']['other_js'] = " var started = 0; function show_clippy() { if (intro_homepage.started()) { started = 1; } else { started = 0; } if (started == 0) intro_homepage.start(); } var nagios = -1; function easter_egg_clippy(click) { if (readCookie('nagios')) { nagios = readCookie('nagios'); } if (click) nagios++; if (nagios > 5) { easter_egg_toy = nagios % 6; if ((easter_egg_toy == 5) || (easter_egg_toy == -1)) { image = 'images/clippy/clippy.png'; } else { image = 'images/clippy/easter_egg_0' + easter_egg_toy + '.png'; } $('#clippy_toy').attr('src', image); if (easter_egg_toy == 4) { $('#pandorin').css('left', '-200px'); } else { $('#pandorin').css('left', '-112px'); } document.cookie = 'nagios=' + nagios; } } function set_clippy_annoying() { var now = new Date(); var time = now.getTime(); var expireTime = time + 3600000 * 24 * 360 * 20; now.setTime(expireTime); checked = $('input[name=\'clippy_is_annoying\']') .is(':checked'); //intro_homepage.exit(); if (checked) { document.cookie = 'clippy_is_annoying=1;expires=' + now.toGMTString() + ';'; } else { document.cookie = 'clippy_is_annoying=0;expires=' + now.toGMTString() + ';'; } } function readCookie(name) { var nameEQ = name + '='; var ca = document.cookie.split(';'); for(var i=0;i < ca.length;i++) { var c = ca[i]; while (c.charAt(0)==' ') c = c.substring(1,c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); } return null; } "; if ($config['logged']) { $return_tours['tours']['homepage']['conf']['autostart'] = true; } else { $return_tours['tours']['homepage']['conf']['autostart'] = false; } if ($config['tutorial_mode'] == 'on_demand') { $return_tours['tours']['homepage']['conf']['autostart'] = false; } if ($clippy_is_annoying === 1) { $return_tours['tours']['homepage']['conf']['autostart'] = false; } // ================================================================== // ================================================================== // Help tour about the email alert module (step 1) // ------------------------------------------------------------------ $return_tours['tours']['email_alert_module_step_1'] = []; $return_tours['tours']['email_alert_module_step_1']['steps'] = []; $return_tours['tours']['email_alert_module_step_1']['steps'][] = [ 'element' => '#clippy', 'intro' => __('The first thing you have to do is to setup the e-mail config on the %s Server.', get_product_name()).'<br />'.ui_print_help_icon('context_pandora_server_email', true, '', 'images/help.png').'<br />'.__('If you have it already configured you can go to the next step.'), ]; $return_tours['tours']['email_alert_module_step_1']['steps'][] = [ 'element' => '#icon_god-alerts', 'position' => 'top', 'intro' => __('Now, pull down the Manage alerts menu and click on Actions. '), ]; $return_tours['tours']['email_alert_module_step_1']['conf'] = []; $return_tours['tours']['email_alert_module_step_1']['conf']['show_bullets'] = 0; $return_tours['tours']['email_alert_module_step_1']['conf']['show_step_numbers'] = 0; $return_tours['tours']['email_alert_module_step_1']['conf']['complete_js'] = ' ; '; $return_tours['tours']['email_alert_module_step_1']['conf']['exit_js'] = ' location.reload(); '; $return_tours['tours']['email_alert_module_step_1']['conf']['next_help'] = 'email_alert_module_step_2'; // ================================================================== return $return_tours; }