'WebForm Name', 'targetmodule' => 'Module', 'publicid'=>'Public Id', 'returnurl' => 'Return Url', 'enabled' => 'Status'); var $name = 'Webforms'; public static function getSupportedModulesList() { $webformModules = array('Contacts','Accounts','Leads','Potentials','HelpDesk'); $sourceModule = array(); foreach ($webformModules as $key => $moduleName) { $moduleModel = Vtiger_Module_Model::getInstance($moduleName); $presenceValues = array(0,2); if(in_array($moduleModel->presence, $presenceValues)){ $sourceModule[$moduleName] = vtranslate($moduleName, $moduleName); } } return $sourceModule; } /** * Function to get Create view url * @return Url */ public function getCreateRecordUrl() { return "index.php?module=".$this->getName()."&parent=".$this->getParentName()."&view=Edit"; } /** * Function to get List view url * @return Url */ public function getListViewUrl() { return "index.php?module=".$this->getName()."&parent=".$this->getParentName()."&view=List"; } /** * Function to get list of Blocks * @return list of Block models */ public function getBlocks() { if(empty($this->blocks)) { $this->blocks = Settings_Webforms_Block_Model::getAllForModule($this); } return $this->blocks; } /** * Function to get list of fields * @return list of Field models */ public function getFields() { if (!$this->fields) { $fieldsList = array(); $blocks = $this->getBlocks(); foreach ($blocks as $blockModel) { $fieldsList = array_merge($fieldsList, $blockModel->getFields()); } $this->fields = $fieldsList; } return $this->fields; } /** * Function to get field using field name * @param $fieldName * @return */ public function getField($fieldName) { $fields = $this->getFields(); return $fields[$fieldName]; } /** * Function to delete record * @param $recordModel * @return true */ public function deleteRecord($recordModel) { $recordId = $recordModel->getId(); $db = PearDatabase::getInstance(); $db->pquery("DELETE from vtiger_webforms_field WHERE webformid = ?", array($recordId)); $db->pquery("DELETE from vtiger_webforms WHERE id = ?", array($recordId)); return true; } }