diff --git a/views/contacts/view.ctp b/views/contacts/view.ctp index 28aac21..d91fdd2 100644 --- a/views/contacts/view.ctp +++ b/views/contacts/view.ctp @@ -31,87 +31,88 @@ function datefmt($date) { /********************************************************************** * Tenant Info */ -echo('' . "\n"); -echo(' ' . "\n"); -echo $html->tableCells(array(array('Name', $contact['Contact']['display_name']), - array('Company', $contact['Contact']['company_name']), - array('SSN', $contact['Contact']['id_federal']), - array('ID', $contact['Contact']['id_num'] - . ($contact['Contact']['id_state'] - ? " - ".$contact['Contact']['id_state'] - : "")), - array('Comment', $contact['Contact']['comment'])), - null, array('class' => "altrow"), false, false); -echo('
Tenant Info
' . "\n"); + +$rows = array(array('Name', $contact['Contact']['display_name']), + array('Company', $contact['Contact']['company_name']), + array('SSN', $contact['Contact']['id_federal']), + array('ID', ($contact['Contact']['id_num'] + . ($contact['Contact']['id_state'] + ? " - ".$contact['Contact']['id_state'] + : ""))), + array('Comment', $contact['Contact']['comment'])); + +echo $this->element('table', + array('class' => 'item contact detail', + 'caption' => 'Tenant Info', + 'rows' => $rows, + 'column_class' => array('field', 'value'))); /********************************************************************** * Phones */ -$headers = array('Location', 'Preference', 'Type', 'Phone', 'Extension', 'Comment'); +$headers = array('Preference', 'Phone', 'Comment'); $rows = array(); foreach($contact['ContactPhone'] AS $phone) { - $rows[] = array($phone['ContactsMethod']['type'], - $phone['ContactsMethod']['preference'], + $rows[] = array($phone['ContactsMethod']['preference'] . " / " . + $phone['ContactsMethod']['type'] . " / " . $phone['type'], - phone($phone['phone']), - $phone['ext'], + phone($phone['phone']) . + ($phone['ext'] ? " x".$phone['ext'] : ""), $phone['comment']); } -if (count($rows)) { - echo('' . "\n"); - echo(' ' . "\n"); - echo $html->tableHeaders($headers); - echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); - echo('
Phone
' . "\n"); -} +echo $this->element('table', + array('class' => 'item phone list', + 'caption' => 'Phone', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers)); /********************************************************************** * Emails */ -$headers = array('Location', 'Preference', 'Email', 'Comment'); +$headers = array('Preference', 'Email', 'Comment'); $rows = array(); foreach($contact['ContactEmail'] AS $email) { - $rows[] = array($email['ContactsMethod']['type'], - $email['ContactsMethod']['preference'], + $rows[] = array($email['ContactsMethod']['preference'] . " / " . + $email['ContactsMethod']['type'], $email['email'], $email['comment']); } -if (count($rows)) { - echo('' . "\n"); - echo(' ' . "\n"); - echo $html->tableHeaders($headers); - echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); - echo('
Email
' . "\n"); -} +echo $this->element('table', + array('class' => 'item email list', + 'caption' => 'Email', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers)); /********************************************************************** * Addresses */ -$headers = array('Location', 'Preference', 'Address', 'City', 'State', 'Zip', 'Country', 'Comment'); +$headers = array('Preference', 'Address', 'Comment'); $rows = array(); foreach($contact['ContactAddress'] AS $address) { - $rows[] = array($address['ContactsMethod']['type'], - $address['ContactsMethod']['preference'], - $address['address'], - $address['city'], - $address['state'], - $address['postcode'], - $address['country'], + $rows[] = array($address['ContactsMethod']['preference'] . " / " . + $address['ContactsMethod']['type'], + preg_replace("/\n/", "
\n", $address['address']) . "
\n" . + $address['city'] . ", " . + $address['state'] . " " . + $address['postcode'] + . "
\n" . $address['country'] + , $address['comment']); } -if (count($rows)) { - echo('' . "\n"); - echo(' ' . "\n"); - echo $html->tableHeaders($headers); - echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); - echo('
Address
' . "\n"); -} +echo $this->element('table', + array('class' => 'item address list', + 'caption' => 'Address', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers)); /********************************************************************** @@ -133,11 +134,12 @@ foreach($contact['Lease'] AS $lease) { $lease['comment']); } -echo('' . "\n"); -echo(' ' . "\n"); -echo $html->tableHeaders($headers); -echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); -echo('
Lease History
' . "\n"); +echo $this->element('table', + array('class' => 'item lease list', + 'caption' => 'Lease History', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers)); /********************************************************************** @@ -149,6 +151,7 @@ foreach($contact['Lease'] AS $lease) { $headers = array('Date', /*'Through',*/ /*'Charge/Receipt'*/'ID', 'Type', 'Comment', 'Amount', 'Total'); $rows = array(); + $row_class = array(); $running_total = 0; foreach($lease['Charge'] AS $charge) { $amount = $charge['total']; @@ -159,6 +162,7 @@ foreach($contact['Lease'] AS $lease) { $charge['comment'], currency($amount), currency($running_total)); + $row_class[] = 'charge'; foreach ($charge['Receipt'] AS $receipt) { $amount = -1 * $receipt['ChargesReceipt']['amount']; @@ -173,16 +177,18 @@ foreach($contact['Lease'] AS $lease) { $receipt['comment'], currency($amount), currency($running_total)); + $row_class[] = 'receipt'; } } $grand_total += $running_total; - echo('' . "\n"); - echo(' ' . "\n"); - echo $html->tableHeaders($headers); - echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); - echo('
Lease #'.$lease['number'].' ('.$lease['Unit']['name'].')
' . "\n"); - + echo $this->element('table', + array('class' => 'item ledger list', + 'caption' => 'Lease #'.$lease['number'].' ('.$lease['Unit']['name'].')', + 'headers' => $headers, + 'rows' => $rows, + 'row_class' => $row_class, + 'column_class' => $headers)); } ?> diff --git a/views/elements/contacts.ctp b/views/elements/contacts.ctp index 6b51553..fca941d 100644 --- a/views/elements/contacts.ctp +++ b/views/elements/contacts.ctp @@ -4,57 +4,52 @@ if (isset($heading)) echo $heading; else echo '

'.__('Contacts',true).'

'; -?> - +$headers_manual = array('Id', 'Last Name', 'First Name', 'Company', 'Comment'); +if (isset($paginator)) { + echo $paginator->counter(array( + 'format' => __('Page %page% of %pages%, showing %current% records (%start% - %end%) of %count% total', true))); - counter(array( - 'format' => __('Page %page% of %pages%, showing %current% records (%start% - %end%) of %count% total', true))); - - $rows = array($paginator->sort('id'), + $headers = array($paginator->sort('id'), $paginator->sort('last_name'), $paginator->sort('first_name'), $paginator->sort('company_name'), //$paginator->sort('unit_id'), $paginator->sort('comment')); - } else { - $rows = array('Id', 'Last Name', 'First Name', 'Company', 'Comment'); - } - echo $html->tableHeaders($rows); +} else { + $headers = $headers_manual; +} - $rows = array(); - foreach ($contacts as $contact) { - $rows[] = array($html->link($contact['Contact']['id'], - array('controller' => 'contacts', - 'action' => 'view', - $contact['Contact']['id'])), - $html->link($contact['Contact']['last_name'], - array('controller' => 'contacts', - 'action' => 'view', - $contact['Contact']['id'])), - $html->link($contact['Contact']['first_name'], - array('controller' => 'contacts', - 'action' => 'view', - $contact['Contact']['id'])), - $contact['Contact']['company_name'], - $contact['Contact']['comment']); - } - echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); - } -?> -
+$rows = array(); +foreach ($contacts as $contact) { + $rows[] = array($html->link($contact['Contact']['id'], + array('controller' => 'contacts', + 'action' => 'view', + $contact['Contact']['id'])), + $html->link($contact['Contact']['last_name'], + array('controller' => 'contacts', + 'action' => 'view', + $contact['Contact']['id'])), + $html->link($contact['Contact']['first_name'], + array('controller' => 'contacts', + 'action' => 'view', + $contact['Contact']['id'])), + $contact['Contact']['company_name'], + $contact['Contact']['comment']); +} -' . "\n"); - echo $paginator->prev('<< '.__('previous', true), array(), null, array('class'=>'disabled')); - echo(' | '); - echo $paginator->numbers(); - echo(' | '); - echo $paginator->next(__('next', true).' >>', array(), null, array('class'=>'disabled')); - echo('' . "\n"); - } -?> +echo $this->element('table', + array('class' => 'item contact list', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers_manual)); + +if (isset($paginator)) { + echo('
' . "\n"); + echo $paginator->prev('<< '.__('previous', true), array(), null, array('class'=>'disabled')); + echo(' | '); + echo $paginator->numbers(); + echo(' | '); + echo $paginator->next(__('next', true).' >>', array(), null, array('class'=>'disabled')); + echo('
' . "\n"); +} diff --git a/views/elements/maps.ctp b/views/elements/maps.ctp index 0de3f45..ee148c9 100644 --- a/views/elements/maps.ctp +++ b/views/elements/maps.ctp @@ -4,55 +4,50 @@ if (isset($heading)) echo $heading; else echo '

'.__('Maps',true).'

'; -?> - +$headers_manual = array('Id', 'Name', 'Area', 'Width', 'Depth', 'Comment'); +if (isset($paginator)) { + echo $paginator->counter(array( + 'format' => __('Page %page% of %pages%, showing %current% records (%start% - %end%) of %count% total', true))); - counter(array( - 'format' => __('Page %page% of %pages%, showing %current% records (%start% - %end%) of %count% total', true))); - - $rows = array($paginator->sort('id'), + $headers = array($paginator->sort('id'), $paginator->sort('name'), $paginator->sort('site_area_id'), $paginator->sort('width'), $paginator->sort('depth'), $paginator->sort('comment')); - } else { - $rows = array('Id', 'Name', 'Area', 'Width', 'Depth', 'Comment'); - } - echo $html->tableHeaders($rows); +} else { + $headers = $headers_manual; +} - $rows = array(); - foreach ($maps as $map) { - $rows[] = array($html->link($map['Map']['id'], - array('controller' => 'maps', - 'action' => 'view', - $map['Map']['id'])), - $html->link($map['Map']['name'], - array('controller' => 'maps', - 'action' => 'view', - $map['Map']['id'])), - $map['SiteArea']['name'], - $map['Map']['width'] / 12, - $map['Map']['depth'] / 12, - $map['Map']['comment']); - } - echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); - } -?> -
+$rows = array(); +foreach ($maps as $map) { + $rows[] = array($html->link($map['Map']['id'], + array('controller' => 'maps', + 'action' => 'view', + $map['Map']['id'])), + $html->link($map['Map']['name'], + array('controller' => 'maps', + 'action' => 'view', + $map['Map']['id'])), + $map['SiteArea']['name'], + $map['Map']['width'] / 12, + $map['Map']['depth'] / 12, + $map['Map']['comment']); +} -' . "\n"); - echo $paginator->prev('<< '.__('previous', true), array(), null, array('class'=>'disabled')); - echo(' | '); - echo $paginator->numbers(); - echo(' | '); - echo $paginator->next(__('next', true).' >>', array(), null, array('class'=>'disabled')); - echo('' . "\n"); - } -?> +echo $this->element('table', + array('class' => 'item map list', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers_manual)); + +if (isset($paginator)) { + echo('
' . "\n"); + echo $paginator->prev('<< '.__('previous', true), array(), null, array('class'=>'disabled')); + echo(' | '); + echo $paginator->numbers(); + echo(' | '); + echo $paginator->next(__('next', true).' >>', array(), null, array('class'=>'disabled')); + echo('
' . "\n"); +} diff --git a/views/elements/table.ctp b/views/elements/table.ctp new file mode 100644 index 0000000..31fb7fd --- /dev/null +++ b/views/elements/table.ctp @@ -0,0 +1,59 @@ +' . "\n"); + if (isset($caption)) + echo(' ' . $caption . '' . "\n"); + + if (isset($row_class) && is_array($row_class)) { + foreach ($row_class AS &$rc) + $rc = preg_replace("/ /", "-", strtolower($rc)); + } + + if (isset($column_class) && is_array($column_class)) { + foreach ($column_class AS &$cc) + $cc = preg_replace("/ /", "-", strtolower($cc)); + } + +/* if (isset($headers) && is_array($headers)) { */ +/* foreach ($headers AS $i => $col) { */ +/* if (!isset($column_class[$i])) */ +/* continue; */ +/* $headers[$i] = array($col, array('class' => $column_class[$i])); */ +/* } */ +/* } */ + + // Very kludgy. + // I want the row_class to affix to the tag. + // tableCells, however, does not have such ability :-/ + foreach ($rows AS $r => &$row) { + foreach ($row AS $c => $col) { + $colclass = (isset($column_class) && is_array($column_class)) ? $column_class[$c] : '';; + $rowclass = (isset($row_class) && is_array($row_class)) ? $row_class[$r] : ''; + $class = $rowclass . ($colclass ? " " . $colclass : ''); + if (!$class) + continue; + $row[$c] = array($col, array('class' => $class)); + } + } + + echo("\n"); + if (isset($headers) && is_array($headers)) + echo $html->tableHeaders($headers); + + echo("\n"); + echo $html->tableCells($rows, + array('class' => "oddrow"), + array('class' => "evnrow"), + false, false); + echo("\n"); + echo('' . "\n"); +} diff --git a/views/elements/units.ctp b/views/elements/units.ctp index 8d504c0..d0f90ee 100644 --- a/views/elements/units.ctp +++ b/views/elements/units.ctp @@ -4,53 +4,48 @@ if (isset($heading)) echo $heading; else echo '

'.__('Units',true).'

'; -?> - +$headers_manual = array('Id', 'Unit', 'Size', 'Status', 'Comment'); +if (isset($paginator)) { + echo $paginator->counter(array( + 'format' => __('Page %page% of %pages%, showing %current% records (%start% - %end%) of %count% total', true))); - counter(array( - 'format' => __('Page %page% of %pages%, showing %current% records (%start% - %end%) of %count% total', true))); - - $rows = array($paginator->sort('id'), + $headers = array($paginator->sort('id'), $paginator->sort('Unit', 'name'), $paginator->sort('unit_size_id'), $paginator->sort('status'), $paginator->sort('comment')); - } else { - $rows = array('Id', 'Unit', 'Size', 'Status', 'Comment'); - } - echo $html->tableHeaders($rows); +} else { + $headers = $headers_manual; +} - $rows = array(); - foreach ($units as $unit) { - $rows[] = array($html->link($unit['Unit']['id'], - array('controller' => 'units', - 'action' => 'view', - $unit['Unit']['id'])), - $html->link($unit['Unit']['name'], - array('controller' => 'units', - 'action' => 'view', - $unit['Unit']['id'])), - $unit['UnitSize']['name'], - $unit['Unit']['status'], - $unit['Unit']['comment']); - } - echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); - } -?> -
+$rows = array(); +foreach ($units as $unit) { + $rows[] = array($html->link($unit['Unit']['id'], + array('controller' => 'units', + 'action' => 'view', + $unit['Unit']['id'])), + $html->link($unit['Unit']['name'], + array('controller' => 'units', + 'action' => 'view', + $unit['Unit']['id'])), + $unit['UnitSize']['name'], + $unit['Unit']['status'], + $unit['Unit']['comment']); +} -' . "\n"); - echo $paginator->prev('<< '.__('previous', true), array(), null, array('class'=>'disabled')); - echo(' | '); - echo $paginator->numbers(); - echo(' | '); - echo $paginator->next(__('next', true).' >>', array(), null, array('class'=>'disabled')); - echo('' . "\n"); - } -?> +echo $this->element('table', + array('class' => 'item unit list', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers_manual)); + +if (isset($paginator)) { + echo('
' . "\n"); + echo $paginator->prev('<< '.__('previous', true), array(), null, array('class'=>'disabled')); + echo(' | '); + echo $paginator->numbers(); + echo(' | '); + echo $paginator->next(__('next', true).' >>', array(), null, array('class'=>'disabled')); + echo('
' . "\n"); +} diff --git a/views/layouts/default.ctp b/views/layouts/default.ctp index a703388..f6ff58d 100644 --- a/views/layouts/default.ctp +++ b/views/layouts/default.ctp @@ -30,12 +30,12 @@ Property Manager: meta('icon'); - echo $html->css('cake.generic'); - echo $scripts_for_layout; + echo $html->meta('icon') . "\n"; + echo $html->css('cake.generic') . "\n"; + echo $html->css('layout') . "\n"; + echo $html->css('sidemenu') . "\n"; + echo $scripts_for_layout . "\n"; ?> - - diff --git a/views/units/view.ctp b/views/units/view.ctp index 307f380..f9cf7d7 100644 --- a/views/units/view.ctp +++ b/views/units/view.ctp @@ -21,18 +21,16 @@ function datefmt($date) { /********************************************************************** * Unit Info */ -$rows = array(); -foreach($unit['Unit'] AS $col => $val) { - $rows[] = array(array($col, 'width=1%'), $val); -} -echo('' . "\n"); -echo(' ' . "\n"); -echo $html->tableCells(array(array('Name', $unit['Unit']['name']), - array('Status', $unit['Unit']['status']), - array('Comment', $unit['Unit']['comment'])), - null, array('class' => "altrow"), false, false); -echo('
Unit Info
' . "\n"); +$rows = array(array('Name', $unit['Unit']['name']), + array('Status', $unit['Unit']['status']), + array('Comment', $unit['Unit']['comment'])); + +echo $this->element('table', + array('class' => 'item unit detail', + 'caption' => 'Unit Info', + 'rows' => $rows, + 'column_class' => array('field', 'value'))); /********************************************************************** @@ -54,11 +52,12 @@ foreach($unit['Lease'] AS $lease) { $lease['comment']); } -echo('' . "\n"); -echo(' ' . "\n"); -echo $html->tableHeaders($headers); -echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); -echo('
Lease History
' . "\n"); +echo $this->element('table', + array('class' => 'item lease list', + 'caption' => 'Lease History', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers)); /********************************************************************** @@ -98,12 +97,12 @@ foreach($unit['Lease'] AS $lease) { } $grand_total += $running_total; - echo('' . "\n"); - echo(' ' . "\n"); - echo $html->tableHeaders($headers); - echo $html->tableCells($rows, null, array('class' => "altrow"), false, false); - echo('
Lease #'.$lease['number'].' ('.$lease['Contact'][0]['display_name'].')
' . "\n"); - + echo $this->element('table', + array('class' => 'item ledger list', + 'caption' => 'Lease #'.$lease['number'].' ('.$lease['Contact'][0]['display_name'].')', + 'headers' => $headers, + 'rows' => $rows, + 'column_class' => $headers)); } ?> diff --git a/webroot/css/cake.generic.css b/webroot/css/cake.generic.css index 8fc98f4..a6d84f3 100644 --- a/webroot/css/cake.generic.css +++ b/webroot/css/cake.generic.css @@ -27,59 +27,6 @@ padding:0; } -/* General Style Info */ -body { - background: #003d4c; - color: #fff; - font-family:'lucida grande',verdana,helvetica,arial,sans-serif; - font-size:90%; - margin: 0; -} -a { - background:#fff; - color: #003d4c; - text-decoration: underline; - font-weight: bold; -} -a:hover { - background:#fff; - color: #003d4c; - text-decoration:none; -} -a img { - border:none; -} -h1, h2, h3, h4 { - font-weight: normal; -} -h1 { - background:#fff; - color: #003d4c; - font-size: 100%; - margin: 0.1em 0; -} -h2 { - background:#fff; - color: #e32; - font-family:'Gill Sans','lucida grande',helvetica, arial, sans-serif; - font-size: 190%; - margin-bottom: 0.3em; -} -h3 { - color: #993; - font-family:'Gill Sans','lucida grande',helvetica, arial, sans-serif; - font-size: 165%; - padding-top: 1.5em; -} -h4 { - color: #993; - font-weight: normal; - padding-top: 0.5em; -} -ul, li { - margin: 0 12px; -} - /* Layout */ #container { text-align: left; @@ -117,51 +64,7 @@ ul, li { text-align: right; } -/* Tables */ -table { - background: #fff; - border:1px solid #ccc; - border-right:0; - clear: both; - color: #333; - margin-bottom: 10px; - width: 100%; -} -th { - background: #f2f2f2; - border:1px solid #bbb; - border-top: 1px solid #fff; - border-left: 1px solid #fff; - text-align: center; -} -th a { - background:#f2f2f2; - display: block; - padding: 2px 4px; - text-decoration: none; -} -th a:hover { - background: #ccc; - color: #333; - text-decoration: none; -} -table tr td { - background: #fff; - border-right: 1px solid #ccc; - padding: 4px; - text-align: center; - vertical-align: top; -} -table tr.altrow td { - background: #f4f4f4; -} -td.actions { - text-align: center; - white-space: nowrap; -} -td.actions a { - margin: 0px 6px; -} + .cake-sql-log table { background: #f4f4f4; } @@ -208,102 +111,6 @@ dd { vertical-align: top; } -/* Forms */ -form { - clear: both; - margin-right: 20px; - padding: 0; - width: 80%; -} -fieldset { - border: 1px solid #ccc; - margin-top: 30px; - padding: 16px 20px; -} -fieldset legend { - background:#fff; - color: #e32; - font-size: 160%; - font-weight: bold; -} -fieldset fieldset { - margin-top: 0px; - margin-bottom: 20px; - padding: 16px 10px; -} -fieldset fieldset legend { - font-size: 120%; - font-weight: normal; -} -fieldset fieldset div { - clear: left; - margin: 0 20px; -} -form div { - clear: both; - margin-bottom: 1em; - padding: .5em; - vertical-align: text-top; -} -form div.input { - color: #444; -} -form div.required { - color: #333; - font-weight: bold; -} -form div.submit { - border: 0; - clear: both; - margin-top: 10px; - margin-left: 140px; -} -label { - display: block; - font-size: 110%; - padding-right: 20px; -} -input, textarea { - clear: both; - font-size: 140%; - font-family: "frutiger linotype", "lucida grande", "verdana", sans-serif; - padding: 2px; - width: 100%; -} -select { - clear: both; - font-size: 120%; - vertical-align: text-bottom; -} -select[multiple=multiple] { - width: 100%; -} -option { - font-size: 120%; - padding: 0 3px; -} -input[type=checkbox] { - clear: left; - float: left; - margin: 0px 6px 7px 2px; - width: auto; -} -input[type=radio] { - float:left; - width:auto; - margin: 0 3px 7px 0; -} -div.radio label { - margin: 0 0 6px 20px; -} -input[type=submit] { - display: inline; - font-size: 110%; - padding: 2px 5px; - width: auto; - vertical-align: bottom; -} - /* Notices and Errors */ div.message { clear: both; @@ -347,6 +154,14 @@ p.error em { } /* Actions */ +td.actions { + text-align: center; + white-space: nowrap; +} +td.actions a { + margin: 0px 6px; +} + div.actions ul { margin: 0px 0; padding: 0; diff --git a/webroot/css/layout.css b/webroot/css/layout.css new file mode 100644 index 0000000..e4a6999 --- /dev/null +++ b/webroot/css/layout.css @@ -0,0 +1,154 @@ +/************************************************************ + ************************************************************ + * Debug table margin/padding helper + */ + +/* table th, td { border: dashed 1px; } */ + +/************************************************************ + ************************************************************ + * Overall page layout + */ + +table#layout { width: 100% } +td#sidecolumn , +td#pagecolumn { vertical-align: top; } +td#pagecolumn { padding-left: 4mm; } + + +/************************************************************ + ************************************************************ + * Panel captions + */ + +table caption { text-align: left; + font-size: 120%; + font-weight: bold; + margin-bottom: 0.5em; + } + +table.item caption { margin-top: 1em; } +table.detail caption { margin-top: 0; } + + +/************************************************************ + ************************************************************ + * Cell configuration + */ + +table.item th , +table.item td { padding: 0.1em 0.4em 0.1em 0.4em; } +table.item { white-space: nowrap; } +/* table.item { border-spacing: 0 0; /\*IE*\/border-collapse: collapse; empty-cells: show } */ +table.item { border-spacing: 0 0; empty-cells: show } +table.item { border:1px solid #ccc; + border-bottom:2px solid #ccc; + } + +table.item th { background: #f2f2f2; + border-top: 1px solid #fff; + border-left: 1px solid #fff; + border-right: 1px solid #ccc; +/* text-align: center; */ + } +table.item td { border-right: 1px solid #ccc; } + +tr.evnrow { background: #f4f4f4; } + + +/************************************************************ + ************************************************************ + * Formatting for item listings + */ + +/** Item listing width and borders **/ +table.list { width : 100%; } +table.detail { width : 60%; } + +/** Column to which any extra real estate should be allocated **/ +/* table.list.view td#referer , */ +/* table.list.browser td#web_browser , */ +/* table.list.tracker td#url , */ +table.list td.comment { width: 99%; } +table.detail td.field { width: 10em } + +/** Text alignment exceptions **/ +table.list td.id { text-align: center; } + +/** White spacing exceptions **/ +table.list td.comment { white-space: normal; } + +/* table.detail td {word-wrap : normal} */ + +table.list.ledger td.date.receipt { padding-left: 1em } + + +/************************************************************ + ************************************************************ + * General Style Info + */ + +body { +/* background: #003d4c; */ +/* color: #fff; */ + font-family:'lucida grande',verdana,helvetica,arial,sans-serif; + font-size:90%; + margin: 0; +} +a { + color: #003d4c; + text-decoration: underline; + font-weight: bold; +} +a:hover { + color: #f00; + text-decoration:none; +} +a img { + border:none; +} + +h1, h2, h3, h4 { + font-weight: normal; +} + +h1 { + background:#fff; + color: #003d4c; + font-size: 100%; + margin: 0.1em 0; +} +h2 { + background:#fff; + color: #e32; + font-family:'Gill Sans','lucida grande',helvetica, arial, sans-serif; + font-size: 190%; + margin-bottom: 0.3em; +} +h3 { + color: #993; + font-family:'Gill Sans','lucida grande',helvetica, arial, sans-serif; + font-size: 165%; + padding-top: 1.5em; +} +h4 { + color: #993; + font-weight: normal; + padding-top: 0.5em; +} + + + +/* Forms */ +} +input[type=checkbox] { + clear: left; + float: left; + margin: 0px 6px 7px 2px; + width: auto; +} +input[type=radio] { + float:left; + width:auto; + margin: 0 3px 7px 0; +} diff --git a/webroot/css/sidemenu.css b/webroot/css/sidemenu.css index 94f29cf..c141e61 100644 --- a/webroot/css/sidemenu.css +++ b/webroot/css/sidemenu.css @@ -1,141 +1,40 @@ /************************************************************ ************************************************************ - * Debug table margin/padding helper + * Side Menu Layout */ -/* table th, td { border: dashed 1px; } */ +td#sidecolumn { width: 10em; background: lightblue; text-align: left; } -/************************************************************ - ************************************************************ - * Overall page layout - */ - -table#layout { width: 100% } -td#sidecolumn { width: 10em; background: lightblue; text-align: left; } -td#pagecolumn { padding-left: 4mm; } -td#sidecolumn , -td#pagecolumn { vertical-align: top; } - -td#sidecolumn .header { margin-top: 0.4em; } td#sidecolumn .header , td#sidecolumn .item { white-space : nowrap; } -td#sidecolumn .item { padding-left: 0.6em; } -td#sidecolumn .item a { background: lightblue; } + + +/************************************************************ + ************************************************************ + * Menu Headers + */ + +td#sidecolumn .header { margin-top: 0.4em; + background: blue; + color: white; + font-weight: bold; + } + + + +/************************************************************ + ************************************************************ + * Menu Separators + */ td#sidecolumn hr { margin-top: 0.4em; margin-bottom: 0.3em; } -/************************************************************ - ************************************************************ - * Panel captions - */ - -table caption { text-align: left; - font-size: 120%; - font-weight: bold; - margin-bottom: 0.5em; - } - /************************************************************ ************************************************************ - * Panel headers + * Menu Items */ -td#sidecolumn .header , -table.list th , -table.edit td.name { background: blue; - color: white; - font-weight: bold; - } +td#sidecolumn .item { padding-left: 0.6em; } - -/************************************************************ - ************************************************************ - * Cell configuration - */ - -th, td { padding: 0.1em 0.4em 0.1em 0.4em; } -table.item { border-spacing: 0 0; /*IE*/border-collapse: collapse; empty-cells: show } - - -/************************************************************ - ************************************************************ - * Overall text alignment - */ - -th, td { text-align: left; } - - -/************************************************************ - ************************************************************ - * Formatting for item listings - */ - -/** Item listing width and borders **/ -table.list { width: 100%; } -table.list td { border: 1px solid #000; } - -/* IE doesn't seem to work with first-child. this combination of - * rules works for both IE and Firefox */ -table.list th { border-left: 1px solid #fff; border-top: 1px solid #000; } -table.list th:first-child { border-left: 1px solid #000 } -table.list { border: 1px solid #000; } - -/** Column to which any extra real estate should be allocated **/ -table.list.view td#referer , -table.list.browser td#web_browser , -table.list.tracker td#url , -table.list.category td#comment { width: 99%; } - -/** Text alignment exceptions **/ -table.list td#id , -table.list td#operation , -table.list td#browser , -table.list td#views , -table.list td#uniques { text-align: center; } - -/** White spacing exceptions **/ -table.list { white-space : nowrap } -table.list.browser td#web_browser , -table.list.category td#comment { white-space: normal; } - - -/************************************************************ - ************************************************************ - * Format for item editing - */ - -/** Item editing width and borders **/ -table.edit tr:first-child td.name { border-top: none } -table.edit td.name { border-top: 1px solid #fff; width:1% } - -/** Text alignment exceptions **/ -table.edit td.name { text-align: right } -table.edit td.value { text-align: left } - - -/************************************************************ - ************************************************************ - * Form submission buttons after item tables - */ - -div.opbuttons { margin-top: 1.0em; text-align: left } - - - - -/* table#unitinfo, table#tenantinfo { width: 60% } */ -/* table#unitinfo td:first-child, table#tenantinfo td:first-child { width: 30% } */ -/* table#unitinfo td, table#tenanatinfo td { width: 70% } */ -/* /\*table.detail td:first-child { width: 30% }*\/ */ -/* /\*table.detail td { width: 1% }*\/ */ -/* #unitinfo caption, #tenantinfo caption { margin-top: 0px; } */ -/* table.detail caption { margin-top: 1.5em; text-align: left; font-size: 14pt; font-weight: bold } */ -/* table.detail {width: 80% } */ -/* table.detail {border-spacing: 0 0} */ -/* table.detail {border-left: 1px solid #000; border-top: 1px solid #000} */ -/* table.detail {empty-cells: show} */ -/* table.detail td, table.detail th {padding: 0.1em 0.2em 0.1em 0.2em } */ -/* table.detail td, table.detail th {border-right: 1px solid #000; border-bottom: 1px solid #000} */ -/* table.detail td {word-wrap : normal} */