Output::getPurified PHP Method

getPurified() public static method

Params: $input (string) - contains the string which will be purified
public static getPurified ( $input )
    public static function getPurified($input)
    {
        // Require HTMLPurifier
        $path = join(DIRECTORY_SEPARATOR, array(ROOT_PATH, 'core', 'includes', 'htmlpurifier', 'HTMLPurifier.standalone.php'));
        require_once $path;
        $purifierConfig = HTMLPurifier_Config::createDefault();
        // Config settings
        $purifierConfig->set('HTML.Doctype', 'XHTML 1.0 Transitional');
        $purifierConfig->set('URI.DisableExternalResources', false);
        $purifierConfig->set('URI.DisableResources', false);
        $purifierConfig->set('HTML.Allowed', 'u,a,p,b,i,small,blockquote,span[style],span[class],p,strong,em,li,ul,ol,div[align],br,img');
        $purifierConfig->set('CSS.AllowedProperties', array('text-align', 'float', 'color', 'background-color', 'background', 'font-size', 'font-family', 'text-decoration', 'font-weight', 'font-style', 'font-size'));
        $purifierConfig->set('HTML.AllowedAttributes', 'target, href, src, height, width, alt, class, *.style');
        $purifierConfig->set('Attr.AllowedFrameTargets', array('_blank', '_self', '_parent', '_top'));
        $purifierConfig->set('HTML.SafeIframe', true);
        $purifierConfig->set('URI.SafeIframeRegexp', '%^(https?:)?//(www\\.youtube(?:-nocookie)?\\.com/embed/|player\\.vimeo\\.com/video/)%');
        $purifier = new HTMLPurifier($purifierConfig);
        // Purify the string
        $purified = $purifier->purify($input);
        return $purified;
    }

Usage Example

Esempio n. 1
0
foreach ($custom_css as $item) {
    echo $item;
}
// Google Analytics module
if (isset($ga_script)) {
    echo $ga_script;
}
// Announcements
if (isset($page)) {
    $page_announcements = $queries->getWhere('announcements_pages', array('page', '=', $page));
    if (count($page_announcements)) {
        if ($user->isLoggedIn()) {
            $group_id = $user->data()->group_id;
        } else {
            $group_id = 0;
        }
        $announcements = array();
        foreach ($page_announcements as $page_announcement) {
            // Permissions
            $permissions = $queries->getWhere('announcements_permissions', array('announcement_id', '=', $page_announcement->announcement_id));
            foreach ($permissions as $permission) {
                if ($permission->view == 1 && $permission->group_id == $group_id) {
                    $announcement = $queries->getWhere('announcements', array('id', '=', $page_announcement->announcement_id));
                    $announcement = $announcement[0];
                    $announcements[] = array('type' => htmlspecialchars($announcement->type), 'content' => Output::getPurified(htmlspecialchars_decode($announcement->content)), 'can_close' => $announcement->can_close, 'id' => $announcement->id);
                }
            }
        }
        $smarty->assign('ANNOUNCEMENTS', $announcements);
    }
}