controller->setPrint(1); // get the formatted params $queryParams = $this->get('queryParams'); $sortID = NULL; if ($this->get(CRM_Utils_Sort::SORT_ID)) { $sortID = CRM_Utils_Sort::sortIDValue($this->get(CRM_Utils_Sort::SORT_ID), $this->get(CRM_Utils_Sort::SORT_DIRECTION) ); } $selector = new CRM_Pledge_Selector_Search($queryParams, $this->_action, $this->_componentClause); $controller = new CRM_Core_Selector_Controller($selector, NULL, $sortID, CRM_Core_Action::VIEW, $this, CRM_Core_Selector_Controller::SCREEN); $controller->setEmbedded(TRUE); $controller->run(); } /** * Build the form object - it consists of * - displaying the QILL (query in local language) * - displaying elements for saving the search * * * @return void */ public function buildQuickForm() { // // just need to add a javacript to popup the window for printing // $this->addButtons(array( array( 'type' => 'next', 'name' => ts('Print Pledge List'), 'js' => array('onclick' => 'window.print()'), 'isDefault' => TRUE, ), array( 'type' => 'back', 'name' => ts('Done'), ), ) ); } /** * Process the form after the input has been submitted and validated. * * * @return void */ public function postProcess() { // redirect to the main search page after printing is over } }