當前位置: 首頁>>代碼示例>>PHP>>正文


PHP CRM_Core_Component::getComponentsFromFile方法代碼示例

本文整理匯總了PHP中CRM_Core_Component::getComponentsFromFile方法的典型用法代碼示例。如果您正苦於以下問題:PHP CRM_Core_Component::getComponentsFromFile方法的具體用法?PHP CRM_Core_Component::getComponentsFromFile怎麽用?PHP CRM_Core_Component::getComponentsFromFile使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在CRM_Core_Component的用法示例。


在下文中一共展示了CRM_Core_Component::getComponentsFromFile方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: generateJoomlaConfig

/**
 * @param $version
 */
function generateJoomlaConfig($version)
{
    global $targetDir, $sourceCheckoutDir, $pkgType;
    $smarty = new Smarty();
    $smarty->template_dir = $sourceCheckoutDir . '/xml/templates';
    $smarty->compile_dir = '/tmp/templates_c_u' . posix_geteuid();
    createDir($smarty->compile_dir);
    $smarty->assign('CiviCRMVersion', $version);
    $smarty->assign('creationDate', date('F d Y'));
    $smarty->assign('pkgType', $pkgType);
    $xml = $smarty->fetch('joomla.tpl');
    $output = $targetDir . '/civicrm.xml';
    $fd = fopen($output, "w");
    fwrite($fd, $xml);
    fclose($fd);
    require_once 'CRM/Core/Config.php';
    $config = CRM_Core_Config::singleton(FALSE);
    require_once 'CRM/Core/Permission.php';
    require_once 'CRM/Utils/String.php';
    require_once 'CRM/Core/I18n.php';
    $permissions = CRM_Core_Permission::getCorePermissions(TRUE);
    $crmFolderDir = $sourceCheckoutDir . DIRECTORY_SEPARATOR . 'CRM';
    require_once 'CRM/Core/Component.php';
    $components = CRM_Core_Component::getComponentsFromFile($crmFolderDir);
    foreach ($components as $comp) {
        $perm = $comp->getPermissions(FALSE, TRUE);
        if ($perm) {
            $info = $comp->getInfo();
            foreach ($perm as $p => $attr) {
                $title = $info['translatedName'] . ': ' . array_shift($attr);
                array_unshift($attr, $title);
                $permissions[$p] = $attr;
            }
        }
    }
    $perms_array = array();
    foreach ($permissions as $perm => $attr) {
        // give an empty string as default description
        $attr[] = '';
        //order matters here, but we deal with that later
        $perms_array[CRM_Utils_String::munge(strtolower($perm))] = array('title' => array_shift($attr), 'description' => array_shift($attr));
    }
    $smarty->assign('permissions', $perms_array);
    $output = $targetDir . '/admin/access.xml';
    $xml = $smarty->fetch('access.tpl');
    $fd = fopen($output, "w");
    fwrite($fd, $xml);
    fclose($fd);
}
開發者ID:FundingWorks,項目名稱:civicrm-core,代碼行數:52,代碼來源:joomlaxml.php


注:本文中的CRM_Core_Component::getComponentsFromFile方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。