Google Reader Absolutely Customizable

By DJBullwinkle Last update Jan 18, 2010 — Installed 11,632 times. Daily Installs: 21, 25, 33, 21, 48, 20, 30, 24, 21, 18, 27, 23, 28, 27, 30, 27, 19, 16, 22, 23, 14, 20, 26, 20, 43, 9, 10, 21, 17, 6, 21

There are 6 previous versions of this script.

// ==UserScript==
// @name           Google Reader Absolutely Customizable
// @namespace      http://userscripts.org/scripts/show/58577
// @description    Allows user to choose certain page elements to be hidden, resized or modified
// @include        http://www.google.com/reader/*
// @include        https://www.google.com/reader/*
// @require        http://userscripts.org/scripts/source/49700.user.js
// ==/UserScript==

function ApplyCSS() {
    GM_addStyle( cssDefault );
    GM_addStyle( cssSideNavSize.replace(/side-nav-size/g, GM_config.get("resizeSideNav")) );
    if (GM_config.get("hideTopNav")) {
        GM_addStyle( cssTopNav );
    }
    if (GM_config.get("hideAllItemsNav")) {
        GM_addStyle( cssAllItemsNav );
    }
    if (GM_config.get("hideSocial")) {
        GM_addStyle( cssSocial );
    }
    if (GM_config.get("hideExploreNav")) {
        GM_addStyle( cssExploreNav );
    }
    if (GM_config.get("hideLeftNavFeedSettings")) {
        GM_addStyle( cssLeftNavFeedSettings );
    }
    if (GM_config.get("hideBottomNav")) {
        GM_addStyle( cssBottomNav );
    }
    if (GM_config.get("hideSideNavIcons")) {
        GM_addStyle( cssSideNavIcons );
    }
    if (GM_config.get("hideChevrons")) {
        GM_addStyle( cssChevrons );
    }
    if (GM_config.get("hideEntryActions")) {
        GM_addStyle( cssEntryActions );
    }
    if (GM_config.get("hideSideNavToggle")) {
        GM_addStyle( cssSideNavToggle );
    }
    if (GM_config.get("shrinkWhiteSpace")) {
        GM_addStyle( cssWhiteSpace );
    }
    if (GM_config.get("makeSquareBorders")) {
        GM_addStyle( cssSquareBorders );
    }
    if (GM_config.get("resizeImages")) {
        GM_addStyle( cssResizeImages );
    }
    if (GM_getValue("hideEntryStar", false)) {
        GM_addStyle( cssHideEntryStar );
    }
    if (GM_getValue("hideEntryEmail", false)) {
        GM_addStyle( cssHideEntryEmail );
    }
    if (GM_getValue("hideEntryTags", false)) {
        GM_addStyle( cssHideEntryTags );
    }
    if (GM_getValue("hideEntrySendTo", false)) {
        GM_addStyle( cssHideEntrySendTo );
    }
}

GM_config.init("Absolutely Customizable Options", {
    hideTopNav: {
        section: ['Hide the following items:'],
        label:"Top navigation area",
        type:"checkbox",
        default:true
    },
    hideAllItemsNav: {
        label:"'All Items' side navigation",
        type:"checkbox",
        default:true
    },
    hideEntryActions: {
        label:"Entry actions",
        type:"checkbox",
        default:true
    },
    hideSocial: {
        label:"Social options (share, like, etc.)",
        type:"checkbox",
        default:true
    },
    hideExploreNav: {
        label:"Explore option",
        type:"checkbox",
        default:true
    },
    hideLeftNavFeedSettings: {
        label:"Feed settings drop down in side navigation",
        type:"checkbox",
        default:true
    },
    hideBottomNav: {
        label:"Item navigation buttons (Previous item/Next item)",
        type:"checkbox",
        default:true
    },
    hideSideNavToggle: {
        label:"Side navigation toggle",
        type:"checkbox",
        default:true
    },
    hideSideNavIcons: {
        label:"Side navigation icons",
        type:"checkbox",
        default:true
    },
    hideChevrons: {
        label:"Chevron links (ยป)",
        type:"checkbox",
        default:true
    },
    makeSquareBorders: {
        section: ['Other changes:'],
        label:"Use square borders",
        type:"checkbox",
        default:true
    },
    shrinkWhiteSpace: {
        label:"Condense white space",
        type:"checkbox",
        default:true
    },
    resizeImages: {
        label:"Shrink images to fit horizontally",
        type:"checkbox",
        default:true
    },
    resizeSideNav: {
        label:"Resize side navigation (in pixels)",
        type:"int",
        cols:3,
        default:175
    }
}, <><![CDATA[
.indent40 {
    margin-left: auto !important;
    text-align: center !important; }
#config_header {
    font-size: 20pt !important; }
div.section_header_holder {
    margin-top: 0 !important; }
h2.section_header {
    text-align: left !important; }
.config_var .field_label {
    margin-left: 23px !important; }
.config_var input[type="checkbox"] {
    position: absolute !important;
    left: 5px !important; }
]]></>.toString(),
{
    save: function() {
        location.reload();
    }
}
);

GM_registerMenuCommand("Google Reader Absolutely Customizable Options", function(){GM_config.open();});

var cssDefault = <><![CDATA[
#entries .entry-body,
.entry .entry-title {
    max-width: none !important; }
#GM_config {
    width: 500px !important; }
]]></>.toString();

var cssTopNav = <><![CDATA[
#logo-container,
#gbar,
#global-info,
.gbh,
#lhn-add-subscription-section,
#chrome-view-links {
    display: none !important; }

#main,
#settings-frame,
#settings {
    top:0 !important;
    margin: 0 !important; }

/* right-justify the "Loading..." and other messages so they don't obscure other elements */
#loading-area,
#message-area-outer {
    width: auto !important;
    left: auto !important;
    right: 0 !important;
    top: 26px !important; }

/* right-align search bar and hide buttons until hovering */
#search {
    left: auto !important;
    right: 10px !important;
    top: 1px !important;
    width: 210px !important;
    height:23px !important;
    overflow: hidden !important; }
#search:hover {
    width: 403px !important;
    height:323px !important;
    overflow: visible !important; }
#search-restrict-button .goog-menu {
    left: auto !important;
    right: 0 !important; }
#chrome.search-stream #viewer-search-parent {
    text-align: left !important; }
]]></>.toString();

var cssAllItemsNav = <><![CDATA[
#lhn-selectors {
    display: none !important; }
]]></>.toString();

var cssSocial = <><![CDATA[
#your-items-tree-container, 
#lhn-friends,
.entry-likers,
.like,
.broadcast,
.broadcast-with-note {
    display: none !important; }
]]></>.toString();

var cssExploreNav = <><![CDATA[
#lhn-recommendations {
    display: none !important; }
]]></>.toString();

var cssLeftNavFeedSettings = <><![CDATA[
a:hover .tree-item-action-container, 
.menu-open .tree-item-action-container {
    display: none !important; }
]]></>.toString();

var cssBottomNav = <><![CDATA[
#viewer-footer {
    display: none !important; }
]]></>.toString();

var cssSideNavSize = <><![CDATA[
#nav,
#nav * {
    max-width: side-nav-sizepx !important; }
#nav {
    width: side-nav-sizepx !important; }
#chrome {
    margin-left: side-nav-sizepx !important; }
.lhn-hidden #chrome {
    margin-left: 1px !important; }
]]></>.toString();

var cssSideNavIcons = <><![CDATA[
.scroll-tree .icon {
    display: none !important; }
.scroll-tree .expanded .toggle {
    background-position: 3px -58px !important; }
.scroll-tree .collapsed .toggle {
    background-position: -20px -58px !important; }
#lhn-subscriptions .scroll-tree li a {
    padding-left: 0 !important; }
#lhn-subscriptions #sub-tree ul ul li a {
    padding-left: 10px !important; }
#lhn-subscriptions .scroll-tree .toggle {
    width: 16px !important; }
]]></>.toString();

var cssChevrons = <><![CDATA[
.entry .entry-title .entry-title-go-to,
#entries.list .collapsed .entry-main .entry-original,
#chrome-title .chevron {
    display: none !important; }

#entries.list .collapsed .entry-secondary {
    margin-right: 0 !important;
    margin-right: 7em !important; }

#entries .collapsed .entry-date {
    margin: 0 2px 0 0 !important; }
]]></>.toString();

var cssEntryActions = <><![CDATA[
.card-common .card-actions,
#entries.list .entry .entry-actions {
    height: 0 !important; }
/* #entries #current-entry .collapsed {
    border-width: 0 !important; } */
#entries.list #current-entry.expanded {
    border-bottom-width: 2px !important; }
]]></>.toString();

var cssSideNavToggle = <><![CDATA[
#chrome-lhn-toggle {
    display: none !important; }
]]></>.toString();

var cssWhiteSpace = <><![CDATA[
#viewer-top-controls,
#chrome-header {
    padding: 2px 0 2px 5px !important; }

#viewer-footer {
    padding: 2px 0 2px 0 !important; }
#entries-status {
    top: auto !important; }
/* shrink titles, but add underlining for visual identification */
.entry .entry-title {
    font-size: 100% !important; }
.entry .entry-title .entry-title-link {
    text-decoration: underline !important; }
/* tighten up spacing around entries */
/* expanded view */
#entries .entry {
    padding: 0 !important;
    margin: 0 !important; }
#entries .card-content {
    padding: 2px !important; }
#entries #current-entry .card-content {
    padding: 1px !important; }
#entries .card-common {
    padding: 0 !important;
    margin: 0 !important;
    /* border-width: 2px !important; */}
/* list view */
#entries.list .collapsed {
    padding: 0 !important;
    /* border-width: 1px !important; */ }
#entries.list .collapsed .entry-icons,
#entries.list .collapsed .entry-main .entry-original {
    top: 1px !important; }
#entries.list .collapsed .entry-secondary {
    top: 0px !important; }
#entries.list .collapsed .entry-source-title {
    top: 0px !important; }
#entries.list .collapsed .entry-title {
    text-decoration: none !important; }
/* #entries.list #current-entry .collapsed {
    border-width: 0 !important; } */
#entries.list #current-entry.expanded .entry-container .entry-title, 
#entries.list #current-entry.expanded .entry-secondary-snippet {
    display: none !important; }
/* #entries.list #current-entry.expanded {
    border-width: 2px !important; } */
]]></>.toString();

var cssSquareBorders = <><![CDATA[
.entry .card,
.card .card-bottom {
    -moz-border-radius: 0 !important; }
]]></>.toString();

var cssResizeImages = <><![CDATA[
.item-body img, 
.item-body a img, 
.item-body embed { 
    max-width:100% !important; 
    height: auto !important; }
]]></>.toString();

/* Hidden options */
var cssHideEntryStar = <><![CDATA[
.entry .entry-actions .item-star { 
    display: none !important; }
]]></>.toString();

var cssHideEntryEmail = <><![CDATA[
.entry .entry-actions .email { 
    display: none !important; }
]]></>.toString();

var cssHideEntryTags = <><![CDATA[
.entry .entry-actions .tag { 
    display: none !important; }
]]></>.toString();

var cssHideEntrySendTo = <><![CDATA[
.entry .entry-actions .item-link { 
    display: none !important; }
]]></>.toString();

ApplyCSS();