* @package block
* @link https://www.zentao.net
*/
namespace zin;
/**
* 展示个性化设置页面。
* Print preference page.
*/
function printPreference(array $URSRList)
{
global $lang, $config, $app;
$imageList = array();
$imageList['program-browse'] = 'list';
$imageList['program-project'] = 'list-recent';
$imageList['program-kanban'] = 'kanban';
$imageList['product-index'] = 'panel-recent-browse';
$imageList['product-all'] = 'list';
$imageList['product-dashboard'] = 'panel';
$imageList['product-browse'] = 'list-recent';
$imageList['product-kanban'] = 'kanban';
$imageList['project-browse'] = 'list';
$imageList['project-execution'] = 'list-recent';
$imageList['project-index'] = 'panel-recent-browse';
$imageList['project-kanban'] = 'kanban';
$imageList['execution-all'] = 'list';
$imageList['execution-task'] = 'list-recent';
$imageList['execution-executionkanban'] = 'kanban';
$URSRItems = array();
foreach($URSRList as $URSRKey => $URSRValue)
{
$contentHtml = "
";
$URSRItems[] = array('value' => $URSRKey, 'text' => $URSRValue, 'content' => array('html' => $contentHtml, 'class' => 'flex w-full border p-4 preference-box'));
}
foreach(array('program', 'product', 'project', 'execution') as $objectType)
{
$itemsName = $objectType . 'Items';
$linkListName = $objectType . 'LinkList';
$$itemsName = array();
foreach($lang->my->$linkListName as $value => $label)
{
list($title, $desc) = explode('/', $label);
$contentHtml = "";
${$itemsName}[] = array('value' => $value, 'text' => $title, 'content' => array('html' => $contentHtml, 'class' => 'flex w-full border no-wrap pl-1 py-4 preference-box'));
}
}
$isEn = $app->getClientLang() == 'en';
return div
(
set('class', 'preference-block pt-2 px-6'),
form
(
set::url(helper::createLink('my', 'preference', "showTip=false")),
set::labelWidth($isEn ? '10rem' : '8rem'),
set::actions(array('submit')),
setStyle('gap', '0.8rem'),
formGroup
(
set::label($lang->my->storyConcept),
picker
(
set('menu', array('class' => 'menu picker-menu-list no-nested-items menu-nested flex flex-wrap content-between ursr-menu preference-menu')),
set::name('URSR'),
set::required(true),
set::items($URSRItems),
set::value($config->URSR)
)
),
in_array($config->systemMode, array('ALM', 'PLM')) ? formGroup
(
set::label($lang->my->programLink),
picker
(
set('menu', array('class' => 'preference-menu')),
set::name('programLink'),
set::required(true),
set::items($programItems),
set::value($config->programLink)
)
) : null,
formGroup
(
set::label($lang->my->productLink),
picker
(
set('menu', array('class' => 'preference-menu')),
set::name('productLink'),
set::required(true),
set::items($productItems),
set::value($config->productLink)
)
),
$config->vision != 'or' ? formGroup
(
set::label($lang->my->projectLink),
picker
(
set('menu', array('class' => 'preference-menu')),
set::name('projectLink'),
set::required(true),
set::items($projectItems),
set::value($config->projectLink)
)
) : null,
$config->vision != 'or' ? formGroup
(
set::label($lang->my->executionLink),
picker
(
set('menu', array('class' => 'preference-menu')),
set::name('executionLink'),
set::required(true),
set::items($executionItems),
set::value($config->executionLink)
)
) : null,
formGroup(
set::label($lang->my->docLink),
picker(
set('menu', array('class' => 'normal')),
set::name('docLink'),
set::required(true),
set::items(array(
'doc-lastViewedSpaceHome' => $lang->my->docLinkList['doc-lastViewedSpaceHome'],
'doc-lastViewedSpace' => $lang->my->docLinkList['doc-lastViewedSpace'],
'doc-lastViewedLib' => $lang->my->docLinkList['doc-lastViewedLib']
)),
set::value($config->docLink)
)
)
)
);
}