403Webshell
Server IP : 138.197.176.125  /  Your IP : 216.73.216.41
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/vt7multiuserassignment.crmtiger.es/modules/CTMultiUserAssignment/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/vt7multiuserassignment.crmtiger.es/modules/CTMultiUserAssignment/CTMultiUserAssignment.php
<?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.
 ************************************************************************************/

include_once 'modules/Vtiger/CRMEntity.php';

class CTMultiUserAssignment extends Vtiger_CRMEntity {
	var $table_name = 'vtiger_ctmultiuserassignment';
	var $table_index= 'ctmultiuserassignmentid';

	/**
	 * Mandatory table for supporting custom fields.
	 */
	var $customFieldTable = Array('vtiger_ctmultiuserassignmentcf', 'ctmultiuserassignmentid');

	/**
	 * Mandatory for Saving, Include tables related to this module.
	 */
	var $tab_name = Array('vtiger_crmentity', 'vtiger_ctmultiuserassignment', 'vtiger_ctmultiuserassignmentcf');

	/**
	 * Mandatory for Saving, Include tablename and tablekey columnname here.
	 */
	var $tab_name_index = Array(
		'vtiger_crmentity' => 'crmid',
		'vtiger_ctmultiuserassignment' => 'ctmultiuserassignmentid',
		'vtiger_ctmultiuserassignmentcf'=>'ctmultiuserassignmentid');

	/**
	 * Mandatory for Listing (Related listview)
	 */
	var $list_fields = Array (
		/* Format: Field Label => Array(tablename, columnname) */
		// tablename should not have prefix 'vtiger_'
		'CTMultiUserAssignment No' => Array('ctmultiuserassignment', 'ctmultiuserassignment_no'),
		'Assigned To' => Array('crmentity','smownerid')
	);
	var $list_fields_name = Array (
		/* Format: Field Label => fieldname */
		'CTMultiUserAssignment No' => 'ctmultiuserassignment_no',
		'Assigned To' => 'assigned_user_id',
	);

	// Make the field link to detail view
	var $list_link_field = 'ctmultiuserassignment_no';

	// For Popup listview and UI type support
	var $search_fields = Array(
		/* Format: Field Label => Array(tablename, columnname) */
		// tablename should not have prefix 'vtiger_'
		'CTMultiUserAssignment No' => Array('ctmultiuserassignment', 'ctmultiuserassignment_no'),
		'Assigned To' => Array('vtiger_crmentity','assigned_user_id'),
	);
	var $search_fields_name = Array (
		/* Format: Field Label => fieldname */
		'CTMultiUserAssignment No' => 'ctmultiuserassignment_no',
		'Assigned To' => 'assigned_user_id',
	);

	// For Popup window record selection
	var $popup_fields = Array ('ctmultiuserassignment_no');

	// For Alphabetical search
	var $def_basicsearch_col = 'ctmultiuserassignment_no';

	// Column value to use on detail view record text display
	var $def_detailview_recname = 'ctmultiuserassignment_no';

	// Used when enabling/disabling the mandatory fields for the module.
	// Refers to vtiger_field.fieldname values.
	var $mandatory_fields = Array('ctmultiuserassignment_no','assigned_user_id');

	var $default_order_by = 'ctmultiuserassignment_no';
	var $default_sort_order='ASC';

	/**
	* Invoked when special actions are performed on the module.
	* @param String Module name
	* @param String Event Type
	*/
	function vtlib_handler($moduleName, $eventType) {
		global $adb;
 		if($eventType == 'module.postinstall') {
			// TODO Handle actions after this module is installed.
			$this->updateSettings();

		} else if($eventType == 'module.disabled') {
			// TODO Handle actions before this module is being uninstalled.
		} else if($eventType == 'module.preuninstall') {
			// TODO Handle actions when this module is about to be deleted.
		} else if($eventType == 'module.preupdate') {
			// TODO Handle actions before this module is updated.
		} else if($eventType == 'module.postupdate') {
			// TODO Handle actions after this module is updated.
		}
 	}

 	private function updateSettings() {
        $adb = PearDatabase::getInstance();

        $adb->pquery("CREATE TABLE IF NOT EXISTS ctmulti_user_assignment (
						  id int(11) NOT NULL AUTO_INCREMENT,
						  fieldlabel varchar(100) DEFAULT NULL,
						  sourcemodule varchar(100) DEFAULT NULL,
						  fieldname varchar(100) DEFAULT NULL,
						  teammmebers varchar(100) DEFAULT NULL,
						  defaultgroup varchar(100) DEFAULT NULL,
						  active varchar(100) DEFAULT NULL,
						  PRIMARY KEY (id)
						) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1;");

        $adb->pquery("CREATE TABLE IF NOT EXISTS ctmulti_user_assignment_record (
						  recordid int(11) DEFAULT NULL,
						  userid varchar(100) DEFAULT NULL
						) ENGINE=InnoDB DEFAULT CHARSET=latin1;");

        $adb->pquery("CREATE TABLE IF NOT EXISTS `ctmulti_user_assignment_groupname` (
						  `groupname` varchar(100) NOT NULL
						) ENGINE=InnoDB DEFAULT CHARSET=latin1;");
		
		$getentity =$adb->pquery("SELECT * FROM vtiger_ws_entity WHERE name = ?", array('CTMultiUserAssignment'));
		if($adb->num_rows($getentity) != 1){
			$seq = $adb->pquery("SELECT * FROM vtiger_ws_entity_seq", array());
			$id = $adb->query_result($seq, 0, 'id');
			$seq = $id + 1;
			$adb->pquery("INSERT INTO vtiger_ws_entity (id, name, handler_path, handler_class, ismodule) VALUES ($seq, 'CTMultiUserAssignment', 'include/Webservices/VtigerModuleOperation.php', 'VtigerModuleOperation', '1')");
		}
		
        $linkto = 'index.php?module=CTMultiUserAssignment&parent=Settings&view=SettingsView';
        $result1=$adb->pquery('SELECT 1 FROM vtiger_settings_field WHERE name=?',array('Multi User Assignment'));
        if($adb->num_rows($result1)){
            $adb->pquery('UPDATE vtiger_settings_field SET name=?, iconpath=?, description=?, linkto=? WHERE name=?',array('Multi User Assignment', '', '', $linkto, 'Multi User Assignment'));
        }else{
            $fieldid = $adb->getUniqueID('vtiger_settings_field');
            $blockid = getSettingsBlockId('LBL_OTHER_SETTINGS');
            $seq_res = $adb->pquery("SELECT max(sequence) AS max_seq FROM vtiger_settings_field WHERE blockid = ?", array($blockid));
            if ($adb->num_rows($seq_res) > 0) {
                    $cur_seq = $adb->query_result($seq_res, 0, 'max_seq');
                    if ($cur_seq != null)   $seq = $cur_seq + 1;
            }
            $adb->pquery('INSERT INTO vtiger_settings_field(fieldid, blockid, name, iconpath, description, linkto, sequence) VALUES (?,?,?,?,?,?,?)', array($fieldid, $blockid, 'Multi User Assignment' , '', '', $linkto, $seq));
        }

        $handlerQuery = $adb->pquery("SELECT * FROM vtiger_eventhandlers WHERE handler_class = 'CTMultiUserAssignmentHandler'");
        $rows = $adb->num_rows($handlerQuery);
        if($rows == 0){
	        $handlerId = $adb->getUniqueId('vtiger_eventhandlers');
			$adb->pquery("insert into vtiger_eventhandlers
					(eventhandler_id, event_name, handler_path, handler_class, cond, is_active, dependent_on)
					values (?,?,?,?,?,?,?)", array($handlerId, 'vtiger.entity.aftersave', 'modules/CTMultiUserAssignment/CTMultiUserAssignmentHandler.php', 'CTMultiUserAssignmentHandler', '', '1', '[]'));
        }

        $widgetType = 'HEADERSCRIPT';
        $widgetName = 'CTMultiUserAssignment';
        $link = 'layouts/v7/modules/CTMultiUserAssignment/resources/CTMultiUserAssignment.js';
        $module = Vtiger_Module::getInstance('CTMultiUserAssignment');
        if($module) {
            $module->addLink($widgetType, $widgetName, $link);
        }
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit