| Server IP : 138.197.176.125 / Your IP : 216.73.217.54 Web Server : Apache/2.4.41 (Ubuntu) System : Linux SuiteCRM-8 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.3.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/freepbxcrm/modules/Settings/Webforms/models/ |
Upload File : |
<?php
/*+***********************************************************************************
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
* ("License"); You may not use this file except in compliance with the License
* The Original Code is: vtiger CRM Open Source
* The Initial Developer of the Original Code is vtiger.
* Portions created by vtiger are Copyright (C) vtiger.
* All Rights Reserved.
*************************************************************************************/
class Settings_Webforms_Block_Model extends Vtiger_Block_Model {
/**
* Function to get fields for this block
* @return <Array> list of Field models list <Settings_Webforms_Field_Model>
*/
public function getFields() {
if(empty($this->fields)) {
$tableName = 'vtiger_webforms';
$tabId = getTabid('Webforms');
$blockName = $this->get('name');
switch ($blockName) {
case 'LBL_WEBFORM_INFORMATION' :
$fieldsList = array(
'name' => array(
'uitype' => '1',
'name' => 'name',
'label' => 'Webform Name',
'typeofdata' => 'V~M',
'diplaytype' => '1',
),
'targetmodule' => array(
'uitype' => '16',
'name' => 'targetmodule',
'label' => 'Module',
'typeofdata' => 'V~O',
'diplaytype' => '1',
),
'returnurl' => array(
'uitype' => '17',
'name' => 'returnurl',
'label' => 'Return Url',
'typeofdata' => 'V~O',
'diplaytype' => '1',
'defaultvalue' => '',
),
'ownerid' => array(
'uitype' => '53',
'name' => 'ownerid',
'label' => 'Assigned To',
'typeofdata' => 'V~M',
'diplaytype' => '1',
),
'posturl' => array(
'uitype' => '1',
'name' => 'posturl',
'label' => 'Post Url',
'typeofdata' => 'V~O',
'diplaytype' => '5',
),
'publicid' => array(
'uitype' => '1',
'name' => 'publicid',
'label' => 'Public Id',
'typeofdata' => 'V~O',
'diplaytype' => '5',
),
'enabled' => array(
'uitype' => '56',
'name' => 'enabled',
'label' => 'Status',
'typeofdata' => 'C~O',
'diplaytype' => '1',
'defaultvalue' => '1',
),
'captcha' => array(
'uitype' => '56',
'name' => 'captcha',
'label' => 'Captcha Enabled',
'typeofdata' => 'C~O',
'diplaytype' => '1',
'defaultvalue' => '0',
),
'description' => array(
'uitype' => '19',
'name' => 'description',
'label' => 'Description',
'typeofdata' => 'V~O',
'defaultvalue' => '',
)
);
break;
case 'LBL_ASSIGN_USERS' :
$fieldsList = array(
'roundrobin' =>array(
'uitype' => '56',
'name' => 'roundrobin',
'label' => 'LBL_ASSIGN_ROUND_ROBIN',
'typeofdata' => 'C~O',
'diplaytype' => '1',
'defaultvalue' => '0',
),
'roundrobin_userid' =>array(
'uitype' => '55',
'name' => 'roundrobin_userid',
'label' => 'LBL_ROUNDROBIN_USERS_LIST',
'typeofdata' => 'V~M',
'diplaytype' => '1',
'defaultvalue' => 'NULL',
)
);
break;
}
foreach ($fieldsList as $fieldName => $fieldDetails) {
$fieldModel = Settings_Webforms_Field_Model::getInstanceByRow($fieldDetails);
$fieldModel->block = $this;
$fieldModel->module = $this->module;
$fieldModelsList[$fieldName] = $fieldModel;
}
$this->fields = $fieldModelsList;
}
return $this->fields;
}
/**
* Function to get list of all blocks for selected module
* @param <Settings_Webforms_Module_Model> $moduleModel
* @return <Array> list of Block models
*/
public static function getAllForModule($moduleModel) {
$blockLabels = array('LBL_WEBFORM_INFORMATION','LBL_ASSIGN_USERS');
foreach ($blockLabels as $blockName) {
$blockModels[$blockName] = Settings_Webforms_Block_Model::getInstanceFromName($blockName, $moduleModel);
}
return $blockModels;
}
/**
* Function to get Instance for Block by using name
* @param <String> $blockName
* @param <Settings_Webforms_Module_Model> $moduleModel
* @return <Settings_Webforms_Block_Model> BlockModel
*/
public static function getInstanceFromName($blockName, $moduleModel) {
$blockModel = new self();
$blockModel->name = $blockName;
$blockModel->blocklabel = $blockName;
$blockModel->module = $moduleModel;
return $blockModel;
}
}