static function getRightsLinks($arPage)
{
global $arParams, $APPLICATION;
if (!is_array($arPage))
$arPage = array($arPage);
$arLinks = array();
$arParams['ELEMENT_NAME'] = htmlspecialcharsback($arParams['ELEMENT_NAME']);
$arParams['ELEMENT_NAME'] = rawurlencode($arParams['ELEMENT_NAME']);
if (in_array('categories', $arPage))
return array();
if (in_array('article', $arPage) && !in_array('add', $arPage))
{
$arLinks['article'] = array(
'NAME' => GetMessage('PAGE_ARTICLE'),
'TITLE' => GetMessage('PAGE_ARTICLE_TITLE'),
'CURRENT' => in_array('article', $arPage),
'LINK' => CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_POST'],
array(
'wiki_name' => $arParams['ELEMENT_NAME'],
'group_id' => CWikiSocnet::$iSocNetId
)
),
'ID' => 'article',
'TYPE' => 'page',
'IS_RED' => in_array('add', $arPage) ? 'Y' : 'N'
);
}
if (self::IsWriteable() &&
((!in_array('history', $arPage) || in_array('history_diff', $arPage)) &&
(!in_array('add', $arPage) && !in_array('edit', $arPage) && !in_array('delete', $arPage) && !in_array('rename', $arPage))))
{
if(IsModuleInstalled('bizproc'))
{
$arLinks['history'] = array(
'NAME' => GetMessage('PAGE_HISTORY'),
'TITLE' => GetMessage('PAGE_HISTORY_TITLE'),
'CURRENT' => in_array('history', $arPage),
'LINK' => CHTTP::urlAddParams(
CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_HISTORY'],
array(
'wiki_name' => $arParams['ELEMENT_NAME'],
'group_id' => CWikiSocnet::$iSocNetId
)
),
$arParams['IN_COMPLEX'] == 'Y' && $arParams['SEF_MODE'] == 'N' ? array($arParams['OPER_VAR'] => 'history') : array()
),
'ID' => 'history',
'TYPE' => 'page',
'IS_RED' => 'N'
);
}
}
if ($arParams['USE_REVIEW'] == 'Y')
{
$arLinks['discussion'] = array(
'NAME' => GetMessage('PAGE_DISCUSSION'),
'TITLE' => GetMessage('PAGE_DISCUSSION_TITLE'),
'CURRENT' => in_array('discussion', $arPage),
'LINK' => CHTTP::urlAddParams(
CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_DISCUSSION'],
array(
'wiki_name' => $arParams['ELEMENT_NAME'],
'group_id' => CWikiSocnet::$iSocNetId
)
),
$arParams['IN_COMPLEX'] == 'Y' && $arParams['SEF_MODE'] == 'N' ? array($arParams['OPER_VAR'] => 'discussion') : array()
),
'ID' => 'discussion',
'TYPE' => 'page',
'IS_RED' => 'N'
);
}
if (self::IsWriteable() && (!in_array('history', $arPage) && !in_array('history_diff', $arPage)))
{
$arLinks['add'] = array(
'NAME' => GetMessage('PAGE_ADD'),
'TITLE' => GetMessage('PAGE_ADD_TITLE'),
'CURRENT' => in_array('add', $arPage),
'LINK' => CHTTP::urlAddParams(
CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_POST_EDIT'],
array(
'wiki_name' => GetMessage('WIKI_NEW_PAGE_TITLE'),
'group_id' => CWikiSocnet::$iSocNetId
)
),
array($arParams['OPER_VAR'] => 'add')
),
'ID' => 'add',
'TYPE' => 'edit',
'IS_RED' => in_array('add', $arPage) ? 'Y' : 'N'
);
if (!in_array('add', $arPage))
{
$arLinks['edit'] = array(
'NAME' => GetMessage('PAGE_EDIT'),
'TITLE' => GetMessage('PAGE_EDIT_TITLE'),
'CURRENT' => in_array('edit', $arPage),
'LINK' => CHTTP::urlAddParams(
CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_POST_EDIT'],
array(
'wiki_name' => $arParams['ELEMENT_NAME'],
'group_id' => CWikiSocnet::$iSocNetId
)
),
$arParams['IN_COMPLEX'] == 'Y' && $arParams['SEF_MODE'] == 'N' ? array($arParams['OPER_VAR'] => 'edit') : array()
),
'ID' => 'edit',
'TYPE' => 'edit',
'IS_RED' => in_array('add', $arPage) ? 'Y' : 'N'
);
$url = $APPLICATION->GetPopupLink(
array(
'URL' => CHTTP::urlAddParams(
CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_POST_EDIT'],
array(
'wiki_name' => rawurlencode($arParams['ELEMENT_NAME']),
'group_id' => CWikiSocnet::$iSocNetId
)
),
array($arParams['OPER_VAR'] => 'rename')
),
'PARAMS' => array(
'width' => 400,
'height' => 150,
'resizable' => false
)
)
);
$arLinks['rename'] = array(
'NAME' => GetMessage('WIKI_PAGE_RENAME'),
'TITLE' => GetMessage('WIKI_PAGE_RENAME_TITLE'),
'CURRENT' => in_array('rename', $arPage),
'LINK' => 'javascript:'.$url,
'ID' => 'rename',
'TYPE' => 'page',
);
if (self::IsDeleteable())
{
$url = $APPLICATION->GetPopupLink(
array(
'URL' => CHTTP::urlAddParams(
CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_POST_EDIT'],
array(
'wiki_name' => $arParams['ELEMENT_ID'],
'group_id' => CWikiSocnet::$iSocNetId
)
),
array($arParams['OPER_VAR'] => 'delete')
),
'PARAMS' => array(
'width' => 400,
'height' => 150,
'resizable' => false
)
)
);
$arLinks['delete'] = array(
'NAME' => GetMessage('PAGE_DELETE'),
'TITLE' => GetMessage('PAGE_DELETE_TITLE'),
'CURRENT' => in_array('delete', $arPage),
'LINK' => 'javascript:'.$url,
'ID' => 'delete',
'TYPE' => 'edit',
'IS_RED' => 'N'
);
}
}
/** $arLinks['access'] = array(
'NAME' => GetMessage('PAGE_ACCESS'),
'TITLE' => GetMessage('PAGE_ACCESS_TITLE'),
'CURRENT' => in_array('access', $arPage),
'LINK' => CHTTP::urlAddParams(
CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_POST_EDIT'],
array(
'wiki_name' => $arParams['ELEMENT_NAME'],
'group_id' => CWikiSocnet::$iSocNetId
)
),
array($arParams['OPER_VAR'] => 'access')
),
'ID' => 'access',
'TYPE' => 'edit',
'IS_RED' => 'N'
); **/
}
return $arLinks;
}