layerinfo type = "layout"; layerinfo name = "Database"; layerinfo redist_uniq = "database/layout"; layerinfo author_name = "ninetydegrees"; layerinfo lang = "en"; set layout_authors = [ { "name" => "ninetydegrees", "type" => "user" } ]; set layout_resources = [ { "name" => "Cyreal's font", "url" => "http://www.google.com/webfonts" } ]; ##=============================== ## Presentation ##=============================== propgroup presentation_child { property string post_title_align { des = "Content title alignment"; values = "left|Left|right|Right"; } property string post_text_align { des = "Content text alignment"; values = "left|Left|justify|Justify"; } property string entry_interaction_links { des = "Select whether entry interaction links are printed as text or using the available icons"; values = "icons|icons|text|text-only|"; } property string comment_interaction_links { des = "Select whether comment interaction links are printed as text or using the available icons"; values = "icons|icons|text|text-only|"; } property bool default_icons { des = "Replace custom icons with default ones"; note = "Text will be used instead when there are no default icons."; } } set layout_type = "two-columns-right"; set entry_date_format = "iso"; set entry_time_format = "short_24"; set comment_date_format = "iso"; set comment_time_format = "short_24"; set custom_colors_template = "%%new%% .entrybox-wrapper { border: 2px solid %%background%%; } %%new%% .entry-title { margin-bottom: .5em; } %%new%% .entry-title a { background-color: %%background%%; color: %%foreground%%; border-radius: .6em; padding: .2em; }"; set userlite_interaction_links = "text"; set entry_interaction_links = "icons"; set comment_interaction_links = "icons"; set all_commentsubjects = true; set post_title_align = "right"; set post_text_align = "justify"; set default_icons = false; set custom_control_strip_colors = "on_no_gradient"; ##=============================== ## Colors ##=============================== propgroup colors_child { property Color color_page_title_shadow { des = "Page title shadow color"; } property Color color_userpic_shadow { des = "Userpic shadow color"; } property Color color_elements_border { des = "Misc. elements border color"; } property Color color_entry_title_shadow { des = "Entry title shadow color"; } property Color color_comment_title_shadow { des = "Comment title shadow color"; } property Color color_calendar_header_background { des = "Calendar header background color"; } property Color color_calendar_header_text { des = "Calendar header color"; } property Color color_calendar_background { des = "Calendar background color"; } property Color color_calendar_link { des = "Calendar link color"; } property Color color_calendar_background_active { des = "Calendar active background color"; } property Color color_calendar_link_active { des = "Calendar active link color"; } property Color color_calendar_background_hover { des = "Calendar hover background color"; } property Color color_calendar_link_hover { des = "Calendar hover link color"; } property Color color_calendar_background_visited { des = "Calendar visited background color"; } property Color color_calendar_link_visited { des = "Calendar visited link color"; } property Color color_module_title_shadow { des = "Module title shadow color"; } # Used instead of color_header_link: property Color color_module_header_background { des = "Page header module link background color"; } property Color color_module_header_link { des = "Page header link color"; } property Color color_module_header_background_active { des = "Page header active link background color"; } property Color color_module_header_link_active { des = "Page header active link color"; } property Color color_module_header_background_hover { des = "Page header hover link background color"; } property Color color_module_header_link_hover { des = "Page header hover link color"; } property Color color_module_header_background_visited { des = "Page header visited link background color"; } property Color color_module_header_link_visited { des = "Page header visited link color"; } property Color color_module_header_border { des = "Page header border color"; } property Color color_module_calendar_header_background { des = "Calendar module header background color"; } property Color color_module_calendar_header_text { des = "Calendar module header color"; } property Color color_module_calendar_background { des = "Calendar module background color"; } property Color color_module_calendar_link { des = "Calendar module link color"; } property Color color_module_calendar_background_active { des = "Calendar module active background color"; } property Color color_module_calendar_link_active { des = "Calendar module active link color"; } property Color color_module_calendar_background_hover { des = "Calendar module hover background color"; } property Color color_module_calendar_link_hover { des = "Calendar modules hover link color"; } property Color color_module_calendar_background_visited { des = "Calendar module visited background color"; } property Color color_module_calendar_link_visited { des = "Calendar module visited link color"; } } ##=============================== ## Fonts ##=============================== propgroup fonts_child { property use font_sources; } set font_sources = "https://fonts.googleapis.com/css?family=Iceland"; set font_base = "Iceland, 'Courier New'"; set font_fallback = "monospace"; set font_base_size = "1.3"; set font_base_units = "em"; set font_journal_title_size = "2.5"; set font_journal_title_units ="em"; set font_journal_subtitle_size = "1.1"; set font_journal_subtitle_units = "em"; set font_entry_title_size = "1.25"; set font_entry_title_units ="em"; set font_comment_title_size = "1.25"; set font_comment_title_units ="em"; set font_module_heading_size = "1.25"; set font_module_heading_units = "em"; ##=============================== ## Images ##=============================== propgroup images_child { property string[] image_background_footer_group { des = "Footer background image"; grouptype = "image"; } set image_background_footer_group = [ "image_background_footer_url", "image_background_footer_repeat", "image_background_footer_position" ]; property string image_background_footer_url { grouped = 1; } property string image_background_footer_repeat { values = "repeat|tile image|no-repeat|don't tile|repeat-x|tile horizontally|repeat-y|tile vertically"; grouped = 1; } property string image_background_footer_position { values = "top left|top left|top center|top center|top right|top right|center left|center left|center center|center|center right|center right|bottom left|bottom left|bottom center|bottom center|bottom right|bottom right"; grouped = 1; } property int image_background_footer_height { des = "The height of your footer image, in pixels. Use 0 for default."; example = "50"; size = 6; } property string[] image_background_blockquote_group { des = "Blockquote background image"; grouptype = "image"; } set image_background_blockquote_group = [ "image_background_blockquote_url", "image_background_blockquote_repeat", "image_background_blockquote_position" ]; property string image_background_blockquote_url { grouped = 1; } property string image_background_blockquote_repeat { values = "repeat|tile image|no-repeat|don't tile|repeat-x|tile horizontally|repeat-y|tile vertically"; grouped = 1; } property string image_background_blockquote_position { values = "top left|top left|top center|top center|top right|top right|center left|center left|center center|center|center right|center right|bottom left|bottom left|bottom center|bottom center|bottom right|bottom right"; grouped = 1; allow_other = 1; } property int image_background_blockquote_width { des = "The width of your blockquote image, in pixels. Use 0 for default."; example = "50"; size = 6; } property string image_addmemories { des = "Add to memories icon"; noui = 1; } property string image_comments { des = "Read comments icon"; noui = 1; } property string image_delete { des = "Delete item icon"; noui = 1; } property string image_edit { des = "Post or edit item icon"; noui = 1; } property string image_edittags { des = "Edit tags icon"; noui = 1; } property string image_expand { des = "Expand thread icon"; noui = 1; } property string image_freeze { des = "Freeze comment icon"; noui = 1; } property string image_hide { des = "Hide comments icon"; noui = 1; } property string image_giveaccess { des = "Give access icon"; noui = 1; } property string image_join { des = "Join community icon"; noui = 1; } property string image_link { des = "Post link icon"; noui = 1; } property string image_maxcomments { des = "Maximum comments icon"; noui = 1; } property string image_message { des = "Send a Private Message icon"; noui = 1; } property string image_next { des = "Next entry icon"; noui = 1; } property string image_parent { des = "Parent comment icon"; noui = 1; } property string image_prev { des = "Previous entry icon"; noui = 1; } property string image_reply { des = "Reply to post icon"; noui = 1; } property string image_screen { des = "Screen comment icon"; noui = 1; } property string image_show { des = "Show comments icon"; noui = 1; } property string image_subscribe { des = "Subscribe to journal icon"; noui = 1; } property string image_tellafriend { des = "Tell a friend icon"; noui = 1; } property string image_thread { des = "Comment thread icon"; noui = 1; } property string image_threadroot { des = "Root comment icon"; noui = 1; } property string image_track { des = "Track item icon"; noui = 1; } property string image_tracked { des = "Tracked item icon"; noui = 1; } property string image_unfreeze { des = "Unfreeze comment icon"; noui = 1; } property string image_unscreen { des = "Unscreen comment icon"; noui = 1; } } ##=============================== ## Modules ##=============================== propgroup modules_child { property string module_navlinks_section_override { values = "none|(none)|header|Header|one|Main Module Section|two|Secondary Module Section"; grouped = 1; } property string module_time_section_override { values = "none|(none)|one|Main Module Section|two|Secondary Module Section|footer|Footer"; grouped = 1; } property string module_poweredby_section_override { values = "none|(none)|one|Main Module Section|two|Secondary Module Section|footer|Footer"; grouped = 1; } } set grouped_property_override = { "module_navlinks_section" => "module_navlinks_section_override", "module_time_section" => "module_time_section_override", "module_poweredby_section" => "module_poweredby_section_override" }; set module_navlinks_section = "header"; set module_pagesummary_order = 6; set module_tags_order = 7; set module_search_order = 8; set module_customtext_order = 9; set module_customtext_section = "two"; set module_active_order = 10; set module_active_section = "two"; set module_links_order = 11; set module_links_section = "two"; set module_syndicate_order = 12; set module_syndicate_section = "two"; set module_credit_order = 13; set module_credit_section = "two"; set module_time_order = 19; set module_time_section = "footer"; set module_poweredby_order = 20; set module_poweredby_section = "footer"; set module_tags_opts_type = "multi"; ##=============================== ## Text ##=============================== set text_default_separator = " ◾ "; set text_posting_in = " in "; set text_meta_music = "◾ Current Music:"; set text_meta_mood = "◾ Current Mood:"; set text_meta_location = "◾ Current Location:"; set text_meta_groups = "◾ Custom Access Groups:"; set text_meta_xpost = "▪ Crossposts:"; set text_tags = "◾ Tags:"; set text_comment_from = "Posted by:"; set text_comment_date = "Date/Time:"; set text_comment_ipaddr = "◾ IP:"; set text_entry_prev = "Previous"; set text_entry_next = "Next"; set text_tell_friend = "Share"; set text_mem_add = "Memory"; set text_generated_on = "Page generated on"; set text_page_top = "Top of Page"; set text_read_comments_screened_visible = "1 visible comment // # visible comments"; ##=============================== ## Functions ##=============================== ## Use default or custom icons for action links depending on setting ## If action doesn't have a default icon, use text instead function prop_init () { $*image_addmemories = $*default_icons ? "$*IMGDIR/silk/entry/memories_add.png" : generate_image_url($*image_addmemories); $*image_comments = $*default_icons ? "" : generate_image_url($*image_comments); $*image_delete = $*default_icons ? "$*IMGDIR/silk/comments/delete.png" : generate_image_url($*image_delete); $*image_edit = $*default_icons ? "$*IMGDIR/silk/entry/edit.png" : generate_image_url($*image_edit); $*image_edittags = $*default_icons ? "$*IMGDIR/silk/entry/tag_edit.png" : generate_image_url($*image_edittags); $*image_expand = $*default_icons ? "" : generate_image_url($*image_expand); $*image_freeze = $*default_icons ? "$*IMGDIR/silk/comments/freeze.png" : generate_image_url($*image_freeze); $*image_giveaccess = $*default_icons ? "$*IMGDIR/silk/profile/access_give.png" : generate_image_url($*image_giveaccess); $*image_hide = $*default_icons ? "" : generate_image_url($*image_hide); $*image_join = $*default_icons ? "$*IMGDIR/silk/profile/community_join.png" : generate_image_url($*image_join); $*image_link = $*default_icons ? "" : generate_image_url($*image_link); $*image_maxcomments = $*default_icons ? "" : generate_image_url($*image_maxcomments); $*image_message = $*default_icons ? "$*IMGDIR/silk/profile/message.png" : generate_image_url($*image_message); $*image_next = $*default_icons ? "$*IMGDIR/silk/entry/next.png" : generate_image_url($*image_next); $*image_parent = $*default_icons ? "" : generate_image_url($*image_parent); $*image_prev = $*default_icons ? "$*IMGDIR/silk/entry/previous.png" : generate_image_url($*image_prev); $*image_reply = $*default_icons ? "" : generate_image_url($*image_reply); $*image_tellafriend = $*default_icons ? "$*IMGDIR/silk/entry/tellafriend.png" : generate_image_url($*image_tellafriend); $*image_thread = $*default_icons ? "" : generate_image_url($*image_thread); $*image_threadroot = $*default_icons ? "" : generate_image_url($*image_threadroot); $*image_track = $*default_icons ? "$*IMGDIR/silk/entry/track.png" : generate_image_url($*image_track); $*image_tracked = $*default_icons ? "$*IMGDIR/silk/entry/untrack.png" : generate_image_url($*image_tracked); $*image_screen = $*default_icons ? "$*IMGDIR/silk/comments/screen.png" : generate_image_url($*image_screen); $*image_show = $*default_icons ? "" : generate_image_url($*image_show); $*image_subscribe = $*default_icons ? "$*IMGDIR/silk/profile/subscription_add.png" : generate_image_url($*image_subscribe); $*image_unfreeze = $*default_icons ? "$*IMGDIR/silk/comments/unfreeze.png" : generate_image_url($*image_unfreeze); $*image_unscreen = $*default_icons ? "$*IMGDIR/silk/comments/unscreen.png" : generate_image_url($*image_unscreen); $*entry_interaction_links = $*default_icons ? "text" : $*entry_interaction_links; $*comment_interaction_links = $*default_icons ? "text" : $*comment_interaction_links; } ## Add title to Nav module when not in header position. function print_module_navlinks() { var Page p = get_page(); var string title = ($*module_navlinks_section == "header") ? "" : "Navigation"; open_module("navlinks", $title, ""); var string{}[] links = []; foreach var string k ($p.views_order) { var string class = $k; if ($p.view == $k) { $class = "current $k"; } $links[size $links] = { "class" => $class, "item" => """"""+lang_viewname($k)+"""""" }; } print_module_list($links); close_module(); } ## Print security and warnings as text. function Entry::print_metatypes() { $this->print_metatypes(false, true); } ## Replace profile interaction link icons. function UserLite::print_interaction_links() { var string{} interaction_icons = { "manage_membership" => $*image_join, "trust" => $*image_giveaccess, "watch" => $*image_subscribe, "post_entry" => $*image_edit, "message" => $*image_message, "track" => $*image_track, "tell_friend" => $*image_tellafriend, }; var string display_type = ($*userlite_interaction_links == "text") ? " text-links" : " icon-links"; var Link link; var string icon_url; var int count; $count = 0; foreach var string k ($.link_keyseq) { $link = $this->get_link($k); $icon_url = $interaction_icons{$k}; if ($link.url) { $count ++; if ($count == 1) { """"""; } } ## Replace manage/interaction links with icons. function Entry::print_link_next() { var Link link = $this->get_link("nav_next"); if ($*entry_management_links == "text") { """$link.caption"""; } else { """$link.caption"""; } } function Entry::print_link_prev() { var Link link = $this->get_link("nav_prev"); if ($*entry_management_links == "text") { """$link.caption"""; } else { """$link.caption"""; } } function Entry::print_management_links() { var string{} manage_icons = { "edit_entry" => $*image_edit, "edit_tags" => $*image_edittags, "mem_add" => $*image_addmemories, "tell_friend" => $*image_tellafriend, "watch_comments" => $*image_track, "unwatch_comments" => $*image_tracked, }; ## There's no point in showing previous/next links on pages which show ## multiple entries anyway, so we only print them on EntryPage and ReplyPage. var string display_type = ($*entry_management_links == "text") ? " text-links" : " icon-links"; var Page p = get_page(); var int count; var string extras; $count = 0; var bool show_interentry = ($p.view == "entry" or $p.view == "reply"); if ($show_interentry) { $count ++; if ($count == 1) { """