<?php
/*

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2003 osCommerce
  
  osCommRes, Services Online
  http://www.oscommres.com

  Copyright (c) 2005 osCommRes

  Released under the GNU General Public License
*/
// Check to ensure this file is included in Freeway!
defined('_FEXEC') or die();
  class tableBox {
    var $table_border = '0';
    var $table_width = '100%';
    var $table_cellspacing = '0';
    var $table_cellpadding = '2';
    var $table_parameters = '';
    var $table_row_parameters = '';
    var $table_data_parameters = '';

// class constructor
    function tableBox($contents, $direct_output = false) {
      $tableBox_string = '<table border="' . tep_output_string($this->table_border) . '" width="' . tep_output_string($this->table_width) . '" cellspacing="' . tep_output_string($this->table_cellspacing) . '" cellpadding="' . tep_output_string($this->table_cellpadding) . '"';
      if (tep_not_null($this->table_parameters)) $tableBox_string .= ' ' . $this->table_parameters;
      $tableBox_string .= '>' . "\n";

      for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
        if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $tableBox_string .= $contents[$i]['form'] . "\n";
        $tableBox_string .= '  <tr';
        if (tep_not_null($this->table_row_parameters)) $tableBox_string .= ' ' . $this->table_row_parameters;
        if (isset($contents[$i]['params']) && tep_not_null($contents[$i]['params'])) $tableBox_string .= ' ' . $contents[$i]['params'];
        $tableBox_string .= '>' . "\n";

        if (isset($contents[$i][0]) && is_array($contents[$i][0])) {
          for ($x=0, $n2=sizeof($contents[$i]); $x<$n2; $x++) {
            if (isset($contents[$i][$x]['text']) && tep_not_null($contents[$i][$x]['text'])) {
              $tableBox_string .= '    <td';
              if (isset($contents[$i][$x]['align']) && tep_not_null($contents[$i][$x]['align'])) $tableBox_string .= ' align="' . tep_output_string($contents[$i][$x]['align']) . '"';
              if (isset($contents[$i][$x]['params']) && tep_not_null($contents[$i][$x]['params'])) {
                $tableBox_string .= ' ' . $contents[$i][$x]['params'];
              } elseif (tep_not_null($this->table_data_parameters)) {
                $tableBox_string .= ' ' . $this->table_data_parameters;
              }
              $tableBox_string .= '>';
              if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $tableBox_string .= $contents[$i][$x]['form'];
              $tableBox_string .= $contents[$i][$x]['text'];
              if (isset($contents[$i][$x]['form']) && tep_not_null($contents[$i][$x]['form'])) $tableBox_string .= '</form>';
              $tableBox_string .= '</td>' . "\n";
            }
          }
        } else {
          //$tableBox_string .= '    <td align="left" width="'.SIDE_BOX_LEFT_WIDTH.'" style="background-image1:url(' . DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/right.gif);"><img1 src="' . DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/right.gif" width="'.SIDE_BOX_LEFT_WIDTH.'" height="1" alt=""></td>';
		  $tableBox_string.='<td';
          if (isset($contents[$i]['align']) && tep_not_null($contents[$i]['align'])) $tableBox_string .= ' align="' . tep_output_string($contents[$i]['align']) . '"';
          if (isset($contents[$i]['params']) && tep_not_null($contents[$i]['params'])) {
            $tableBox_string .= ' ' . $contents[$i]['params'];
          } elseif (tep_not_null($this->table_data_parameters)) {
            $tableBox_string .= ' ' . $this->table_data_parameters;
          }
          $tableBox_string .= '>' . $contents[$i]['text'] . '</td>'; //<td width="'.SIDE_BOX_RIGHT_WIDTH.'" style="background-image1:url(' . DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/right.gif);"><img1 src="' . DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/right.gif" width="'.SIDE_BOX_RIGHT_WIDTH.'" height="1" alt=""></td>' . "\n";
        }

        $tableBox_string .= '  </tr>' . "\n";
        if (isset($contents[$i]['form']) && tep_not_null($contents[$i]['form'])) $tableBox_string .= '</form>' . "\n";
      }

      $tableBox_string .= '</table>' . "\n";

      if ($direct_output == true) echo $tableBox_string;
      return $tableBox_string;
    }
  }

class categoriesBox extends tableBox {
function categoriesBox($contents) {
      $info_box_contents = array();
      $info_box_contents[] = array('text' => $this->categoriesBoxContents($contents));
      $this->table_cellpadding = '0';
      $this->table_class = 'noclass';
      $this->tableBox($info_box_contents, true);
    }

function categoriesBoxContents($contents) {
      $this->table_cellpadding = '0';
      $this->table_class = 'noclass';
      $info_box_contents = array();
      for ($i=0; $i<sizeof($contents); $i++) {
        $info_box_contents[] = array(array('align' => 'center', 'params' => 'class="noclass"', 'text' => $contents[$i]['text']));
      }
      return $this->tableBox($info_box_contents);
    }
}

  class infoBox extends tableBox {
    function infoBox($contents) {
      $info_box_contents = array();
      $info_box_contents[] = array('text' => $this->infoBoxContents($contents));
      $this->table_cellpadding = '0';
	  $this->table_spacing = '0';
      $this->tableBox($info_box_contents, true);
    }

    function infoBoxContents($contents) {
      $this->table_cellpadding = '0';
      $this->table_parameters = '';
	  $this->table_border='0';
      $info_box_contents = array();
      for ($i=0, $n=sizeof($contents); $i<$n; $i++) {
        $info_box_contents[] = array(
									array('align' => (isset($contents[$i]['align']) ? $contents[$i]['align'] : ''),
                                           'form' => (isset($contents[$i]['form']) ? $contents[$i]['form'] : ''),
                                           'text' => (isset($contents[$i]['text']) ? $contents[$i]['text'] : '')),
									);
      }
      return $this->tableBox($info_box_contents);
    }
  }

  class infoBoxHeading extends tableBox {
    function infoBoxHeading($contents, $left_corner = true, $right_corner = true, $right_arrow = false,$background="") {
      $this->table_cellpadding = '0';
	  $GLOBALS["cfg_info_addin"]="";
	  $left_corner=$right_corner='';
      if ($left_corner) {
        //$left_corner = tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/box_top_left.gif');
      } 
	  if ($right_arrow) {
        $right_arrow = '<a href="' . $right_arrow . '">' . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '</a>';
      } 
      if ($right_corner) {
        //$right_corner = $right_arrow . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/box_top_right.gif');
      } 
	 
      $info_box_contents = array();
	  $info_box_contents[] = array(array('params'=>'valign="top"','text' => $left_corner),
                                   array('params' => ' class="infoBoxHeading" valign="middle" height="25" width="100%"   ', 'text' => tep_draw_separator('pixel_trans.gif',10,5,'align=absmiddle') . $contents[0]['text']),
                                   array('params'=>'valign="top"','text' => $right_corner));
      $this->tableBox($info_box_contents, true);
    }
  }
  class infoBoxHeadingPage extends tableBox {
    function infoBoxHeadingPage($contents, $left_corner = true, $right_corner = true, $right_arrow = false) {
      $this->table_cellpadding = '0';
	  $this->table_cellspacing = '0';
	  $this->table_border=0;
	  
      $left_corner = $right_corner=$right_arrow="";
      if ($left_corner) {
        //$left_corner = tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/box_top_left.gif');
      } 

      if ($right_corner) {
        //$right_corner = $right_arrow . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/box_top_right.gif');
      } 

      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => ' valign="top" ', 'text' => $left_corner),
                                   array('params' => ' class="infoBoxHeadingPage" height=25 width="100%"  ', 'text' => $contents[0]['text']),
                                   array('params' => ' valign="top" ', 'text' => $right_corner));
      $this->tableBox($info_box_contents, true);
    }
  }

  class infoBoxHeadingSubPage extends tableBox {
    function infoBoxHeadingSubPage($contents, $left_corner = true, $right_corner = true, $right_arrow = false) {
      $this->table_cellpadding = '0';
	  $this->table_cellspacing = '0';
	  $this->table_border=0;
	  
      if ($left_corner) {
        $left_corner = tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/box_top_left.gif');
      } 

      if ($right_corner) {
        $right_corner = $right_arrow . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/box_top_right.gif');
      } 

      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => ' valign="top" ', 'text' => $left_corner),
                                   array('params' => ' class="infoBoxHeading" height=25 width="100%"  ', 'text' => '&nbsp;&nbsp;' .$contents[0]['text']),
                                   array('params' => ' valign="top" ', 'text' => $right_corner));
      $this->tableBox($info_box_contents, true);
    }
  }


  class infoboxFooter extends tableBox {
      function infoboxFooter($contents, $left_corner = true, $right_corner = true, $right_arrow = false,$class="",$bottom=false) {
	  if(!$bottom)
	  	return;
      $this->table_cellpadding = '0';
      if ($left_corner) {
        $left_corner = '';
      } 
      if ($right_arrow) {
        $right_arrow = '<a href="' . $right_arrow . '">' . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '</a>';
      } else {
        $right_arrow = '';
      }
      if ($right_corner) {
        $right_corner = '';
      } 
	  
      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => 'valign="bottom"', 'text' => $left_corner),
                                   array('params' => ' style="background: #ffffff url('. DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/box_bottom_middle.gif) repeat-x top top" width="100%" valign="bottom"', 'text' => tep_draw_separator("pixel_trans.gif",1,5)),
 						array('params' => ' class="" valign="bottom"', 'text' => $right_corner));

      $this->tableBox($info_box_contents, true);
    }
  }
  class infoboxFooterPage extends tableBox {
      function infoboxFooterPage($contents, $left_corner = true, $right_corner = true, $right_arrow = false,$class="") {
	  	//return;
      $this->table_cellpadding = '0';
		$left_corner=$right_corner=$right_arrow="";
      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => 'valign="bottom"', 'text' => $left_corner),
                                   array('params' => 'class="infoBoxFooter" width="100%" valign="bottom"', 'text' => tep_draw_separator("pixel_trans.gif",1,5)),
 						array('params' => ' class="valign="bottom"', 'text' => $right_corner));

      $this->tableBox($info_box_contents, true);
    }
  }

  class contentBox extends tableBox {
    function contentBox($contents) {
      $info_box_contents = array();
      $info_box_contents[] = array('text' => $this->contentBoxContents($contents));
	  $this->table_cellpadding = '0';
      $this->table_parameters = '';
      $this->tableBox($info_box_contents, true);
    }

    function contentBoxContents($contents) {
      $this->table_cellpadding = '2';
      $this->table_parameters = 'class="infoBoxContents"';
      return $this->tableBox($contents);
    }
  }

  class contentBoxHeading extends tableBox {
    function contentBoxHeading($contents) {
      $this->table_width = '100%';
      $this->table_cellpadding = '0';

      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => 'height="27" class="infoBoxHeading"',
                                         'text' => ''),
                                   array('params' => ' align="center" width="100%"  class="infoBoxHeadingPage"',
				         'text' => $contents[0]['text']),
                                   array('params' => 'height="27" class="infoBoxHeading"',
                                         'text' => ''));

      $this->tableBox($info_box_contents, true);
    }
  }

  class contentBoxFooter extends tableBox {
  
    function contentBoxFooter($contents, $left_corner = true, $right_corner = true, $right_arrow = false) {
      $this->table_cellpadding = '0';

      if ($left_corner) {
        $left_corner = tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/corner_left_flip.gif');
      } else {
        $left_corner = tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/corner_left_flip.gif');
      }
      if ($right_arrow) {
        $right_arrow = '<a href="' . $right_arrow . '">' . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '</a>';
      } else {
        $right_arrow = '';
      }
      if ($right_corner) {
        $right_corner = $right_arrow . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/corner_right_flip.gif');
      } else {
        $right_corner = $right_arrow . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/corner_right_flip.gif');
      }

      $info_box_contents = array();
      $info_box_contents[] = array(array('params' =>  'class="infoBoxfooter"','text' => $left_corner),
                                   array('params' => 'style="background-image:url(' . DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/backgroundfb.gif);" width="100%" ', 'text' => $contents[0]['text']),
 						array('params' => ' ', 'text' => $right_corner));

      $this->tableBox($info_box_contents, true);
    }
  }

  class errorBox extends tableBox {
    function errorBox($contents) {
      $this->table_data_parameters = 'class="errorBox"';
      $this->tableBox($contents, true);
    }
  }

  class productListingBox extends tableBox {
    function productListingBox($contents) {
      $this->table_parameters = '';
      $this->tableBox($contents, true);
    }
  }
  #new Class For Event content#
  class infoBoxcontent extends tableBox {
    function infoBoxcontent($contents, $left_corner = true, $right_corner = true, $right_arrow = false) {
      $this->table_cellpadding = '0';
	  $this->table_border="0";
      if ($left_corner) {
        $left_corner = tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/corner_left.gif');
      } 
      if ($right_arrow) {
        $right_arrow = '<a href="' . $right_arrow . '">' . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '</a>';
      } 
      if ($right_corner) {
        $right_corner = $right_arrow . tep_image(DIR_WS_TEMPLATES . TEMPLATE_NAME . '/images/infobox/corner_left_right.gif');
      } 
	  $content=$contents[0]['text'];
		
      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => ' class="infoBoxHeading"', 'text' => $left_corner),
                                   array('params' => ' class="infoBoxHeading" height=20 valign="middle" width="100%"  ', 'text' =>$content),
                                   array('params' => ' class="infoBoxHeading" ', 'text' => $right_corner));
      $this->tableBox($info_box_contents, true);
    }
  }
?>
