Exemplo n.º 1
0
 /**
  * function to validate type of contact image
  *
  * @param  Array  $param      array of contact/profile field to be edited/added
  *
  * @param  String $imageIndex index of image field
  *
  * @param  String $statusMsg  status message to be set after operation
  *
  * @opType String $opType     type of operation like fatal, bounce etc
  * @return boolean true if valid image extension
  */
 public static function processImageParams(&$params, $imageIndex = 'image_URL', $statusMsg = null, $opType = 'status')
 {
     $mimeType = array('image/jpeg', 'image/jpg', 'image/png', 'image/bmp', 'image/p-jpeg', 'image/gif', 'image/x-png');
     if (in_array($params[$imageIndex]['type'], $mimeType)) {
         $params[$imageIndex] = CRM_Contact_BAO_Contact::getRelativePath($params[$imageIndex]['name']);
         return true;
     } else {
         unset($params[$imageIndex]);
         if (!$statusMsg) {
             $statusMsg = ts('Image could not be uploaded due to invalid type extension.');
         }
         if ($opType == 'status') {
             CRM_Core_Session::setStatus($statusMsg);
         }
         // FIXME: additional support for fatal, bounce etc could be added.
         return false;
     }
 }