/include/utils/EditViewUtils.php
PHP | 2061 lines | 1793 code | 142 blank | 126 comment | 592 complexity | 6a1c0d509173ba9849fc0376b0120d56 MD5 | raw file
Possible License(s): LGPL-2.1, GPL-2.0
Large files files are truncated, but you can click here to view the full file
- <?php
- /*********************************************************************************
- * The contents of this file are subject to the SugarCRM Public License Version 1.1.2
- * ("License"); You may not use this file except in compliance with the
- * License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
- * the specific language governing rights and limitations under the License.
- * The Original Code is: SugarCRM Open Source
- * The Initial Developer of the Original Code is SugarCRM, Inc.
- * Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
- * All Rights Reserved.
- * Contributor(s): ______________________________________.
- ********************************************************************************/
- /*********************************************************************************
- * $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/include/utils/EditViewUtils.php,v 1.188 2005/04/29 05:5 * 4:39 rank Exp
- * Description: Includes generic helper functions used throughout the application.
- * Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
- * All Rights Reserved.
- * Contributor(s): ______________________________________..
- ********************************************************************************/
- require_once('include/database/PearDatabase.php');
- require_once('include/ComboUtil.php'); //new
- require_once('include/utils/CommonUtils.php'); //new
- require_once 'modules/PickList/DependentPickListUtils.php';
- /** This function returns the vtiger_field details for a given vtiger_fieldname.
- * Param $uitype - UI type of the vtiger_field
- * Param $fieldname - Form vtiger_field name
- * Param $fieldlabel - Form vtiger_field label name
- * Param $maxlength - maximum length of the vtiger_field
- * Param $col_fields - array contains the vtiger_fieldname and values
- * Param $generatedtype - Field generated type (default is 1)
- * Param $module_name - module name
- * Return type is an array
- */
- function getOutputHtml($uitype, $fieldname, $fieldlabel, $maxlength, $col_fields,$generatedtype,$module_name,$mode='', $typeofdata=null)
- {
- global $log,$app_strings;
- $log->debug("Entering getOutputHtml(".$uitype.",". $fieldname.",". $fieldlabel.",". $maxlength.",". $col_fields.",".$generatedtype.",".$module_name.") method ...");
- global $adb,$log,$default_charset;
- global $theme;
- global $mod_strings;
- global $app_strings;
- global $current_user;
- require('user_privileges/sharing_privileges_'.$current_user->id.'.php');
- require('user_privileges/user_privileges_'.$current_user->id.'.php');
- $theme_path="themes/".$theme."/";
- $image_path=$theme_path."images/";
- $fieldlabel = from_html($fieldlabel);
- $fieldvalue = Array();
- $final_arr = Array();
- $value = $col_fields[$fieldname];
- $custfld = '';
- $ui_type[]= $uitype;
- $editview_fldname[] = $fieldname;
- // vtlib customization: Related type field
- if($uitype == '10') {
- global $adb;
- $fldmod_result = $adb->pquery('SELECT relmodule, status FROM vtiger_fieldmodulerel WHERE fieldid=
- (SELECT fieldid FROM vtiger_field, vtiger_tab WHERE vtiger_field.tabid=vtiger_tab.tabid AND fieldname=? AND name=? and vtiger_field.presence in (0,2))',
- Array($fieldname, $module_name));
- $entityTypes = Array();
- $parent_id = $value;
- for($index = 0; $index < $adb->num_rows($fldmod_result); ++$index) {
- $entityTypes[] = $adb->query_result($fldmod_result, $index, 'relmodule');
- }
- if(!empty($value)) {
- $valueType = getSalesEntityType($value);
- $displayValueArray = getEntityName($valueType, $value);
- if(!empty($displayValueArray)){
- foreach($displayValueArray as $key=>$value){
- $displayValue = $value;
- }
- }
- } else {
- $displayValue='';
- $valueType='';
- $value='';
- }
- $editview_label[] = Array('options'=>$entityTypes, 'selected'=>$valueType, 'displaylabel'=>getTranslatedString($fieldlabel, $module_name));
- $fieldvalue[] = Array('displayvalue'=>$displayValue,'entityid'=>$parent_id);
- } // END
- else if($uitype == 5 || $uitype == 6 || $uitype ==23)
- {
- $log->info("uitype is ".$uitype);
- if($value == '') {
- //modified to fix the issue in trac(http://trac.vtiger.com/cgi-bin/trac.cgi/ticket/1469)
- if ($fieldname != 'birthday' && $generatedtype != 2 && getTabid($module_name) != 14)
- $disp_value = getNewDisplayDate();
- if(($module_name == 'Events' || $module_name == 'Calendar') && $uitype == 6) {
- $curr_time = date('H:i', strtotime('+5 minutes'));
- }
- if(($module_name == 'Events' || $module_name == 'Calendar') && $uitype == 23) {
- $curr_time = date('H:i', strtotime('+10 minutes'));
- }
- //Added to display the Contact - Support End Date as one year future instead of
- //today's date -- 30-11-2005
- if ($fieldname == 'support_end_date' && $_REQUEST['module'] == 'Contacts') {
- $addyear = strtotime("+1 year");
- $disp_value = DateTimeField::convertToUserFormat(date('Y-m-d', $addyear));
- } elseif ($fieldname == 'validtill' && $_REQUEST['module'] == 'Quotes') {
- $disp_value = '';
- }
- } else {
- if($uitype == 6) {
- if ($col_fields['time_start'] != '' && ($module_name == 'Events' || $module_name
- == 'Calendar')) {
- $curr_time = $col_fields['time_start'];
- $value = $value . ' ' . $curr_time;
- } else {
- $curr_time = date('H:i', strtotime('+5 minutes'));
- }
- }
- if(($module_name == 'Events' || $module_name == 'Calendar') && $uitype == 23) {
- if ($col_fields['time_end'] != '') {
- $curr_time = $col_fields['time_end'];
- $value = $value . ' ' . $curr_time;
- } else {
- $curr_time = date('H:i', strtotime('+10 minutes'));
- }
- }
- $disp_value = getValidDisplayDate($value);
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $date_format = parse_calendardate($app_strings['NTC_DATE_FORMAT']);
- if(!empty($curr_time)) {
- if(($module_name == 'Events' || $module_name == 'Calendar') && ($uitype == 23 ||
- $uitype == 6)) {
- $curr_time = DateTimeField::convertToUserTimeZone($curr_time);
- $curr_time = $curr_time->format('H:i');
- }
- }
- $fieldvalue[] = array($disp_value => $curr_time) ;
- if($uitype == 5 || $uitype == 23)
- {
- if($module_name == 'Events' && $uitype == 23)
- {
- $fieldvalue[] = array($date_format=>$current_user->date_format.' '.$app_strings['YEAR_MONTH_DATE']);
- }
- else
- $fieldvalue[] = array($date_format=>$current_user->date_format);
- }
- else
- {
- $fieldvalue[] = array($date_format=>$current_user->date_format.' '.$app_strings['YEAR_MONTH_DATE']);
- }
- }
- elseif($uitype == 16) {
- require_once 'modules/PickList/PickListUtils.php';
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldname = $adb->sql_escape_string($fieldname);
- $pick_query="select $fieldname from vtiger_$fieldname order by sortorderid";
- $params = array();
- $pickListResult = $adb->pquery($pick_query, $params);
- $noofpickrows = $adb->num_rows($pickListResult);
- $options = array();
- $pickcount=0;
- $found = false;
- for($j = 0; $j < $noofpickrows; $j++)
- {
- $value = decode_html($value);
- $pickListValue=decode_html($adb->query_result($pickListResult,$j,strtolower($fieldname)));
- if($value == trim($pickListValue))
- {
- $chk_val = "selected";
- $pickcount++;
- $found = true;
- }
- else
- {
- $chk_val = '';
- }
- $pickListValue = to_html($pickListValue);
- if(isset($_REQUEST['file']) && $_REQUEST['file'] == 'QuickCreate')
- $options[] = array(htmlentities(getTranslatedString($pickListValue),ENT_QUOTES,$default_charset),$pickListValue,$chk_val );
- else
- $options[] = array(getTranslatedString($pickListValue),$pickListValue,$chk_val );
- }
- $fieldvalue [] = $options;
- }
- elseif($uitype == 15 || $uitype == 33){
- require_once 'modules/PickList/PickListUtils.php';
- $roleid=$current_user->roleid;
- $picklistValues = getAssignedPicklistValues($fieldname, $roleid, $adb);
- $valueArr = explode("|##|", $value);
- $pickcount = 0;
- if(!empty($picklistValues)){
- foreach($picklistValues as $order=>$pickListValue){
- if(in_array(trim($pickListValue),array_map("trim", $valueArr))){
- $chk_val = "selected";
- $pickcount++;
- }else{
- $chk_val = '';
- }
- if(isset($_REQUEST['file']) && $_REQUEST['file'] == 'QuickCreate'){
- $options[] = array(htmlentities(getTranslatedString($pickListValue),ENT_QUOTES,$default_charset),$pickListValue,$chk_val );
- }else{
- $options[] = array(getTranslatedString($pickListValue),$pickListValue,$chk_val );
- }
- }
- if($pickcount == 0 && !empty($value)){
- $options[] = array($app_strings['LBL_NOT_ACCESSIBLE'],$value,'selected');
- }
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue [] = $options;
- }
- elseif($uitype == 17)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue [] = $value;
- }
- elseif($uitype == 85) //added for Skype by Minnie
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue [] = $value;
- }elseif($uitype == 14) //added for Time Field
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue [] = $value;
- }elseif($uitype == 19 || $uitype == 20)
- {
- if(isset($_REQUEST['body']))
- {
- $value = ($_REQUEST['body']);
- }
- if($fieldname == 'terms_conditions')//for default Terms & Conditions
- {
- //Assign the value from focus->column_fields (if we create Invoice from SO the SO's terms and conditions will be loaded to Invoice's terms and conditions, etc.,)
- $value = $col_fields['terms_conditions'];
- //if the value is empty then only we should get the default Terms and Conditions
- if($value == '' && $mode != 'edit')
- $value=getTermsandConditions();
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue [] = $value;
- }
- elseif($uitype == 21 || $uitype == 24)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue [] = $value;
- }
- elseif($uitype == 22)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $value;
- }
- elseif($uitype == 52 || $uitype == 77)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- global $current_user;
- if($value != '')
- {
- $assigned_user_id = $value;
- }
- else
- {
- $assigned_user_id = $current_user->id;
- }
- if($uitype == 52)
- {
- $combo_lbl_name = 'assigned_user_id';
- }
- elseif($uitype == 77)
- {
- $combo_lbl_name = 'assigned_user_id1';
- }
- //Control will come here only for Products - Handler and Quotes - Inventory Manager
- if($is_admin==false && $profileGlobalPermission[2] == 1 && ($defaultOrgSharingPermission[getTabid($module_name)] == 3 or $defaultOrgSharingPermission[getTabid($module_name)] == 0))
- {
- $users_combo = get_select_options_array(get_user_array(FALSE, "Active", $assigned_user_id,'private'), $assigned_user_id);
- }
- else
- {
- $users_combo = get_select_options_array(get_user_array(FALSE, "Active", $assigned_user_id), $assigned_user_id);
- }
- $fieldvalue [] = $users_combo;
- }
- elseif($uitype == 53)
- {
- global $noof_group_rows;
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- //Security Checks
- if($fieldname == 'assigned_user_id' && $is_admin==false && $profileGlobalPermission[2] == 1 && ($defaultOrgSharingPermission[getTabid($module_name)] == 3 or $defaultOrgSharingPermission[getTabid($module_name)] == 0))
- {
- $result=get_current_user_access_groups($module_name);
- }
- else
- {
- $result = get_group_options();
- }
- if($result) $nameArray = $adb->fetch_array($result);
- if($value != '' && $value != 0)
- $assigned_user_id = $value;
- else{
- if($value=='0'){
- if (isset($col_fields['assigned_group_info']) && $col_fields['assigned_group_info'] != '') {
- $selected_groupname = $col_fields['assigned_group_info'];
- } else {
- $record = $col_fields["record_id"];
- $module = $col_fields["record_module"];
- $selected_groupname = getGroupName($record, $module);
- }
- }else
- $assigned_user_id = $current_user->id;
- }
- if($fieldname == 'assigned_user_id' && $is_admin==false && $profileGlobalPermission[2] == 1 && ($defaultOrgSharingPermission[getTabid($module_name)] == 3 or $defaultOrgSharingPermission[getTabid($module_name)] == 0))
- {
- $users_combo = get_select_options_array(get_user_array(FALSE, "Active", $assigned_user_id,'private'), $assigned_user_id);
- }
- else
- {
- $users_combo = get_select_options_array(get_user_array(FALSE, "Active", $assigned_user_id), $assigned_user_id);
- }
- if($noof_group_rows!=0)
- {
- if($fieldname == 'assigned_user_id' && $is_admin==false && $profileGlobalPermission[2] == 1 && ($defaultOrgSharingPermission[getTabid($module_name)] == 3 or $defaultOrgSharingPermission[getTabid($module_name)] == 0))
- {
- $groups_combo = get_select_options_array(get_group_array(FALSE, "Active", $assigned_user_id,'private'), $assigned_user_id);
- }
- else
- {
- $groups_combo = get_select_options_array(get_group_array(FALSE, "Active", $assigned_user_id), $assigned_user_id);
- }
- }
- $fieldvalue[]=$users_combo;
- $fieldvalue[] = $groups_combo;
- }
- elseif($uitype == 51 || $uitype == 50 || $uitype == 73)
- {
- if($_REQUEST['convertmode'] != 'update_quote_val' && $_REQUEST['convertmode'] != 'update_so_val')
- {
- if(isset($_REQUEST['account_id']) && $_REQUEST['account_id'] != '')
- $value = $_REQUEST['account_id'];
- }
- if($value != '') {
- $account_name = getAccountName($value);
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[]=$account_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 54)
- {
- $options = array();
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $pick_query="select * from vtiger_groups";
- $pickListResult = $adb->pquery($pick_query, array());
- $noofpickrows = $adb->num_rows($pickListResult);
- for($j = 0; $j < $noofpickrows; $j++)
- {
- $pickListValue=$adb->query_result($pickListResult,$j,"name");
- if($value == $pickListValue)
- {
- $chk_val = "selected";
- }
- else
- {
- $chk_val = '';
- }
- $options[] = array($pickListValue => $chk_val );
- }
- $fieldvalue[] = $options;
- }
- elseif($uitype == 55 || $uitype == 255){
- require_once 'modules/PickList/PickListUtils.php';
- if($uitype==255){
- $fieldpermission = getFieldVisibilityPermission($module_name, $current_user->id,'firstname', 'readwrite');
- }
- if($uitype == 255 && $fieldpermission == '0'){
- $fieldvalue[] = '';
- }else{
- $fieldpermission = getFieldVisibilityPermission($module_name, $current_user->id,'salutationtype', 'readwrite');
- if($fieldpermission == '0'){
- $roleid=$current_user->roleid;
- $picklistValues = getAssignedPicklistValues('salutationtype', $roleid, $adb);
- $pickcount = 0;
- $salt_value = $col_fields["salutationtype"];
- foreach($picklistValues as $order=>$pickListValue){
- if($salt_value == trim($pickListValue)){
- $chk_val = "selected";
- $pickcount++;
- }else{
- $chk_val = '';
- }
- if(isset($_REQUEST['file']) && $_REQUEST['file'] == 'QuickCreate'){
- $options[] = array(htmlentities(getTranslatedString($pickListValue),ENT_QUOTES,$default_charset),$pickListValue,$chk_val );
- }else{
- $options[] = array(getTranslatedString($pickListValue),$pickListValue,$chk_val);
- }
- }
- if($pickcount == 0 && $salt_value != ''){
- $options[] = array($app_strings['LBL_NOT_ACCESSIBLE'],$salt_value,'selected');
- }
- $fieldvalue [] = $options;
- } else {
- $fieldvalue[] = '';
- }
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $value;
- }elseif($uitype == 59){
- if($_REQUEST['module'] == 'HelpDesk')
- {
- if(isset($_REQUEST['product_id']) & $_REQUEST['product_id'] != '')
- $value = $_REQUEST['product_id'];
- }
- elseif(isset($_REQUEST['parent_id']) & $_REQUEST['parent_id'] != '')
- $value = vtlib_purify($_REQUEST['parent_id']);
- if($value != '')
- {
- $product_name = getProductName($value);
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[]=$product_name;
- $fieldvalue[]=$value;
- }
- elseif($uitype == 63)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- if($value=='')
- $value=1;
- $options = array();
- $pick_query="select * from vtiger_duration_minutes order by sortorderid";
- $pickListResult = $adb->pquery($pick_query, array());
- $noofpickrows = $adb->num_rows($pickListResult);
- $salt_value = $col_fields["duration_minutes"];
- for($j = 0; $j < $noofpickrows; $j++)
- {
- $pickListValue=$adb->query_result($pickListResult,$j,"duration_minutes");
- if($salt_value == $pickListValue)
- {
- $chk_val = "selected";
- }
- else
- {
- $chk_val = '';
- }
- $options[$pickListValue] = $chk_val;
- }
- $fieldvalue[]=$value;
- $fieldvalue[]=$options;
- }
- elseif($uitype == 64)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $date_format = parse_calendardate($app_strings['NTC_DATE_FORMAT']);
- $fieldvalue[] = $value;
- }
- elseif($uitype == 156)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $value;
- $fieldvalue[] = $is_admin;
- }
- elseif($uitype == 56)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $value;
- }
- elseif($uitype == 57){
- if($value != ''){
- $displayValueArray = getEntityName('Contacts', $value);
- if (!empty($displayValueArray)) {
- foreach ($displayValueArray as $key => $field_value) {
- $contact_name = $field_value;
- }
- }
- }elseif(isset($_REQUEST['contact_id']) && $_REQUEST['contact_id'] != ''){
- if($_REQUEST['module'] == 'Contacts' && $fieldname = 'contact_id'){
- $contact_name = '';
- }else{
- $value = $_REQUEST['contact_id'];
- $displayValueArray = getEntityName('Contacts', $value);
- if (!empty($displayValueArray)) {
- foreach ($displayValueArray as $key => $field_value) {
- $contact_name = $field_value;
- }
- } else {
- $contact_name='';
- }
- }
- }
- //Checking for contacts duplicate
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $contact_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 58)
- {
- if($value != '')
- {
- $campaign_name = getCampaignName($value);
- }
- elseif(isset($_REQUEST['campaignid']) && $_REQUEST['campaignid'] != '')
- {
- if($_REQUEST['module'] == 'Campaigns' && $fieldname = 'campaignid')
- {
- $campaign_name = '';
- }
- else
- {
- $value = $_REQUEST['campaignid'];
- $campaign_name = getCampaignName($value);
- }
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[]=$campaign_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 61)
- {
- if($value != '')
- {
- $assigned_user_id = $value;
- }
- else
- {
- $assigned_user_id = $current_user->id;
- }
- if($module_name == 'Emails' && $col_fields['record_id'] != '')
- {
- $attach_result = $adb->pquery("select * from vtiger_seattachmentsrel where crmid = ?", array($col_fields['record_id']));
- //to fix the issue in mail attachment on forwarding mails
- if(isset($_REQUEST['forward']) && $_REQUEST['forward'] != '')
- global $att_id_list;
- for($ii=0;$ii < $adb->num_rows($attach_result);$ii++)
- {
- $attachmentid = $adb->query_result($attach_result,$ii,'attachmentsid');
- if($attachmentid != '')
- {
- $attachquery = "select * from vtiger_attachments where attachmentsid=?";
- $attachmentsname = $adb->query_result($adb->pquery($attachquery, array($attachmentid)),0,'name');
- if($attachmentsname != '')
- $fieldvalue[$attachmentid] = '[ '.$attachmentsname.' ]';
- if(isset($_REQUEST['forward']) && $_REQUEST['forward'] != '')
- $att_id_list .= $attachmentid.';';
- }
- }
- }else
- {
- if($col_fields['record_id'] != '')
- {
- $attachmentid=$adb->query_result($adb->pquery("select * from vtiger_seattachmentsrel where crmid = ?", array($col_fields['record_id'])),0,'attachmentsid');
- if($col_fields[$fieldname] == '' && $attachmentid != '')
- {
- $attachquery = "select * from vtiger_attachments where attachmentsid=?";
- $value = $adb->query_result($adb->pquery($attachquery, array($attachmentid)),0,'name');
- }
- }
- if($value!='')
- $filename=' [ '.$value. ' ]';
- if($filename != '')
- $fieldvalue[] = $filename;
- if($value != '')
- $fieldvalue[] = $value;
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- }
- elseif($uitype == 28){
- if($col_fields['record_id'] != '')
- {
- $attachmentid=$adb->query_result($adb->pquery("select * from vtiger_seattachmentsrel where crmid = ?", array($col_fields['record_id'])),0,'attachmentsid');
- if($col_fields[$fieldname] == '' && $attachmentid != '')
- {
- $attachquery = "select * from vtiger_attachments where attachmentsid=?";
- $value = $adb->query_result($adb->pquery($attachquery, array($attachmentid)),0,'name');
- }
- }
- if($value!='' && $module_name != 'Documents')
- $filename=' [ '.$value. ' ]';
- elseif($value != '' && $module_name == 'Documents')
- $filename= $value;
- if($filename != '')
- $fieldvalue[] = $filename;
- if($value != '')
- $fieldvalue[] = $value;
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- }
- elseif($uitype == 69)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- if( $col_fields['record_id'] != "")
- {
- //This query is for Products only
- if($module_name == 'Products')
- {
- $query = 'select vtiger_attachments.path, vtiger_attachments.attachmentsid, vtiger_attachments.name ,vtiger_crmentity.setype from vtiger_products left join vtiger_seattachmentsrel on vtiger_seattachmentsrel.crmid=vtiger_products.productid inner join vtiger_attachments on vtiger_attachments.attachmentsid=vtiger_seattachmentsrel.attachmentsid inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_attachments.attachmentsid where vtiger_crmentity.setype="Products Image" and productid=?';
- }
- else
- {
- $query="select vtiger_attachments.*,vtiger_crmentity.setype from vtiger_attachments inner join vtiger_seattachmentsrel on vtiger_seattachmentsrel.attachmentsid = vtiger_attachments.attachmentsid inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_attachments.attachmentsid where vtiger_crmentity.setype='Contacts Image' and vtiger_seattachmentsrel.crmid=?";
- }
- $result_image = $adb->pquery($query, array($col_fields['record_id']));
- for($image_iter=0;$image_iter < $adb->num_rows($result_image);$image_iter++)
- {
- $image_id_array[] = $adb->query_result($result_image,$image_iter,'attachmentsid');
- //decode_html - added to handle UTF-8 characters in file names
- //urlencode - added to handle special characters like #, %, etc.,
- $image_array[] = urlencode(decode_html($adb->query_result($result_image,$image_iter,'name')));
- $image_orgname_array[] = decode_html($adb->query_result($result_image,$image_iter,'name'));
- $image_path_array[] = $adb->query_result($result_image,$image_iter,'path');
- }
- if(is_array($image_array))
- for($img_itr=0;$img_itr<count($image_array);$img_itr++)
- {
- $fieldvalue[] = array('name'=>$image_array[$img_itr],'path'=>$image_path_array[$img_itr].$image_id_array[$img_itr]."_","orgname"=>$image_orgname_array[$img_itr]);
- }
- else
- $fieldvalue[] = '';
- }
- else
- $fieldvalue[] = '';
- }
- elseif($uitype == 62)
- {
- if(isset($_REQUEST['parent_id']) && $_REQUEST['parent_id'] != '')
- $value = vtlib_purify($_REQUEST['parent_id']);
- if($value != '')
- $parent_module = getSalesEntityType($value);
- if(isset($_REQUEST['account_id']) && $_REQUEST['account_id'] != '')
- {
- $parent_module = "Accounts";
- $value = $_REQUEST['account_id'];
- }
- if($parent_module != 'Contacts')
- {
- if($parent_module == "Leads")
- {
- $displayValueArray = getEntityName($parent_module, $value);
- if (!empty($displayValueArray)) {
- foreach ($displayValueArray as $key => $field_value) {
- $parent_name = $field_value;
- }
- }
- $lead_selected = "selected";
- }
- elseif($parent_module == "Accounts")
- {
- $sql = "select * from vtiger_account where accountid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name = $adb->query_result($result,0,"accountname");
- $account_selected = "selected";
- }
- elseif($parent_module == "Potentials")
- {
- $sql = "select * from vtiger_potential where potentialid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name = $adb->query_result($result,0,"potentialname");
- $potential_selected = "selected";
- }
- elseif($parent_module == "Products")
- {
- $sql = "select * from vtiger_products where productid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name= $adb->query_result($result,0,"productname");
- $product_selected = "selected";
- }
- elseif($parent_module == "PurchaseOrder")
- {
- $sql = "select * from vtiger_purchaseorder where purchaseorderid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name= $adb->query_result($result,0,"subject");
- $porder_selected = "selected";
- }
- elseif($parent_module == "SalesOrder")
- {
- $sql = "select * from vtiger_salesorder where salesorderid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name= $adb->query_result($result,0,"subject");
- $sorder_selected = "selected";
- }
- elseif($parent_module == "Invoice")
- {
- $sql = "select * from vtiger_invoice where invoiceid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name= $adb->query_result($result,0,"subject");
- $invoice_selected = "selected";
- }
- elseif($parent_module == "Quotes")
- {
- $sql = "select * from vtiger_quotes where quoteid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name= $adb->query_result($result,0,"subject");
- $quote_selected = "selected";
- }elseif($parent_module == "HelpDesk")
- {
- $sql = "select * from vtiger_troubletickets where ticketid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name= $adb->query_result($result,0,"title");
- $ticket_selected = "selected";
- }
- }
- $editview_label[] = array($app_strings['COMBO_LEADS'],
- $app_strings['COMBO_ACCOUNTS'],
- $app_strings['COMBO_POTENTIALS'],
- $app_strings['COMBO_PRODUCTS'],
- $app_strings['COMBO_INVOICES'],
- $app_strings['COMBO_PORDER'],
- $app_strings['COMBO_SORDER'],
- $app_strings['COMBO_QUOTES'],
- $app_strings['COMBO_HELPDESK']
- );
- $editview_label[] = array($lead_selected,
- $account_selected,
- $potential_selected,
- $product_selected,
- $invoice_selected,
- $porder_selected,
- $sorder_selected,
- $quote_selected,
- $ticket_selected
- );
- $editview_label[] = array("Leads&action=Popup","Accounts&action=Popup","Potentials&action=Popup","Products&action=Popup","Invoice&action=Popup","PurchaseOrder&action=Popup","SalesOrder&action=Popup","Quotes&action=Popup","HelpDesk&action=Popup");
- $fieldvalue[] =$parent_name;
- $fieldvalue[] =$value;
- }
- elseif($uitype == 66)
- {
- if(!empty($_REQUEST['parent_id'])) {
- $value = vtlib_purify($_REQUEST['parent_id']);
- }
- if(!empty($value)) {
- $parent_module = getSalesEntityType($value);
- if($parent_module != "Contacts") {
- $entity_names = getEntityName($parent_module, $value);
- $parent_name = $entity_names[$value];
- $fieldvalue[] = $parent_name;
- $fieldvalue[] = $value;
- }
- }
- // Check for vtiger_activity type if task orders to be added in select option
- $act_mode = $_REQUEST['activity_mode'];
- $parentModulesList = array(
- 'Leads' => $app_strings['COMBO_LEADS'],
- 'Accounts' => $app_strings['COMBO_ACCOUNTS'],
- 'Potentials' => $app_strings['COMBO_POTENTIALS'],
- 'HelpDesk' => $app_strings['COMBO_HELPDESK'],
- 'Campaigns' => $app_strings['COMBO_CAMPAIGNS']
- );
- if($act_mode == "Task") {
- $parentModulesList['Quotes'] = $app_strings['COMBO_QUOTES'];
- $parentModulesList['PurchaseOrder'] = $app_strings['COMBO_PORDER'];
- $parentModulesList['SalesOrder'] = $app_strings['COMBO_SORDER'];
- $parentModulesList['Invoice'] = $app_strings['COMBO_INVOICES'];
- }
- $parentModuleNames = array_keys($parentModulesList);
- $parentModuleLabels = array_values($parentModulesList);
- $editview_label[0] = $parentModuleLabels;
- $editview_label[1] = array_fill(0, count($parentModulesList), '');
- $selectedModuleIndex = array_search($parent_module, $parentModuleNames);
- if($selectedModuleIndex > -1) {
- $editview_label[1][$selectedModuleIndex] = 'selected';
- }
- $parentModulePopupUrl = array();
- foreach($parentModuleNames as $parentModule) {
- $parentModulePopupUrl[] = $parentModule.'&action=Popup';
- }
- $editview_label[2] = $parentModulePopupUrl;
- }
- //added by rdhital/Raju for better email support
- elseif($uitype == 357)
- {
- $pmodule = $_REQUEST['pmodule'];
- if(empty($pmodule))
- $pmodule = $_REQUEST['par_module'];
- if($pmodule == 'Contacts')
- {
- $contact_selected = 'selected';
- }
- elseif($pmodule == 'Accounts')
- {
- $account_selected = 'selected';
- }
- elseif($pmodule == 'Leads')
- {
- $lead_selected = 'selected';
- }
- elseif($pmodule == 'Vendors')
- {
- $vendor_selected = 'selected';
- }
- elseif($pmodule == 'Users')
- {
- $user_selected = 'selected';
- }
- if(isset($_REQUEST['emailids']) && $_REQUEST['emailids'] != '')
- {
- $parent_id = $_REQUEST['emailids'];
- $parent_name='';
- $myids=explode("|",$parent_id);
- for ($i=0;$i<(count($myids)-1);$i++)
- {
- $realid=explode("@",$myids[$i]);
- $entityid=$realid[0];
- $nemail=count($realid);
- if ($pmodule=='Accounts'){
- require_once('modules/Accounts/Accounts.php');
- $myfocus = new Accounts();
- $myfocus->retrieve_entity_info($entityid,"Accounts");
- $fullname=br2nl($myfocus->column_fields['accountname']);
- $account_selected = 'selected';
- }
- elseif ($pmodule=='Contacts'){
- require_once('modules/Contacts/Contacts.php');
- $myfocus = new Contacts();
- $myfocus->retrieve_entity_info($entityid,"Contacts");
- $fname=br2nl($myfocus->column_fields['firstname']);
- $lname=br2nl($myfocus->column_fields['lastname']);
- $fullname=$lname.' '.$fname;
- $contact_selected = 'selected';
- }
- elseif ($pmodule=='Leads'){
- require_once('modules/Leads/Leads.php');
- $myfocus = new Leads();
- $myfocus->retrieve_entity_info($entityid,"Leads");
- $fname=br2nl($myfocus->column_fields['firstname']);
- $lname=br2nl($myfocus->column_fields['lastname']);
- $fullname=$lname.' '.$fname;
- $lead_selected = 'selected';
- }
- for ($j=1;$j<$nemail;$j++){
- $querystr='select columnname from vtiger_field where fieldid=? and vtiger_field.presence in (0,2)';
- $result=$adb->pquery($querystr, array($realid[$j]));
- $temp=$adb->query_result($result,0,'columnname');
- $temp1=br2nl($myfocus->column_fields[$temp]);
- //Modified to display the entities in red which don't have email id
- if(!empty($temp_parent_name) && strlen($temp_parent_name) > 150)
- {
- $parent_name .= '<br>';
- $temp_parent_name = '';
- }
- if($temp1 != '')
- {
- $parent_name .= $fullname.'<'.$temp1.'>; ';
- $temp_parent_name .= $fullname.'<'.$temp1.'>; ';
- }
- else
- {
- $parent_name .= "<b style='color:red'>".$fullname.'<'.$temp1.'>; '."</b>";
- $temp_parent_name .= "<b style='color:red'>".$fullname.'<'.$temp1.'>; '."</b>";
- }
- }
- }
- }
- else
- {
- if($_REQUEST['record'] != '' && $_REQUEST['record'] != NULL)
- {
- $parent_name='';
- $parent_id='';
- $myemailid= $_REQUEST['record'];
- $mysql = "select crmid from vtiger_seactivityrel where activityid=?";
- $myresult = $adb->pquery($mysql, array($myemailid));
- $mycount=$adb->num_rows($myresult);
- if($mycount >0)
- {
- for ($i=0;$i<$mycount;$i++)
- {
- $mycrmid=$adb->query_result($myresult,$i,'crmid');
- $parent_module = getSalesEntityType($mycrmid);
- if($parent_module == "Leads")
- {
- $sql = "select firstname,lastname,email from vtiger_leaddetails where leadid=?";
- $result = $adb->pquery($sql, array($mycrmid));
- $full_name = getFullNameFromQResult($result,0,"Leads");
- $myemail=$adb->query_result($result,0,"email");
- $parent_id .=$mycrmid.'@0|' ; //make it such that the email adress sent is remebered and only that one is retrived
- $parent_name .= $full_name.'<'.$myemail.'>; ';
- $lead_selected = 'selected';
- }
- elseif($parent_module == "Contacts")
- {
- $sql = "select * from vtiger_contactdetails where contactid=?";
- $result = $adb->pquery($sql, array($mycrmid));
- $full_name = getFullNameFromQResult($result,0,"Contacts");
- $myemail=$adb->query_result($result,0,"email");
- $parent_id .=$mycrmid.'@0|' ;//make it such that the email adress sent is remebered and only that one is retrived
- $parent_name .= $full_name.'<'.$myemail.'>; ';
- $contact_selected = 'selected';
- }
- elseif($parent_module == "Accounts")
- {
- $sql = "select * from vtiger_account where accountid=?";
- $result = $adb->pquery($sql, array($mycrmid));
- $account_name = $adb->query_result($result,0,"accountname");
- $myemail=$adb->query_result($result,0,"email1");
- $parent_id .=$mycrmid.'@0|' ;//make it such that the email adress sent is remebered and only that one is retrived
- $parent_name .= $account_name.'<'.$myemail.'>; ';
- $account_selected = 'selected';
- }elseif($parent_module == "Users")
- {
- $sql = "select user_name,email1 from vtiger_users where id=?";
- $result = $adb->pquery($sql, array($mycrmid));
- $account_name = $adb->query_result($result,0,"user_name");
- $myemail=$adb->query_result($result,0,"email1");
- $parent_id .=$mycrmid.'@0|' ;//make it such that the email adress sent is remebered and only that one is retrived
- $parent_name .= $account_name.'<'.$myemail.'>; ';
- $user_selected = 'selected';
- }
- elseif($parent_module == "Vendors")
- {
- $sql = "select * from vtiger_vendor where vendorid=?";
- $result = $adb->pquery($sql, array($mycrmid));
- $vendor_name = $adb->query_result($result,0,"vendorname");
- $myemail=$adb->query_result($result,0,"email");
- $parent_id .=$mycrmid.'@0|' ;//make it such that the email adress sent is remebered and only that one is retrived
- $parent_name .= $vendor_name.'<'.$myemail.'>; ';
- $vendor_selected = 'selected';
- }
- }
- }
- }
- $custfld .= '<td width="20%" class="dataLabel">'.$app_strings['To'].' </td>';
- $custfld .= '<td width="90%" colspan="3"><input name="parent_id" type="hidden" value="'.$parent_id.'"><textarea readonly name="parent_name" cols="70" rows="2">'.$parent_name.'</textarea> <select name="parent_type" >';
- $custfld .= '<OPTION value="Contacts" selected>'.$app_strings['COMBO_CONTACTS'].'</OPTION>';
- $custfld .= '<OPTION value="Accounts" >'.$app_strings['COMBO_ACCOUNTS'].'</OPTION>';
- $custfld .= '<OPTION value="Leads" >'.$app_strings['COMBO_LEADS'].'</OPTION>';
- $custfld .= '<OPTION value="Vendors" >'.$app_strings['COMBO_VENDORS'].'</OPTION></select><img src="' . vtiger_imageurl('select.gif', $theme) . '" alt="Select" title="Select" LANGUAGE=javascript onclick=\'$log->debug("Exiting getOutputHtml method ..."); return window.open("index.php?module="+ document.EditView.parent_type.value +"&action=Popup&popuptype=set_$log->debug("Exiting getOutputHtml method ..."); return_emails&form=EmailEditView&form_submit=false","test","width=600,height=400,resizable=1,scrollbars=1,top=150,left=200");\' align="absmiddle" style=\'cursor:hand;cursor:pointer\'> <input type="image" src="' . vtiger_imageurl('clear_field.gif', $theme) . '" alt="Clear" title="Clear" LANGUAGE=javascript onClick="this.form.parent_id.value=\'\';this.form.parent_name.value=\'\';$log->debug("Exiting getOutputHtml method ..."); return false;" align="absmiddle" style=\'cursor:hand;cursor:pointer\'></td>';
- $editview_label[] = array(
- 'Contacts'=>$contact_selected,
- 'Accounts'=>$account_selected,
- 'Vendors'=>$vendor_selected,
- 'Leads'=>$lead_selected,
- 'Users'=>$user_selected
- );
- $fieldvalue[] =$parent_name;
- $fieldvalue[] = $parent_id;
- }
- }
- //end of rdhital/Raju
- elseif($uitype == 68)
- {
- if(isset($_REQUEST['parent_id']) && $_REQUEST['parent_id'] != '')
- $value = vtlib_purify($_REQUEST['parent_id']);
- if($value != '')
- {
- $parent_module = getSalesEntityType($value);
- if($parent_module == "Contacts")
- {
- $displayValueArray = getEntityName($parent_module, $value);
- if (!empty($displayValueArray)) {
- foreach ($displayValueArray as $key => $field_value) {
- $parent_name = $field_value;
- }
- }
- $contact_selected = "selected";
- }
- elseif($parent_module == "Accounts")
- {
- $sql = "select * from vtiger_account where accountid=?";
- $result = $adb->pquery($sql, array($value));
- $parent_name = $adb->query_result($result,0,"accountname");
- $account_selected = "selected";
- }
- else
- {
- $parent_name = "";
- $value = "";
- }
- }
- $editview_label[] = array($app_strings['COMBO_CONTACTS'],
- $app_strings['COMBO_ACCOUNTS']
- );
- $editview_label[] = array($contact_selected,
- $account_selected
- );
- $editview_label[] = array("Contacts","Accounts");
- $fieldvalue[] = $parent_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 71 || $uitype == 72) {
- $currencyField = new CurrencyField($value);
- // Some of the currency fields like Unit Price, Total, Sub-total etc of Inventory modules, do not need currency conversion
- if($col_fields['record_id'] != '' && $uitype == 72) {
- if($fieldname == 'unit_price') {
- $rate_symbol = getCurrencySymbolandCRate(getProductBaseCurrency($col_fields['record_id'],$module_name));
- $currencySymbol = $rate_symbol['symbol'];
- } else {
- $currency_info = getInventoryCurrencyInfo($module, $col_fields['record_id']);
- $currencySymbol = $currency_info['currency_symbol'];
- }
- $fieldvalue[] = $currencyField->getDisplayValue(null, true);
- } else {
- $fieldvalue[] = $currencyField->getDisplayValue();
- $currencySymbol = $currencyField->getCurrencySymbol();
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name).': ('.$currencySymbol.')';
- }
- elseif($uitype == 75 || $uitype ==81)
- {
- if($value != '')
- {
- $vendor_name = getVendorName($value);
- }
- elseif(isset($_REQUEST['vendor_id']) && $_REQUEST['vendor_id'] != '')
- {
- $value = $_REQUEST['vendor_id'];
- $vendor_name = getVendorName($value);
- }
- $pop_type = 'specific';
- if($uitype == 81)
- {
- $pop_type = 'specific_vendor_address';
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $vendor_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 76)
- {
- if($value != '')
- {
- $potential_name = getPotentialName($value);
- }
- elseif(isset($_REQUEST['potential_id']) && $_REQUEST['potential_id'] != '')
- {
- $value = $_REQUEST['potental_id'];
- $potential_name = getPotentialName($value);
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $potential_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 78)
- {
- if($value != '')
- {
- $quote_name = getQuoteName($value);
- }
- elseif(isset($_REQUEST['quote_id']) && $_REQUEST['quote_id'] != '')
- {
- $value = $_REQUEST['quote_id'];
- $potential_name = getQuoteName($value);
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $quote_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 79)
- {
- if($value != '')
- {
- $purchaseorder_name = getPoName($value);
- }
- elseif(isset($_REQUEST['purchaseorder_id']) && $_REQUEST['purchaseorder_id'] != '')
- {
- $value = $_REQUEST['purchaseorder_id'];
- $purchaseorder_name = getPoName($value);
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $purchaseorder_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 80)
- {
- if($value != '')
- {
- $salesorder_name = getSoName($value);
- }
- elseif(isset($_REQUEST['salesorder_id']) && $_REQUEST['salesorder_id'] != '')
- {
- $value = $_REQUEST['salesorder_id'];
- $salesorder_name = getSoName($value);
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $salesorder_name;
- $fieldvalue[] = $value;
- }
- elseif($uitype == 30)
- {
- $rem_days = 0;
- $rem_hrs = 0;
- $rem_min = 0;
- if($value!='')
- $SET_REM = "CHECKED";
- $rem_days = floor($col_fields[$fieldname]/(24*60));
- $rem_hrs = floor(($col_fields[$fieldname]-$rem_days*24*60)/60);
- $rem_min = ($col_fields[$fieldname]-$rem_days*24*60)%60;
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $day_options = getReminderSelectOption(0,31,'remdays',$rem_days);
- $hr_options = getReminderSelectOption(0,23,'remhrs',$rem_hrs);
- $min_options = getReminderSelectOption(1,59,'remmin',$rem_min);
- $fieldvalue[] = array(array(0,32,'remdays',getTranslatedString('LBL_DAYS'),$rem_days),array(0,24,'remhrs',getTranslatedString('LBL_HOURS'),$rem_hrs),array(1,60,'remmin',getTranslatedString('LBL_MINUTES').' '.getTranslatedString('LBL_BEFORE_EVENT'),$rem_min));
- $fieldvalue[] = array($SET_REM,getTranslatedString('LBL_YES'),getTranslatedString('LBL_NO'));
- $SET_REM = '';
- }
- elseif($uitype == 115)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $pick_query="select * from vtiger_" . $adb->sql_escape_string($fieldname);
- $pickListResult = $adb->pquery($pick_query, array());
- $noofpickrows = $adb->num_rows($pickListResult);
- //Mikecrowe fix to correctly default for custom pick lists
- $options = array();
- $found = false;
- for($j = 0; $j < $noofpickrows; $j++)
- {
- $pickListValue=$adb->query_result($pickListResult,$j,strtolower($fieldname));
- if($value == $pickListValue)
- {
- $chk_val = "selected";
- $found = true;
- }
- else
- {
- $chk_val = '';
- }
- $options[] = array(getTranslatedString($pickListValue),$pickListValue,$chk_val );
- }
- $fieldvalue [] = $options;
- $fieldvalue [] = $is_admin;
- }
- elseif($uitype == 116 || $uitype == 117)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $pick_query="select * from vtiger_currency_info where currency_status = 'Active' and deleted=0";
- $pickListResult = $adb->pquery($pick_query, array());
- $noofpickrows = $adb->num_rows($pickListResult);
- //Mikecrowe fix to correctly default for custom pick lists
- $options = array();
- $found = false;
- for($j = 0; $j < $noofpickrows; $j++)
- {
- $pickListValue=$adb->query_result($pickListResult,$j,'currency_name');
- $currency_id=$adb->query_result($pickListResult,$j,'id');
- if($value == $currency_id)
- {
- $chk_val = "selected";
- $found = true;
- }
- else
- {
- $chk_val = '';
- }
- $options[$currency_id] = array($pickListValue=>$chk_val );
- }
- $fieldvalue [] = $options;
- $fieldvalue [] = $is_admin;
- }
- elseif($uitype ==98)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[]=$value;
- $fieldvalue[]=getRoleName($value);
- $fieldvalue[]=$is_admin;
- }
- elseif($uitype == 105)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- if( isset( $col_fields['record_id']) && $col_fields['record_id'] != '') {
- $query = "select vtiger_attachments.path, vtiger_attachments.name from vtiger_contactdetails left join vtiger_seattachmentsrel on vtiger_seattachmentsrel.crmid=vtiger_contactdetails.contactid inner join vtiger_attachments on vtiger_attachments.attachmentsid=vtiger_seattachmentsrel.attachmentsid where vtiger_contactdetails.imagename=vtiger_attachments.name and contactid=?";
- $result_image = $adb->pquery($query, array($col_fields['record_id']));
- for($image_iter=0;$image_iter < $adb->num_rows($result_image);$image_iter++)
- {
- $image_array[] = $adb->query_result($result_image,$image_iter,'name');
- $image_path_array[] = $adb->query_result($result_image,$image_iter,'path');
- }
- }
- if(is_array($image_array))
- for($img_itr=0;$img_itr<count($image_array);$img_itr++)
- {
- $fieldvalue[] = array('name'=>$image_array[$img_itr],'path'=>$image_path_array[$img_itr]);
- }
- else
- $fieldvalue[] = '';
- }elseif($uitype == 101)
- {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = getOwnerName($value);
- $fieldvalue[] = $value;
- }
- elseif($uitype == 26){
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $folderid=$col_fields['folderid'];
- $foldername_query = 'select foldername from vtiger_attachmentsfolder where folderid = ?';
- if(strlen($folderid) === 0) {
- $folderid = '0';
- }
- $res = $adb->pquery($foldername_query,array($folderid));
- $foldername = $adb->query_result($res,0,'foldername');
- if($foldername != '' && $folderid != ''){
- $fldr_name[$folderid]=$foldername;
- }
- $sql="select foldername,folderid from vtiger_attachmentsfolder order by foldername";
- $res=$adb->pquery($sql,array());
- for($i=0;$i<$adb->num_rows($res);$i++)
- {
- $fid=$adb->query_result($res,$i,"folderid");
- $fldr_name[$fid]=$adb->query_result($res,$i,"foldername");
- }
- $fieldvalue[] = $fldr_name;
- }
- elseif($uitype == 27){
- if($value == 'E'){
- $external_selected = "selected";
- $filename = $col_fields['filename'];
- }
- else{
- $internal_selected = "selected";
- $filename = $col_fields['filename'];
- }
- $editview_label[] = array(getTranslatedString('Internal'),
- getTranslatedString('External')
- );
- $editview_label[] = array($internal_selected,
- $external_selected
- );
- $editview_label[] = array("I","E");
- $editview_label[] = getTranslatedString($fieldlabel, $module_name);
- $fieldvalue[] = $value;
- $fieldvalue[] = $filename;
- } elseif($uitype == '31') {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $options = array();
- $themeList = get_themes();
- foreach ($themeList as $theme) {
- if($current_user->theme == $theme) {
- $selected = 'selected';
- } else {
- $selected = '';
- }
- $options[] = array(getTranslatedString($theme), $theme, $selected);
- }
- $fieldvalue [] = $options;
- } elseif($uitype == '32') {
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- $options = array();
- $languageList = Vtiger_Language::getAll();
- foreach ($languageList as $prefix => $label) {
- if($current_user->language == $prefix) {
- $selected = 'selected';
- } else {
- $selected = '';
- }
- $options[] = array(getTranslatedString($label), $prefix, $selected);
- }
- $fieldvalue [] = $options;
- }
- else
- {
- //Added condition to set the subject if click Reply All from web mail
- if($_REQUEST['module'] == 'Emails' && $_REQUEST['mg_subject'] != '')
- {
- $value = $_REQUEST['mg_subject'];
- }
- $editview_label[]=getTranslatedString($fieldlabel, $module_name);
- if($fieldname == 'fileversion'){
- if(empty($value)){
- $value = '';
- }
- else{
- $fieldvalue[] = $value;
- }
- }
- else
- $fieldvalue[] = $value;
- }
- // Mike Crowe Mod --------------------------------------------------------force numerics right justified.
- if ( !preg_match("/id=/i",$custfld) )
- $custfld = preg_replace("/<input/iS","<input id='$fieldname' ",$custfld);
- if ( in_array($uitype,array(71,72,7,9,90)) )
- {
- $custfld = preg_replace("/<input/iS","<input align=right ",$custfld);
- }
- $final_arr[]=$ui_type;
- $final_arr[]=$editview_label;
- $final_arr[]=$editview_fldname;
- $final_arr[]=$fieldvalue;
- $type_of_data = explode('~',$typeofdata);
- $final_arr[]=$type_of_data[1];
- $log->debug("Exiting getOutputHtml method ...");
- return $final_arr;
- }
- /** This function returns the vtiger_invoice object populated with the details from sales order object.
- * Param $focus - Invoice object
- * Param $so_focus - Sales order focus
- * Param $soid - sales order id
- * Return type is an object array
- */
- function getConvertSoToInvoice($focus,$so_focus,$soid)
- {
- global $log,$current_user;
- $log->debug("Entering getConvertSoToInvoice(".get_class($focus).",".get_class($so_focus).",".$soid.") method ...");
- $log->info("in getConvertSoToInvoice ".$soid);
- $xyz=array('bill_street','bill_city','bill_code','bill_pobox','bill_country','bill_state','ship_street','ship_city','ship_code','ship_pobox','ship_country','ship_state');
- for($i=0;$i<count($xyz);$i++){
- if (getFieldVisibilityPermission('SalesOrder', $current_user->id,$xyz[$i]) == '0'){
- $so_focus->column_fields[$xyz[$i]] = $so_focus->column_fields[$xyz[$i]];
- }
- else
- $so_focus->column_fields[$xyz[$i]] = '';
- }
- $focus->column_fields['salesorder_id'] = $soid;
- $focus->column_fields['subject'] = $so_focus->column_fields['subject'];
- $…
Large files files are truncated, but you can click here to view the full file