下午好,
我想知道如何在项目列表中添加菜单项,以及如何根据我的选择获取项目的 ID。下面我附上一张图片。
项目列表中的菜单项:
在 SuiteCRM 中,您可以以此为例。这将在您的项目 ListView 中创建一个附加菜单项并获取项目 ID。
自定义/模块/项目/视图/view.list.php
<?php
if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
require_once('include/MVC/View/views/view.list.php');
class ProjectViewList extends ViewList
{
/**
* @see ViewList::preDisplay()
*/
public function preDisplay()
{
parent::preDisplay();
$this->lv->actionsMenuExtraItems[] = $this->buildMyMenuItem();
}
/**
* Builds the extra menu link(s)
*
* @return string HTML
*/
protected function buildMyMenuItem()
{
global $app_strings;
return <<<EOHTML
<a class="menuItem" style="width:150px;" href="#" onmouseover='hiliteItem(this,"yes");'
onmouseout='unhiliteItem(this);'
onclick="sugarListView.get_checks();
if(sugarListView.get_checks_count() < 1) {
alert('{$app_strings['LBL_LISTVIEW_NO_SELECTED']}');
return false;
}
document.MassUpdate.action.value='displaypassedids';
document.MassUpdate.submit();">Menu Extra Item</a>
EOHTML;
}
}
自定义/模块/项目/Controller.php
<?php
class ProjectController extends SugarController
{
public function action_displaypassedids()
{
if (!empty($_REQUEST['uid'])) {
$recordIds = explode(',', $_REQUEST['uid']);
foreach ($recordIds as $recordId) {
$bean = SugarModule::get($_REQUEST['module'])->loadBean();
$bean->retrieve($recordId);
echo "Sent Record ID {$bean->id}</br>";
}
}
sugar_die('');
}
}
祝你好运。