1 layerinfo "type" = "layout";
2 layerinfo "name" = "EasyRead";
3 layerinfo redist_uniq = "easyread/layout";
4 layerinfo author_name = "rb";
5 layerinfo "des" = "A journal layout which is friendly to low vision users who need a large font, and to screen reader users. Accessibility is paramount.";
6 layerinfo author_email = "ricky@notdoneliving.net";
8 set layout_authors = [ { "name" => "rb", "type" => "user" }];
10 ##===============================
11 ## Display settings - general
12 ##===============================
14 propgroup presentation {
15 property use num_items_recent;
16 property use num_items_reading;
17 property use use_journalstyle_entry_page;
18 property use layout_type;
19 property use tags_page_type;
20 property use margins_size;
21 property use margins_unit;
22 property use userpics_style_group;
23 property use userpics_position;
24 property use entry_metadata_position;
25 property use use_custom_friend_colors;
26 property use use_shared_pic;
27 property use userlite_interaction_links;
28 property use entry_management_links;
29 property use comment_management_links;
30 property use reg_firstdayofweek;
31 property use entry_datetime_format_group;
32 property use comment_datetime_format_group;
35 set layout_type = "one-column-split";
36 set use_custom_friend_colors = false;
37 set custom_foreground_element = "subject";
38 set custom_background_element = "subject";
40 ##===============================
41 ## Journal style - colors
42 ##===============================
46 property use color_page_background;
47 property use color_page_text;
48 property use color_page_link;
49 property use color_page_link_active;
50 property use color_page_link_visited;
51 property use color_page_title;
53 property use color_header_background;
55 property use color_entry_background;
56 property use color_entry_text;
60 ##===============================
61 ## Display settings - fonts
62 ##===============================
65 property use font_base;
66 property use font_fallback;
67 property use font_base_size;
68 property use font_base_units;
69 property use font_journal_title;
70 property use font_journal_title_size;
71 property use font_journal_title_units;
72 property use font_journal_subtitle;
73 property use font_journal_subtitle_size;
74 property use font_journal_subtitle_units;
75 property use font_entry_title;
76 property use font_entry_title_size;
77 property use font_entry_title_units;
78 property use font_comment_title;
79 property use font_comment_title_size;
80 property use font_comment_title_units;
81 property use font_module_heading;
82 property use font_module_heading_size;
83 property use font_module_heading_units;
84 property use font_module_text;
85 property use font_module_text_size;
86 property use font_module_text_units;
88 set font_base = """APHont, "Helvetica Neue", Arial, Helvetica, Geneva""";
89 set font_base_size = "1";
90 set font_base_units = "em";
91 set font_fallback = "sans-serif";
92 set font_journal_title = """APHont, "Helvetica Neue", Arial, Helvetica, Geneva""";
93 set font_journal_title_size = "3";
94 set font_journal_title_units = "em";
95 set font_journal_subtitle = """APHont, "Helvetica Neue", Arial, Helvetica, Geneva""";
96 set font_journal_subtitle_size = "1.5";
97 set font_journal_subtitle_units = "em";
99 ##===============================
100 ## Display settings - modules
101 ##===============================
104 property use module_userprofile_group;
105 property use module_navlinks_group;
106 property use module_customtext_group;
107 property use module_calendar_group;
108 property use module_pagesummary_group;
109 property use module_tags_group;
110 property use module_links_group;
111 property use module_syndicate_group;
112 property use module_time_group;
113 property use module_poweredby_group;
114 property use module_credit_group;
115 property use module_search_group;
116 property use module_cuttagcontrols_group;
119 # explicitly define what sections the layout has available
120 set module_layout_sections = "none|(none)|one|Above entries|two|Below entries";
122 ##===============================
124 ##===============================
126 propgroup customcss {
127 property use external_stylesheet;
128 property use include_default_stylesheet;
129 property use linked_stylesheet;
130 property use custom_css;
134 ##===============================
135 ## Text - main navigation
136 ##===============================
138 property use text_view_recent;
139 property use text_view_friends;
140 property use text_view_network;
141 property use text_view_archive;
142 property use text_view_userinfo;
143 property use text_view_memories;
144 property use text_view_tags;
146 ##===============================
147 ## Text - entry comment-related
148 ##===============================
150 property use text_post_comment;
151 property use text_max_comments;
152 property use text_read_comments;
153 property use text_post_comment_friends;
154 property use text_read_comments_friends;
156 property use text_skiplinks_back;
157 property use text_skiplinks_forward;
158 property use text_meta_music;
159 property use text_meta_mood;
160 property use text_meta_location;
161 property use text_meta_xpost;
162 property use text_tags;
164 property use text_entry_prev;
165 property use text_entry_next;
166 property use text_edit_entry;
167 property use text_edit_tags;
168 property use text_tell_friend;
169 property use text_mem_add;
170 property use text_watch_comments;
171 property use text_unwatch_comments;
172 property use text_permalink;
173 property use text_stickyentry_subject;
175 property use text_module_customtext;
176 property use text_module_customtext_content;
177 property use text_module_customtext_url;
180 set module_userprofile_section = "one";
181 set module_pagesummary_section = "one";
183 set module_navlinks_section = "two";
185 set module_tags_section = "two";
186 set module_tags_opts_type = "cloud";
188 set module_links_section = "two";
189 set module_customtext_section = "two";
190 set module_customtext_show = false;
191 set module_syndicate_section = "two";
192 set module_credit_section = "two";
193 set module_time_section = "two";
194 set module_poweredby_section = "two";
196 set module_calendar_section = "two";
197 set module_calendar_show = false;
199 set module_userprofile_order = 1;
200 set module_pagesummary_order = 2;
202 set module_navlinks_order = 10;
203 set module_tags_order = 11;
204 set module_links_order = 12;
206 set module_customtext_order = 13;
207 set module_syndicate_order = 14;
208 set module_credit_order = 15;
209 set module_time_order = 16;
210 set module_poweredby_order = 17;
211 set module_search_order = 19;
212 set module_cuttagcontrols_order = 20;
214 set module_calendar_order = 18;
216 function Page::print()
218 """<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">\n<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">\n<head profile="http://www.w3.org/2006/03/hcard http://purl.org/uF/hAtom/0.1/ http://gmpg.org/xfn/11">\n""";
220 $this->print_stylesheets();
221 $this->print_head_title();
223 $this->print_wrapper_start();
224 $this->print_control_strip();
231 $this->print_global_title();
232 $this->print_global_subtitle();
233 $this->print_title();
235 </div><!-- end header>inner -->
236 </div><!-- end header -->
239 <div id="secondary"><div class="inner">
241 $this->print_module_section("one");
243 </div></div><!-- end secondary and secondary>inner -->
245 <div id="primary"><div class="inner">
249 </div></div><!-- end primary and primary>inner -->
250 <div id="tertiary"><div class="inner">
252 $this->print_module_section("two");
254 </div></div><!-- end tertiary and tertiary>inner -->
255 </div><!-- end content>inner -->
256 </div> <!-- end content -->
257 </div> <!-- end canvas>inner -->
265 <div class="page-top"><a href="#">$*text_page_top</a></div>
266 </div><!-- end footer>inner -->
267 </div><!-- end footer -->
269 </div> <!-- end canvas -->
271 $this->print_wrapper_end();
275 function Page::print_default_stylesheet {
277 var string page_background = generate_background_css ($*image_background_page_url, $*image_background_page_repeat, $*image_background_page_position, $*color_page_background);
278 var string entry_background = generate_background_css ($*image_background_entry_url, $*image_background_entry_repeat, $*image_background_entry_position, $*color_entry_background);
279 var string page_colors = generate_color_css($*color_page_text, $*color_page_background, $*color_page_border);
280 var string entry_colors = generate_color_css($*color_entry_text, $*color_entry_background, $*color_entry_border);
281 var string page_title_colors = generate_color_css($*color_page_title, new Color, new Color);
282 var string page_link_colors = generate_color_css($*color_page_link, new Color, new Color);
283 var string page_link_active_colors = generate_color_css($*color_page_link_active, new Color, new Color);
284 var string page_link_hover_colors = generate_color_css($*color_page_link_hover, new Color, new Color);
285 var string page_link_visited_colors = generate_color_css($*color_page_link_visited, new Color, new Color);
287 var string page_font = generate_font_css("", $*font_base, $*font_fallback, $*font_base_size, $*font_base_units);
288 var string page_title_font = generate_font_css($*font_journal_title, $*font_base, $*font_fallback, $*font_journal_title_size, $*font_journal_title_units);
289 var string page_subtitle_font = generate_font_css($*font_journal_subtitle, $*font_base, $*font_fallback, $*font_journal_subtitle_size, $*font_journal_subtitle_units);
290 var string entry_title_font = generate_font_css($*font_entry_title, $*font_base, $*font_fallback, $*font_entry_title_size, $*font_entry_title_units);
291 var string comment_title_font = generate_font_css($*font_comment_title, $*font_base, $*font_fallback, $*font_comment_title_size, $*font_comment_title_units);
292 var string module_font = generate_font_css($*font_module_text, $*font_base, $*font_fallback, $*font_module_text_size, $*font_module_text_units);
293 var string module_title_font = generate_font_css($*font_module_heading, $*font_base, $*font_fallback, $*font_module_heading_size, $*font_module_heading_units);
295 var string entry_contentsfooter_shift = "";
296 if ( $*entry_userpic_style == "" ) { $entry_contentsfooter_shift = "84px"; }
297 elseif ( $*entry_userpic_style == "small" ) { $entry_contentsfooter_shift = "59px"; }
298 elseif ( $*entry_userpic_style == "smaller" ) { $entry_contentsfooter_shift = "34px"; }
300 var string entry_header_margin = "";
301 if ( $*entry_userpic_style == "" ) { $entry_header_margin = "110px"; }
302 elseif ( $*entry_userpic_style == "small" ) { $entry_header_margin = "85px"; }
303 elseif ( $*entry_userpic_style == "smaller" ) { $entry_header_margin = "60px"; }
305 var string comment_header_margin = "";
306 if ( $*comment_userpic_style == "" ) { $comment_header_margin = "110px"; }
307 elseif ( $*comment_userpic_style == "small" ) { $comment_header_margin = "85px"; }
308 elseif ( $*comment_userpic_style == "smaller" ) { $comment_header_margin = "60px"; }
310 var string entrytitle_padding = $*use_custom_friend_colors ? "padding: .2em;" : "";
312 var string userpic_css = "";
313 if ($*userpics_position == "left") {
315 .has-userpic .entry .header {
316 margin-left: $entry_header_margin;
318 .has-userpic .comment .header {
319 margin-left: $comment_header_margin;
322 .has-userpic .entry .poster {
323 margin-left: $entry_header_margin;
326 #comments .userpic a img, .comment-wrapper .userpic a img {
330 #comments .comment-content, .comment-wrapper .comment-content {
335 elseif ($*userpics_position == "right") {
337 .has-userpic .entry .header {
338 margin-right: $entry_header_margin;
340 .has-userpic .comment .header {
341 margin-right: $comment_header_margin;
344 .has-userpic .entry .poster {
345 margin-right: $entry_header_margin;
348 .has-userpic .entry .contents .userpic {
352 #comments .userpic a img, .comment-wrapper .userpic a img {
356 #comments .comment-content, .comment-wrapper .comment-content {
373 $page_link_visited_colors
377 $page_link_active_colors
380 q { font-style: italic;
383 /* All posts & all navigation */
384 #primary, #secondary, #tertiary, #footer {
388 font-family: $page_font
394 /* General page background */
397 font-family: $page_font;
402 margin-left: $*margins_size$*margins_unit;
403 margin-right: $*margins_size$*margins_unit;
421 color: $*color_page_title ;
422 background-color: $*color_header_background ;
431 #header h2#subtitle {
437 #header h2#pagetitle {
441 #header h2#pagetitle:before {
442 content: "This page: ";
445 /* Navigation at top/bottom of recent entries page */
450 .navigation .inner ul:before {
451 content: "Navigation: ";
461 .navigation .inner ul li {
465 .navigation ul li.page-back:after {
470 * Page Header (module-section-one)
473 ul.userlite-interaction-links {
478 ul.userlite-interaction-links.icon-links li {
482 .module-section-one {
493 text-decoration: none;
496 .module-navlinks ul li {
500 .module-tags_list ul.module-list {
506 .tags_cloud li, .module-tags_cloud li {
508 list-style-type: none;
511 .module-tags_list ul.module-list li {
515 .module-typelist .manage-link:before,
516 .module-tags_list .manage-link:before,
517 .module-tags_multilevel .manage-link:before {
521 .module-typelist .manage-link:after,
522 .module-tags_list .manage-link:after,
523 .module-tags_multilevel .manage-link:after {
528 * Single Post and Comment pages
531 #primary .entry, #primary .comment {
541 font-weight: inherit;
548 .has-userpic .entry .header {
553 border-top: solid 2px $*color_page_border;
556 .entry .entry-title {
561 .entry .metadata-label {
565 .entry .metadata-label:first {
566 text-transform: uppercase;
569 .entry .metadata ul {
579 .entry .metadata.top-metadata {
583 .entry h3.entry-title {
587 .entry h3.entry-title a {
588 text-decoration: none;
591 .entry .contents .userpic a img {
596 .has-userpic .entry .poster {
601 /* Main body of a post */
602 /* Pushed down in order to accomodate the header being next to the icon. */
605 bottom: $entry_contentsfooter_shift;
608 /* Single post metadata links location/etc. */
611 bottom: $entry_contentsfooter_shift;
614 /* Entry/Comment links */
615 ul.entry-interaction-links, ul.entry-management-links,
616 ul.comment-management-links, ul.comment-interaction-links {
623 /* entries w/o icons (especially feeds) needs to be styled separately */
629 #primary .no-userpic .header {
634 .no-userpic .poster .entry-poster {
638 .no-userpic .entry .contents {
642 .no-userpic .entry .footer {
647 * Calendar/Archive page
648 * NB: This is horribly inaccessible so mostly I just have trashed/hidden it :)
651 #archive-year table.month {
655 #archive-year .month .header h3,
656 #archive-year .month .footer a {
665 #comments .userpic a img, .comment-wrapper .userpic a img {
670 #comments .comment-content, .comment-wrapper .comment-content {
675 ul.entry-interaction-links li, ul.entry-management-links li,
676 ul.comment-interaction-links li, ul.comment-management-links li {
699 .module-credit .module-content dl dt, .module-credit .module-content dl dd {
704 .module-section-one {
708 .module-section-two {
709 border-top: solid $*color_page_border 2px;
718 module-section-two ul.module-list li {
732 .sorting-options ul {
737 .sorting-options ul li {
748 margin-bottom: .25em;
761 .icon-info .default {
762 text-decoration: underline;
765 .icon-info .keywords ul {
771 .icon-info .keywords ul li {
773 padding: 0 .25em 0 0;
778 /* End of CSS file */""";