diff --git a/include/Webservices/Utils.php b/include/Webservices/Utils.php index 273196a5014a6181888c8dd11f16c63f0aad06c7..06c4665079f7ddf05cfce3c688ba15b9dc361a85 100644 --- a/include/Webservices/Utils.php +++ b/include/Webservices/Utils.php @@ -479,13 +479,20 @@ function vtws_CreateCompanyLogoFile($fieldname) { $fileSize = $_FILES[$fieldname]['size']; if($fileSize != 0) { global $root_directory; - $uploaddir = $root_directory ."/test/logo/"; - $binFile = $_FILES[$fieldname]['name']; - $saveLogo = validateImageFile($_FILES[$fieldname]); - if($saveLogo) { - move_uploaded_file($_FILES[$fieldname]["tmp_name"], $uploaddir.$binFile); - copy($uploaddir.$binFile, $uploaddir.'application.ico'); - return $binFile; + //Support formats allowed to upload as per CRM UI. + $logoSupportedFormats = array('jpeg', 'jpg', 'png', 'gif', 'pjpeg', 'x-png'); + + $file_type_details = explode("/", $_FILES[$fieldname]['type']); + $filetype = $file_type_details['1']; + if(in_array($filetype, $logoSupportedFormats)) { + $uploaddir = $root_directory ."/test/logo/"; + $binFile = $_FILES[$fieldname]['name']; + $saveLogo = validateImageFile($_FILES[$fieldname]); + if($saveLogo) { + move_uploaded_file($_FILES[$fieldname]["tmp_name"], $uploaddir.$binFile); + copy($uploaddir.$binFile, $uploaddir.'application.ico'); + return $binFile; + } } throw new WebServiceException(WebServiceErrorCode::$FAILED_TO_UPDATE, "$fieldname wrong file type given for upload"); diff --git a/modules/PurchaseOrder/PurchaseOrder.php b/modules/PurchaseOrder/PurchaseOrder.php index 625bcfb6265e7a1ccc7d0f1da361f2b9cfd26516..8a6f646d068bdf18baf259d0ce01266c17a923e3 100644 --- a/modules/PurchaseOrder/PurchaseOrder.php +++ b/modules/PurchaseOrder/PurchaseOrder.php @@ -514,27 +514,27 @@ class PurchaseOrder extends CRMEntity { // Function to unlink an entity with given Id from another entity function unlinkRelationship($id, $return_module, $return_id) { - global $log; - if(empty($return_module) || empty($return_id)) return; - - if($return_module == 'Vendors') { - $sql_req ='UPDATE vtiger_crmentity SET deleted = 1 WHERE crmid= ?'; - $this->db->pquery($sql_req, array($id)); - } elseif($return_module == 'Contacts') { - $sql_req ='UPDATE vtiger_purchaseorder SET contactid=? WHERE purchaseorderid = ?'; - $this->db->pquery($sql_req, array(null, $id)); - } elseif($return_module == 'Documents') { - $sql = 'DELETE FROM vtiger_senotesrel WHERE crmid=? AND notesid=?'; - $this->db->pquery($sql, array($id, $return_id)); - } elseif($return_module == 'Accounts') { - $sql ='UPDATE vtiger_purchaseorder SET accountid=? WHERE purchaseorderid=?'; - $this->db->pquery($sql, array(null, $id)); - } else { - parent::unlinkRelationship($id, $return_module, $return_id); - } - } - - function insertIntoEntityTable($table_name, $module, $fileid = '') { + global $log; + if (empty($return_module) || empty($return_id)) return; + + if ($return_module == 'Vendors') { + $sql_req = 'UPDATE vtiger_purchaseorder SET vendorid = ? WHERE purchaseorderid = ?'; + $this->db->pquery($sql_req, array(null, $id)); + } elseif ($return_module == 'Contacts') { + $sql_req = 'UPDATE vtiger_purchaseorder SET contactid=? WHERE purchaseorderid = ?'; + $this->db->pquery($sql_req, array(null, $id)); + } elseif ($return_module == 'Documents') { + $sql = 'DELETE FROM vtiger_senotesrel WHERE crmid=? AND notesid=?'; + $this->db->pquery($sql, array($id, $return_id)); + } elseif ($return_module == 'Accounts') { + $sql = 'UPDATE vtiger_purchaseorder SET accountid = ? WHERE purchaseorderid = ?'; + $this->db->pquery($sql, array(null, $id)); + } else { + parent::unlinkRelationship($id, $return_module, $return_id); + } + } + + function insertIntoEntityTable($table_name, $module, $fileid = '') { //Ignore relation table insertions while saving of the record if($table_name == 'vtiger_inventoryproductrel') { return; diff --git a/modules/Reports/ReportRun.php b/modules/Reports/ReportRun.php index c8842d54e41f3ba845c882928b4dfe42bd4812fa..1443776781980288f21028b8c0b527b804f70dd0 100644 --- a/modules/Reports/ReportRun.php +++ b/modules/Reports/ReportRun.php @@ -1375,16 +1375,24 @@ class ReportRun extends CRMEntity { } else if ($comparator == 'ny') { if ($fieldInfo['uitype'] == '10' || isReferenceUIType($fieldInfo['uitype'])) $fieldvalue = "(" . $selectedfields[0] . "." . $selectedfields[1] . " IS NOT NULL AND " . $selectedfields[0] . "." . $selectedfields[1] . " != '' AND " . $selectedfields[0] . "." . $selectedfields[1] . " != '0')"; - else + elseif (($fieldInfo['uitype'] == '23' || $fieldInfo['uitype'] == '5' || $fieldInfo['uitype'] == '70' ||$fieldInfo['uitype'] == '55')){ + $fieldvalue = "(" . $selectedfields[0] . "." . $selectedfields[1] . " IS NOT NULL)"; + } + else { $fieldvalue = "(" . $selectedfields[0] . "." . $selectedfields[1] . " IS NOT NULL AND " . $selectedfields[0] . "." . $selectedfields[1] . " != '')"; + } }elseif ($comparator == 'y' || ($comparator == 'e' && (trim($value) == "NULL" || trim($value) == ''))) { if ($selectedfields[0] == 'vtiger_inventoryproductrel') { $selectedfields[0] = 'vtiger_inventoryproductreltmp' . $moduleName; } if ($fieldInfo['uitype'] == '10' || isReferenceUIType($fieldInfo['uitype'])) $fieldvalue = "(" . $selectedfields[0] . "." . $selectedfields[1] . " IS NULL OR " . $selectedfields[0] . "." . $selectedfields[1] . " = '' OR " . $selectedfields[0] . "." . $selectedfields[1] . " = '0')"; - else + elseif (($fieldInfo['uitype'] == '23' || $fieldInfo['uitype'] == '5' || $fieldInfo['uitype'] == '70' ||$fieldInfo['uitype'] == '55')) { + $fieldvalue = "(" . $selectedfields[0] . "." . $selectedfields[1] . " IS NULL)"; + } + else { $fieldvalue = "(" . $selectedfields[0] . "." . $selectedfields[1] . " IS NULL OR " . $selectedfields[0] . "." . $selectedfields[1] . " = '')"; + } } elseif ($selectedfields[0] == 'vtiger_inventoryproductrel') { $selectedfields[0] = $selectedfields[0]. 'tmp'; if ($selectedfields[1] == 'productid') { diff --git a/modules/Vtiger/views/ShowWidget.php b/modules/Vtiger/views/ShowWidget.php index 3c4a8db4f7272542a105d6b877caba663181b144..43f88ad09f62cdbd91e197f101100cc2c3ee7308 100644 --- a/modules/Vtiger/views/ShowWidget.php +++ b/modules/Vtiger/views/ShowWidget.php @@ -47,7 +47,6 @@ class Vtiger_ShowWidget_View extends Vtiger_IndexAjax_View { $widget->set('data', $request->get('data')); } $widget->add(); - $request->set('widgetid', $widget->get('id')); } //Date conversion from user format to database format diff --git a/pkg/vtiger/modules/MailManager/modules/MailManager/models/Message.php b/pkg/vtiger/modules/MailManager/modules/MailManager/models/Message.php index d9062f6f7772dce9600b1aebb7bdb45f7f5a2972..d0103058fa02ff565e96a01ed3e0ba11ae8974c2 100644 --- a/pkg/vtiger/modules/MailManager/modules/MailManager/models/Message.php +++ b/pkg/vtiger/modules/MailManager/modules/MailManager/models/Message.php @@ -276,7 +276,8 @@ class MailManager_Message_Model extends Vtiger_MailRecord { if(file_exists($saved_filename)) $fileContent = @fread(fopen($saved_filename, "r"), filesize($saved_filename)); } if(!empty($atResultRow['cid'])) { - $this->_inline_attachments[] = array('filename'=>$atResultRow['aname'], 'cid'=>$atResultRow['cid']); + // In _inline_attachments passing 'atid' => $atResultRow['attachid']; + $this->_inline_attachments[] = array('filename'=>$atResultRow['aname'], 'cid'=>$atResultRow['cid'], 'atid' => $atResultRow['attachid']); } $filePath = $atResultRow['path'].$atResultRow['attachid'].'_'.sanitizeUploadFileName($atResultRow['aname'], vglobal('upload_badext')); $fileSize = $this->convertFileSize(filesize($filePath)); diff --git a/pkg/vtiger/modules/MailManager/modules/MailManager/views/Mail.php b/pkg/vtiger/modules/MailManager/modules/MailManager/views/Mail.php index 8ab494e8aca1e5414b2a8fefa036dce210b8f334..a59376f13394f163647ae2f85f865a481c68a9f2 100755 --- a/pkg/vtiger/modules/MailManager/modules/MailManager/views/Mail.php +++ b/pkg/vtiger/modules/MailManager/modules/MailManager/views/Mail.php @@ -42,9 +42,13 @@ class MailManager_Mail_View extends MailManager_Abstract_View { $cid = $att['cid']; $attch_name = Vtiger_MailRecord::__mime_decode($att['filename']); $id = $mail->muid(); - $src = "index.php?module=MailManager&view=Index&_operation=mail&_operationarg=attachment_dld&_muid=$id&_atname=".urlencode($attch_name); + // attachment id from $att + $attId = $att['atid']; + // passing in the url : + $src = "index.php?module=MailManager&view=Index&_operation=mail&_operationarg=attachment_dld&_muid=$id&_atid=$attId&_atname=".urlencode($attch_name); $body = preg_replace('/cid:'.$cid.'/', $src, $body); - $inline_cid[$attch_name] = $cid; + // before we used to pass $attach_name, changed to $att['atid'] or $attId + $inline_cid[$attId] = $cid; } } $viewer->assign('INLINE_ATT', $inline_cid); diff --git a/pkg/vtiger/modules/RecycleBin/layouts/v7/modules/RecycleBin/ModuleHeader.tpl b/pkg/vtiger/modules/RecycleBin/layouts/v7/modules/RecycleBin/ModuleHeader.tpl index 4f038efee32011894d4b42207a756078db82a432..273b4a29e329abf073be0560ff2e5185f13c7bcb 100644 --- a/pkg/vtiger/modules/RecycleBin/layouts/v7/modules/RecycleBin/ModuleHeader.tpl +++ b/pkg/vtiger/modules/RecycleBin/layouts/v7/modules/RecycleBin/ModuleHeader.tpl @@ -10,7 +10,7 @@ {strip} <div class="col-sm-12 col-xs-12 module-action-bar clearfix coloredBorderTop"> <div class="module-action-content clearfix"> - <span class="col-lg-7 col-md-7 module-breadcrumb module-breadcrumb-{$REQ.view}"> + <span class="col-lg-7 col-md-7 module-breadcrumb module-breadcrumb-{$REQ->get('view')}"> <span> <h4 title="{vtranslate($MODULE, $MODULE)}" class="module-title pull-left text-uppercase"> {vtranslate($MODULE, $MODULE)} </h4> </span>