base.mako
653 lines
| 21.0 KiB
| application/x-mako
|
MakoHtmlLexer
r1 | ||||
r548 | ## helpers | |||
<%def name="tag_button(text, tag_type=None)"> | ||||
r4038 | <% | |||
color_scheme = { | ||||
'default': 'border:1px solid #979797;color:#666666;background-color:#f9f9f9', | ||||
'approved': 'border:1px solid #0ac878;color:#0ac878;background-color:#f9f9f9', | ||||
'rejected': 'border:1px solid #e85e4d;color:#e85e4d;background-color:#f9f9f9', | ||||
'under_review': 'border:1px solid #ffc854;color:#ffc854;background-color:#f9f9f9', | ||||
} | ||||
css_style = ';'.join([ | ||||
'display:inline', | ||||
'border-radius:2px', | ||||
'font-size:12px', | ||||
'padding:.2em', | ||||
]) | ||||
%> | ||||
<pre style="${css_style}; ${color_scheme.get(tag_type, color_scheme['default'])}">${text}</pre> | ||||
r548 | </%def> | |||
<%def name="status_text(text, tag_type=None)"> | ||||
<% | ||||
color_scheme = { | ||||
'default': 'color:#666666', | ||||
'approved': 'color:#0ac878', | ||||
'rejected': 'color:#e85e4d', | ||||
'under_review': 'color:#ffc854', | ||||
} | ||||
%> | ||||
<span style="font-weight:bold;font-size:12px;padding:.2em;${color_scheme.get(tag_type, color_scheme['default'])}">${text}</span> | ||||
</%def> | ||||
r4038 | <%def name="gravatar_img(email, size=16)"> | |||
<% | ||||
css_style = ';'.join([ | ||||
'padding: 0', | ||||
'margin: -4px 0', | ||||
'border-radius: 50%', | ||||
'box-sizing: content-box', | ||||
'display: inline', | ||||
'line-height: 1em', | ||||
'min-width: 16px', | ||||
'min-height: 16px', | ||||
]) | ||||
%> | ||||
<img alt="gravatar" style="${css_style}" src="${h.gravatar_url(email, size)}" height="${size}" width="${size}"> | ||||
</%def> | ||||
<%def name="link_css()">\ | ||||
<% | ||||
css_style = ';'.join([ | ||||
'color:#427cc9', | ||||
'text-decoration:none', | ||||
'cursor:pointer' | ||||
]) | ||||
%>\ | ||||
${css_style}\ | ||||
</%def> | ||||
r3170 | ## Constants | |||
<% | ||||
r4217 | text_regular = "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, sans-serif" | |||
text_monospace = "'Menlo', 'Liberation Mono', 'Consolas', 'DejaVu Sans Mono', 'Ubuntu Mono', 'Courier New', 'andale mono', 'lucida console', monospace" | ||||
r3170 | ||||
%> | ||||
r4038 | <%def name="plaintext_footer()" filter="trim"> | |||
${_('This is a notification from RhodeCode.')} ${instance_url} | ||||
r508 | </%def> | |||
r509 | <%def name="body_plaintext()" filter="n,trim"> | |||
## this example is not called itself but overridden in each template | ||||
## the plaintext_footer should be at the bottom of both html and text emails | ||||
${self.plaintext_footer()} | ||||
</%def> | ||||
r1 | ||||
r508 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | |||
<html xmlns="http://www.w3.org/1999/xhtml"> | ||||
<head> | ||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | ||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/> | ||||
<title>${self.subject()}</title> | ||||
<style type="text/css"> | ||||
r4038 | /* Based on The MailChimp Reset INLINE: Yes. */ | |||
#outlook a { | ||||
padding: 0; | ||||
} | ||||
/* Force Outlook to provide a "view in browser" menu link. */ | ||||
body { | ||||
width: 100% !important; | ||||
-webkit-text-size-adjust: 100%; | ||||
-ms-text-size-adjust: 100%; | ||||
margin: 0; | ||||
padding: 0; | ||||
r4217 | font-family: ${text_regular|n}; | |||
r4377 | color: #000000; | |||
r4038 | } | |||
/* Prevent Webkit and Windows Mobile platforms from changing default font sizes.*/ | ||||
.ExternalClass { | ||||
width: 100%; | ||||
} | ||||
/* Force Hotmail to display emails at full width */ | ||||
.ExternalClass, .ExternalClass p, .ExternalClass span, .ExternalClass font, .ExternalClass td, .ExternalClass div { | ||||
line-height: 100%; | ||||
} | ||||
/* Forces Hotmail to display normal line spacing. More on that: http://www.emailonacid.com/forum/viewthread/43/ */ | ||||
#backgroundTable { | ||||
margin: 0; | ||||
padding: 0; | ||||
line-height: 100% !important; | ||||
} | ||||
r508 | /* End reset */ | |||
r1 | ||||
r508 | /* defaults for images*/ | |||
r4038 | img { | |||
outline: none; | ||||
text-decoration: none; | ||||
-ms-interpolation-mode: bicubic; | ||||
} | ||||
a img { | ||||
border: none; | ||||
} | ||||
.image_fix { | ||||
display: block; | ||||
} | ||||
body { | ||||
line-height: 1.2em; | ||||
} | ||||
p { | ||||
margin: 0 0 20px; | ||||
} | ||||
h1, h2, h3, h4, h5, h6 { | ||||
color: #323232 !important; | ||||
} | ||||
a { | ||||
color: #427cc9; | ||||
text-decoration: none; | ||||
outline: none; | ||||
cursor: pointer; | ||||
} | ||||
a:focus { | ||||
outline: none; | ||||
} | ||||
a:hover { | ||||
color: #305b91; | ||||
} | ||||
r508 | ||||
r4038 | h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { | |||
color: #427cc9 !important; | ||||
text-decoration: none !important; | ||||
} | ||||
h1 a:active, h2 a:active, h3 a:active, h4 a:active, h5 a:active, h6 a:active { | ||||
color: #305b91 !important; | ||||
} | ||||
h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited { | ||||
color: #305b91 !important; | ||||
} | ||||
table { | ||||
font-size: 13px; | ||||
border-collapse: collapse; | ||||
mso-table-lspace: 0pt; | ||||
mso-table-rspace: 0pt; | ||||
} | ||||
r4217 | table tr { | |||
display: table-row; | ||||
vertical-align: inherit; | ||||
border-color: inherit; | ||||
border-spacing: 0 3px; | ||||
} | ||||
r4038 | table td { | |||
padding: .65em 1em .65em 0; | ||||
border-collapse: collapse; | ||||
vertical-align: top; | ||||
text-align: left; | ||||
} | ||||
input { | ||||
display: inline; | ||||
border-radius: 2px; | ||||
border: 1px solid #dbd9da; | ||||
padding: .5em; | ||||
} | ||||
input:focus { | ||||
outline: 1px solid #979797 | ||||
} | ||||
r4217 | code { | |||
font-family: ${text_monospace|n}; | ||||
r4377 | white-space: pre-line !important; | |||
color: #000000; | ||||
} | ||||
ul.changes-ul { | ||||
list-style: none; | ||||
list-style-type: none; | ||||
padding: 0; | ||||
margin: 10px 0; | ||||
} | ||||
ul.changes-ul li { | ||||
list-style: none; | ||||
list-style-type: none; | ||||
margin: 2px 0; | ||||
r4217 | } | |||
r508 | @media only screen and (-webkit-min-device-pixel-ratio: 2) { | |||
r4038 | /* Put your iPhone 4g styles in here */ | |||
r508 | } | |||
r1 | ||||
r508 | /* Android targeting */ | |||
@media only screen and (-webkit-device-pixel-ratio:.75){ | ||||
/* Put CSS for low density (ldpi) Android layouts in here */ | ||||
} | ||||
@media only screen and (-webkit-device-pixel-ratio:1){ | ||||
/* Put CSS for medium density (mdpi) Android layouts in here */ | ||||
} | ||||
@media only screen and (-webkit-device-pixel-ratio:1.5){ | ||||
/* Put CSS for high density (hdpi) Android layouts in here */ | ||||
} | ||||
/* end Android targeting */ | ||||
r4038 | /** MARKDOWN styling **/ | |||
div.markdown-block { | ||||
clear: both; | ||||
overflow: hidden; | ||||
margin: 0; | ||||
padding: 3px 5px 3px | ||||
} | ||||
r4377 | div.markdown-block h1, | |||
div.markdown-block h2, | ||||
div.markdown-block h3, | ||||
div.markdown-block h4, | ||||
div.markdown-block h5, | ||||
div.markdown-block h6 { | ||||
r4038 | border-bottom: none !important; | |||
padding: 0 !important; | ||||
overflow: visible !important | ||||
} | ||||
r4377 | div.markdown-block h1, | |||
div.markdown-block h2 { | ||||
r4038 | border-bottom: 1px #e6e5e5 solid !important | |||
} | ||||
div.markdown-block h1 { | ||||
font-size: 32px; | ||||
margin: 15px 0 15px 0 !important; | ||||
padding-bottom: 5px !important | ||||
} | ||||
div.markdown-block h2 { | ||||
font-size: 24px !important; | ||||
margin: 34px 0 10px 0 !important; | ||||
padding-top: 15px !important; | ||||
padding-bottom: 8px !important | ||||
} | ||||
div.markdown-block h3 { | ||||
font-size: 18px !important; | ||||
margin: 30px 0 8px 0 !important; | ||||
padding-bottom: 2px !important | ||||
} | ||||
div.markdown-block h4 { | ||||
font-size: 13px !important; | ||||
margin: 18px 0 3px 0 !important | ||||
} | ||||
div.markdown-block h5 { | ||||
font-size: 12px !important; | ||||
margin: 15px 0 3px 0 !important | ||||
} | ||||
div.markdown-block h6 { | ||||
font-size: 12px; | ||||
color: #777777; | ||||
margin: 15px 0 3px 0 !important | ||||
} | ||||
div.markdown-block hr { | ||||
border: 0; | ||||
color: #e6e5e5; | ||||
background-color: #e6e5e5; | ||||
height: 3px; | ||||
margin-bottom: 13px | ||||
} | ||||
r4377 | div.markdown-block ol, | |||
div.markdown-block ul, | ||||
div.markdown-block p, | ||||
div.markdown-block blockquote, | ||||
div.markdown-block dl, | ||||
div.markdown-block li, | ||||
div.markdown-block table { | ||||
r4038 | margin: 3px 0 13px 0 !important; | |||
color: #424242 !important; | ||||
font-size: 13px !important; | ||||
r4217 | font-family: ${text_regular|n}; | |||
r4038 | font-weight: normal !important; | |||
overflow: visible !important; | ||||
line-height: 140% !important | ||||
} | ||||
div.markdown-block pre { | ||||
margin: 3px 0 13px 0 !important; | ||||
padding: .5em; | ||||
color: #424242 !important; | ||||
font-size: 13px !important; | ||||
overflow: visible !important; | ||||
line-height: 140% !important; | ||||
background-color: #F5F5F5 | ||||
} | ||||
div.markdown-block img { | ||||
border-style: none; | ||||
background-color: #fff; | ||||
max-width: 100% | ||||
} | ||||
div.markdown-block strong { | ||||
font-weight: 600; | ||||
margin: 0 | ||||
} | ||||
div.markdown-block ul.checkbox, div.markdown-block ol.checkbox { | ||||
padding-left: 20px !important; | ||||
margin-top: 0 !important; | ||||
margin-bottom: 18px !important | ||||
} | ||||
div.markdown-block ul, div.markdown-block ol { | ||||
padding-left: 30px !important; | ||||
margin-top: 0 !important; | ||||
margin-bottom: 18px !important | ||||
} | ||||
div.markdown-block ul.checkbox li, div.markdown-block ol.checkbox li { | ||||
list-style: none !important; | ||||
r4482 | margin: 0px !important; | |||
r4038 | padding: 0 !important | |||
} | ||||
div.markdown-block ul li, div.markdown-block ol li { | ||||
list-style: disc !important; | ||||
r4482 | margin: 0px !important; | |||
r4038 | padding: 0 !important | |||
} | ||||
div.markdown-block ol li { | ||||
list-style: decimal !important | ||||
} | ||||
div.markdown-block #message { | ||||
-webkit-border-radius: 2px; | ||||
-moz-border-radius: 2px; | ||||
border-radius: 2px; | ||||
border: 1px solid #dbd9da; | ||||
display: block; | ||||
width: 100%; | ||||
height: 60px; | ||||
margin: 6px 0 | ||||
} | ||||
div.markdown-block button, div.markdown-block #ws { | ||||
font-size: 13px; | ||||
padding: 4px 6px; | ||||
-webkit-border-radius: 2px; | ||||
-moz-border-radius: 2px; | ||||
border-radius: 2px; | ||||
border: 1px solid #dbd9da; | ||||
background-color: #eeeeee | ||||
} | ||||
r4533 | div.markdown-block p { | |||
margin-top: 0; | ||||
margin-bottom: 16px; | ||||
padding: 0; | ||||
line-height: unset; | ||||
} | ||||
r4377 | div.markdown-block code, | |||
div.markdown-block pre, | ||||
div.markdown-block #ws, | ||||
div.markdown-block #message { | ||||
r4217 | font-family: ${text_monospace|n}; | |||
r4038 | font-size: 11px; | |||
-webkit-border-radius: 2px; | ||||
-moz-border-radius: 2px; | ||||
border-radius: 2px; | ||||
r5585 | color: #7E7F7F | |||
} | ||||
div.markdown-block code, | ||||
div.markdown-block pre { | ||||
background-color: transparent; | ||||
} | ||||
div.markdown-block #ws, | ||||
div.markdown-block #message { | ||||
r4377 | background-color: #FFFFFF; | |||
r4038 | } | |||
div.markdown-block code { | ||||
r4377 | border: 1px solid #7E7F7F; | |||
r4038 | margin: 0 2px; | |||
padding: 0 5px | ||||
} | ||||
div.markdown-block pre { | ||||
r4377 | border: 1px solid #7E7F7F; | |||
r4038 | overflow: auto; | |||
padding: .5em; | ||||
r4377 | background-color: #FFFFFF; | |||
r4038 | } | |||
div.markdown-block pre > code { | ||||
border: 0; | ||||
margin: 0; | ||||
padding: 0 | ||||
} | ||||
div.rst-block { | ||||
clear: both; | ||||
overflow: hidden; | ||||
margin: 0; | ||||
padding: 3px 5px 3px | ||||
} | ||||
div.rst-block h2 { | ||||
font-weight: normal | ||||
} | ||||
r4377 | div.rst-block h1, | |||
div.rst-block h2, | ||||
div.rst-block h3, | ||||
div.rst-block h4, | ||||
div.rst-block h5, | ||||
div.rst-block h6 { | ||||
r4038 | border-bottom: 0 !important; | |||
margin: 0 !important; | ||||
padding: 0 !important; | ||||
line-height: 1.5em !important | ||||
} | ||||
div.rst-block h1:first-child { | ||||
padding-top: .25em !important | ||||
} | ||||
div.rst-block h2, div.rst-block h3 { | ||||
margin: 1em 0 !important | ||||
} | ||||
div.rst-block h1, div.rst-block h2 { | ||||
border-bottom: 1px #e6e5e5 solid !important | ||||
} | ||||
div.rst-block h2 { | ||||
margin-top: 1.5em !important; | ||||
padding-top: .5em !important | ||||
} | ||||
div.rst-block p { | ||||
color: black !important; | ||||
margin: 1em 0 !important; | ||||
line-height: 1.5em !important | ||||
} | ||||
div.rst-block ul { | ||||
list-style: disc !important; | ||||
margin: 1em 0 1em 2em !important; | ||||
clear: both | ||||
} | ||||
div.rst-block ol { | ||||
list-style: decimal; | ||||
margin: 1em 0 1em 2em !important | ||||
} | ||||
div.rst-block pre, div.rst-block code { | ||||
font: 12px "Bitstream Vera Sans Mono", "Courier", monospace | ||||
} | ||||
div.rst-block code { | ||||
font-size: 12px !important; | ||||
background-color: ghostWhite !important; | ||||
color: #444 !important; | ||||
padding: 0 .2em !important; | ||||
r4377 | border: 1px solid #7E7F7F !important | |||
r4038 | } | |||
div.rst-block pre code { | ||||
padding: 0 !important; | ||||
font-size: 12px !important; | ||||
background-color: #eee !important; | ||||
border: none !important | ||||
} | ||||
div.rst-block pre { | ||||
margin: 1em 0; | ||||
padding: 15px; | ||||
r4377 | border: 1px solid #7E7F7F; | |||
r4038 | -webkit-border-radius: 2px; | |||
-moz-border-radius: 2px; | ||||
border-radius: 2px; | ||||
overflow: auto; | ||||
font-size: 12px; | ||||
color: #444; | ||||
r4377 | background-color: #FFFFFF; | |||
} | ||||
.clear-both { | ||||
clear:both; | ||||
r4038 | } | |||
r4275 | /*elasticmatch is custom rhodecode tag*/ | |||
.codehilite .c-ElasticMatch { | ||||
r4377 | background-color: #faffa6; | |||
padding: 0.2em; | ||||
r4275 | } | |||
.codehilite .c-ElasticMatch { background-color: #faffa6; padding: 0.2em;} | ||||
.codehilite .hll { background-color: #ffffcc } | ||||
.codehilite .c { color: #408080; font-style: italic } /* Comment */ | ||||
.codehilite .err { border: none } /* Error */ | ||||
.codehilite .k { color: #008000; font-weight: bold } /* Keyword */ | ||||
.codehilite .o { color: #666666 } /* Operator */ | ||||
.codehilite .ch { color: #408080; font-style: italic } /* Comment.Hashbang */ | ||||
.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */ | ||||
.codehilite .cp { color: #BC7A00 } /* Comment.Preproc */ | ||||
.codehilite .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */ | ||||
.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */ | ||||
.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */ | ||||
.codehilite .gd { color: #A00000 } /* Generic.Deleted */ | ||||
.codehilite .ge { font-style: italic } /* Generic.Emph */ | ||||
.codehilite .gr { color: #FF0000 } /* Generic.Error */ | ||||
.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */ | ||||
.codehilite .gi { color: #00A000 } /* Generic.Inserted */ | ||||
.codehilite .go { color: #888888 } /* Generic.Output */ | ||||
.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */ | ||||
.codehilite .gs { font-weight: bold } /* Generic.Strong */ | ||||
.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ | ||||
.codehilite .gt { color: #0044DD } /* Generic.Traceback */ | ||||
.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */ | ||||
.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */ | ||||
.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */ | ||||
.codehilite .kp { color: #008000 } /* Keyword.Pseudo */ | ||||
.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */ | ||||
.codehilite .kt { color: #B00040 } /* Keyword.Type */ | ||||
.codehilite .m { color: #666666 } /* Literal.Number */ | ||||
.codehilite .s { color: #BA2121 } /* Literal.String */ | ||||
.codehilite .na { color: #7D9029 } /* Name.Attribute */ | ||||
.codehilite .nb { color: #008000 } /* Name.Builtin */ | ||||
.codehilite .nc { color: #0000FF; font-weight: bold } /* Name.Class */ | ||||
.codehilite .no { color: #880000 } /* Name.Constant */ | ||||
.codehilite .nd { color: #AA22FF } /* Name.Decorator */ | ||||
.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */ | ||||
.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */ | ||||
.codehilite .nf { color: #0000FF } /* Name.Function */ | ||||
.codehilite .nl { color: #A0A000 } /* Name.Label */ | ||||
.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */ | ||||
.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */ | ||||
.codehilite .nv { color: #19177C } /* Name.Variable */ | ||||
.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */ | ||||
.codehilite .w { color: #bbbbbb } /* Text.Whitespace */ | ||||
.codehilite .mb { color: #666666 } /* Literal.Number.Bin */ | ||||
.codehilite .mf { color: #666666 } /* Literal.Number.Float */ | ||||
.codehilite .mh { color: #666666 } /* Literal.Number.Hex */ | ||||
.codehilite .mi { color: #666666 } /* Literal.Number.Integer */ | ||||
.codehilite .mo { color: #666666 } /* Literal.Number.Oct */ | ||||
.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */ | ||||
.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */ | ||||
.codehilite .sc { color: #BA2121 } /* Literal.String.Char */ | ||||
.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */ | ||||
.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */ | ||||
.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */ | ||||
.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */ | ||||
.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */ | ||||
.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */ | ||||
.codehilite .sx { color: #008000 } /* Literal.String.Other */ | ||||
.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */ | ||||
.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */ | ||||
.codehilite .ss { color: #19177C } /* Literal.String.Symbol */ | ||||
.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */ | ||||
.codehilite .fm { color: #0000FF } /* Name.Function.Magic */ | ||||
.codehilite .vc { color: #19177C } /* Name.Variable.Class */ | ||||
.codehilite .vg { color: #19177C } /* Name.Variable.Global */ | ||||
.codehilite .vi { color: #19177C } /* Name.Variable.Instance */ | ||||
.codehilite .vm { color: #19177C } /* Name.Variable.Magic */ | ||||
.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */ | ||||
r4038 | ||||
r508 | </style> | |||
</head> | ||||
<body> | ||||
r4217 | ||||
<div> | ||||
r508 | <!-- Wrapper/Container Table: Use a wrapper table to control the width and the background color consistently of your email. Use this approach instead of setting attributes on the body tag. --> | |||
r4217 | <table cellpadding="0" cellspacing="0" border="0" id="backgroundTable" align="left" style="margin:1%;width:97%;padding:0;font-family:${text_regular|n};font-weight:100;border:1px solid #dbd9da"> | |||
r508 | <tr> | |||
r4038 | <td valign="top" style="padding:0;"> | |||
r508 | <table cellpadding="0" cellspacing="0" border="0" align="left" width="100%"> | |||
r4038 | <tr> | |||
<td style="width:100%;padding:10px 15px;background-color:#202020" valign="top"> | ||||
<a style="color:#eeeeee;text-decoration:none;" href="${instance_url}"> | ||||
${_('RhodeCode')} | ||||
% if rhodecode_instance_name: | ||||
- ${rhodecode_instance_name} | ||||
% endif | ||||
</a> | ||||
</td> | ||||
</tr> | ||||
r4377 | <tr style="background-color: #fff"> | |||
r4038 | <td style="padding:15px;" valign="top">${self.body()}</td> | |||
</tr> | ||||
r508 | </table> | |||
</td> | ||||
</tr> | ||||
</table> | ||||
<!-- End of wrapper table --> | ||||
r4217 | </div> | |||
r3170 | ||||
r4217 | <div style="width:100%; clear: both; height: 1px"> </div> | |||
<div style="margin-left:1%;font-weight:100;font-size:11px;color:#666666;text-decoration:none;font-family:${text_monospace};"> | ||||
r4038 | ${_('This is a notification from RhodeCode.')} | |||
r4217 | <a style="font-weight:100;font-size:11px;color:#666666;text-decoration:none;font-family:${text_monospace};" href="${instance_url}"> | |||
r4038 | ${instance_url} | |||
</a> | ||||
</div> | ||||
r508 | </body> | |||
</html> | ||||