/**
* The required files
*/
require_once(HTML_BASE_COMMON_PATH.'/Html.php');
require_once(HTML_FORM_COMPONENT_PATH.'/Input.php');
require_once(HTML_FORM_COMPONENT_PATH.'/Text.php');
require_once(HTML_FORM_COMPONENT_PATH.'/Hidden.php');
require_once(HTML_FORM_COMPONENT_PATH.'/SubmitButton.php');
require_once(HTML_BASE_UTIL_PATH.'/Link.php');
require_once(HTML_BASE_UTIL_PATH.'/Images.php');
require_once(HTML_BASE_UTIL_PATH.'/Span.php');
if (defined('HTML_GOOGLE_ADS_PAGE_PATH')) {
require_once(HTML_GOOGLE_ADS_PAGE_PATH.'/Googlesearch.php');
}
if (defined('HTML_LANGUAGE_UTIL_PATH')) {
require_once(HTML_LANGUAGE_UTIL_PATH.'/Translate.php');
}
/**
* Generates a Googlebox
* <code>
* Usage:
* $google = new Googlebox();
* print $google->getData();
* </code>
* @package menu
*/
class Googlebox extends Html {
/**
* @var String $text The Google search text
*/
var $text = '';
/**
* @var String $class The CSS class name for the Google search text
*/
var $class = '';
/**
* Constructor
* @param String $text The default search pattern
* @param String $class The CSS class name
*/
function Googlebox($text='',$class='') {
$this->Html();
$this->class = $class;
if ($this->text=='' && !empty($_GET[REQUEST_PAGE_KEYWORD])) {
$this->text = $_GET[REQUEST_PAGE_KEYWORD];
}
if ($this->text=='' && !empty($_POST[REQUEST_PAGE_KEYWORD])) {
$this->text = $_POST[REQUEST_PAGE_KEYWORD];
}
if ($this->text=='') {
$this->text = $text;
}
if ($this->text=='') {
$this->text = empty($GLOBALS[GLOBAL_PAGE_KEYWORD_NAME])?'':$GLOBALS[GLOBAL_PAGE_KEYWORD_NAME];
}
if ($this->text=='') {
$this->text = defined('PAGE_KEYWORD')?PAGE_KEYWORD:'';
}
if ($this->text=='') {
$this->text = empty($GLOBALS['pageKeyword'])?'':$GLOBALS['pageKeyword'];
}
if ($this->text=='') {
$this->text = GOOGLE_TEXT;
}
if ($this->text!='' && defined('HTML_LANGUAGE_UTIL_PATH')) {
$this->text = ucfirst(Translate::get($this->text));
}
}
/**
* Builds the custom sponsor Google logo
* @return String The html
*/
function getSponsor() {
$html = '';
if (defined('COMPONENT_SHOW') && COMPONENT_SHOW & COMPONENT_SHOW_GOOGLE || defined('LINK_SHOW') && LINK_SHOW & LINK_SHOW_GOOGLE_TOP) {
$cof = new Hidden(REQUEST_GOOGLE_COF,"LW:468;L:http:/"."/www.finnrasmussen.dk/images/logo.gif;LH:60;AH:left;AWFID:b0a3b67522da2caa;");
$domains = new Hidden(REQUEST_GOOGLE_DOMAINS,"www.finnrasmussen.dk");
$sitesearch = new Hidden(REQUEST_GOOGLE_SITESEARCH,"");
// Disable hidden debug information
$html .= $cof->debug = false;
$html .= $domains->debug = false;
$html .= $sitesearch->debug = false;
// Get the html
$html .= $cof->getHtml();
$html .= $domains->getHtml();
$html .= $sitesearch->getHtml();
}
return $html;
}
/**
* Return the google letters with the right color as an object
* @param String $class The css class name
* @param String $char The char to colorize
* @return Object The letter
*/
function newChar($class,$char) {
return new Span($char,$class);
}
/**
* Builds the html for a Google search box, and return it
* This function assumes that you already have a table like:
* <code>
* <table ...><tr><td>...</td> ... <google> ... <td>...</td></tr></table>
* </code>
* @return String The google seach box as html
*/
function getHtml() {
$html = $this->html;
if (defined('COMPONENT_SHOW') && COMPONENT_SHOW & COMPONENT_SHOW_GOOGLE || defined('LINK_SHOW') && LINK_SHOW & LINK_SHOW_GOOGLE_TOP) {
$class = "$this->class";
$image = new Images(IMAGE_BLANK,'1','10');
$html .= ' <td valign="top" class="'.$class.'">'.$image->getHtml()."</td>\r\n";
$image = new Images(IMAGE_TRIANGLE,'','','',$class);
$html .= ' <td valign="top" class="'.$class.'">'.$image->getHtml()."</td>\r\n";
$href = "http:/"."/www.google.com/search";
$title = "Powered by Google";
$link = new Link('', $href, $class, $title);
$letters = array('G','o','o','g','l','e',);
$classes = array(CSS_BLUE,CSS_RED,CSS_YELLOW,CSS_BLUE,CSS_GREEN,CSS_RED,);
foreach($letters as $key=>$letter) {
$charClass = $classes[$key];
$link->add($this->newChar($charClass, $letter));
}
$html .= ' <td valign="middle" class="'.$class.'">'.$link->getHtml()."</td>\r\n";
if (defined('HTML_GOOGLE_ADS_PAGE_PATH')) {
$layout = GOOGLE_SEARCH_LAYOUT_TD | GOOGLE_SEARCH_LAYOUT_SHORT;
$googlesearch = new Googlesearch($layout, $class, $this->text);
$html .= $googlesearch->getSearch();
} else {
$html .= ' <td valign="middle" class="'.$class.'">';
$q = new Text(REQUEST_GOOGLE_Q,$this->text,CSS_X_SMALL." ".CSS_BORDER,"10","255");
$html .= $q->getHtml();
$html .= " </td>\r\n";
$html .= ' <td class="'.$class.'"> '."</td>\r\n";
$html .= ' <td valign="middle" class="'.$class.'">';
$text = defined('BUTTON_GOOGLE_TEXT')?BUTTON_GOOGLE_TEXT:' Go ';
$go = new SubmitButton(REQUEST_GOOGLE,$text,CSS_SEARCH_SUBMIT." ".CSS_BORDER,'','','Powered by Google Search');
$html .= $go->getHtml();
$html .= $this->getSponsor();
$html .= " </td>\r\n";
}
} else {
$html .= "<!-- ".$this->getClassName()." Data disabled -->\r\n";
}
return $html;
}
}
?>