CRM-16373 - Move formatUnitSize() from CRM_Core_Config to CRM_Utils_Number
authorTim Otten <totten@civicrm.org>
Tue, 18 Aug 2015 02:11:30 +0000 (19:11 -0700)
committerTim Otten <totten@civicrm.org>
Tue, 18 Aug 2015 02:11:30 +0000 (19:11 -0700)
CRM/Admin/Form/Setting/Miscellaneous.php
CRM/Contact/Import/Form/DataSource.php
CRM/Core/Config/Defaults.php
CRM/Import/DataSource/CSV.php
CRM/Import/Form/DataSource.php
CRM/Utils/Number.php

index cf4b71274e2149a05c33ba9201cdf5df9d7e2ab1..a27a28351e1e0eb22a5125216ab30f5ecf19cbea 100644 (file)
@@ -63,7 +63,7 @@ class CRM_Admin_Form_Setting_Miscellaneous extends CRM_Admin_Form_Setting {
     $config = CRM_Core_Config::singleton();
     $this->_uploadMaxSize = (int) ini_get('upload_max_filesize');
     // check for post max size
-    CRM_Core_Config_Defaults::formatUnitSize(ini_get('post_max_size'), TRUE);
+    CRM_Utils_Number::formatUnitSize(ini_get('post_max_size'), TRUE);
   }
 
   /**
index f2009172257dbe18eb8dad138ae1bc3d26508373..ca38d0a47ec6b400cad76fb16ce09012cd003764 100644 (file)
@@ -74,7 +74,7 @@ class CRM_Contact_Import_Form_DataSource extends CRM_Core_Form {
     // check for post max size avoid when called twice
     $snippet = CRM_Utils_Array::value('snippet', $_GET, 0);
     if (empty($snippet)) {
-      CRM_Core_Config_Defaults::formatUnitSize(ini_get('post_max_size'), TRUE);
+      CRM_Utils_Number::formatUnitSize(ini_get('post_max_size'), TRUE);
     }
 
     while ($file = readdir($handler)) {
index 314883e22c3ca5356d36829a47c52630d665e8de..5b6b82069addbbd3bc35d2c7b31dd5721c59bf25 100644 (file)
@@ -61,40 +61,6 @@ class CRM_Core_Config_Defaults {
     $this->groupTree = defined('CIVICRM_GROUPTREE') ? TRUE : FALSE;
   }
 
-  /**
-   * Format size.
-   *
-   */
-  public static function formatUnitSize($size, $checkForPostMax = FALSE) {
-    if ($size) {
-      $last = strtolower($size{strlen($size) - 1});
-      switch ($last) {
-        // The 'G' modifier is available since PHP 5.1.0
-
-        case 'g':
-          $size *= 1024;
-        case 'm':
-          $size *= 1024;
-        case 'k':
-          $size *= 1024;
-      }
-
-      if ($checkForPostMax) {
-        $maxImportFileSize = self::formatUnitSize(ini_get('upload_max_filesize'));
-        $postMaxSize = self::formatUnitSize(ini_get('post_max_size'));
-        if ($maxImportFileSize > $postMaxSize && $postMaxSize == $size) {
-          CRM_Core_Session::setStatus(ts("Note: Upload max filesize ('upload_max_filesize') should not exceed Post max size ('post_max_size') as defined in PHP.ini, please check with your system administrator."), ts("Warning"), "alert");
-        }
-        //respect php.ini upload_max_filesize
-        if ($size > $maxImportFileSize && $size !== $postMaxSize) {
-          $size = $maxImportFileSize;
-          CRM_Core_Session::setStatus(ts("Note: Please verify your configuration for Maximum File Size (in MB) <a href='%1'>Administrator >> System Settings >> Misc</a>. It should support 'upload_max_size' as defined in PHP.ini.Please check with your system administrator.", array(1 => CRM_Utils_System::url('civicrm/admin/setting/misc', 'reset=1'))), ts("Warning"), "alert");
-        }
-      }
-      return $size;
-    }
-  }
-
   /**
    * Set the default values.
    * in an empty db, also called when setting component using GUI
index c5a73a0b07eeb924a75b86c255b66351597a19b2..57aea4ab912fbb93e61df753b6d4987af660eab8 100644 (file)
@@ -67,7 +67,7 @@ class CRM_Import_DataSource_CSV extends CRM_Import_DataSource {
 
     $config = CRM_Core_Config::singleton();
 
-    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize . 'm', TRUE);
+    $uploadFileSize = CRM_Utils_Number::formatUnitSize($config->maxFileSize . 'm', TRUE);
     $uploadSize = round(($uploadFileSize / (1024 * 1024)), 2);
     $form->assign('uploadSize', $uploadSize);
     $form->add('File', 'uploadFile', ts('Import Data File'), 'size=30 maxlength=255', TRUE);
index 0689b6e2ace7163c98b85fe22302e31c9548a92a..616d6d4d4099c7c4df77adf82dc766b949dac487 100644 (file)
@@ -52,7 +52,7 @@ abstract class CRM_Import_Form_DataSource extends CRM_Core_Form {
     CRM_Core_Session::singleton()->pushUserContext(CRM_Utils_System::url(static::PATH, $params));
 
     // check for post max size
-    CRM_Core_Config_Defaults::formatUnitSize(ini_get('post_max_size'), TRUE);
+    CRM_Utils_Number::formatUnitSize(ini_get('post_max_size'), TRUE);
   }
 
   /**
@@ -63,7 +63,7 @@ abstract class CRM_Import_Form_DataSource extends CRM_Core_Form {
   public function buildQuickForm() {
     $config = CRM_Core_Config::singleton();
 
-    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize . 'm', TRUE);
+    $uploadFileSize = CRM_Utils_Number::formatUnitSize($config->maxFileSize . 'm', TRUE);
     $uploadSize = round(($uploadFileSize / (1024 * 1024)), 2);
 
     $this->assign('uploadSize', $uploadSize);
index ff9c4d66d0b30bc7a6e29163316aa507162df5d8..f3e427acd2a93eeb7d3605dc82fdf7b8bae6a9fc 100644 (file)
@@ -46,4 +46,37 @@ class CRM_Utils_Number {
     }
   }
 
+  /**
+   * Some kind of numbery-looky-printy thing.
+   */
+  public static function formatUnitSize($size, $checkForPostMax = FALSE) {
+    if ($size) {
+      $last = strtolower($size{strlen($size) - 1});
+      switch ($last) {
+        // The 'G' modifier is available since PHP 5.1.0
+
+        case 'g':
+          $size *= 1024;
+        case 'm':
+          $size *= 1024;
+        case 'k':
+          $size *= 1024;
+      }
+
+      if ($checkForPostMax) {
+        $maxImportFileSize = self::formatUnitSize(ini_get('upload_max_filesize'));
+        $postMaxSize = self::formatUnitSize(ini_get('post_max_size'));
+        if ($maxImportFileSize > $postMaxSize && $postMaxSize == $size) {
+          CRM_Core_Session::setStatus(ts("Note: Upload max filesize ('upload_max_filesize') should not exceed Post max size ('post_max_size') as defined in PHP.ini, please check with your system administrator."), ts("Warning"), "alert");
+        }
+        //respect php.ini upload_max_filesize
+        if ($size > $maxImportFileSize && $size !== $postMaxSize) {
+          $size = $maxImportFileSize;
+          CRM_Core_Session::setStatus(ts("Note: Please verify your configuration for Maximum File Size (in MB) <a href='%1'>Administrator >> System Settings >> Misc</a>. It should support 'upload_max_size' as defined in PHP.ini.Please check with your system administrator.", array(1 => CRM_Utils_System::url('civicrm/admin/setting/misc', 'reset=1'))), ts("Warning"), "alert");
+        }
+      }
+      return $size;
+    }
+  }
+
 }