MSV FM

dot.antimicrobial@66.96.161.157: ~ $
Path : /hermes/bosweb/b1705/prendex.com/public_html/includes/classes/
File Upload :
Current < : /hermes/bosweb/b1705/prendex.com/public_html/includes/classes/DocList.class

<?php
/**
 * The Doc class represents a list of Doc objects.
 *
 * @author Craig Knudsen
 * @copyright Craig Knudsen, <cknudsen@cknudsen.com>, http://www.k5n.us/
 * @license http://www.gnu.org/licenses/gpl.html GNU GPL
 * @version $Id: DocList.class,v 1.7.2.2 2007/08/06 02:28:27 cknudsen Exp $
 * @package WebCalendar
 * @subpackage Doc
 */

/**
 * A list of Doc objects.
 */
class DocList {
  var $_count = 0;
  var $_event_id = -1;
  var $_type;
  var $_arr; // array of Doc objects

  /**
    * Get the number of Doc objects in this list.
    * @return int  The number of objects in this list
    */
  function getSize ()
  {
    return $this->_count;
  }

  /**
    * Get a specific Doc object by number (0=first)
    * @param int ind  index number (0=first)
    * @return Doc  The Doc object
    */
  function getDoc ( $ind )
  {
    if ( $ind < 0 || $ind > $this->_count )
      return null;
    return $this->_arr[$ind];
  }

  /**
   * Creates a new Doc list for the specified event. This list
   * will be for either attachments ($type='A') or
   * comments ($type='C').
   *
   * @parm  int    $event_id  The event id
   * @parm  int    $type  The type of Doc objects ('A' or 'C')
   * @return DocList The new DocList object
   * @access public
   */
  function DocList ( $event_id, $type )
  {
    $this->_event_id = $event_id;
    $this->_type = $type;
    $this->_arr = array ();

    if ( $type != 'A' && $type != 'C' )
      die_miserable_death ( "Invalid DocList type '$type'" );

    $sql = Doc::getSQL ( $event_id, $type );

    $res = dbi_execute ( $sql );
    if ( ! $res ) {
      // TODO: exceptions for PHP5
    } else {
      while ( $row = dbi_fetch_row ( $res ) ) {
        $this->_arr[] = new Doc ( $row );
        $this->_count++;
      }
      dbi_free_result ( $res );
    }
  }

  /**
   * Gets the event ID of this list.
   * @return int event ID
   * @access public
   */
  function getEventId () {
    return $this->_event_id;
  }

  /**
   * Gets the event's description
   *
   * @return string The event's description
   *
   * @access public
   */
  function getDescription () {
    return $this->_description;
  }

}
?>