HEX
Server: LiteSpeed
System: Linux d8 4.18.0-553.121.1.lve.el8.x86_64 #1 SMP Thu Apr 30 16:40:41 UTC 2026 x86_64
User: wbwebdes (3015)
PHP: 8.1.31
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/wbwebdes/domains/mailing.wb-cloud.nl/public_html/admin/plugins/Common/PageLink.php
<?php

namespace phpList\plugin\Common;

/**
 * CommonPlugin for phplist.
 *
 * This file is a part of CommonPlugin.
 *
 * @category  phplist
 *
 * @author    Duncan Cameron
 * @copyright 2011-2018 Duncan Cameron
 * @license   http://www.gnu.org/licenses/gpl.html GNU General Public License, Version 3
 */

/**
 * Convenience class to create an HTML link to another page.
 */
class PageLink
{
    /*
     * Private variables
     */
    private $url;
    private $text;
    private $attrs;
    /*
     *    Public methods
     */

    /**
     * Constructor.
     *
     * @param string $url   the page url
     * @param string $text  text for link - this is not automatically html encoded
     * @param array  $attrs additional attributes for the A element
     */
    public function __construct($url, $text, array $attrs = array())
    {
        $this->url = $url;
        $this->text = $text;
        $this->attrs = $attrs;
    }

    /**
     * Generate a link for the given page and query parameters.
     *
     * @return string html <a> element
     */
    public function __toString()
    {
        $string = '';
        $this->attrs['href'] = $this->url;

        foreach ($this->attrs as $k => $v) {
            $string .= sprintf(' %s="%s"', $k, htmlspecialchars($v));
        }

        return sprintf('<a%s>%s</a>', $string, $this->text);
    }
}