layerinfo type = "layout"; layerinfo name = "Tectonic"; layerinfo redist_uniq = "tectonic/layout"; layerinfo author_name = "momijizkamori"; layerinfo lang = "en"; set layout_authors = [ { "name" => "daemon @ LJ"}, { "name" => "momijizukamori", "type" => "user" } ]; ##=============================== ## Layout ##=============================== set comment_management_links = "text"; set entry_management_links = "text"; set layout_type = "one-column-split"; set userpics_position = "left"; set entry_metadata_position = "bottom"; ##=============================== ## Fonts ##=============================== set font_base = "'Franklin Gothic Book', 'Arial Narrow', Arial"; set font_fallback = "sans-serif"; set font_base_size = "1"; set font_base_units = "em"; set font_journal_title = "'Franklin Gothic Book', 'Arial Narrow', Arial"; set font_journal_title_size = "1.5"; set font_journal_title_units = "em"; set font_journal_subtitle = "'Franklin Gothic Book', Arial Narrow, Arial"; set font_journal_subtitle_size = "1.1"; set font_journal_subtitle_units = "em"; set font_entry_title = "'Franklin Gothic Book', 'Arial Narrow', Arial"; set font_entry_title_size = "1.1"; set font_entry_title_units = "em"; set font_comment_title_size = "1.1"; set font_comment_title_units = "em"; set font_module_heading = "'Franklin Gothic Book', 'Arial Narrow', Arial"; set font_module_heading_size = "1.1"; set font_module_heading_units = "em"; ##=============================== ## Presentation ##=============================== propgroup presentation_child { property string modules_per_row { des = "Modules per row in one-column mode:"; values = "32%|3|24%|4|19%|5"; } } set modules_per_row = "24%"; ##=============================== ## Colors ##=============================== propgroup colors_child { # Used instead of color_header_link: property Color color_header_links_background { des = "Page header link background color"; } property Color color_header_links { des = "Page header link color"; } property Color color_header_links_active { des = "Page header link active color"; } property Color color_header_links_hover { des = "Page header link hover color"; } property Color color_header_links_visited { des = "Page header link visited color"; } property Color color_header_links_border { des = "Page header link border color"; } property Color color_header_links_border_hover { des = "Page header link hover border color"; } property Color color_module_list_border { des = "Module list items border color"; } property Color color_module_list_background_hover { des = "Module list items hover background color"; } property Color color_module_calendar_background { des = "Calendar module background color"; } property Color color_module_calendar_text { des = "Calendar module text color"; } property Color color_module_calendar_link { des = "Calendar module link color"; } property Color color_module_calendar_link_hover { des = "Calendar module link hover color"; } property Color color_module_calendar_link_active { des = "Calendar module link active color"; } property Color color_module_calendar_link_visited { des = "Calendar module link visited color"; } property Color color_calendar_background { des = "Archive calendar background color"; } property Color color_calendar_text { des = "Archive calendar text color"; } property Color color_calendar_link { des = "Archive calendar link color"; } property Color color_calendar_link_hover { des = "Archive calendar link hover color"; } property Color color_calendar_link_active { des = "Archive calendar link active color"; } property Color color_calendar_link_visited { des = "Archive calendar link visited color"; } property Color color_entry_footer_background { des = "Entry footer background color"; } property Color color_entry_interaction_links_background { des = "Entry interaction links background color"; } property Color color_entry_interaction_links_background_hover { des = "Entry interaction links hover background color"; } property Color color_entry_interaction_links_background_active { des = "Entry interaction links active background color"; } property Color color_entry_interaction_links_background_visited { des = "Entry interaction links visited background color"; } property Color color_userpic_border { des = "User icon border color"; } } ##=============================== ## Navigation Module ##=============================== property string module_navlinks_section_override { values = "none|(none)|header|Header|one|Main Module Section|two|Secondary Module Section"; grouped = 1; } set grouped_property_override = { "module_navlinks_section" => "module_navlinks_section_override" }; set module_navlinks_section = "header"; ##=============================== ##Layout ##=============================== # Give a title to the navlinks module function print_module_navlinks() { var Page p = get_page(); var string title = "Navigation"; open_module("navlinks", "$title", ""); var string{}[] links = []; foreach var string k ($p.views_order) { var string class = "list-item-$k"; var string css = """ class="$k" """; if ($p.view == $k) { $css = """ class="current $k" """; } $links[size $links] = { "class" => $class, "item" => """"""+lang_viewname($k)+"""""" }; } print_module_list($links); close_module(); } function Page::print() { """\n\n\n"""; $this->print_meta_tags(); $this->print_head(); $this->print_stylesheets(); $this->print_head_title(); """"""; $this->print_wrapper_start(); $this->print_control_strip(); """
"""; if ($*layout_type == "one-column-split") { """
"""; $this->print_module_section("one"); """
"""; } """
"""; $this->print_body(); """
"""; if ($*layout_type != "one-column-split") { """
"""; $this->print_module_section("one"); """
"""; } """
"""; $this->print_module_section("two"); """
"""; """
"""; $this->print_wrapper_end(); """"""; } function Page::print_entry(Entry e) "This re-sorts the header so time and metatype are printed before subject, and tags are printed as part of the main entry contents instead of as part of the footer." { ## For most styles, this will be overridden by FriendsPage::print_entry and such. $e->print_wrapper_start(); """
\n"""; """
\n"""; $e->print_time(); $e->print_metatypes(); $e->print_subject(); """
\n"""; """
\n"""; """
\n"""; """
\n"""; """
\n"""; $e->print_userpic(); $e->print_poster(); if ($*entry_metadata_position == "top") { $e->print_metadata(); } $e->print_text(); if ($*entry_metadata_position == "bottom") { $e->print_metadata(); } $e->print_tags(); """
\n"""; """
\n"""; """
\n"""; """\n"; $e->print_wrapper_end(); } function EntryPage::print_comment (Comment c) { # re-sorts time to print before subject and metatypes $c->print_wrapper_start(); """
\n"""; """
\n"""; $c->print_time(); $c->print_subject(); $c->print_metatypes(); if ( $c.comment_posted ) { print safe "
$*text_comment_posted
"; } """
\n"""; """
\n"""; """
\n"""; """
\n"""; $c->print_userpic(); $c->print_poster(); $c->print_metadata(); $c->print_text(); """
\n"""; """
\n"""; """\n"; $c->print_wrapper_end(); } function print_stylesheet () { var string medium_media_query = generate_medium_media_query(); var string header_colors = generate_color_css($*color_page_title, $*color_header_background, $*color_entry_border); var string entry_colors = generate_color_css($*color_entry_text, $*color_entry_background, $*color_entry_border); var string entry_title_colors = generate_color_css($*color_entry_title, $*color_entry_title_background, new Color); var string entry_title_font = generate_font_css($*font_entry_title, $*font_base, $*font_fallback, $*font_entry_title_size, $*font_entry_title_units); var string entry_margin = ""; if ( $*entry_userpic_style == "" ) { $entry_margin = "145px"; } elseif ( $*entry_userpic_style == "small" ) { $entry_margin = "120px"; } elseif ( $*entry_userpic_style == "smaller" ) { $entry_margin = "95px"; } var string comment_margin = ""; if ( $*comment_userpic_style == "" ) { $comment_margin = "145px"; } elseif ( $*comment_userpic_style == "small" ) {$comment_margin = "120px";} elseif ( $*comment_userpic_style == "smaller" ) {$comment_margin = "95px";} var string userpic_css = ""; if ($*userpics_position == "left") { $userpic_css = """ .has-userpic .entry .userpic { float: left; margin: 1em; } .has-userpic .comment .userpic { float: left; margin: 1.5em 1em 1em; } .has-userpic .entry-content, .has-userpic .metadata, .has-userpic .tag{ margin-left: $entry_margin;} .has-userpic .comment-content {margin-left: $comment_margin;} """; } elseif ($*userpics_position == "right") { $userpic_css = """ .has-userpic .entry .userpic { float: right; margin:1em; } .has-userpic .comment .userpic { float: right; margin: 1.5em 1em 1em; } .has-userpic .entry-content, .has-userpic .metadata, .has-userpic .tag{ margin-right: $entry_margin;} .has-userpic .poster {padding-left: 1em;} .has-userpic .comment-content {margin-right: $comment_margin;} """; } var string navlinks_css = ""; if ($*module_navlinks_section == "header") { $navlinks_css = """ .module-navlinks.module { background: none; border: none; margin: 0; width: 100%; margin: 0; text-align: left; } @media $medium_media_query { .two-columns-left .module-navlinks, .three-columns-left .module-navlinks { text-align:right; margin:0 0 0 -5px;} .three-columns-sides .module-navlinks {text-align:center;} } .module-navlinks ul { margin: 0; padding: 0; display: inline; } .module-navlinks.module li { background: $*color_header_links_background; font-size:smaller; padding: 0.5em ; display: inline; margin: 0 -5px 0 0; border-bottom: 5px solid $*color_header_links_border;} .module-navlinks.module li:hover { border-color:$*color_header_links_border_hover; background: $*color_header_links_background;} .module-navlinks .module-header {display:none;} .module-navlinks a {font-size: smaller; color: $*color_header_links} .module-navlinks a:visited {font-size: smaller; color: $*color_header_links_visited} .module-navlinks a:hover {color: $*color_header_links_hover; text-decoration:none;} .module-navlinks a:active {font-size: smaller; color: $*color_header_links_active} """; } """ body { margin: 1em 0 0; } #canvas { width: 92%; margin: 0 auto; } #primary > .inner:first-child { padding: 0; margin: 0 .25em 0; } #secondary > .inner:first-child, #tertiary > .inner:first-child { padding: 0; } @media $medium_media_query { .column-left #primary > .inner:first-child { padding-left: 1em; } .column-right #primary > .inner:first-child { padding-right: 1em; } .three-columns-left #secondary > .inner:first-child, .three-columns-right #secondary > .inner:first-child { padding-right: .5em; } .three-columns-left #tertiary > .inner:first-child, .three-columns-right #tertiary > .inner:first-child { padding-left: .5em; } } a { text-decoration: none; } a:hover { text-decoration: underline; } p { margin: 1em 0; } blockquote { $entry_colors margin: 2em 2em 2em 5em; padding: .7em; width: 70%; } ul { list-style: square inside; margin: .5em 1em; } ol { list-style: decimal inside; margin: .5em 1.5em; } /*--- Titles ---*/ #header { margin: 0 .25em .5em; padding: 0; display: flex; flex-direction: column; } #header > .inner { flex-grow: 1; display: flex; flex-direction: column; width: 100%; bottom: 0; } #pagetitle { flex-grow: 1; } h1#title, h2#pagetitle, h2#subtitle { text-align: right; text-transform: uppercase; } h1#title a { color: $*color_page_title; } /*--- Journal Navigation ---*/ .navigation { $entry_colors border:0; border-top: 30px solid $*color_entry_border; font-weight: bold; padding: .25em; margin: 0 0 1em 0; } .navigation.empty { display: none; } .page-read .noentries { font-weight: normal; } li.page-separator { display: none; } /*--- Sidebar aka Modules ---*/ #secondary, #tertiary { text-align: center; } .module { text-align:left; } @media $medium_media_query { .one-column .module { display: inline-block; vertical-align: top; width: $*modules_per_row; } } #secondary > .inner:first-child, #tertiary > .inner:first-child { border-top: 30px solid $*color_module_border; margin: 0 .25em 1em; padding: .5em; background: $*color_module_background; } .module {border: 0;} h2.module-header { font-weight: bold; margin: .5em 0; padding: .5em; } h2.module-header a { color: $*color_module_title; } .module-content .userpic { text-align: center; } .module-content .userpic img { border: 10px solid $*color_module_border; } .journal-name { text-transform: uppercase; margin: .5em 0 0; text-align: center; } .journal-website-name { text-transform: uppercase; text-align: center; } ul.userlite-interaction-links.icon-links { margin: .5em 0 0; text-align: center; } ul.userlite-interaction-links.icon-links li { margin: 0 auto; text-align: center; } ul.userlite-interaction-links.text-links li { padding: 0 0 0 .5em; } .module-content ul {margin: -.5em 0 0;} ul.module-list { list-style: none; } ul.module-list li { margin:0; padding: .25em; border-bottom: 1px solid $*color_module_list_border; } ul.module-list li:hover {background: $*color_module_list_background_hover;} .module-tags_multilevel li li {border:0; padding-bottom: 0px; padding-left: .5em;} .module-navlinks, .module-navlinks a { color: $*color_module_title; font-family: $*font_module_heading; font-weight: bold; } .module-navlinks ul.module-list { color: $*color_module_title; text-transform: uppercase; } .manage-link { margin: .5em 0 0; text-align: right; text-transform: uppercase; } .module-calendar table {font-size:smaller; margin:0 auto;} .module-calendar th { font-weight: bold; margin: 0 .2em; padding: .3em; text-transform: uppercase; background: $*color_module_calendar_background; text-align:center; color:$*color_module_calendar_text; } .module-calendar td { background: $*color_module_calendar_background; margin: 0 .2em; padding: .25em .5em .5em .25em; text-transform: uppercase; text-align:center; color:$*color_module_calendar_text; } .module-calendar td a {color:$*color_module_calendar_link;} .module-calendar td a:hover {color:$*color_module_calendar_link_hover;} .module-calendar td a:visited {color:$*color_module_calendar_link_visited;} .module-calendar td a:active {color:$*color_module_calendar_link_active;} $navlinks_css /*--- Entries ---*/ .entry, .comment, #postform{ border: 0; border-top: 30px solid $*color_entry_border; margin: 0 0 1em 0; } .entry-content, .comment-content { margin: 1em; min-height: 130px; /*prevents metadata shifting on short entries*/ } .entry .header { color: $*color_entry_title; background: $*color_entry_title_background; margin: 0 0 .5em; padding: .5em; } .entry h3.entry-title { text-transform: lowercase; font-weight: bold; padding:.5em ; margin:0; background: transparent; display:inline-block; } .datetime { display: block; font-size: 0.75em; margin: 0 0 -.75em; text-transform: uppercase; font-style: italic; } .datetime a {color: $*color_entry_title;} .poster { display: inline-block; margin: 1em 0 0; } .entry .userpic img, .comment .userpic img { border: 10px solid $*color_userpic_border; } .entry .footer, .comment .footer { background: $*color_entry_footer_background; clear: both; text-align: right; padding: .25em 0; margin-top: 1em; } ul.entry-interaction-links, ul.entry-management-links, ul.comment-interaction-links, ul.comment-management-links { margin:0; padding: 0; display:inline; } ul.text-links li {background: $*color_entry_interaction_links_background; padding: 0.25em;} .text-links a, #comments .text-links a {font-size: smaller; color: $*color_entry_interaction_links;} ul.text-links li:hover {background: $*color_entry_interaction_links_background_hover; padding: 0.25em;} .text-links li:hover a, #comments .text-links li:hover a {color: $*color_entry_interaction_links_hover; text-decoration: none;} ul.text-links li:active {background: $*color_entry_interaction_links_background_active; padding: 0.25em;} .text-links li:active a, #comments .text-links li:active a {color: $*color_entry_interaction_links_active; text-decoration: none;} ul.text-links li:visited {background: $*color_entry_interaction_links_background_hover; padding: 0.25em;} .text-links li:visited a, #comments .text-links li:visited a {color: $*color_entry_interaction_links_hover; text-decoration: none;} /*--- Comments ---*/ .comment, #qrform, #postform, .bottomcomment, .comment-pages { $entry_colors border: none } .comment-pages {text-align:center; font-weight:bold; padding: .5em; margin-bottom: .5em;} #qrform {border-top: .25em solid $*color_entry_footer_background;} #comments h4.comment-title, #comments h4.comment-title a { color: $*color_comment_title; text-transform: lowercase; font-weight: bold; padding:.5em ; margin:0; background:transparent; } .comment .header { color: $*color_comment_title; background: $*color_comment_title_background; margin: 0 0 .5em 0; padding: .5em; } textarea.textbox { border: 1px solid; width: 80% !important; } #qrform table { border: 0 !important; } .comment-wrapper { margin: 0; padding: 0; } .no-userpic .comment-poster { padding-left: 1em;} table.talkform { margin: 0 0 .5em 0; padding: .5em; } .bottomcomment { margin: .5em 0; padding: .25em 0; text-align:center; } .bottomcomment label {display:block; padding-top: .5em;} /*--- Currents and Tags AKA Metadata ---*/ .metadata, .tag { font-size: smaller; padding-left: 1.5em; } .metadata ul { margin: 0; padding: 0; } .metadata-item-location, .metadata-item-music, .metadata-item-mood, .tag ul { text-align: right; } .tag ul li { font-weight: normal; margin: .5em .2em 0 0; text-align: right; } /*---Unified Secondary Page Styling---*/ #archive-year .header h3, .tags-container .header h2, .icons-container .header h2 { $entry_title_font $entry_title_colors; text-transform: lowercase; padding: .5em; } .tags-container a, .icons-container a, #archive-year a, #comments a, #archive-month a, .navigation a { color:$*color_entry_link; } .tags-container a:active, .icons-container a:active, #archive-year a:active, #comments a:active, #archive-month a:active, .navigation:active { color:$*color_entry_link_active; } .tags-container a:hover, .icons-container a:hover, #archive-year a:hover, #comments a:hover, #archive-month a:hover, .navigation a:hover { color:$*color_entry_link_hover; } .tags-container a:visited, .icons-container a:visited, #archive-year a:visited, #comments a:visited, #archive-month a:visited, .navigation a:visited { color:$*color_entry_link_visited; } /*--- Archive Page ---*/ .month { $entry_colors border: 0; border-top: 30px solid $*color_entry_border; margin: 0 0 1em 0; padding: 1em; } .month table { margin: auto; border:0; } .month caption { display: none; } .month th { font-weight: bold; text-align: center; text-transform: lowercase; } table.month th, table.month td, table.month td.day-empty {border: 0.2em solid $*color_entry_background;} .month td.day { background: $*color_calendar_background; color: $*color_calendar_text; font-weight: normal; padding: .5em; text-align: left; vertical-align:top; width: 4em; } .month td.day-has-entries p { padding: 0 0 0 .5em; font-weight:bold; } .month td.day-has-entries a {color:$*color_calendar_link;} .month td.day-has-entries a:hover {color:$*color_calendar_link_hover;} .month td.day-has-entries a:active {color:$*color_calendar_link_active;} .month td.day-has-entries a:visited {color:$*color_calendar_link_visited;} .month dl, .month dt, .month dd { margin: 0; padding: 0; } /*--- Tags Page ---*/ .page-tags .tags-container { $entry_colors border:0; border-top: 30px solid $*color_entry_border; margin: 0 0 .5em 0; padding: 1em; } .page-tags .tags-container ul { margin-left: .5em; padding-left: .5em; } /*--- Icons Page ---*/ .icons-container { $entry_colors border:0; border-top: 30px solid $*color_entry_border; margin: 0 0 .5em; padding: 1em; } div.icons-container div.icon:nth-of-type(2n) { clear: both; } .icons-container .icon { float: left; margin-bottom: 15px; min-width: 350px; vertical-align: bottom; width: 50%; display:table; } .icon-image { display: inline; float: left; margin-right: 1em; min-width: 100px; margin-top: 0; } .icon-info { overflow: auto; vertical-align: bottom; word-wrap: break-word; display:table-cell; width:100%; } .icon-info .label, .icon-info span { font-weight: bold; } .icons-container .inner .footer, .icon-pages { clear: both; text-align: center; } $userpic_css """; }