CRM-14199 Enhancement - Incorrect Math in Import routines
authoratif-shaikh <shaikh388@gmail.com>
Fri, 2 Jan 2015 14:17:03 +0000 (19:47 +0530)
committeratif-shaikh <shaikh388@gmail.com>
Fri, 2 Jan 2015 14:17:03 +0000 (19:47 +0530)
https://issues.civicrm.org/jira/browse/CRM-14199

CRM/Activity/Import/Form/DataSource.php
CRM/Contribute/Import/Form/DataSource.php
CRM/Core/Config/Defaults.php
CRM/Custom/Import/Form/DataSource.php
CRM/Event/Import/Form/DataSource.php
CRM/Import/DataSource/CSV.php
CRM/Member/Import/Form/DataSource.php

index b5e9c7a9d1c5b98767e8b45a10439d0305b3cfdc..c026cba134314eb8845528eb094866e2fe5aa497 100644 (file)
@@ -59,7 +59,7 @@ class CRM_Activity_Import_Form_DataSource extends CRM_Core_Form {
     //Setting Upload File Size
     $config = CRM_Core_Config::singleton();
 
-    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m');
+    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m', TRUE);
     $uploadSize = round(($uploadFileSize / (1024 * 1024)), 2);
 
     $this->assign('uploadSize', $uploadSize);
index b4ffac2ff5e8ffc259d9d4620da3d8457c6a0de2..0db01f96fffcfa12e6c676a56d6b987157f2fe04 100644 (file)
@@ -59,7 +59,7 @@ class CRM_Contribute_Import_Form_DataSource extends CRM_Core_Form {
     //Setting Upload File Size
     $config = CRM_Core_Config::singleton();
 
-    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m');
+    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m', TRUE);
     $uploadSize = round(($uploadFileSize / (1024 * 1024)), 2);
 
     $this->assign('uploadSize', $uploadSize);
index ccb1d5bff67260becc0e7b192b6273169ba03950..ddc92b5614e2b17cee0741b185f1691cd4058d09 100644 (file)
@@ -96,9 +96,15 @@ class CRM_Core_Config_Defaults {
 
       if ($checkForPostMax) {
         $maxImportFileSize = self::formatUnitSize(ini_get('upload_max_filesize'));
-        if($maxImportFileSize > $size) {
+        $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 = $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;
     }
index 71d9c497e651a6bc19e913ab6e4e33ff1764e929..8668eadbd36b6b2695aaab9ef400ad341dd67120 100644 (file)
@@ -89,7 +89,7 @@ class CRM_Custom_Import_Form_DataSource extends CRM_Core_Form {
     //Setting Upload File Size
     $config = CRM_Core_Config::singleton();
 
-    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m');
+    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m', TRUE);
     $uploadSize = round(($uploadFileSize / (1024 * 1024)), 2);
 
     $this->assign('uploadSize', $uploadSize);
index 3d4505ec9c07a6e70262270a953cfcc03f0cb4b2..58b2bdfe5e270db34804dc2d4cb484afd770e5d0 100644 (file)
@@ -59,7 +59,7 @@ class CRM_Event_Import_Form_DataSource extends CRM_Core_Form {
     //Setting Upload File Size
     $config = CRM_Core_Config::singleton();
 
-    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m');
+    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m', TRUE);
     $uploadSize = round(($uploadFileSize / (1024 * 1024)), 2);
 
     $this->assign('uploadSize', $uploadSize);
index 1df59f2f209d78a3c6b058035e17d8a6e38f5d1b..3ebc79d3e3189beba4e6600fea2d892a0c6b7b69 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');
+    $uploadFileSize = CRM_Core_Config_Defaults::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 8e9f3054ef3806e8fd39eca37b9cbe15496517d3..e30f0225fa61d2686531bcd95aadda24b73cb045 100644 (file)
@@ -59,7 +59,7 @@ class CRM_Member_Import_Form_DataSource extends CRM_Core_Form {
     //Setting Upload File Size
     $config = CRM_Core_Config::singleton();
 
-    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m');
+    $uploadFileSize = CRM_Core_Config_Defaults::formatUnitSize($config->maxFileSize.'m', TRUE);
     $uploadSize = round(($uploadFileSize / (1024 * 1024)), 2);
 
     $this->assign('uploadSize', $uploadSize);