layerinfo type = "layout"; layerinfo name = "Negatives"; layerinfo redist_uniq = "negatives/layout"; layerinfo author_name = "phoenix"; layerinfo des = "Highly customisable div-based layout"; layerinfo lang = "en"; set layout_authors = [ { "name" => "phoenix", "type" => "user" } ]; ##=============================== ## Presentation ##=============================== propgroup presentation { property use layout_type; property use num_items_recent; property use num_items_reading; property use use_custom_friend_colors; property use use_shared_pic; property use use_journalstyle_entry_page; property use margins_size; property use margins_unit; property use medium_breakpoint_width; property use large_breakpoint_width; property use custom_control_strip_colors; property use reverse_sortorder_group; property use reg_firstdayofweek; property use tags_page_type; property use num_items_icons; property use icons_page_sort; property use all_entrysubjects; property use all_commentsubjects; property use entry_datetime_format_group; property use comment_datetime_format_group; property use userpics_style_group; property use userpics_position; property use entry_metadata_position; property use userlite_interaction_links; property use entry_management_links; property use comment_management_links; } set layout_type = "two-columns-right"; set userpics_position = "right"; set entry_management_links = "text"; set comment_management_links = "text"; set custom_colors_template = "%%new%% div.footer, %%new%% div.footer ul, %%new%% div.footer ul a {background-color: %%background%%} %%new%% {border: 5px solid %%background%%;} %%new%% div.footer a, %%new%% div.footer {color: %%foreground%%;}"; ##=============================== ## Colors ##=============================== propgroup colors { property use color_page_background; property use color_page_text; property use color_page_title; property use color_page_link; property use color_page_link_active; property use color_page_link_hover; property use color_page_link_visited; property use color_module_background; property use color_module_text; property use color_module_link; property use color_module_link_active; property use color_module_link_hover; property use color_module_link_visited; property use color_module_title; property use color_module_border; property use color_header_background; property use color_header_link; property use color_header_link_active; property use color_header_link_hover; property use color_header_link_visited; property use color_footer_background; property use color_footer_link; property use color_footer_link_active; property use color_footer_link_hover; property use color_footer_link_visited; property use color_entry_background; property use color_entry_text; property use color_entry_link; property use color_entry_link_active; property use color_entry_link_hover; property use color_entry_link_visited; property use color_entry_title; property use color_entry_interaction_links_background; property use color_entry_interaction_links; property use color_entry_interaction_links_active; property use color_entry_interaction_links_hover; property use color_entry_interaction_links_visited; property use color_entry_border; property use control_strip_bgcolor; property use control_strip_fgcolor; property use control_strip_bordercolor; property use control_strip_linkcolor; } ##=============================== ## Fonts ##=============================== propgroup fonts { property use font_base; property use font_fallback; property use font_base_size; property use font_base_units; property use font_journal_title; property use font_journal_title_size; property use font_journal_title_units; property use font_journal_subtitle; property use font_journal_subtitle_size; property use font_journal_subtitle_units; property use font_module_heading; property use font_module_heading_units; property use font_module_heading_size; property use font_module_text; property use font_module_text_size; property use font_module_text_units; property use font_entry_title; property use font_entry_title_size; property use font_entry_title_units; property use font_comment_title; property use font_comment_title_size; property use font_comment_title_units; property use font_sources; } set font_base = "Georgia"; set font_fallback = "serif"; set font_base_size = "1"; set font_base_units = "em"; set font_module_heading_size = "1.1"; set font_module_heading_units = "em"; set font_entry_title_size = "1.1"; set font_entry_title_units = "em"; ##=============================== ## Images ##================================ propgroup images { property use image_background_page_group; property use image_background_module_group; property use image_background_header_group; property use image_background_header_height; property use image_background_entry_group; } ##=============================== ## Modules ##=============================== propgroup modules { property use module_userprofile_group; property use module_navlinks_group; property use module_calendar_group; property use module_links_group; property use module_syndicate_group; property use module_tags_group; property use module_pagesummary_group; property use module_active_group; property use module_time_group; property use module_poweredby_group; property use module_customtext_group; property use module_credit_group; property use module_search_group; property use module_cuttagcontrols_group; property use module_subscriptionfilters_group; } set module_layout_sections = "none|(none)|one|Main Module Section|two|Header|three|Footer"; set module_navlinks_section = "two"; set module_calendar_section = "three"; set module_calendar_opts_type = "horizontal"; set module_time_section = "none"; set module_poweredby_section = "one"; ##=============================== ## Text ##=============================== propgroup text { property use text_module_userprofile; property use text_module_links; property use text_module_syndicate; property use text_module_tags; property use text_module_popular_tags; property use text_module_pagesummary; property use text_module_active_entries; property use text_module_customtext; property use text_module_customtext_url; property use text_module_customtext_content; property use text_module_credit; property use text_module_search; property use text_module_cuttagcontrols; property use text_module_subscriptionfilters; property use text_view_recent; property use text_view_archive; property use text_view_friends; property use text_view_friends_comm; property use text_view_friends_filter; property use text_view_network; property use text_view_tags; property use text_view_memories; property use text_view_userinfo; property use text_entry_prev; property use text_entry_next; property use text_edit_entry; property use text_edit_tags; property use text_mem_add; property use text_tell_friend; property use text_watch_comments; property use text_unwatch_comments; property use text_permalink; property use text_read_comments; property use text_read_comments_friends; property use text_read_comments_screened_visible; property use text_read_comments_screened; property use text_post_comment; property use text_post_comment_friends; property use text_meta_location; property use text_meta_mood; property use text_meta_music; property use text_meta_xpost; property use text_tags; property use text_stickyentry_subject; property use text_max_comments; property use text_skiplinks_back; property use text_skiplinks_forward; } ##=============================== ## Custom CSS ##=============================== propgroup customcss { property use external_stylesheet; property use include_default_stylesheet; property use linked_stylesheet; property use custom_css; } ####################### #Functions ####################### ######################## #Initialize some properties with fallback values function prop_init { if ( not defined $*color_entry_interaction_links_background ) { $*color_entry_interaction_links_background = $*color_page_background; } } ######################## #Prints the stylesheet function Page::print_default_stylesheet() { var string medium_media_query = generate_medium_media_query(); var string large_media_query = generate_large_media_query(); var string page_background = generate_background_css($*image_background_page_url,$*image_background_page_repeat,$*image_background_page_position,$*color_page_background); var string header_background = generate_background_css($*image_background_header_url, $*image_background_header_repeat, $*image_background_header_position, $*color_header_background); var string footer_background = generate_background_css( "", "", "", $*color_footer_background ); var string entry_background = generate_background_css ($*image_background_entry_url, $*image_background_entry_repeat, $*image_background_entry_position,$*color_entry_background); var string module_background = generate_background_css ($*image_background_module_url, $*image_background_module_repeat, $*image_background_module_position,$*color_module_background); if ($*image_background_header_height > 0) { $header_background = $header_background + "\n height: " + $*image_background_header_height + "px;"; } var string page_font = generate_font_css("", $*font_base, $*font_fallback, $*font_base_size, $*font_base_units); var string journal_title_font = generate_font_css($*font_journal_title, $*font_base, $*font_fallback, $*font_journal_title_size, $*font_journal_title_units); var string journal_subtitle_font = generate_font_css($*font_journal_subtitle, $*font_base, $*font_fallback, $*font_journal_subtitle_size, $*font_journal_subtitle_units); 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 comment_title_font = generate_font_css($*font_comment_title, $*font_base, $*font_fallback, $*font_comment_title_size, $*font_comment_title_units); var string module_font = generate_font_css($*font_module_text, $*font_base, $*font_fallback, $*font_module_text_size, $*font_module_text_units); var string module_title_font = generate_font_css($*font_module_heading, $*font_base, $*font_fallback, $*font_module_heading_size, $*font_module_heading_units); var string userpic_css = ""; if ($*userpics_position == "left") { $userpic_css = """ .entry .userpic, .comment .userpic { float: left; margin-right: 2px; } """; } elseif ($*userpics_position == "right") { $userpic_css = """ .entry .userpic, .comment .userpic { float: right; } """; } print_custom_control_strip_css(); """ body { margin: 0; padding: 0; $page_font $page_background color:$*color_page_text; } html body { margin-left: $*margins_size$*margins_unit; margin-right: $*margins_size$*margins_unit; } a { text-decoration: none; font-weight: bold; color: $*color_page_link; outline: none; } a:visited { color: $*color_page_link_visited; } a:hover { color: $*color_page_link_hover; } a:active { color: $*color_entry_link_active; } img, img a { border: 0!important; } q { font-style: italic; } #header { border-top: 0!important; border-bottom: 5px double $*color_module_border; color: $*color_page_title; $header_background } #header h1 { $journal_title_font padding: 0 1.25em; } #header h2 { $journal_subtitle_font padding: 0 1.7em; } #header a { color: $*color_header_link; } #header a:active { color: $*color_header_link_active; } #header a:visited { color: $*color_header_link_visited; } #header a:hover { color: $*color_header_link_hover; } .module-section-two { } .module-section-three { border-bottom: 0!important; border-top: 5px double $*color_module_border; } #footer { clear:both; $footer_background; } #footer a { color: $*color_footer_link; } #footer a:active { color: $*color_footer_link_active; } #footer a:visited { color: $*color_footer_link_visited; } #footer a:hover { color: $*color_footer_link_hover; } #primary { position: relative; font-size: 0.9em; padding: 10px; padding-bottom: 5px; border: 0px; border-left:5px double $*color_module_border; border-right:5px double $*color_module_border; z-index: 10; } #secondary { position: relative; margin: 0px; padding: 10px; border: 0px; padding-bottom: 10px; font-size: 0.80em; $module_background color: $*color_module_text; border-left: 5px double $*color_module_border; border-right: 5px double $*color_module_border; } #secondary a { color:$*color_module_link; font-weight:normal; padding-bottom:1px; } #secondary a:visited { color:$*color_module_link_visited; } #secondary a:hover { color:$*color_module_link_hover; } #secondary a:active { color:$*color_module_link_active; } #secondary .module-header { border-bottom:1px solid $*color_module_border; font-weight:bold; letter-spacing:.3em; } #secondary .module-header a { color: $*color_module_title; } @media $medium_media_query { .multiple-columns #secondary { border: none; } .two-columns-right #secondary .module-header { text-align: right; } } .manage-link { text-align: center; } .module { letter-spacing:.3em; padding: 0.5em 0; } .module h2 { $module_title_font } .module-content { $module_font } .module-tags_cloud li, .tags_cloud li { display: inline; } .search-box { max-width: 100%; } .search-form .search-box-item, .search-form .search-button-item { display: block } .search-form .comment_search_checkbox_item { display: inline } .entry, .entry-wrapper, .comment, .comment-wrapper { min-height: 110px; border:5px solid $*color_entry_border; padding: 5px; $entry_background; color: $*color_entry_text; } .comment-wrapper { min-width: 15em; } .comment-wrapper.partial , .partial .comment { min-height: 0; } .comment-title { $comment_title_font margin: 0; } .no-subject .comment .comment-title { background: none; } .partial .comment-title { display: inline; margin-right: .2em; } .partial .comment-poster:before { content: "- "; } .entry a, .comment a { color: $*color_entry_link; } .entry a:visited, .comment a:visited { color: $*color_entry_link_visited; } .entry a:hover, .comment a:hover { color: $*color_entry_link_hover; } .entry a:active, .comment a:active { color: $*color_entry_link_active; } .tag { margin: 10px 0; } .tag ul { display: inline; margin: 0; padding: 0; } .tag li { display: inline; } .bottomcomment, .comments-message { border: 15px double $*color_entry_border; padding: 5px; margin-top: 5px; background-color: $*color_entry_background; color: $*color_entry_text; } .entry-wrapper .footer { background-color: $*color_entry_interaction_links_background; } .comment-poster .anonymous { font-weight: bold; } .comment-posted { font-weight:bold; } .comment-management-links { display: inline; padding-left: 0; } .entry-title, .userlite-interaction-links.icon-links li, .entry-management-links li, .entry-interaction-links li, .comment-interaction-links li, .comment-management-links li { display: inline; padding-left: 0.5em; } .no-subject .entry .entry-title { background: none; padding-left: 0; } .entry-title a { color: $*color_entry_title; } .entry-title a:hover { color: $*color_entry_link_hover; } /* ensure comment content stretches out horizontally so it's readable */ .comment-content:before { content: ""; display: block; overflow: hidden; width: 10em; } .comment-content { border-top: 1px transparent solid; } /* for firefox */ /* To prevent overlapping when icon's on the left */ /* and list is the first thing in content */ .entry-content li, .comment-content li { list-style-position: inside; } /* To constrain the width and prevent layout breaking */ .entry-content img, .comment-content img { max-width: 100%; height: auto; } @media $large_media_query { .entry-content img, .comment-content img { max-width: none; } } .entry .footer, .comment .footer { clear: both; } .entry-management-links, .entry-management-links a, .entry-interaction-links, .entry-interaction-links a, .comment-interaction-links, .comment-interaction-links a{ background-color: $*color_entry_interaction_links_background; color: $*color_entry_interaction_links; padding: 0 0.5em; font-weight: normal; text-align: center; } .entry-management-links a:visited, .comment-management-links a:visited, .entry-interaction-links a:visited, .comment-interaction-links a:visited{ color: $*color_entry_interaction_links_visited; } .entry-management-links a:hover, .comment-management-links a:hover, .entry-interaction-links a:hover, .comment-interaction-links a:hover{ color: $*color_entry_interaction_links_hover; } .entry-management-links a:active, .comment-management-links a:active, .entry-interaction-links a:active, .comment-interaction-links a:active{ color: $*color_entry_interaction_links_active; } .userlite-interaction-links.icon-links, .entry-management-links ul, .comment-management-links ul { list-style: none; margin-left: 0; padding-left: 0; } .tags-container { color: $*color_entry_text; margin: 5px; padding: 5px; $entry_background; } .tags-container h2 { font-weight: bold !important; margin: 0 !important; padding-bottom: 10px !important; $entry_title_font } .tags-container .ljtaglist { padding-bottom: 5px !important; } .tags-container a { color: $*color_entry_link !important; } .tags-container a:visited { color: $*color_entry_link_visited !important; } .tags-container a:hover { color: $*color_entry_link_hover !important; } .tags-container a:active { color: $*color_entry_link_active !important; } /*--- Icons Page ---*/ .icons-container { color: $*color_entry_text; margin: 5px; padding: 5px; $entry_background; } .icons-container h2 { font-weight: bold !important; margin: 0 !important; padding-bottom: 10px !important; $entry_title_font } .icons-container a { color: $*color_entry_link !important; } .icons-container a:visited { color: $*color_entry_link_visited !important; } .icons-container a:hover { color: $*color_entry_link_hover !important; } .icons-container a:active { color: $*color_entry_link_active !important; } .sorting-options ul { padding-left: 0; } .sorting-options ul li { display: inline; } .icons-container .icon { margin: 1em 0; } .icon-image { float: left; clear: left; margin-bottom: .25em; min-width: 100px; padding-right: 1em; } .icon-info { min-height: 100px; } .icon-info span { font-weight: bold; } .icon-info .default { text-decoration: underline; } .icon-keywords ul { display: inline; margin: 0; padding: 0; } .icon-keywords ul li { display: inline; } .module-section-two .module, .module-section-three .module { padding-left: .5em; padding-right: .5em; } .module-navlinks ul { display: block; padding: 0; } .module-navlinks ul, .module-navlinks li { font-weight: bold; } .module-section-three .module-navlinks ul, .module-section-three .module-navlinks li, .module-section-two .module-navlinks ul, .module-section-two .module-navlinks li { display: inline; padding: .2em 1em .2em .5em; } @media $medium_media_query { .two-columns-left .module-section-two .module-navlinks { text-align: right; } } .module-section-one .module-navlinks { clear: both; } .module ul { list-style-position: inside; } .module-section-one ul { padding-left: 0.3em } .navigation ul { padding-left: 0em; } .navigation li { padding-left: 0.3em; display: inline; } .datetime{ margin-bottom:10px; font-style:italic; } .subject, .subject a, .subject a:visited, .subject a:hover, .subject a:active { font-weight:bold; } .subject { $entry_title_font } @media $medium_media_query { .two-columns-right .module-section-one .module-userprofile .userpic { text-align: right; } } .module-section-two .module-calendar, .module-section-three .module-calendar { text-align: center; font-size: 0.8em; padding:5px; margin: 0; } @media $medium_media_query { .module-section-two .module-calendar, .module-section-three .module-calendar { margin: 0px 190px 0px 100px; } } .module-calendar table { letter-spacing: 0.2em; text-align: center; } .module-calendar { color: $*color_module_text; } .module-calendar a{ color: $*color_module_link; } .module-calendar a:hover{ color: $*color_module_link_hover; } /* wrap long content, particularly openid usernames */ .module-pagesummary .ljuser { white-space: normal !important; } .module-pagesummary .module-content { word-wrap: break-word; } .module-credit .category-title { font-weight: bold; } .floatclear { visibility: hidden; clear: both; height: 0; } textarea.textbox{ width: 100%; } .entry h3 { display: inline; } .page-top { font-size: .8em; padding: 5px 1em 5px 5px; text-align: right; } #primary, #secondary { margin: 0 5%; } @media $medium_media_query { .multiple-columns #primary, .multiple-columns #secondary { margin: 0; } .two-columns-left #primary { float: right;} .two-columns-left #secondary { float: right; } .two-columns-right #primary { float: left; } .two-columns-right #secondary {float: left;} .two-columns-left #primary { right: 10%; width: 70%; } .two-columns-left #secondary { right: 10%; width: 15%; } .two-columns-right #primary {left: 10%; width: 70%;} .two-columns-right #secondary {left: 10%; width: 15%;} } $userpic_css """; } #Print_body function Page::print_entry (Entry e) { var string raquo = (not $*all_entrysubjects and $e.subject == "" and $.view != "month") ? "" : "»"; $e->print_wrapper_start(); print "
"; $e->print_userpic(); print "
$raquo"; $e->print_metatypes(); $e->print_subject(); println "
"; print "
("; $e->print_poster(); print " "; $e->print_time(); print ")"; println "
"; println "
"; if ($*entry_metadata_position == "top") { $e->print_metadata(); } $e->print_text(); if ($*entry_metadata_position == "bottom") { $e->print_metadata(); } $e->print_tags(); println "
"; $e->print_interaction_links( "topcomment" ); $e->print_management_links(); println "
"; $this->print_reply_container({"target" => "topcomment" }); $e->print_wrapper_end(); } ####################################### #Year Page function YearPage::print_body() { var YearMonth[] months = $*reverse_sortorder_year ? reverse $.months : $.months; println "
"; "
"; $this->print_year_links(); println "
"; println "
"; foreach var YearMonth m ($months) { $this->print_month($m); } println "
"; println "
"; } function YearPage::print_month(YearMonth m) { if (not $m.has_entries) { return; } """
\n \n"""; foreach var int d (weekdays()) { "\n"; } "\n"; foreach var YearWeek w ($m.weeks) { $w->print(); } """\n"""; "
"""; print $m->month_format(); """
"+$*lang_dayname_short[$d]+"
« $*text_view_month »
"; } function YearWeek::print() { """\n"""; if ($.pre_empty > 0) { """ \n"""; } foreach var YearDay d ($.days) { """\n"""; """
$d.day
\n"""; if ($d.num_entries > 0) { """
$d.num_entries
\n"""; } """\n"""; } if ($.post_empty > 0) { """ \n"""; } ""; } function MonthPage::print_body { var MonthDay[] days = $*reverse_sortorder_month ? reverse $.days : $.days; println "
"; println "
" + $.date->date_format($*lang_fmt_month_long) + "
"; "
"; $.redir->print_hiddens(); if ($.prev_url != "") { "[<<<]\n"; } if (size $.months > 1) { "\n"; } if ($.next_url != "") { "\n[>>>]\n"; } "
"; foreach var MonthDay d ($days) { if ($d.has_entries) { println "
"; println "" + lang_ordinal($d.day) + " " + $.date->date_format($*lang_fmt_month_long) + "
"; println "
"; $d->print_subjectlist(); println "
\n
\n"; } } println "
"; } function DayPage::print_body() { var Entry[] entries = $*reverse_sortorder_day ? reverse $.entries : $.entries; if (not $.has_entries) { println $*text_noentries_day; } foreach var Entry e ($entries) { $this->print_entry($e); } } ##################################### #Comment Links function EntryPage::print_comment (Comment c) { $c->print_wrapper_start(); $c->print_userpic(); println "
"; $c->print_time(); println ""; if ( $c.comment_posted ) { print safe "
$*text_comment_posted
"; } print "
"; if ($this.multiform_on) { """"""; println ""; $c->print_multiform_check(); ""; } $c->print_management_links(); println "
"; $c->print_metadata(); println ""; $c->print_poster(); $c->print_metatypes(); $c->print_subject(); println "
"; $c->print_text(); println "
"; $c->print_interaction_links(); println "
"; $c->print_reply_container(); $c->print_wrapper_end(); } #################################### #Layout Frame function Page::print() { println """ """; $this->print_meta_tags(); $this->print_head(); $this->print_stylesheets(); $this->print_head_title(); println ""; $this->print_wrapper_start(); $this->print_control_strip(); println "
"; $this->print_global_title(); $this->print_global_subtitle(); $this->print_module_section("two"); println "
"; if ($*layout_type == "one-column-split") { println "
"; if ($this.view != "archive" and $this.view != "month"){ println ""; } $this->print_module_section("one"); println "
"; } println "
"; $this->print_body(); println "
.
"; println "
"; if ($*layout_type != "one-column-split") { println "
"; if ($this.view != "archive" and $this.view != "month"){ println ""; } $this->print_module_section("one"); println "
"; } println "
"; $this->print_module_section("three"); println "
"; println "
"; print safe """"""; println "
"; $this->print_wrapper_end(); println ""; }