Fix icon for export done button
[civicrm-core.git] / CRM / Export / Form / Map.php
index 66544bf10d7da47bb9fc653a4716658187d5a0f2..76a1310a00d58d7ec60c5c0aacf985908f4f76f1 100644 (file)
@@ -1,9 +1,9 @@
 <?php
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.5                                                |
+ | CiviCRM version 4.6                                                |
  +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2014                                |
+ | Copyright CiviCRM LLC (c) 2004-2015                                |
  +--------------------------------------------------------------------+
  | This file is a part of CiviCRM.                                    |
  |                                                                    |
  | GNU Affero General Public License or the licensing of CiviCRM,     |
  | see the CiviCRM license FAQ at http://civicrm.org/licensing        |
  +--------------------------------------------------------------------+
-*/
+ */
 
 /**
  *
  * @package CRM
- * @copyright CiviCRM LLC (c) 2004-2014
+ * @copyright CiviCRM LLC (c) 2004-2015
  * $Id$
  *
  */
@@ -42,7 +42,6 @@ class CRM_Export_Form_Map extends CRM_Core_Form {
    * Mapper fields
    *
    * @var array
-   * @access protected
    */
   protected $_mapperFields;
 
@@ -50,7 +49,6 @@ class CRM_Export_Form_Map extends CRM_Core_Form {
    * Number of columns in import file
    *
    * @var int
-   * @access protected
    */
   protected $_exportColumnCount;
 
@@ -58,26 +56,32 @@ class CRM_Export_Form_Map extends CRM_Core_Form {
    * Loaded mapping ID
    *
    * @var int
-   * @access protected
    */
   protected $_mappingId;
 
   /**
-   * Build the form object
+   * Build the form object.
    *
    * @return void
-   * @access public
    */
   public function preProcess() {
     $this->_exportColumnCount = $this->get('exportColumnCount');
+    $this->_mappingId = $this->get('mappingId');
+
     if (!$this->_exportColumnCount) {
-      $this->_exportColumnCount = 10;
+      // Set default from saved mapping
+      if ($this->_mappingId) {
+        $mapping = new CRM_Core_DAO_MappingField();
+        $mapping->mapping_id = $this->_mappingId;
+        $this->_exportColumnCount = $mapping->count();
+      }
+      else {
+        $this->_exportColumnCount = 10;
+      }
     }
     else {
-      $this->_exportColumnCount = $this->_exportColumnCount + 10;
+      $this->_exportColumnCount += 10;
     }
-
-    $this->_mappingId = $this->get('mappingId');
   }
 
   public function buildQuickForm() {
@@ -92,15 +96,16 @@ class CRM_Export_Form_Map extends CRM_Core_Form {
     $this->addButtons(array(
         array(
           'type' => 'back',
-          'name' => ts('<< Previous'),
+          'name' => ts('Previous'),
         ),
         array(
           'type' => 'next',
-          'name' => ts('Export >>'),
+          'name' => ts('Export'),
           'spacing' => '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;',
         ),
         array(
           'type' => 'done',
+          'icon' => 'close',
           'name' => ts('Done'),
         ),
       )
@@ -108,18 +113,18 @@ class CRM_Export_Form_Map extends CRM_Core_Form {
   }
 
   /**
-   * Global validation rules for the form
+   * Global validation rules for the form.
    *
-   * @param array $fields posted values of the form
+   * @param array $fields
+   *   Posted values of the form.
    *
    * @param $values
    * @param int $mappingTypeId
    *
-   * @return array list of errors to be posted back to the form
-   * @static
-   * @access public
+   * @return array
+   *   list of errors to be posted back to the form
    */
-  static function formRule($fields, $values, $mappingTypeId) {
+  public static function formRule($fields, $values, $mappingTypeId) {
     $errors = array();
 
     if (!empty($fields['saveMapping']) && !empty($fields['_qf_Map_next'])) {
@@ -147,10 +152,9 @@ class CRM_Export_Form_Map extends CRM_Core_Form {
   }
 
   /**
-   * Process the uploaded file
+   * Process the uploaded file.
    *
    * @return void
-   * @access public
    */
   public function postProcess() {
     $params = $this->controller->exportValues($this->_name);
@@ -250,10 +254,9 @@ class CRM_Export_Form_Map extends CRM_Core_Form {
    * Return a descriptive name for the page, used in wizard header
    *
    * @return string
-   * @access public
    */
   public function getTitle() {
     return ts('Select Fields to Export');
   }
-}
 
+}