File: 0.02.26a/server/base/help.inc.php (View as HTML)

  1: <?php // help.inc.php
  2: /* -------------------------------------------------------------
  3: This file is part of FreeNATS
  4: 
  5: FreeNATS is (C) Copyright 2008 PurplePixie Systems
  6: 
  7: FreeNATS is free software: you can redistribute it and/or modify
  8: it under the terms of the GNU General Public License as published by
  9: the Free Software Foundation, either version 3 of the License, or
 10: (at your option) any later version.
 11: 
 12: FreeNATS is distributed in the hope that it will be useful,
 13: but WITHOUT ANY WARRANTY; without even the implied warranty of
 14: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 15: GNU General Public License for more details.
 16: 
 17: You should have received a copy of the GNU General Public License
 18: along with Foobar.  If not, see www.gnu.org/licenses
 19: 
 20: For more information see www.purplepixie.org/freenats
 21: -------------------------------------------------------------- */
 22: 
 23: $NATS_Help=array();
 24: 
 25: function ha($id,$text)
 26: {
 27: global $NATS_Help;
 28: $NATS_Help[strtoupper($id)]=$text;
 29: }
 30: 
 31: ha("FreeNATS","FreeNATS is a network monitoring package");
 32: 
 33: ha("Node","A node is a system or device which you are monitoring. Note that nodes can have tests pointing to different physical devices and vice-versa");
 34: ha("Node:Create","Create a new {node} with this {node:id|NodeID}");
 35: ha("Node:ID","The NodeID is a unique text name for a {node}. Maximum length 60 chars and only normal characters allowed.");
 36: ha("Node:Enabled","The node is enabled for tests to be performed (and displayed in all applicable views)");
 37: ha("Node:AlertActive","Alerts will be generated for this node and alert actions performed if selected");
 38: ha("Node:PingTest","Do a ping (ICMP) test first before other tests - will always record results if enabled");
 39: ha("Node:RequirePing","Require the ping to pass for other tests to even be tried - will always fail if {Node:PingTest|ping test} is disabled");
 40: 
 41: ha("Group","A group is a collection of one or more {node|nodes}. Note that nodes can be members of more than one group.");
 42: ha("Group:Create","Create a new {group} with this name");
 43: 
 44: ha("History:Should","A rough calculation based on 5 minute polling from the start to finish (or now if sooner)");
 45: 
 46: ha("AAction:Warnings","The action is triggered for warning level events as well as failures (including downgrading from failure to warning if {AAction:Decreases|decreases} is set)");
 47: ha("AAction:Decreases","The action is triggered when the level goes down to closed (or {AAction:Warnings|warnings} if set)");
 48: ha("AAction:Limit","Max times this action can run in any one day (0 = unlimited) to avoid flooding");
 49: ha("AAction:Counter","Number of times this action has run in the day shown - you can manually reset this here");
 50: 
 51: ha("Variable","System variables are used to control the system environment. To delete a variable just save it with a blank name.");
 52: ha("Var:log.level","The system log level - 10 is everything, 0 is fatal only. 5-6-ish is probably a good balance.");
 53: 
 54: ha("Var:site.enable.interactive","Must be set (1) to allow interactive web sessions (like this one)");
 55: 
 56: ha("Var:test.icmp.timeout","Timeout in seconds to wait for an ICMP response before declaring a failure in seconds (default 10)");
 57: ha("Var:test.icmp.trytwice","If 1 the main tester will try a second ICMP test if the first failed before failing (default 1)");
 58: 
 59: ha("Var:retain.alert","Days to retain alert records for (default 356). Retain forever with value 0.");
 60: ha("Var:retain.record","Days to retain test result records for use in history and graphs (default 356). Retain forever with value 0.");
 61: ha("Var:retain.testrun","Days to retain test run records for (default 30). Retain forever with value 0.");
 62: function hdisp($id,$html=true)
 63: {
 64: global $NATS_Help;
 65: if (!isset($NATS_Help[strtoupper($id)])) return "";
 66: $t=$NATS_Help[strtoupper($id)];
 67: $o="";
 68: $mode="text";
 69: $linktext=false;
 70: for ($a=0; $a<strlen($t); $a++)
 71: 	{
 72: 	$c=$t[$a];
 73: 	
 74: 	if ($c=="{") // start of a link
 75: 		{
 76: 		$mode="link";
 77: 		$linktext=false;
 78: 		$linkid="";
 79: 		$linktxt="";
 80: 		}
 81: 		
 82: 	else if ( ($mode=="link") && ($c=="|") ) // in a link and move into text mode...
 83: 		{
 84: 		$linktext=true;
 85: 		}
 86: 		
 87: 	else if ( ($mode=="link") && ($c=="}") ) // in a link and the end of the link
 88: 		{
 89: 		if (!$linktext) $linktxt=$linkid;
 90: 		if ($html) $o.="<a href=\"help.php?id=".$linkid."\">";
 91: 		$o.=$linktxt;
 92: 		if ($html) $o.="</a>";
 93: 		$mode="text";
 94: 		}
 95: 		
 96: 	else if ( $mode=="link" ) // in a link
 97: 		{
 98: 		if ($linktext) $linktxt.=$c;
 99: 		else $linkid.=$c;
100: 		}
101: 		
102: 	else // in text
103: 		$o.=$c;
104: 	}
105: return $o;
106: }
107: 
108: function hlink($id,$size=16)
109: {
110: global $NATS_Help;
111: if (isset($NATS_Help[strtoupper($id)]))
112: 	return "<a href=\"javascript:freenats_help('".$id."')\"><img src=\"images/info".$size.".gif\" title=\"".hdisp($id,false)."\" border=0></a>";
113: 	
114: return "<img src=\"images/info".$size."g.gif\" border=0 title=\"Sorry, no help available.\">";
115: }
116: 
117: function ph($id,$size=16)
118: {
119: echo hlink($id,$size);
120: }
121: ?>