![]() Server : Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips System : Linux server1.richineiserver.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : fdshops ( 1003) PHP Version : 8.2.21 Disable Function : NONE Directory : /usr/local/cwpsrv/var/services/roundcube/program/include/ |
<?php /** +-----------------------------------------------------------------------+ | This file is part of the Roundcube Webmail client | | | | Copyright (C) The Roundcube Dev Team | | | | Licensed under the GNU General Public License version 3 or | | any later version with exceptions for skins & plugins. | | See the README file for a full license statement. | | | | PURPOSE: | | Render a simple HTML page with the given contents | +-----------------------------------------------------------------------+ | Author: Thomas Bruederli <roundcube@gmail.com> | +-----------------------------------------------------------------------+ */ /** * Class to create an empty HTML page with some default styles * * @package Webmail * @subpackage View */ class rcmail_html_page extends rcmail_output_html { protected $inline_warning; public function write($contents = '') { self::reset(true); // load embed.css from skin folder (if exists) $embed_css = $this->config->get('embed_css_location', '/embed.css'); if ($embed_css = $this->get_skin_file($embed_css, $path, null, true)) { $this->include_css($embed_css); } else { // set default styles for warning blocks inside the attachment part frame $this->add_header(html::tag('style', array('type' => 'text/css'), ".rcmail-inline-message { font-family: sans-serif; border:2px solid #ffdf0e;" . "background:#fef893; padding:0.6em 1em; margin-bottom:0.6em }\n" . ".rcmail-inline-buttons { margin-bottom:0 }" )); } if (empty($contents)) { $contents = '<html><body></body></html>'; } if ($this->inline_warning) { $body_start = 0; if ($body_pos = strpos($contents, '<body')) { $body_start = strpos($contents, '>', $body_pos) + 1; } $contents = substr_replace($contents, $this->inline_warning, $body_start, 0); } parent::write($contents); } /** * Add inline warning with optional button * * @param string $text Warning content * @param string $button_label Button label * @param string $button_url Button URL */ public function register_inline_warning($text, $button_label = null, $button_url = null) { $text = html::span(null, $text); if ($button_label) { $onclick = "location.href = '$button_url'"; $button = html::tag('button', array('onclick' => $onclick), rcube::Q($button_label)); $text .= html::p(array('class' => 'rcmail-inline-buttons'), $button); } $this->inline_warning = html::div(array('class' => 'rcmail-inline-message rcmail-inline-warning'), $text); } }