Update of CSS from Máirín Duffy including some per-object images

This commit is contained in:
Rob Crittenden 2008-02-19 16:43:32 -05:00
parent 65960a2e58
commit c47248c5d8
22 changed files with 391 additions and 186 deletions

View File

@ -223,6 +223,7 @@ AC_CONFIG_FILES([
ipa-gui/ipagui/static/images/Makefile
ipa-gui/ipagui/static/images/template/Makefile
ipa-gui/ipagui/static/images/branding/Makefile
ipa-gui/ipagui/static/images/objects/Makefile
ipa-gui/ipagui/static/javascript/Makefile
ipa-gui/ipagui/subcontrollers/Makefile
ipa-gui/ipagui/templates/Makefile

View File

@ -2,7 +2,9 @@ NULL =
appdir = $(IPA_DATA_DIR)/ipagui/static/css
app_DATA = \
style.css \
style_freeipa.css \
style_platform.css \
style_platform-objects.css \
$(NULL)
EXTRA_DIST = \

View File

@ -0,0 +1,64 @@
/* freeipa-specific styles */
body { background-color: red !important !important; }
#login {
float: right;
padding-top: 15px;
padding-right: 10px;
}
#details {
border-top: 1px solid #bbdc5f;
}
#details h1 {
background-repeat: no-repeat;
margin-bottom: 18px;
}
#alertbox {
background-color: #6995d5;
}
#footer {
padding-top: 0px;
border-top: none;
text-align: center;
margin-left: auto;
margin-right: auto;
width: 30%;
padding: 20px 20px;
}
/*** TableKit CSS - see http://www.millstream.com.au/view/code/tablekit/ **/
.sortcol {
cursor: pointer;
padding-left: 10px !important;
background-repeat: no-repeat !important;
background-position: left center !important;
text-decoration: underline;
}
.sortasc {
background-image: url(/static/images/up.gif) !important;
}
.sortdesc {
background-image: url(/static/images/down.gif) !important;
}
.warning_message {
font-size: 120%;
font-weight: bolder;
}
.fielderror {
color: red !important;
font-weight: bold;
}
.requiredfield {
background-color: #eebbbb !important;
}

View File

@ -0,0 +1,18 @@
r/* object h1 styles */
#details h1.overview { background-image: url('/static/images/objects/object-overview.png'); }
#details h1.accesscontrol { background-image: url('/static/images/objects/object-accesscontrol.png'); }
#details h1.user { background-image: url('/static/images/objects/object-user.png'); }
#details h1.usergroup { background-image: url('/static/images/objects/object-usergroup.png'); }
#details h1.content-overview { background-image: url('/static/images/objects/object-content.png'); }
#details h1.channel { background-image: url('/static/images/objects/object-channel.png'); }
#details h1.channel-new { background-image: url('/static/images/objects/object-channel.png'); }
#details h1.channels { background-image: url('/static/images/objects/object-channels.png'); }
#details h1.media { background-image: url('/static/images/objects/object-media.png'); }
#details h1.system { background-image: url('/static/images/objects/object-system.png'); }
#details h1.virtualsystem { background-image: url('/static/images/objects/object-virtualsystem.png'); }

View File

@ -1,7 +1,10 @@
/** BASIC PAGE STYLES */
*
{
margin: 0;
padding: 0;
font-size: small;
}
html, body {
@ -14,42 +17,81 @@ body {
background-color: #f9f9f9;
margin: 0px;
padding: 0px;
padding-top: 8px;
padding-top: 16px;
min-width: 750px;
}
body, h1, h2, h3, h4, h5, p, ul, li, div, span {
body, h1, h2, h3, h4, h5, p, ul, li, div, span, td {
font-family: "Luxi Sans", "Gill Sans", "Verdana", "Helvetica", sans-serif;
font-size: small;
color: #444;
}
td, th {
text-align: left;
}
#head {
margin: 0px;
padding: 0px;
padding-left: 12px;
padding: 0px 1.5ex;
}
#head h1 a {
display: block;
text-indent: -9999px;
height: 54px;
height: 60px;
width: 350px;
overflow: hidden;
float: left;
margin-top: -10px;
background: url('/static/images/branding/logo.png') no-repeat;
}
#content {
width: 100%;
min-height: 100%;
background-color: #f9f9f9;
background-image: url('/static/images/template/background-content.png');
background-repeat: repeat-x;
}
#main_content table {
clear: left;
}
#main_content {
height: auto;
margin-bottom: 4ex;
}
#footer {
font-size: x-small;
color: #ccc;
clear: both;
text-align: center;
padding-top: 4ex;
border-top: 1px solid #efefef;
width: 100%;
}
/* freeipa only? */
div#search {
padding-top: 16px;
padding-bottom: 24px;
}
#searchbar {
float: right;
margin-right: 24px;
margin-top: 18px;
}
/** MAIN NAVBAR SECTION **/
#navbar {
width: 100%;
height: 64px;
height: 70px;
margin: 0px;
clear: both;
@ -86,42 +128,28 @@ body, h1, h2, h3, h4, h5, p, ul, li, div, span {
text-align: center;
}
#login {
float: right;
padding-top: 15px;
padding-right: 10px;
#navbar-secondary li {
font-size: medium;
}
#content {
width: 100%;
min-height: 50%;
background-color: #f9f9f9;
background-image: url('/static/images/template/background-content.png');
background-repeat: repeat-x;
#navbar-secondary .active a:link,
#navbar-secondary .active a:visited,
#navbar-secondary .active a:active,
#navbar-secondary .active a,
#navbar-secondary li
{
color: #555 !important;
text-decoration: none;
font-weight: bold;
}
#details {
height: 100%;
margin: 0px 24px;
margin-right: 300px;
padding: 18px 18px;
padding-bottom: 12%;
border-top: 1px solid #bbdc5f;
background-color: white;
text-align: left;
}
#details p {
margin-top: 1ex;
margin-bottom: 1ex;
}
/** SIDEBAR SECTION **/
#sidebar {
width: 250px;
text-align: left;
padding: 18px 13px;
padding: 18px 12px;
margin-right: 24px;
float: right;
height: 100%;
@ -160,35 +188,49 @@ body, h1, h2, h3, h4, h5, p, ul, li, div, span {
margin-bottom: 20px !important;
}
input.text {
border: 1px solid #8e8e8e;
background-color: #e5f1f4;
color: #444444;
.context-tools {
float: right;
margin-top: -1.2em;
font-size: small;
}
input.button {
.context-tools a:link, .context-tools a:active, .context-tools a:visited {
text-decoration: none;
}
#navbar-secondary li {
font-size: medium;
}
/** DETAILS SECTION **/
#navbar-secondary .active a:link,
#navbar-secondary .active a:visited,
#navbar-secondary .active a:active,
#navbar-secondary .active a,
#navbar-secondary li
{
color: #555 !important;
text-decoration: none;
font-weight: bold;
}
#details {
height: 100%;
margin: 0px 24px;
margin-right: 298px;
#details * {
padding: 18px 18px;
padding-bottom: 12%;
border-top: 1px solid #aaa;
background-color: white;
text-align: left;
color: #444;
}
#details p {
margin-top: 1ex;
margin-bottom: 1ex;
}
#details h3 {
font-size: medium;
text-transform: uppercase;
margin-bottom: 1ex;
margin-top: 1.5ex;
}
#details h4 {
font-size: medium;
color: #8aa445;
}
#details p,
#details td,
#details li {
@ -199,21 +241,16 @@ input.button {
#details h1 {
color: #7d7d5b;
font-size: x-large;
margin-bottom: 18px;
height: 40px;
/*
* padding-left: 48px;
*/
padding-left: 48px;
padding-top: 6px;
vertical-align: middle;
}
#details h1.user {
background-image: url('/static/images/objects/object-user.png');
background-repeat: no-repeat;
margin-bottom: 18px;
}
#details h2, #details table caption, h2.formsection {
#details h2, #details table caption {
color: #999;
font-size: large;
font-weight: normal;
@ -225,13 +262,8 @@ input.button {
width: 100%;
}
h2.formsection {
margin-top: 12px;
}
#details h3, table.formtable th {
font-size: small;
color: black;
#details h2 img {
margin-right: 1.4ex;
}
table.details {
@ -239,6 +271,11 @@ table.details {
width: 100%;
}
#details h3, table.formtable th {
font-size: small;
color: black;
}
#details table.details th {
font-size: small;
width: 150px;
@ -267,19 +304,127 @@ table.details {
border-style: none none dashed;
}
.details-block {
border-top: 1px solid #eeeeee;
}
#details ul.context-nav {
float: left;
width: 100%;
padding: 0;
margin: 0;
list-style-type: none;
border-bottom: 6px solid #eee;
margin-bottom: 2ex;
}
#details ul.context-nav li a {
float: left;
text-decoration: none;
background-color: #d6d6d6;
padding: 1ex 2ex;
text-align: center;
margin-right: 3px;
-moz-border-radius-topleft: 12px;
-moz-border-radius-topright: 12px;
}
#details ul.context-nav li#active a {
color: #444;
background-color: #eee;
font-weight: bold;
}
/** FORMS SECTION **/
input.text {
border: 1px solid #8e8e8e;
background-color: #e5f1f4;
color: #444444;
}
input.submitbutton {
float: right;
}
form.tableform table th {
padding-right: 2ex;
text-align: right;
}
h2.formsection {
color: #999;
font-size: large;
font-weight: normal;
border-bottom: 1px solid #999;
margin-bottom: 10px;
margin-top: 12px;
text-align: left;
width: 100%;
}
table.formtable {
width: 100%;
}
/**** freeipa only below? ****/
ul.checkboxlist li {
list-style: none;
margin: 8px 0px;
}
ul.checkboxlist li input {
background-color: yellow;
height: 1.1em;
width: 1.2em;
border: 1px solid red;
}
table.formtable th, table.formtable td {
vertical-align: top;
padding-bottom: 10px;
}
table.formtable th {
width: 28%;
}
input.submitbutton, input.searchbutton, #source_searcharea input.searchbutton {
border: 1px outset #aaa;
padding: 2px 1px;
margin-bottom: 2px;
}
table.formtable td input[type="text"], input#criteria {
border: 1px inset #dcdcdc;
font-size: medium;
padding: 2px 1px;
}
table.formtable td select {
border: 1px inset #dcdcdc;
font-size: small;
padding: 2px 1px;
}
#inactive {
background-color: silver;
}
/** ALERTS / MESSAGING SECTION **/
#alertbox {
width: 100%;
padding: 6px 0px;
padding: 10px 0px;
margin-top: 12px;
margin-bottom: 18px;
vertical-align: middle;
-moz-border-radius: 6px;
background-color: #6995d5;
background-color: #7d7d5b;
color: white;
}
@ -295,63 +440,13 @@ input.submitbutton {
}
#alertbox p {
padding: 0px 0px;
padding: 0px 16px;
text-align: center;
color: white;
width: auto;
}
td, th {
text-align: left;
}
#footer {
text-align: center;
margin-left: auto;
margin-right: auto;
width: 30%;
padding: 20px 20px;
}
table.formtable {
width: 100%;
}
table.formtable th, table.formtable td {
vertical-align: top;
padding-bottom: 10px;
}
table.formtable th {
width: 28%;
}
table.formtable td {
}
input.submitbutton, input.searchbutton, #source_searcharea input.searchbutton {
border: 1px outset #aaa;
padding: 2px 1px;
margin-bottom: 2px;
}
table.formtable td input[type="text"], input#criteria {
border: 1px inset #dcdcdc;
font-size: medium;
padding: 2px 1px;
/*
background-color: #f5faff;
*/
}
table.formtable td select {
border: 1px inset #dcdcdc;
font-size: small;
padding: 2px 1px;
/*
background-color: #f5faff;
*/
}
/**** freeipa only alerts/messaging below ****/
p.empty-message {
font-size: large;
@ -367,59 +462,57 @@ div.instructions {
background-color: #eef4fd;
}
div#search {
padding-top: 16px;
padding-bottom: 24px;
/** OVERVIEW PAGE STYLES **/
.summary {
width: 40%;
float: left;
clear: none;
padding-top: 2ex;
}
ul.checkboxlist li {
list-style: none;
margin: 8px 0px;
.tasks, .search {
padding: 3ex;
padding-top: 2ex;
width: 40%;
float: right;
background-image: url('/static/images/template/background-search.png');
background-repeat: repeat-y;
background-color: white;
}
.summary ul, .tasks ul, ul { margin-top: 1ex; padding-top: 1ex; list-style: square; margin-left: 2ex; }
.summary ul + ul, .tasks ul + ul { border-top: 1px solid #eee; }
.search ul { list-style: none; margin-left: 2ex; }
.additional-link {
font-size: x-small;
}
ul.checkboxlist li input {
background-color: yellow;
height: 1.1em;
width: 1.2em;
border: 1px solid red;
#perspectives h3 a {
font-size: x-small;
text-transform: none;
margin-left: 1ex;
font-weight: normal;
}
#inactive {
background-color: silver;
}
/** TURBOGEARS GRID-TABLE-SPECIFIC STYLES **/
/*
* * TableKit css
*
*/
.grid td, .grid th {padding:3px;border:none;}
.grid .action_cell {text-align:right;}
.grid THEAD tr th {text-align:left;background-color:#f0f0f0;color:#333;}
.grid .heading img {float:right;margin-left:2px;margin-right:3px;}
.grid .heading a {text-decoration:none;color:#333;}
.grid td a {text-decoration:none;color:#333;}
.grid tr.odd td {background-color:#edf3fe;}
.grid tr.even td {background-color:#fff;}
.grid .pointer {cursor:pointer;}
.grid .column_chooser_link {position:relative;background-color:#e3e3e3;}
.grid .column_chooser_link ul {position:absolute;display:none;top:0px;right:-20px;}
.grid .column_chooser_list a {width:200px;display:block;padding:3px;background-color:#e3e3e3;}
.grid .column_chooser_list a:hover {background-color:#cdcdcd;}
.grid .column_chooser_list {padding:0;margin:0;list-style:none;background-color:#e3e3e3;}
.sortcol {
cursor: pointer;
padding-left: 10px !important;
background-repeat: no-repeat !important;
background-position: left center !important;
text-decoration: underline;
}
.sortasc {
background-image: url(/static/images/up.gif) !important;
}
.sortdesc {
background-image: url(/static/images/down.gif) !important;
}
.warning_message {
font-size: 120%;
/*
color: #ee0000;
*/
font-weight: bolder;
}
.fielderror {
color: red !important;
font-weight: bold;
}
.requiredfield {
background-color: #eebbbb !important;
}

View File

@ -2,6 +2,7 @@ NULL =
SUBDIRS = \
branding \
objects \
template \
$(NULL)

View File

@ -0,0 +1,24 @@
NULL =
appdir = $(IPA_DATA_DIR)/ipagui/static/images/objects
app_DATA = \
object-accesscontrol.png \
object-channel.png \
object-channels.png \
object-content.png \
object-media.png \
object-overview.png \
object-system.png \
object-usergroup.png \
object-user.png \
object-virtualsystem.png \
$(NULL)
EXTRA_DIST = \
$(app_DATA) \
$(NULL)
MAINTAINERCLEANFILES = \
*~ \
*.pyc \
Makefile.in

View File

@ -24,7 +24,7 @@
</head>
<body>
<h1>Edit Delegation</h1>
<h1 class="accesscontrol">Edit Delegation</h1>
${form.display(action=tg.url("/delegate/update"), value=delegate,
actionname='Update')}

View File

@ -42,7 +42,7 @@ from ipagui.helpers import ipahelper
method="post" action="${tg.url('/delegate/edit')}">
<input type="hidden" id="edit_acistr" name="acistr" value="" />
</form>
<h1>Delegations</h1>
<h1 class="accesscontrol">Delegations</h1>
<table id="resultstable" class="details sortable resizable">
<thead>

View File

@ -23,7 +23,7 @@
<title>Add Delegation</title>
</head>
<body>
<h1>Add Delegation</h1>
<h1 class="accesscontrol">Add Delegation</h1>
${form.display(action=tg.url("/delegate/create"), value=delegate,
actionname='Add')}

View File

@ -24,7 +24,7 @@
</head>
<body>
<div id="details">
<h1>Edit Group</h1>
<h1 class="usergroup">Edit Group</h1>
<input type="checkbox" id="toggleprotected_checkbox"
onclick="toggleProtectedFields(this);">
<span class="small">edit protected fields</span>

View File

@ -24,7 +24,7 @@
</head>
<body>
<div id="details">
<h1>Find Groups</h1>
<h1 class="usergroup">Find Groups</h1>
<script type="text/javascript" charset="utf-8" src="${tg.url('/static/javascript/tablekit.js')}"></script>
<div id="search">
<form action="${tg.url('/group/list')}" method="get">

View File

@ -24,7 +24,7 @@
</head>
<body>
<div id="details">
<h1>Add Group</h1>
<h1 class="usergroup">Add Group</h1>
${form.display(action=tg.url('/group/create'), value=group)}
</div>

View File

@ -31,7 +31,7 @@ edit_url = tg.url('/group/edit', cn=cn)
from ipagui.helpers import userhelper
?>
<div id="details">
<h1>View Group</h1>
<h1 class="usergroup">View Group</h1>
<input py:if="'editors' in tg.identity.groups or 'admins' in tg.identity.groups"
class="submitbutton" type="button"

View File

@ -24,7 +24,9 @@
<title py:replace="''">Your title goes here</title>
<meta py:replace="item[:]"/>
<style type="text/css" media="all">
@import "${tg.url('/static/css/style.css')}";
@import "${tg.url('/static/css/style_platform.css')}";
@import "${tg.url('/static/css/style_platform-objects.css')}";
@import "${tg.url('/static/css/style_freeipa.css')}";
</style>
<script type="text/javascript" charset="utf-8" src="${tg.url('/static/javascript/prototype.js')}"></script>
<script type="text/javascript" charset="utf-8" src="${tg.url('/static/javascript/scriptaculous.js?load=effects')}"></script>

View File

@ -23,7 +23,7 @@
<title>Find Service Principals</title>
</head>
<body>
<h1>Find Service Principals</h1>
<h1 class="system">Find Service Principals</h1>
<script type="text/javascript" charset="utf-8" src="${tg.url('/static/javascript/tablekit.js')}"></script>
<div id="search">
<form action="${tg.url('/principal/list')}" method="get">

View File

@ -23,7 +23,7 @@
<title>Add Service Principal</title>
</head>
<body>
<h1>Add Service Principal</h1>
<h1 class="system">Add Service Principal</h1>
${form.display(action=tg.url('/principal/create'), value=principal)}
</body>

View File

@ -45,7 +45,7 @@
onclick="return confirmDelete();"
/>
<h1>View Service Principal</h1>
<h1 class="system">View Service Principal</h1>
<h2 class="formsection">Principal</h2>
<table class="formtable" cellpadding="2" cellspacing="0" border="0">

View File

@ -31,7 +31,7 @@
<span class="small">edit protected fields</span>
</input>
</div>
<h1>Edit User</h1>
<h1 class="user">Edit User</h1>
</div>
<?python

View File

@ -23,7 +23,7 @@
<title>Find Users</title>
</head>
<body>
<h1>Find Users</h1>
<h1 class="user">Find Users</h1>
<script type="text/javascript" charset="utf-8" src="${tg.url('/static/javascript/tablekit.js')}"></script>
<div id="search">
<form action="${tg.url('/user/list')}" method="get">

View File

@ -23,7 +23,7 @@
<title>Add User</title>
</head>
<body>
<h1>Add User</h1>
<h1 class="user">Add User</h1>
${form.display(action=tg.url("/user/create"), value=user)}
</body>

View File

@ -26,7 +26,7 @@
<?python
edit_url = tg.url('/user/edit', uid=user.get('uid'))
?>
<h1>View User</h1>
<h1 class="user">View User</h1>
<input py:if="'editors' in tg.identity.groups or 'admins' in tg.identity.groups or tg.identity.display_name == user.get('uid')"
class="submitbutton" type="button"