In this section

Site navigation below

The Code Style site has evolved by gradual refinement and accumulation of features and content. This review is part of a fully backdated site log and archive that sheds light on when, why and how particular features were implemented.

This log is sometimes updated several times per week, sometimes with a long overdue backlog of items. Many log entries refer to the Code Style Java package that delivers the servlet services and utilities used to manage this site.

Subscribe to the news feed for this log: RSS news feed

Reverse chronology

New logo layout refinements, 28th February 2008

Set the minimum height of the Header div to 65px to ensure that the new logo image is fully visible. Removed the div contextual element from the #Header selector for the logo image in the livery style sheet. Also set the line height for the .Title selector to 1.1em.

Added a style sheet rule to adjust the position of the new Eurostile logo image with the wide style sheet, CSWideImport.css, and moved the image logo placement rule in the horizontal menus style sheet, visibility-HorizontalMenusImport.css, to the #Header selector and reduced padding-top to 2em.

New Eurostile logo, 23rd February 2008

Replaced the grey tinted circled C Code Style logo background with a new blue version in the Eurostile font and tag line. This background image is attached to the Header div element. The new image required some superfluous border properties to work around a positioning problem in Opera, and an extra rule to prevent the image being inherited by the nested h1 and p elements.

/*
  Some top border is necessary for Opera
  to position the logo correctly, so
  warning for same colour as background.
*/
div#Header {
  color:            #000;
  background:       url(/images/logo-EurostileLozenge.png)
                    #FFF
                    3% 0.7em
                    no-repeat;
  border-style:     solid;
  border-width:     1px 0px 0px 0px;
  border-color:     white;
}
div#Header h1 {
  background-image:  none;
}
      

Also removed the grey tint to the top rounded corners of the options side bar panel. Increased the width of the purple bottom border on the Options heading, and the line height. Removed all special styling from the .CS selector to make Code Style text the same as regular text, only retained the white-space: nowrap rule.

Replaced the text of the Options sidebar heading with an image of the same in the Eurostile font. Also minimised the padding on the element with 10 pixels on the left, set the font-family property to sans-serif and reduced its size.

Changed "search" in the Site Search to lower case and added an id attribute to the submit button to select in Internet Explorer 6. Set the width of the site search panel to the same as the Options sidebar menu using redundant max-width and min-width properties to override an unnecessarily narrow rendering in Internet Explorer 6. Also increased the width of the site search input to 100% and floated the submit button right.

input#search-input {
width:            100%;
}
input#search-submit {
float:            right;
}
      

Also used a min-width rule to ensure that site sponsor banners are never less than 180 pixels wide with a width rule to allow it up to 24% of the overall width. Minimised the padding and border on images in the sponsor div.

Adjusted the height of the Header div to auto to allow for multiple lines of heading and increased the margin-bottom property to 1em. Applied tighter top and bottom margin on the .URI and .Title selectors. Moved the padding for the .URI and .Title selectors to the contextual selectors #Header h1 and #Header p.

Site sponsorship service page, 21st February 2008

Completed Soupermail form configuration and templates for the new site sponsorship service and tested in privately on the production site. Also uploaded sponsor banner images and sponsorship rate include files.

Latest updates to the Code Style font survey results:

Decimal format for money, 17th February 2008

Added a decimal format to the AbstractDecimalCurrency and a new getDecimalFormat() interface method. Also added a getDecimalAmount() method to the Money class to get the amount only, without any currency symbol. Used this method to get a fully formatted amount in the PayPal class, rather than the double returned by the amount() method.

Made a correction to the AbstractProductSelector class so that only selected products are concatenated and passed with the PayPal order. Removed all references to cycled text ads, which are now discontinued.

Introduced new table cell styles to the persistent style sheet CSPersistent.css for subtotal and discount amounts in the text ad selector servlet.

.Subtotal {
  color:            #000;
  background:       #EEE;
  text-align:       right;
  border-bottom:    double 3px #999;
}
.Discount {
  color:            #000;
  background:       #F9F9F9;
  text-align:       right;
  border-bottom:    solid 1px #666;
}
      

Added text ads and the footer button image to the print style sheet exclusions, CSPrint.css: display: none, and changed all element selectors to lower case. Updated the copyright date for standard style sheet. Switched the layout of the main page heading and home page URI link to default to left alignment and applied a 25% margin to line up with the left hand edge of the main body area.

.URI {
  margin:           1% 20% 0% 25%;
}
.Title {
  margin:           1.5% 20% 0% 25%;
}
      

Added all relevant Java classes to the PSFTP text ad upload script, including the new CustomerDiscount class.

Customer discount for service bookings, 16th February 2008

Made further extensions to the refactored product selection classes to support price discounts through a customer discount key scheme. Implemented a quantity pattern for handling and formatting money amounts in a more rigorous way, including a final Money class, Currency interface, AbstractDecimalCurrency and concrete USDollar and BritishPound subclasses. Further refactored AbstractAdSelector and implemented a PayPal class to handle standard order form generation. The CustomerDiscount handles customer key checks and discount calculations.

New independent SponsorCategory and ServiceArea classes implement the Product interface to support order form generation; both extend a new AbstractProduct class. Also created a working draft SponsorSelector servlet.

Removed the former CycledAdSelector and TextAdRebooker servlets and configuration. The new TextAdSelector servlet supersedes both.

Generic product booking form, 15th February 2008

Extracted the generic Product interface from the AbstractAdSelector class to the model package and created a new abstract superclass, AbstractProductSelector, for text ads and (forthcoming) sponsorship services. Moved all generic methods up from the more specific AbstractAdSelector class.

Refactored text ad booking form, 9th February 2008

Refactored the AbstractAdSelector class for text ad orders with subclasses to produce a more generic product selector scheme with call-outs to specific application content elements. All the new methods are retained in the AbstractAdSelector for the time being, but will ultimately be extracted to a new abstract super class to produce a SponsorshipSelector servlet.

Latest updates to the Code Style font survey results:

New font and Java strings FAQ mailing lists, 2nd February 2008

Added mailing list registration options for the Linux font survey FAQ, Mac fonts FAQ and Java strings FAQ and updated the notification email template.

Previously on Code Style

These backdated pages record detailed changes to the Code Style Web site since July 2000, when development first got underway. Some pages may refer to documents or features that have since changed or are no longer part of the site, but the archive is checked to ensure there are no dead links.

Add this page to your chosen social bookmarking service

Style warning - please read

Home · CSS · Java · Javascript · HTML · Help · Log