AnonSec Shell
Server IP : 54.36.91.62  /  Your IP : 216.73.217.112
Web Server : Apache
System : Linux webm013.cluster127.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64
User : coopiak ( 151928)
PHP Version : 8.3.23
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/coopiak/dansnotreville-fr/nice/libraries/regularlabs/src/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/coopiak/dansnotreville-fr/nice/libraries/regularlabs/src/Title.php
<?php
/**
 * @package         Regular Labs Library
 * @version         23.10.17780
 * 
 * @author          Peter van Westen <info@regularlabs.com>
 * @link            https://regularlabs.com
 * @copyright       Copyright © 2023 Regular Labs All Rights Reserved
 * @license         GNU General Public License version 2 or later
 */

namespace RegularLabs\Library;

defined('_JEXEC') or die;

class Title
{
    /**
     * Cleans the string to make it usable as a title
     *
     * @param string $string
     * @param bool   $strip_tags
     * @param bool   $strip_spaces
     *
     * @return string
     */
    public static function clean($string = '', $strip_tags = false, $strip_spaces = true)
    {
        if (empty($string))
        {
            return '';
        }

        // remove comment tags
        $string = RegEx::replace('<\!--.*?-->', '', $string);

        // replace weird whitespace
        $string = str_replace(chr(194) . chr(160), ' ', $string);

        if ($strip_tags)
        {
            // remove svgs
            $string = RegEx::replace('<svg.*?</svg>', '', $string);
            // remove html tags
            $string = RegEx::replace('</?[a-z][^>]*>', '', $string);
            // remove comments tags
            $string = RegEx::replace('<\!--.*?-->', '', $string);
        }

        if ($strip_spaces)
        {
            // Replace html spaces
            $string = str_replace(['&nbsp;', '&#160;'], ' ', $string);

            // Remove duplicate whitespace
            $string = RegEx::replace('[ \n\r\t]+', ' ', $string);
        }

        return trim($string);
    }

    /**
     * Creates an array of different syntaxes of titles to match against a url variable
     *
     * @param array $titles
     *
     * @return array
     */
    public static function getUrlMatches($titles = [])
    {
        $matches = [];

        foreach ($titles as $title)
        {
            $matches[] = $title;
            $matches[] = StringHelper::strtolower($title);
        }

        $matches = array_unique($matches);

        foreach ($matches as $title)
        {
            $matches[] = htmlspecialchars(StringHelper::html_entity_decoder($title));
        }

        $matches = array_unique($matches);

        foreach ($matches as $title)
        {
            $matches[] = urlencode($title);

            if (function_exists('mb_convert_encoding'))
            {
                $matches[] = mb_convert_encoding($title, 'ISO-8859-1', 'UTF-8');
            }

            $matches[] = str_replace(' ', '', $title);
            $matches[] = trim(RegEx::replace('[^a-z0-9]', '', $title));
            $matches[] = trim(RegEx::replace('[^a-z]', '', $title));
        }

        $matches = array_unique($matches);

        foreach ($matches as $i => $title)
        {
            $matches[$i] = trim(str_replace('?', '', $title));
        }

        $matches = array_diff(array_unique($matches), ['', '-']);

        return $matches;
    }
}

Anon7 - 2022
AnonSec Team