<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet>
<!-- 
=========================
OU EDIT VIEW ALERTS 
=========================
-->
<xsl:stylesheet version="3.0" 
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
	xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns:ou="http://omniupdate.com/XSL/Variables"
	xmlns:fn="http://omniupdate.com/XSL/Functions"
	xmlns:ouc="http://omniupdate.com/XSL/Variables"
	exclude-result-prefixes="ou xsl xs fn ouc">
	
	
	<!-- Error -->
	<xsl:template name="error-alert">
		<xsl:param name="message" />
		<xsl:param name="extra-message" />
		<xsl:param name="content" />
		
		<xsl:call-template name="generic-alert">
			<xsl:with-param name="alert-level">ERROR:</xsl:with-param>
			<xsl:with-param name="alert-styles">color: #a94442; background-color: #f2dede; border-color: #ebccd1;</xsl:with-param>
			<xsl:with-param name="content-wrap-styles">border-color: #ebccd1;</xsl:with-param>
			<xsl:with-param name="message" select="$message" />
			<xsl:with-param name="extra-message" select="$extra-message" />
			<xsl:with-param name="content" select="$content" />
		</xsl:call-template>
	</xsl:template>
	
	<!-- Warning -->
	<xsl:template name="warning-alert">
		<xsl:param name="message" />
		<xsl:param name="extra-message" />
		<xsl:param name="content" />
		
		<xsl:call-template name="generic-alert">
			<xsl:with-param name="alert-level">WARNING:</xsl:with-param>
			<xsl:with-param name="alert-styles">color: #8a6d3b; background-color: #fcf8e3; border-color: #faebcc;</xsl:with-param>
			<xsl:with-param name="content-wrap-styles">border-color: #faebcc;</xsl:with-param>
			<xsl:with-param name="message" select="$message" />
			<xsl:with-param name="extra-message" select="$extra-message" />
			<xsl:with-param name="content" select="$content" />
		</xsl:call-template>
	</xsl:template>
	
	<!-- Info -->
	<xsl:template name="info-alert">
		<xsl:param name="message" />
		<xsl:param name="extra-message" />
		<xsl:param name="content" />
		
		<xsl:call-template name="generic-alert">
			<xsl:with-param name="alert-level">INFO:</xsl:with-param>
			<xsl:with-param name="alert-styles">color: #31708f; background-color: #d9edf7; border-color: #bce8f1;</xsl:with-param>
			<xsl:with-param name="content-wrap-styles">border-color: #bce8f1;</xsl:with-param>
			<xsl:with-param name="message" select="$message" />
			<xsl:with-param name="extra-message" select="$extra-message" />
			<xsl:with-param name="content" select="$content" />
		</xsl:call-template>
	</xsl:template>
	
	<!-- Success -->
	<xsl:template name="success-alert">
		<xsl:param name="message" />
		<xsl:param name="extra-message" />
		<xsl:param name="content" />
		
		<xsl:call-template name="generic-alert">
			<xsl:with-param name="alert-level">SUCCESS:</xsl:with-param>
			<xsl:with-param name="alert-styles">color: #3c763d; background-color: #dff0d8; border-color: #d6e9c6;</xsl:with-param>
			<xsl:with-param name="content-wrap-styles">border-color: #d6e9c6;</xsl:with-param>
			<xsl:with-param name="message" select="$message" />
			<xsl:with-param name="extra-message" select="$extra-message" />
			<xsl:with-param name="content" select="$content" />
		</xsl:call-template>
	</xsl:template>
	
	<!-- Generic Alert Template -->
	<xsl:template name="generic-alert">
		<xsl:param name="alert-level" />
		<xsl:param name="alert-styles" />
		<xsl:param name="content-wrap-styles" />
		<xsl:param name="message" />
		<xsl:param name="extra-message" />
		<xsl:param name="content" />
		
		<xsl:variable name="generic-alert-styles"> padding: 15px; border-width: 1px; border-style: solid; border-radius: 4px; margin-bottom: 1rem;
			<xsl:if test="$content"> border-bottom-left-radius: 0; border-bottom-right-radius: 0; margin-bottom: 0; </xsl:if>
		</xsl:variable>
		<xsl:variable name="generic-content-wrap-styles"> padding: 15px; border-width: 2px; border-style: solid; margin-bottom: 1rem; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; border-top-width: 0; </xsl:variable>
		
		<xsl:if test="($ou:action != 'pub')">
			<!-- Output message -->
			<div style="{$alert-styles} {$generic-alert-styles}">
				<xsl:if test="$alert-level != ''">
					<strong><xsl:value-of select="$alert-level" /></strong>
					<xsl:text> </xsl:text>
				</xsl:if>
				<xsl:copy-of select="$message" />
			</div>
			<xsl:if test="ou:textual-content($extra-message) != ''"><xsl:copy-of select="$extra-message" /></xsl:if>

			<!-- [Optional] Wrap content -->
			<xsl:if test="$content">
				<div style="{$content-wrap-styles} {$generic-content-wrap-styles}">
					<xsl:copy-of select="$content" />
				</div>
			</xsl:if>
		</xsl:if>
	</xsl:template>
	
</xsl:stylesheet>
