diff --git a/layouts/v7/modules/Vtiger/DetailViewBlockView.tpl b/layouts/v7/modules/Vtiger/DetailViewBlockView.tpl index 5526966b15f0b57a9ee4abfaa5dfbf9744fd0e32..9eb5b34a59297709eaa83f192a1a565ab0e21e04 100644 --- a/layouts/v7/modules/Vtiger/DetailViewBlockView.tpl +++ b/layouts/v7/modules/Vtiger/DetailViewBlockView.tpl @@ -118,7 +118,7 @@ <span class="value" data-field-type="{$FIELD_MODEL->getFieldDataType()}" {if $FIELD_MODEL->get('uitype') eq '19' or $FIELD_MODEL->get('uitype') eq '21'} style="white-space:normal;" {/if}> {include file=vtemplate_path($FIELD_MODEL->getUITypeModel()->getDetailViewTemplateName(),$MODULE_NAME) FIELD_MODEL=$FIELD_MODEL USER_MODEL=$USER_MODEL MODULE=$MODULE_NAME RECORD=$RECORD} </span> - {if $IS_AJAX_ENABLED && $FIELD_MODEL->isEditable() eq 'true' && $FIELD_MODEL->isAjaxEditable() eq 'true'} + {if isset($IS_AJAX_ENABLED) && $IS_AJAX_ENABLED && $FIELD_MODEL->isEditable() eq 'true' && $FIELD_MODEL->isAjaxEditable() eq 'true'} <span class="hide edit pull-left"> {if $fieldDataType eq 'multipicklist'} <input type="hidden" class="fieldBasicData" data-name='{$FIELD_MODEL->get('name')}[]' data-type="{$fieldDataType}" data-displayvalue='{$FIELD_DISPLAY_VALUE}' data-value="{$FIELD_VALUE}" /> diff --git a/layouts/v7/modules/Vtiger/uitypes/Date.tpl b/layouts/v7/modules/Vtiger/uitypes/Date.tpl index 483208c181d3d3fa76a874bd973388dbf3a9fbe4..21240aef4d9abc11d9f62fa1bc7d5fe690e40304 100644 --- a/layouts/v7/modules/Vtiger/uitypes/Date.tpl +++ b/layouts/v7/modules/Vtiger/uitypes/Date.tpl @@ -21,7 +21,7 @@ value="{$FIELD_MODEL->getEditViewDisplayValue($FIELD_MODEL->get('fieldvalue'))}" {if !empty($SPECIAL_VALIDATOR)}data-validator='{Zend_Json::encode($SPECIAL_VALIDATOR)}'{/if} {if isset($MODE) && $MODE eq 'edit' && $FIELD_NAME eq 'due_date'} data-user-changed-time="true" {/if} {if $FIELD_INFO["mandatory"] eq true} data-rule-required="true" {/if} - {if php7_count($FIELD_INFO['validator'])} + {if isset($FIELD_INFO['validator']) && php7_count($FIELD_INFO['validator'])} data-specific-rules='{ZEND_JSON::encode($FIELD_INFO["validator"])}' {/if} data-rule-date="true" /> <span class="input-group-addon"><i class="fa fa-calendar "></i></span> diff --git a/layouts/v7/modules/Vtiger/uitypes/Picklist.tpl b/layouts/v7/modules/Vtiger/uitypes/Picklist.tpl index 4a32603065f8238a958cafe6b5c9865651030979..c9e4356df25a744a088351da4af713f540aa0614 100644 --- a/layouts/v7/modules/Vtiger/uitypes/Picklist.tpl +++ b/layouts/v7/modules/Vtiger/uitypes/Picklist.tpl @@ -11,10 +11,10 @@ {assign var="FIELD_INFO" value=$FIELD_MODEL->getFieldInfo()} {assign var="SPECIAL_VALIDATOR" value=$FIELD_MODEL->getValidator()} {assign var=PICKLIST_VALUES value=$FIELD_INFO['editablepicklistvalues']} -{assign var=PICKLIST_COLORS value=$FIELD_INFO['picklistColors']} +{assign var=PICKLIST_COLORS value=(isset($FIELD_INFO['picklistColors'])) ? $FIELD_INFO['picklistColors'] : ''} <select data-fieldname="{$FIELD_MODEL->getFieldName()}" data-fieldtype="picklist" class="inputElement select2 {if $OCCUPY_COMPLETE_WIDTH} row {/if}" type="picklist" name="{$FIELD_MODEL->getFieldName()}" {if !empty($SPECIAL_VALIDATOR)}data-validator='{Zend_Json::encode($SPECIAL_VALIDATOR)}'{/if} data-selected-value='{$FIELD_MODEL->get('fieldvalue')}' {if $FIELD_INFO["mandatory"] eq true} data-rule-required="true" {/if} - {if php7_count($FIELD_INFO['validator'])} + {if isset($FIELD_INFO['validator']) && php7_count($FIELD_INFO['validator'])} data-specific-rules='{ZEND_JSON::encode($FIELD_INFO["validator"])}' {/if} > diff --git a/pkg/vtiger/modules/Webforms/layouts/v7/modules/Settings/Webforms/EditView.tpl b/pkg/vtiger/modules/Webforms/layouts/v7/modules/Settings/Webforms/EditView.tpl index 70f7bfb5c7b59d604b928aedfb16378e13cc634e..3ae95893309acf1716cde1c330d425c4ce433f79 100644 --- a/pkg/vtiger/modules/Webforms/layouts/v7/modules/Settings/Webforms/EditView.tpl +++ b/pkg/vtiger/modules/Webforms/layouts/v7/modules/Settings/Webforms/EditView.tpl @@ -33,7 +33,7 @@ <input type="hidden" name="record" value="{$RECORD_ID}" /> <input type="hidden" name="defaultCallDuration" value="{$USER_MODEL->get('callduration')}" /> <input type="hidden" name="defaultOtherEventDuration" value="{$USER_MODEL->get('othereventduration')}" /> - {if $IS_RELATION_OPERATION } + {if isset($IS_RELATION_OPERATION) && $IS_RELATION_OPERATION } <input type="hidden" name="sourceModule" value="{$SOURCE_MODULE}" /> <input type="hidden" name="sourceRecord" value="{$SOURCE_RECORD}" /> <input type="hidden" name="relationOperation" value="{$IS_RELATION_OPERATION}" /> diff --git a/pkg/vtiger/modules/Webforms/layouts/v7/modules/Settings/Webforms/uitypes/Picklist.tpl b/pkg/vtiger/modules/Webforms/layouts/v7/modules/Settings/Webforms/uitypes/Picklist.tpl index fe83bf5dd651c2451115146b48c0add2c5479814..5922839ef021699dcce546106e2a08978435e2ce 100644 --- a/pkg/vtiger/modules/Webforms/layouts/v7/modules/Settings/Webforms/uitypes/Picklist.tpl +++ b/pkg/vtiger/modules/Webforms/layouts/v7/modules/Settings/Webforms/uitypes/Picklist.tpl @@ -22,7 +22,7 @@ {if $FIELD_MODEL->isEmptyPicklistOptionAllowed()}<option value="">{vtranslate('LBL_SELECT_OPTION','Vtiger')}</option>{/if} {foreach item=PICKLIST_VALUE key=PICKLIST_NAME from=$PICKLIST_VALUES} {assign var=CLASS_NAME value="picklistColor_{$FIELD_MODEL->getFieldName()}_{$PICKLIST_NAME|replace:' ':'_'}"} - <option value="{Vtiger_Util_Helper::toSafeHTML($PICKLIST_NAME)}" {if $PICKLIST_COLORS[$PICKLIST_NAME]}class="{$CLASS_NAME}"{/if} {if trim(decode_html($FIELD_MODEL->get('fieldvalue'))) eq trim($PICKLIST_NAME)} selected {/if}>{$PICKLIST_VALUE}</option> + <option value="{Vtiger_Util_Helper::toSafeHTML($PICKLIST_NAME)}" {if isset($PICKLIST_COLORS[$PICKLIST_NAME]) && $PICKLIST_COLORS[$PICKLIST_NAME]}class="{$CLASS_NAME}"{/if} {if trim(decode_html($FIELD_MODEL->get('fieldvalue'))) eq trim($PICKLIST_NAME)} selected {/if}>{$PICKLIST_VALUE}</option> {/foreach} </select> {if $FIELD_MODEL->getFieldName() eq 'targetmodule' and $MODE eq 'edit'} diff --git a/pkg/vtiger/modules/Webforms/settings/models/Block.php b/pkg/vtiger/modules/Webforms/settings/models/Block.php index 029a8d74fe335768592398aa2cb7a132de9f0f81..b879979079ed42a0a7e6e5978516d7a14c81aacd 100644 --- a/pkg/vtiger/modules/Webforms/settings/models/Block.php +++ b/pkg/vtiger/modules/Webforms/settings/models/Block.php @@ -7,7 +7,7 @@ * Portions created by vtiger are Copyright (C) vtiger. * All Rights Reserved. *************************************************************************************/ - +#[\AllowDynamicProperties] class Settings_Webforms_Block_Model extends Vtiger_Block_Model { /** diff --git a/pkg/vtiger/modules/Webforms/settings/models/Field.php b/pkg/vtiger/modules/Webforms/settings/models/Field.php index 7037cbf1dac3423f3e38b2bd2d3e3a293a26cc57..37a0e0fd65b45988345e51c9bb10b130ef2296e6 100644 --- a/pkg/vtiger/modules/Webforms/settings/models/Field.php +++ b/pkg/vtiger/modules/Webforms/settings/models/Field.php @@ -57,7 +57,7 @@ class Settings_Webforms_Field_Model extends Vtiger_Field_Model { */ public function get($propertyName) { if($propertyName == 'fieldvalue' && $this->name == 'roundrobin_userid') { - $value = str_replace('"', '"', $this->$propertyName); + $value = isset($this->$propertyName) ? str_replace('"', '"', $this->$propertyName) : ''; return json_decode($value,true); } return parent::get($propertyName); diff --git a/pkg/vtiger/modules/Webforms/settings/models/Module.php b/pkg/vtiger/modules/Webforms/settings/models/Module.php index 5b438d58157b78f59f54ea4b418ecaaa904eb928..d4c5d776f1389c7f202d3f787d77396f3a9136d1 100644 --- a/pkg/vtiger/modules/Webforms/settings/models/Module.php +++ b/pkg/vtiger/modules/Webforms/settings/models/Module.php @@ -17,6 +17,9 @@ class Settings_Webforms_Module_Model extends Settings_Vtiger_Module_Model { var $name = 'Webforms'; var $allowedAllFilesSize = 52428800; //50MB + public $id; + public $fields; + public static function getSupportedModulesList() { $webformModules = array('Contacts', 'Accounts', 'Leads', 'Potentials', 'HelpDesk', 'Vendors'); $sourceModule = array(); diff --git a/pkg/vtiger/modules/Webforms/settings/models/Record.php b/pkg/vtiger/modules/Webforms/settings/models/Record.php index 80c4f8f25b1e98c98a72e6463766fbf1ea588b62..286906ecd3cfa8ec783ad8378c362c807964f675 100644 --- a/pkg/vtiger/modules/Webforms/settings/models/Record.php +++ b/pkg/vtiger/modules/Webforms/settings/models/Record.php @@ -10,6 +10,7 @@ class Settings_Webforms_Record_Model extends Settings_Vtiger_Record_Model { + public $selectedFields; /** * Function to get Id of this record instance * @return <Integer> Id @@ -267,7 +268,7 @@ class Settings_Webforms_Record_Model extends Settings_Vtiger_Record_Model { public function save() { $currentUser = Users_Record_Model::getCurrentUserModel(); $mode = $this->get('mode'); - + $roundrobinUsersList = ''; $db = PearDatabase::getInstance(); $this->setCheckBoxValue('enabled'); $this->setCheckBoxValue('captcha'); diff --git a/pkg/vtiger/modules/Webforms/settings/views/Edit.php b/pkg/vtiger/modules/Webforms/settings/views/Edit.php index bb49a99573b65500a2ccc6f16b3c5557a4feed7c..00a09fa34a5c4916ebf0c578c405401334f2c9ea 100644 --- a/pkg/vtiger/modules/Webforms/settings/views/Edit.php +++ b/pkg/vtiger/modules/Webforms/settings/views/Edit.php @@ -41,7 +41,8 @@ Class Settings_Webforms_Edit_View extends Settings_Vtiger_Index_View { $recordModel = Settings_Webforms_Record_Model::getCleanInstance($qualifiedModuleName); $sourceModule = $request->get('sourceModule'); if (!$sourceModule) { - $sourceModule = reset(array_keys($supportedModules)); + $supportModules = array_keys($supportedModules); + $sourceModule = reset($supportModules); } $recordModel->set('targetmodule',$sourceModule); }