/** Construct the coin summary form
  */
 public function __construct(array $options = null)
 {
     //Get periods for select menu
     $periods = new Periods();
     $periodWord = $periods->getCoinsPeriodWords();
     //End of select options construction
     $this->addElementPrefixPath('Pas_Filter', 'Pas/Filter/', 'filter');
     //Construct parent form
     parent::__construct($options);
     //Set the coin form name
     $this->setName('coinsummary');
     //        $this->setAction();
     /** Set up broadperiod form element
      * @var $broadperiod
      */
     $broadperiod = new Zend_Form_Element_Select('broadperiod');
     $broadperiod->setLabel('Broad period: ')->setRequired(true)->addFilters(array('StripTags', 'StringTrim'))->setErrorMessages(array('You must enter a broad period'))->addMultiOptions(array(null => 'Choose broadperiod', 'Available periods' => $periodWord))->setAttribs(array('class' => 'input-xlarge selectpicker show-menu-arrow'))->setOrder(1);
     /** Set up ruler id form element
      * @var $ruler_id
      */
     $ruler_id = new Zend_Form_Element_Select('ruler_id');
     $ruler_id->setLabel('Ruler: ')->addValidator('Int')->setRegisterInArrayValidator(false)->setRequired(true)->addFilters(array('StripTags', 'StringTrim'))->setAttribs(array('class' => 'input-xlarge selectpicker show-menu-arrow'))->setOrder(2);
     /** Set up denomination element
      *
      * @var  $denomination
      */
     $denomination = new Zend_Form_Element_Select('denomination');
     $denomination->setLabel('Denomination: ')->addValidator('Int')->setRegisterInArrayValidator(false)->setRequired(true)->addFilters(array('StripTags', 'StringTrim'))->setAttribs(array('class' => 'input-xlarge selectpicker show-menu-arrow'))->setOrder(3);
     /** The ID of the mint
      * Default null
      * @var $mint_id
      */
     $mint_id = new Zend_Form_Element_Select('mint_id');
     $mint_id->setLabel('Issuing mint: ')->addValidator('Int')->setRegisterInArrayValidator(false)->addFilters(array('StripTags', 'StringTrim'))->setAttribs(array('class' => 'input-xlarge selectpicker show-menu-arrow'))->setOrder(4);
     /** Set up iron age geography element
      * @var $geographyID
      */
     $geographyID = new Zend_Form_Element_Select('geographyID');
     $geographyID->setLabel('Iron Age geography: ')->addValidator('Int')->setRegisterInArrayValidator(false)->setAttribs(array('class' => 'input-xlarge selectpicker show-menu-arrow'))->setOrder(5);
     /** Set up earliest date element
      * +ve or -ve integer
      * Default should be null
      * @var $numdate1
      */
     $numdate1 = new Zend_Form_Element_Text('numdate1');
     $numdate1->setLabel('Date from: ')->addValidator('Int')->addFilters(array('StripTags', 'StringTrim'))->setAttribs(array('class' => 'input-small', 'placeholder' => 'YYYY'))->setOrder(6);
     /** Set up latest date element
      * +ve or -ve integer
      * Default should be null
      * @var $numdate2
      */
     $numdate2 = new Zend_Form_Element_Text('numdate2');
     $numdate2->setLabel('Date to: ')->addValidator('Int')->setAttribs(array('class' => 'input-small', 'placeholder' => 'YYYY'))->setOrder(7);
     /** Set up the quantity element
      * @var $quantity
      */
     $quantity = new Zend_Form_Element_Text('quantity');
     $quantity->setLabel('Quantity: ')->addValidator('Int')->setErrorMessages(array('That is not a number'))->setValue(1)->addFilters(array('StripTags', 'StringTrim'))->setAttribs(array('class' => 'input-small'))->setOrder(8);
     /** Create submit form element
      * @var $submit
      */
     $submit = new Zend_Form_Element_Submit('submit');
     $submit->setLabel('Submit details');
     /** Add the elements to the form
      */
     $this->addElements(array($quantity, $broadperiod, $denomination, $ruler_id, $mint_id, $geographyID, $numdate1, $numdate2, $submit));
     /** Create a display group for form fields
      */
     $this->addDisplayGroup(array('quantity', 'broadperiod', 'denomination', 'ruler_id', 'mint_id', 'geographyID', 'numdate1', 'numdate2'), 'details');
     /** Create a display group for buttons
      * */
     $this->addDisplayGroup(array('submit'), 'buttons');
     /** Init the parent
      */
     parent::init();
 }